tmex-cli 0.15.2 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/CHANGELOG.md +64 -8
  2. package/dist/runtime/server.js +891 -165
  3. package/package.json +1 -1
  4. package/resources/fe-dist/assets/DevicePage-Ccz8gNji.js +24 -0
  5. package/resources/fe-dist/assets/{DevicesPage-DVAiqqAb.js → DevicesPage-sJHXbS_f.js} +1 -1
  6. package/resources/fe-dist/assets/{FilePage-DzKIB_pN.js → FilePage-7FFd1YcW.js} +1 -1
  7. package/resources/fe-dist/assets/{SettingsPage-BTLab-Z3.js → SettingsPage-FrEtqZyI.js} +1 -1
  8. package/resources/fe-dist/assets/{agent-tab-DRxXq67W.js → agent-tab-9THUj7Cf.js} +4 -4
  9. package/resources/fe-dist/assets/{api-B_pG5Lrn.js → api-DV7-9Pvt.js} +1 -1
  10. package/resources/fe-dist/assets/{arc-Bct5uFHQ.js → arc-PDHKfnGP.js} +1 -1
  11. package/resources/fe-dist/assets/{architectureDiagram-3BPJPVTR-BRDZ_iL7.js → architectureDiagram-3BPJPVTR-BiPHTh1e.js} +1 -1
  12. package/resources/fe-dist/assets/{blockDiagram-GPEHLZMM-COe9KyYv.js → blockDiagram-GPEHLZMM-DP_BRHKg.js} +1 -1
  13. package/resources/fe-dist/assets/{c4Diagram-AAUBKEIU-DtQTgbwo.js → c4Diagram-AAUBKEIU-D16QYgyT.js} +1 -1
  14. package/resources/fe-dist/assets/{card-DAJtOO99.js → card-DmfNw0hd.js} +1 -1
  15. package/resources/fe-dist/assets/channel-Dzz9b4fW.js +1 -0
  16. package/resources/fe-dist/assets/{chunk-2J33WTMH-D4_zLlF4.js → chunk-2J33WTMH-DOjtL7ww.js} +1 -1
  17. package/resources/fe-dist/assets/{chunk-4BX2VUAB-C3M9MnUk.js → chunk-4BX2VUAB-BbT67ZXa.js} +1 -1
  18. package/resources/fe-dist/assets/{chunk-55IACEB6-D5BgUYDW.js → chunk-55IACEB6-CnnXwmY_.js} +1 -1
  19. package/resources/fe-dist/assets/{chunk-727SXJPM-C03K3kUu.js → chunk-727SXJPM-TyUdLEW5.js} +1 -1
  20. package/resources/fe-dist/assets/{chunk-AQP2D5EJ-DLv4_X-p.js → chunk-AQP2D5EJ-BMpK4dqa.js} +1 -1
  21. package/resources/fe-dist/assets/{chunk-FMBD7UC4-CXm-3D35.js → chunk-FMBD7UC4-Dx0HVCZZ.js} +1 -1
  22. package/resources/fe-dist/assets/{chunk-ND2GUHAM-DH_J0yjP.js → chunk-ND2GUHAM-BQCoMEti.js} +1 -1
  23. package/resources/fe-dist/assets/{chunk-QZHKN3VN-D5HtoYCj.js → chunk-QZHKN3VN-ilmf5OgK.js} +1 -1
  24. package/resources/fe-dist/assets/classDiagram-4FO5ZUOK-BB9_4XLL.js +1 -0
  25. package/resources/fe-dist/assets/classDiagram-v2-Q7XG4LA2-BB9_4XLL.js +1 -0
  26. package/resources/fe-dist/assets/{copy-BfLwocwm.js → copy-Ct5TNzGp.js} +1 -1
  27. package/resources/fe-dist/assets/{cose-bilkent-S5V4N54A-be9ShD_r.js → cose-bilkent-S5V4N54A-CpWhM7Za.js} +1 -1
  28. package/resources/fe-dist/assets/{dagre-BM42HDAG-CC-KfeHH.js → dagre-BM42HDAG-CWJttTzC.js} +1 -1
  29. package/resources/fe-dist/assets/{diagram-2AECGRRQ-BwKHXV4n.js → diagram-2AECGRRQ-BD8ny_Yg.js} +1 -1
  30. package/resources/fe-dist/assets/{diagram-5GNKFQAL-Bqwpz1fr.js → diagram-5GNKFQAL-CeHcPWRz.js} +1 -1
  31. package/resources/fe-dist/assets/{diagram-KO2AKTUF-CeMGb0yy.js → diagram-KO2AKTUF-tVlrBE8C.js} +1 -1
  32. package/resources/fe-dist/assets/{diagram-LMA3HP47-Bsi1wTvw.js → diagram-LMA3HP47-DGUn-oQn.js} +1 -1
  33. package/resources/fe-dist/assets/{diagram-OG6HWLK6-B4t3XGFO.js → diagram-OG6HWLK6-xKCd1kwA.js} +1 -1
  34. package/resources/fe-dist/assets/{en_US-Cf2EOKiI.js → en_US-CjVU4anP.js} +1 -1
  35. package/resources/fe-dist/assets/{erDiagram-TEJ5UH35-3Mvka2ky.js → erDiagram-TEJ5UH35-C6M5qkGl.js} +1 -1
  36. package/resources/fe-dist/assets/{files-tab-CozXv_f8.js → files-tab-BWkYfaye.js} +5 -5
  37. package/resources/fe-dist/assets/{flowDiagram-I6XJVG4X-DkGA4Ke1.js → flowDiagram-I6XJVG4X-D0MZDHnB.js} +1 -1
  38. package/resources/fe-dist/assets/{ganttDiagram-6RSMTGT7-3vhFpRP7.js → ganttDiagram-6RSMTGT7-YeduSSa_.js} +1 -1
  39. package/resources/fe-dist/assets/{gitGraphDiagram-PVQCEYII-CQV7XGpo.js → gitGraphDiagram-PVQCEYII-Nem1Mvvg.js} +1 -1
  40. package/resources/fe-dist/assets/index-B3ddLSja.js +314 -0
  41. package/resources/fe-dist/assets/index-CuFTSN9i.css +1 -0
  42. package/resources/fe-dist/assets/{index-CxrkvaQh.js → index-iee3U_rD.js} +1 -1
  43. package/resources/fe-dist/assets/{infoDiagram-5YYISTIA-Do4YMzZB.js → infoDiagram-5YYISTIA-Bh6bbh_V.js} +1 -1
  44. package/resources/fe-dist/assets/{ishikawaDiagram-YF4QCWOH-D0s__l6a.js → ishikawaDiagram-YF4QCWOH-CsZHu48j.js} +1 -1
  45. package/resources/fe-dist/assets/{ja_JP-s3e_OwvM.js → ja_JP-Bq-BwOH_.js} +1 -1
  46. package/resources/fe-dist/assets/{journeyDiagram-JHISSGLW-DZWnugOc.js → journeyDiagram-JHISSGLW-CPgnovXt.js} +1 -1
  47. package/resources/fe-dist/assets/{kanban-definition-UN3LZRKU-BgRtdsFS.js → kanban-definition-UN3LZRKU-D4OAuDsS.js} +1 -1
  48. package/resources/fe-dist/assets/{linear-yx1vNDZX.js → linear-CcA4wV7f.js} +1 -1
  49. package/resources/fe-dist/assets/{markdown-preview-BE4zuZfN.js → markdown-preview-CBGlxpTs.js} +3 -3
  50. package/resources/fe-dist/assets/{mermaid.core-DE3GlZm2.js → mermaid.core-D-CshtYr.js} +5 -5
  51. package/resources/fe-dist/assets/{mindmap-definition-RKZ34NQL-25O7ch2Y.js → mindmap-definition-RKZ34NQL-DBpI1nMC.js} +1 -1
  52. package/resources/fe-dist/assets/{pieDiagram-4H26LBE5-Nsg0nJjf.js → pieDiagram-4H26LBE5-D4kh0_Y0.js} +1 -1
  53. package/resources/fe-dist/assets/{quadrantDiagram-W4KKPZXB-vf_qGk-r.js → quadrantDiagram-W4KKPZXB-DNw3oGHQ.js} +1 -1
  54. package/resources/fe-dist/assets/{requirementDiagram-4Y6WPE33-BFfrHVO7.js → requirementDiagram-4Y6WPE33-DqtMaND0.js} +1 -1
  55. package/resources/fe-dist/assets/{sankeyDiagram-5OEKKPKP-Ce_HayCK.js → sankeyDiagram-5OEKKPKP-D-m9Pyie.js} +1 -1
  56. package/resources/fe-dist/assets/{selection-clipboard-Dq6Zemfd.js → selection-clipboard-D3gUQQ7L.js} +1 -1
  57. package/resources/fe-dist/assets/{send-CKtMOmLP.js → send-DaOB9hLq.js} +1 -1
  58. package/resources/fe-dist/assets/{sequenceDiagram-3UESZ5HK-C2vovJ8X.js → sequenceDiagram-3UESZ5HK-CjrimNJf.js} +1 -1
  59. package/resources/fe-dist/assets/{stateDiagram-AJRCARHV-CLu4laAA.js → stateDiagram-AJRCARHV-BT5d8Z8W.js} +1 -1
  60. package/resources/fe-dist/assets/stateDiagram-v2-BHNVJYJU-kSh9IuUW.js +1 -0
  61. package/resources/fe-dist/assets/terminal-settings-panel-DDhlnbRH.js +25 -0
  62. package/resources/fe-dist/assets/{timeline-definition-PNZ67QCA-DkWMKmAT.js → timeline-definition-PNZ67QCA-BeocAFDX.js} +1 -1
  63. package/resources/fe-dist/assets/{transfer-toast-CHZr1a7O.js → transfer-toast-DXl4RHsV.js} +1 -1
  64. package/resources/fe-dist/assets/{triangle-alert-03d4TB5d.js → triangle-alert-FQRTtbTP.js} +1 -1
  65. package/resources/fe-dist/assets/{vennDiagram-CIIHVFJN-BBlcBoH2.js → vennDiagram-CIIHVFJN-CYlmUB5_.js} +1 -1
  66. package/resources/fe-dist/assets/{wardley-L42UT6IY-BnzmzjjA.js → wardley-L42UT6IY-CTyaodt9.js} +1 -1
  67. package/resources/fe-dist/assets/{wardleyDiagram-YWT4CUSO-B3u1V3qc.js → wardleyDiagram-YWT4CUSO-DNlEcEwQ.js} +1 -1
  68. package/resources/fe-dist/assets/{xychartDiagram-2RQKCTM6-BTm5HZXX.js → xychartDiagram-2RQKCTM6-7Zi-6P-I.js} +1 -1
  69. package/resources/fe-dist/assets/{zap-CBeeCQFr.js → zap-BFIAXPXd.js} +1 -1
  70. package/resources/fe-dist/assets/{zh_CN-6UyMkvZM.js → zh_CN-BuxyXhCT.js} +1 -1
  71. package/resources/fe-dist/index.html +2 -2
  72. package/resources/fe-dist/assets/DevicePage-BvwXdfhK.js +0 -19
  73. package/resources/fe-dist/assets/channel-CIG-CxyN.js +0 -1
  74. package/resources/fe-dist/assets/classDiagram-4FO5ZUOK-CNRZMNkk.js +0 -1
  75. package/resources/fe-dist/assets/classDiagram-v2-Q7XG4LA2-CNRZMNkk.js +0 -1
  76. package/resources/fe-dist/assets/index-CEPc0i5O.js +0 -304
  77. package/resources/fe-dist/assets/index-CHeveVji.css +0 -1
  78. package/resources/fe-dist/assets/stateDiagram-v2-BHNVJYJU-CIfUS4rj.js +0 -1
  79. package/resources/fe-dist/assets/terminal-settings-panel-DAWL48fe.js +0 -25
@@ -1 +1 @@
1
- const e=JSON.parse('{"common":{"loading":"読み込み中...","save":"保存","saving":"保存中...","cancel":"キャンセル","add":"追加","delete":"削除","edit":"編集","confirm":"確認","close":"閉じる","expand":"展開","collapse":"折りたたむ","refresh":"更新","test":"テスト","send":"送信","success":"成功","error":"エラー","warning":"警告","info":"情報","yes":"はい","no":"いいえ","enabled":"有効","disabled":"無効","pending":"保留中","authorized":"承認済み","unknown":"不明","empty":"空","none":"なし","default":"デフォルト","optional":"任意","required":"必須","pwaInstallTitle":"アプリとしてインストール","pwaInstallHintIOSSafari":"iOS Safari では自動的にインストールプロンプトが表示されません。共有ボタンをタップし、「ホーム画面に追加」を選択してください。","pwaInstallHintIOSChrome":"iOS Chrome では自動的にインストールプロンプトが表示されません。共有ボタンをタップし、「ホーム画面に追加」を選択してください。"},"nav":{"manageDevices":"デバイス管理","settings":"設定","sidebarExpand":"サイドバーを展開","sidebarCollapse":"サイドバーを折りたたむ","openSidebar":"サイドバーを開く","closeSidebar":"サイドバーを閉じる","jumpToLatest":"最新にジャンプ","switchToEditor":"エディタ入力に切り替え","switchToDirect":"直接入力に切り替え","refreshPage":"ページを更新","refreshPageConfirm":"ページを更新してもよろしいですか?保存されていない内容は失われます。"},"device":{"title":"デバイス管理","devices":"デバイス","addDevice":"デバイスを追加","addDeviceDescription":"デバイス情報を入力し、接続方法を選択してください","addFirstDevice":"最初のデバイスを追加","editDevice":"デバイスを編集","editDeviceDescription":"デバイス設定を更新","sectionBasic":"基本情報","sectionConnection":"接続情報","sectionAuth":"認証情報","noDevices":"デバイスがありません","noDevicesDescription":"ローカルまたは SSH デバイスを追加して開始","name":"デバイス名","namePlaceholder":"例:My Server","type":"タイプ","typeLocal":"ローカルデバイス","typeSSH":"SSH リモートデバイス","typeSSHBadge":"SSH","host":"ホスト","hostPlaceholder":"example.com","port":"ポート","username":"ユーザー名","usernamePlaceholder":"root","session":"Tmux セッション名","sessionPlaceholder":"tmex","sessionHint":"空の場合、デフォルトの「tmex」が使用されます","defaultWorkingDir":"デフォルト作業ディレクトリ","defaultWorkingDirPlaceholder":"空の場合、ユーザーのホームディレクトリを使用","authMode":"認証モード","authPassword":"パスワード","authKey":"秘密鍵","authAgent":"SSH Agent","authConfigRef":"SSH Config","sshConfigRefPlaceholder":"Host エイリアス(例: my-server)","sshConfigRefHint":"ssh config の Host エイリアスを入力します。`ssh -G` で解決されます。config ファイルのパスではありません。","password":"パスワード","privateKey":"秘密鍵","privateKeyPlaceholder":"-----BEGIN OPENSSH PRIVATE KEY-----","privateKeyPassphrase":"秘密鍵のパスフレーズ(任意)","passphrase":"パスフレーズ","connect":"接続","connected":"接続済み","disconnect":"切断","disconnected":"切断済み","connecting":"接続中...","dragHandle":"ドラッグしてデバイスを並べ替え","reorderFailed":"デバイスの並べ替えに失敗しました","deleteConfirm":"このデバイスを削除しますか?","deleteDescription":"デバイス「{{name}}」は完全に削除されます。この操作は取り消せません。","deleteSuccess":"デバイスを削除しました","createSuccess":"デバイスを作成しました","updateSuccess":"デバイスを更新しました","deleteFailed":"デバイスの削除に失敗しました","createFailed":"デバイスの作成に失敗しました","updateFailed":"デバイスの更新に失敗しました","loadFailed":"デバイス一覧の読み込みに失敗しました","localDevice":"ローカルデバイス","subtitle":"{{username}}@{{host}}:{{port}}","modify":"デバイスを変更","delete":"削除"},"terminal":{"keyboardBehavior":{"title":"キーボード動作","description":"ソフトウェアキーボード表示時のページの回避方法","modeLift":"ページ移動","modeLiftDesc":"キーボード表示時にページ全体を上に移動(端末サイズは不変)","modeResize":"端末リサイズ","modeResizeDesc":"キーボード上の領域に合わせて端末を縮小(リモートの行数が変わります)","modeFollow":"カーソル追従","modeFollowDesc":"カーソルがキーボードの真上に来るよう移動(端末サイズは不変)"},"initializing":"ターミナルを初期化中...","connecting":"デバイスに接続中...","initFailed":"ターミナルの初期化に失敗しました","inputPlaceholder":"ここにコマンドを入力...","clear":"クリア","deviceError":"デバイスエラー","deviceErrorWithType":"[{{type}}] デバイスエラー","noDeviceSelected":"デバイスが選択されていません","windowClosed":"現在のウィンドウは閉じられました。サイドバーからウィンドウを選択してください。","paneClosed":"現在のペインは閉じられました。サイドバーからペインを選択してください。","bellNotification":"ターミナルベル","bellDescriptionWithTitle":"ウィンドウ {{window}} · {{paneLabel}}","bellFallback":"tmux ベルを受信","notificationFallbackTitle":"ターミナル通知","notificationSourceLabel":"{{source}} から","notificationFallbackDetail":"ターミナル通知","paneTitle":"ペイン {{index}}","activePane":"現在のペイン","activeWindow":"現在のウィンドウ","editorPlaceholder":"ここにコマンドを入力...","editorClear":"クリア","editorSendWithEnter":"Enter で送信","editorSendLineByLine":"1行ずつ送信","editorSend":"送信","sendShortcut":"{{key}} を送信","inputModeDirect":"直接入力","inputModeEditor":"エディタ","newWindow":"新規ウィンドウ","closeWindow":"ウィンドウを閉じる","closePane":"ペインを閉じる","copy":"コピー","paste":"貼り付け","copied":"クリップボードにコピーしました","copyFailed":"コピーに失敗しました","pasteFailed":"クリップボードを読み取れません。ブラウザの権限を確認してください","clearSelection":"選択を解除"},"settings":{"title":"システム設定","siteSettings":"サイト設定","siteName":"サイト名","siteNamePlaceholder":"tmex","siteUrl":"サイト URL","siteUrlPlaceholder":"http://localhost:3000","bellThrottle":"ベル制限(秒)","notificationThrottle":"通知制限(秒)","enableBrowserBellToast":"ブラウザベル Toast を有効にする","enableBrowserNotificationToast":"ブラウザ通知 Toast を有効にする","enableTelegramBellPush":"Telegram ベルプッシュを有効にする","enableTelegramNotificationPush":"Telegram 通知プッシュを有効にする","enableWeixinBellPush":"WeChat ベル通知を有効化","enableWeixinNotificationPush":"WeChat 通知プッシュを有効化","sshReconnectRetries":"SSH 再接続試行回数","sshReconnectDelay":"SSH 再接続待機(秒)","language":"言語","languagePlaceholder":"言語を選択","language_en_US":"English","language_zh_CN":"简体中文","language_ja_JP":"日本語","theme":"ダークモード","themeLight":"ライト","themeDark":"ダーク","siteTab":"サイト","notificationsTab":"通知","tabGroup":{"general":"一般","devicesAndFiles":"デバイスとファイル","notifications":"通知","ai":"AI","terminal":"ターミナル"},"terminal":{"title":"ターミナル設定","description":"ターミナルのフォントサイズ・行の高さ・フォント、モバイルのキーボード回避を調整します。フォントの選択はアプリ全体の等幅テキストに適用されます。","fontSize":"フォントサイズ","lineHeight":"行の高さ","fontFamily":"フォント","preview":"プレビュー","savedInBrowser":"これらの設定はこのブラウザにのみ保存されます。","shortcuts":{"title":"カスタムショートカット","savedOnServer":"サーバーに保存され、すべてのブラウザで共有されます。変更は「保存」後に反映されます。","preview":"プレビュー","useIcons":"キーをアイコンで表示","useIconsDesc":"Ctrl/Shift/Enter などのキー名を Apple 風の記号(⌃⇧⏎)に置き換えます。","dragHandle":"ドラッグして並べ替え","delete":"削除","labelPlaceholder":"ラベル","payloadPlaceholder":"シーケンス(例: \\\\x1b[A)","addShortcut":"ショートカットを追加","capturePrompt":"任意のキーの組み合わせを押してください…","captureHint":"ここをクリックしてキーを押すと取得します","advanced":"詳細: シーケンスを手動入力","add":"追加","reset":"デフォルトに戻す","save":"保存","saved":"ショートカットを保存しました","saveFailed":"ショートカットの保存に失敗しました","loading":"読み込み中…","action":{"paste":"貼り付け","toggleKeyboard":"テキスト入力/キーボード切替","newAgentSession":"新しい Agent セッション","scrollToBottom":"ターミナルを最下部へ"},"loadFailed":"ショートカットの読み込みに失敗しました","retry":"再試行"}},"deviceManagement":{"title":"デバイス管理","description":"ローカルおよび SSH デバイスの追加・編集・接続を行います。","openButton":"デバイス管理を開く"},"refreshToApply":"言語変更を適用するには更新してください","saveSettings":"設定を保存","settingsSaved":"設定を保存しました","saveFailed":"設定の保存に失敗しました","loadFailed":"設定の読み込みに失敗しました","restartGateway":"Gateway を再起動","restartScheduled":"Gateway の再起動が予定されました","restartConfirm":"Gateway を再起動してもよろしいですか?すべてのアクティブ接続が中断されます。","restartFailed":"Gateway の再起動に失敗しました","sshReconnectMaxRetries":"SSH 再接続試行回数","llm":{"title":"LLM プロバイダー","name":"名前","namePlaceholder":"例: OpenAI","baseUrl":"Base URL","baseUrlPlaceholder":"https://api.openai.com","baseUrlHint":"デフォルトで /v1 を自動補完。/ で終わるとパスをそのまま使用","protocol":"プロトコル","apiKey":"API キー","apiKeyPlaceholder":"API キーを入力","apiKeySetPlaceholder":"設定済み、空欄の場合は変更されません","addProvider":"プロバイダーを追加","editProvider":"プロバイダーを編集","formHint":"プロバイダーの接続を設定","models":"モデル","modelsTitle":"{{name}} のモデル","modelsHint":"このプロバイダーで利用するモデルを管理(有効化と手動追加)","modelManual":"手動","addModelPlaceholder":"モデル ID を追加","empty":"プロバイダーはまだありません","refreshModels":"モデルを更新","modelsCount":"{{total}} 個のモデル","modelsNotFetched":"モデル一覧は未取得です","modelsFetchFailed":"モデル一覧の取得に失敗しました:{{error}}","deleteProvider":"プロバイダーを削除","deleteConfirm":"プロバイダー「{{name}}」を削除しますか?","defaults":"グローバル既定","defaultProvider":"既定プロバイダー","defaultProviderNone":"未設定","defaultModel":"既定モデル","defaultModelPlaceholder":"モデル ID を入力または選択","saveDefaults":"既定を保存","loadFailed":"LLM プロバイダーの読み込みに失敗しました","createFailed":"プロバイダーの作成に失敗しました","updateFailed":"プロバイダーの更新に失敗しました","deleteFailed":"プロバイダーの削除に失敗しました","refreshModelsFailed":"モデルの更新に失敗しました","settingsLoadFailed":"LLM 設定の読み込みに失敗しました","settingsSaveFailed":"LLM 設定の保存に失敗しました"},"search":{"title":"検索","provider":"検索プロバイダー","responsesApiHint":"LLM プロバイダーが OpenAI Responses API プロトコルを使用している場合、その内蔵 hosted 検索ツールを利用できます。下記のサードパーティ検索は任意の補完です。","providerNone":"無効","tavilyApiKey":"Tavily API キー","braveApiKey":"Brave API キー","keyPlaceholder":"API キーを入力","keySetPlaceholder":"設定済み、空欄の場合は変更されません","clearKey":"クリア","clearKeyConfirm":"この API キーをクリアしますか?再度入力が必要になります。","loadFailed":"検索設定の読み込みに失敗しました","saveFailed":"検索設定の保存に失敗しました"},"files":{"title":"ファイル","description":"「ファイル」タブで閲覧できるデバイスごとのディレクトリを設定します。ローカルは直接読み取り、SSH は rsync を使用。","addRoot":"ディレクトリを追加","roots":"ディレクトリ","empty":"ディレクトリが設定されていません","missing":"デバイスが見つかりません","modalAddTitle":"ディレクトリを追加","modalEditTitle":"ディレクトリを編集","device":"デバイス","devicePlaceholder":"デバイスを選択","noDevices":"デバイスがありません。先に追加してください","path":"パス","pathPlaceholder":"/絶対パス/ディレクトリ","pathHint":"選択したデバイス上の絶対パス。","enabled":"有効","addFailed":"ディレクトリの追加に失敗しました","updateFailed":"ディレクトリの更新に失敗しました","deleteFailed":"ディレクトリの削除に失敗しました","toggleFailed":"ディレクトリの更新に失敗しました","deleteTitle":"ディレクトリを削除しますか?","deleteDesc":"「{{path}}」をホワイトリストから削除しますか?配下のファイルにアクセスできなくなります。"},"version":{"title":"バージョンと更新","currentVersion":"現在のバージョン","installMethod":"インストール方法","installMethodCli":"CLI でインストール","installMethodNonCli":"CLI 以外でインストール","deployment":"デプロイ方式","deploymentLaunchd":"launchd(macOS)","deploymentSystemd":"systemd(Linux)","deploymentNone":"なし","checkUpdate":"更新を確認","checking":"確認中…","upToDate":"最新バージョンです。","updateAvailable":"更新があります:{{version}}","changelog":"変更履歴","changelogUnavailable":"このバージョンの変更履歴はありません。","publishedAt":"公開日 {{date}}","upgrade":"今すぐ更新","upgradeDisabledDev":"production 以外の環境ではアプリ内更新は無効です。","upgradeDisabledNonCli":"アプリ内更新は CLI インストール時のみ利用できます。","upgradeWarningTitle":"更新の確認","upgradeWarningBody":"更新するとサービスが再起動し、現在のセッションが中断されます。サービスが管理する tmux プロセスの存続にも影響する可能性があります。続行しますか?","upgradeStarted":"更新を開始しました","stateDownloading":"新しいバージョンをダウンロード中…","stateExecuting":"更新を適用中、サービスを再起動しています…","interruptNotice":"サービス再起動中は接続が切断されますが、まもなく復旧します。","checkFailed":"更新の確認に失敗しました","terminalHint":"またはターミナルから更新:npx tmex-cli@<version> upgrade"}},"telegram":{"title":"Telegram Bot 管理","botName":"Bot 名","botNamePlaceholder":"例:ops-bot","botToken":"Bot Token","botTokenPlaceholder":"123456:AA...","addBot":"Bot を追加","editBot":"Bot を編集","enableBot":"Bot を有効にする","allowAuthRequests":"認証リクエストを許可","pendingChats":"承認待ち","chats":"承認済み","authorizedChats":"承認済み","noPendingChats":"承認待ちのチャットはありません","noAuthorizedChats":"承認済みのチャットはありません","approve":"承認","authorize":"認証","reject":"拒否","revokeAuth":"認証を取り消す","testMessage":"テストメッセージ","sendTestMessage":"テストメッセージを送信","deleteBot":"Bot を削除","tokenOptional":"Token(変更しない場合は空)","tokenPlaceholder":"新しい token を入力","botCreated":"Bot を作成しました","botUpdated":"Bot を更新しました","botDeleted":"Bot を削除しました","authApproved":"認証が承認されました","chatRemoved":"チャットを削除しました","testMessageSent":"テストメッセージを送信しました","createFailed":"Bot の作成に失敗しました","updateFailed":"Bot の更新に失敗しました","deleteFailed":"Bot の削除に失敗しました","approveFailed":"認証の承認に失敗しました","removeFailed":"チャットの削除に失敗しました","testMessageFailed":"テストメッセージの送信に失敗しました","loadBotsFailed":"Bot 一覧の読み込みに失敗しました","loadChatsFailed":"チャット一覧の読み込みに失敗しました","noBots":"Bot がありません。まず追加してください。","expand":"展開","collapse":"折りたたむ","authCount":"承認済み {{authorized}} / 承認待ち {{pending}}(最大 8)","chatId":"Chat ID","applyTime":"申請時間","gatewayOnline":"🟢 Gateway online @ {{siteName}}","deviceConnectionError":"🔴 {{siteName}}:デバイス「{{deviceName}}」({{host}}) で接続エラー [{{category}}]\\n{{error}}","agentCredentialWarning":"⚠️ {{siteName}}:Agent セッション「{{sessionTitle}}」のメッセージに認証情報が含まれている可能性があります({{types}})。LLM に送信され保存されるため、漏洩のリスクがあります。","authSuccess":"✅ 承認されました。通知を受信できます。","authPending":"⏳ 認証リクエストを受信しました。tmex 設定ページで承認してください。","authFailed":"❌ 認証リクエストに失敗しました。管理者に連絡してください。","testMessageTemplate":"🧪 テストメッセージ\\nサイト:{{siteName}}\\n時間:{{time}}","approveMessageTemplate":"✅ tmex で承認されました。\\nBot:{{botName}}\\n時間:{{time}}","botNotFound":"Bot が見つからないか利用できません","botNotRunning":"Bot が起動していないか利用できません"},"weixin":{"title":"WeChat (ClawBot) 管理","subtitle":"iLink bot プロトコルで tmex のアラートを個人 WeChat へ送信します。","replyOnlyNotice":"iLink はアクティブな会話ウィンドウ内でのみ返信できます。まず bot にメッセージを送って有効化すると、以降のアラートはそのセッションを再利用します。一定時間操作がないとセッションは失効するため、再度 bot にメッセージを送って再有効化してください。","accountName":"アカウント名","accountNamePlaceholder":"例:my-wechat","addAccount":"アカウントを追加","editAccount":"アカウントを編集","enableAccount":"アカウントを有効化","allowAuthRequests":"認証リクエストを許可","scanToLogin":"スキャンしてログイン","relogin":"再ログイン(再スキャン)","loggedIn":"ログイン済み","notLoggedIn":"未ログイン","scanQrcodeHint":"WeChat を開いて QR コードをスキャンし、スマホで確認してください。","loginPending":"スキャン待ち…","loginConfirmed":"ログインが確認されました。","loginExpired":"QR コードの有効期限が切れました。再試行してください。","loginError":"ログイン失敗:{{message}}","loginFailed":"ログイン失敗","refreshQrcode":"QR コードを更新","closeLogin":"閉じる","pendingUsers":"承認待ち","authorizedUsers":"承認済みユーザー","noPendingUsers":"承認待ちのユーザーはいません","noAuthorizedUsers":"承認済みのユーザーはいません","needsReactivation":"セッション失効","reactivationHint":"このユーザーに bot へメッセージを送ってもらい、アラートを再有効化してください。","approve":"承認","revokeAuth":"承認を取り消す","removeUser":"削除","testMessage":"テストメッセージ","sendTestMessage":"テストメッセージを送信","deleteAccount":"アカウントを削除","accountCreated":"アカウントを作成しました","accountUpdated":"アカウントを更新しました","accountDeleted":"アカウントを削除しました","authApproved":"認証を承認しました","userRemoved":"ユーザーを削除しました","testMessageSent":"テストメッセージを送信しました","createFailed":"アカウントの作成に失敗しました","updateFailed":"アカウントの更新に失敗しました","deleteFailed":"アカウントの削除に失敗しました","approveFailed":"承認に失敗しました","removeFailed":"ユーザーの削除に失敗しました","testMessageFailed":"テストメッセージの送信に失敗しました","loadAccountsFailed":"アカウント一覧の読み込みに失敗しました","loadUsersFailed":"ユーザー一覧の読み込みに失敗しました","noAccounts":"アカウントがまだありません。まず追加してください。","userCount":"{{authorized}} 承認済み / {{pending}} 承認待ち(最大 16)","userId":"WeChat ユーザー ID","applyTime":"初回連絡","expand":"展開","collapse":"折りたたむ","accountNameRequired":"アカウント名は必須です","accountNotFound":"アカウントが見つからないか利用できません","accountNotRunning":"アカウントが未ログインまたは未起動です","userNotFound":"ユーザーが見つかりません","authSuccess":"✅ 認証されました。通知を受け取れます。","authPending":"⏳ 認証リクエストを受け取りました。tmex の設定で承認してください。","testMessageTemplate":"🧪 テストメッセージ\\nサイト:{{siteName}}\\n時刻:{{time}}","approveMessageTemplate":"✅ tmex 経由で認証しました。\\nアカウント:{{accountName}}\\n時刻:{{time}}","keepalivePrompt":"【tmex】通知を確実に受け取るため、任意の内容を返信して接続を維持してください 🙏","scanConfirmedSendHint":"スキャン完了!WeChat でこの bot に任意のメッセージを送信して紐付けを完了してください。","bindingInProgress":"メッセージを受信、紐付けを完了しています…","bindSuccess":"WeChat を紐付けました。通知を受け取れます。","bound":"紐付け済み","unbound":"未紐付け","bindAction":"スキャンして紐付け","gatewayOnline":"🟢 tmex オンライン @ {{siteName}}"},"webhook":{"title":"Webhooks","url":"Webhook URL","secret":"シークレット","secretPlaceholder":"署名に使用(HMAC-SHA256)","enabled":"有効","eventMask":"イベント","add":"Webhook を追加","empty":"Webhook がありません。","createFailed":"Webhook の作成に失敗しました","deleteFailed":"Webhook の削除に失敗しました","loadFailed":"Webhook の読み込みに失敗しました"},"sshError":{"sshConfigRefNotSupported":"このバージョンでは SSH Config 参照はサポートされていません。host + username を使用し、Agent/秘密鍵/パスワード認証を選択してください。","configRefNotSupported":"このバージョンでは SSH Config 参照はサポートされていません。host + username を使用し、Agent/秘密鍵/パスワード認証を選択してください。","agentUnavailable":"SSH Agent が利用できません:SSH_AUTH_SOCK が検出されません。agent 環境を確認してください。","agentNoIdentity":"SSH Agent に利用可能な鍵がありません。ssh-add を実行してください。","agentNoIdentities":"SSH Agent に利用可能な鍵がありません。ssh-add を実行してください。","authFailed":"認証に失敗しました:ユーザー名、パスワード、または鍵が正しくありません。デバイス設定を確認してください。","authFailedGeneric":"認証に失敗しました:ユーザー名、パスワード、または鍵が正しくありません。デバイス設定を確認してください。","networkUnreachable":"ネットワークに到達できません:ルーティング、ファイアウォール、または VPN 設定を確認してください。","connectionRefused":"接続が拒否されました:ターゲットホストに接続できません。ホストアドレスとポートを確認してください。","timeout":"接続タイムアウト:デバイスに接続できません。ネットワークまたはファイアウォール設定を確認してください。","connectionTimeout":"接続タイムアウト:デバイスに接続できません。ネットワークまたはファイアウォール設定を確認してください。","hostNotFound":"ホストが見つかりません:ホスト名を解決できません。DNS またはホスト名設定を確認してください。","handshakeFailed":"ハンドシェイクに失敗しました:安全な接続を確立できません。キー交換アルゴリズムが互換性がない可能性があります。","tmuxUnavailable":"リモート tmux が利用できないか起動に失敗しました。tmux がインストールされ、リモート shell の PATH から参照できることを確認してください。","connectionClosed":"接続が切断されました。再接続を試みています","unknown":"接続に失敗しました:{{message}}","reconnecting":"接続が中断されました。{{delay}} 秒後に再接続します({{attempt}}/{{maxRetries}})","reconnectFailed":"自動再接続に失敗しました。手動で再試行してください","reconnected":"デバイスが自動的に再接続されました"},"deviceStatus":{"reconnecting":"再接続中 {{delay}}s","offline":"オフライン","errorBadge":{"authFailed":"認証失敗","agentUnavailable":"Agent 利用不可","agentNoIdentity":"Agent に鍵なし","configRefNotSupported":"SSH Config 非対応","networkUnreachable":"ネットワーク不可達","connectionRefused":"接続拒否","timeout":"タイムアウト","hostNotFound":"ホスト未検出","handshakeFailed":"ハンドシェイク失敗","tmuxUnavailable":"tmux 利用不可","connectionClosed":"切断","unknown":"接続エラー"}},"websocket":{"error":"WebSocket 接続エラー","checkGateway":"Gateway 状態を確認してください","upgradeFailed":"アップグレードに失敗しました","invalidMessage":"無効なメッセージ形式","reconnecting":"再接続中","reconnect":"再接続"},"wsError":{"checkGateway":"Gateway 状態を確認してください"},"apiError":{"siteNameRequired":"サイト名は空にできません","siteUrlInvalid":"サイト URL は http:// または https:// で始まる必要があります","bellThrottleInvalid":"ベル制限秒数は 0-300 の間である必要があります","sshRetriesInvalid":"SSH 再接続試行回数は 0-20 の間である必要があります","sshDelayInvalid":"SSH 再接続待機時間は 1-300 秒の間である必要があります","languageInvalid":"言語はサポートされているロケールのいずれかである必要があります","botNameRequired":"Bot 名は空にできません","botTokenRequired":"Bot token は空にできません","missingFields":"必須フィールドがありません","sshRequiresHost":"SSH デバイスには host または sshConfigRef が必要です","invalidRequest":"無効なリクエスト","deviceNotFound":"デバイスが見つかりません","botNotFound":"Bot が見つかりません","chatNotFound":"チャットが見つかりません","urlAndSecretRequired":"URL とシークレットが必要です","notFound":"見つかりません","llmProviderNameRequired":"プロバイダー名は空にできません","llmProviderProtocolInvalid":"プロトコルは openai-chat または openai-responses である必要があります","llmProviderBaseUrlInvalid":"Base URL は http:// または https:// で始まる必要があります","llmProviderApiKeyRequired":"API key は空にできません","llmProviderNotFound":"LLM プロバイダーが見つかりません","llmProviderDisabled":"LLM プロバイダー {{name}} は無効化されています","llmNoDefaultProvider":"LLM プロバイダーが指定されておらず、デフォルトプロバイダーも設定されていません","llmNoDefaultModel":"モデルが指定されておらず、デフォルトモデルも設定されていません","llmDefaultProviderNotFound":"デフォルトプロバイダーが存在しません","llmSearchProviderInvalid":"検索プロバイダーは none、tavily、brave のいずれかである必要があります","llmFetchModelsFailed":"モデル一覧の取得に失敗しました:{{detail}}","agentSessionNotFound":"Agent セッションが存在しません","agentSessionBusy":"Agent セッションは実行中です。停止するか完了をお待ちください","agentSessionAwaitingConfirmation":"Agent セッションに未処理の確認リクエストがあります。先に処理してください","agentDeviceRequired":"デバイスを指定してください","agentPaneRequired":"ターミナル pane を指定してください","agentWriteModeInvalid":"書き込みモードは confirm または auto である必要があります","agentMaxStepsInvalid":"1 ターンあたりの最大ステップ数は 1〜100 の範囲で指定してください","agentProviderWebSearchRequiresResponses":"プロバイダ内蔵の Web 検索は openai-responses プロトコルのみ対応しています","agentHostedToolUnknown":"不明な hosted ツール: {{name}}","agentHostedToolRequiresResponses":"プロバイダの hosted ツールは openai-responses プロトコルのみ対応しています","agentSessionOrphaned":"この Agent セッションは孤立しており(端末が存在しません)、読み取り専用です","agentQueuedMessageNotFound":"キューのメッセージが存在しません","agentConfirmationNotFound":"確認リクエストが存在しません","agentConfirmationAlreadyDecided":"確認リクエストは既に処理済みです","agentMessageTextRequired":"メッセージ内容を入力してください","watchRuleNotFound":"Watch ルールが存在しません","watchNameRequired":"ルール名を入力してください","watchTriggerTypeInvalid":"トリガー種別は match、unchanged、llm のいずれかです","watchPatternRequired":"match/unchanged ルールには正規表現が必要です","watchPatternInvalid":"正規表現が無効です:{{detail}}","watchUnchangedMinutesInvalid":"unchanged ルールには 0 より大きい未変化分数が必要です","watchExtractGroupInvalid":"キャプチャグループ番号は 0 以上の整数で指定してください","watchConditionPromptRequired":"llm ルールには条件の説明が必要です","watchIntervalInvalid":"サンプリング間隔は {{min}} 秒以上で指定してください","watchNoMatchBehaviorInvalid":"非マッチ時の挙動は reset または ignore です","watchFireModeInvalid":"発火モードは once または repeat です","watchCooldownInvalid":"クールダウン秒数は 0 以上の整数で指定してください","watchAssistDescriptionRequired":"マッチさせたい内容を記述してください","watchAssistModelUnavailable":"モデル呼び出しに失敗しました:{{detail}}","fileRootInvalid":"絶対パスかつ既存のディレクトリを指定してください","fileOutsideRoots":"許可されたディレクトリの範囲外です","fileNotADirectory":"ディレクトリではありません","fileTooLarge":"ファイルが大きすぎます","fileBinary":"バイナリファイルはサポートされていません","fileRootDeviceInvalid":"無効または不明なデバイス","fileRootDuplicate":"このディレクトリはこのデバイスに既に追加されています","upgradeNotAllowed":"このインストールではアプリ内更新を利用できません。","upgradeInProgress":"すでに更新が進行中です。","upgradeVersionRequired":"対象バージョンが必要です。","updateCheckFailed":"npm registry の照会に失敗しました。","terminalShortcutsTooMany":"ショートカットが多すぎます","terminalShortcutInvalid":"ショートカット設定が不正です"},"notification":{"clickToJump":"対応するペインにジャンプ","eventType":{"terminal_bell":"🔔 ターミナルベル","terminal_notification":"🔔 ターミナル通知","tmux_window_close":"🪟 ウィンドウ閉じる","tmux_pane_close":"📱 ペイン閉じる","device_tmux_missing":"⚠️ Tmux がありません","device_disconnect":"🔌 デバイス切断","session_created":"🆕 セッション作成","session_closed":"🚪 セッション閉じる","agent_confirmation_pending":"🤖 エージェント確認待ち","agent_turn_finished":"🤖 エージェントターン完了","agent_error":"🤖 エージェントエラー","watch_triggered":"👁️ Watch ルール発動","watch_model_unavailable":"👁️ Watch モデル利用不可","watch_rule_error":"👁️ Watch ルールエラー"},"site":"サイト","device":"デバイス","window":"ウィンドウ","pane":"ペイン","time":"時間","directLink":"直接リンク","message":"メッセージ","paneTitle":"タイトル","process":"プロセス","telegramBell":{"title":"🔔 {{siteName}} からのベル:{{terminalTopbarLabel}}","viewLink":"表示","terminalTopbarLabel":"ウィンドウ {{window}} · ペイン {{pane}} @ {{device}}"},"telegramNotification":{},"agent":{"confirmationPending":"Agent「{{title}}」がツール {{toolName}} の実行確認を求めています","turnFinished":"Agent「{{title}}」のターンが完了しました","error":"Agent「{{title}}」でエラーが発生しました:{{message}}"},"watch":{"matchTriggered":"Watch「{{name}}」がマッチしました:{{text}}","unchangedTriggered":"Watch「{{name}}」の値「{{value}}」が {{minutes}} 分間変化していません","llmTriggered":"Watch「{{name}}」の条件を満たしました:{{reason}}","summaryTriggered":"Watch「{{name}}」:{{summary}}","unconfirmedSuffix":"(モデル利用不可のため LLM 未確認)","modelUnavailable":"Watch「{{name}}」のモデル呼び出しに失敗しました:{{message}}","ruleError":"Watch「{{name}}」が {{count}} 回連続で失敗したため自動停止しました:{{message}}","paneGone":"Watch「{{name}}」のペイン({{paneId}})が破棄されたため、ルールを削除しました"}},"sidebar":{"noWindows":"ウィンドウがありません","noDevices":"デバイスがありません","addDeviceLink":"デバイスを追加","openSettingsLink":"設定を開く","openSettings":"設定を開く","manageDevices":"デバイス管理","settings":"設定","currentWindow":"現在のウィンドウ","currentPane":"現在のペイン","newWindow":"ウィンドウを作成","closeWindow":"ウィンドウを閉じる","closePane":"ペインを閉じる","addDevice":"デバイスを追加","tab":{"panes":"Panes","agent":"Agent","files":"Files"},"orphanedSessions":"孤立セッション"},"agent":{"error":{"streamStalled":"モデルが応答を停止しました(上流ストリームが停止)。再試行してください。"},"model":{"select":"モデルを選択","placeholder":"モデル","noProviders":"モデルがありません — 設定でプロバイダーを構成してください"},"queue":{"title":"キュー({{count}})","steer":"今すぐ注入","steerHint":"現在のステップを中断してキューを今すぐ注入","withdraw":"取り消し"},"orphan":{"readonly":"このセッションは孤立しており(端末が存在しません)、読み取り専用です","title":"孤立セッション","process":"プロセス","startedAt":"作成日時"},"files":{"comingSoon":"Coming Soon"},"panel":{"title":"Agent","empty":"セッションを選択または作成してください","inputPlaceholder":"メッセージを入力…","send":"送信","stop":"停止","retry":"再試行","scrollToBottom":"最下部へ"},"welcome":{"title":"新しい Agent チャット","subtitle":"タスクを入力して、選択した端末での作業を始めましょう"},"session":{"none":"セッション未選択","new":"新規エージェントセッション","switch":"セッションを切り替え","selectPaneHint":"Panes タブでペインを選択してセッションを開始してください","noSessions":"セッションがありません","showAll":"すべてのセッションを表示","rename":"セッション名を変更","renameTitle":"セッション名を変更","renamePlaceholder":"セッション名","save":"保存","cancel":"キャンセル","delete":"セッションを削除","deleteTitle":"このセッションを削除しますか?","deleteDesc":"「{{title}}」とそのメッセージはすべて完全に削除されます。","deleteConfirm":"削除","createDisabledNoPane":"ターミナル pane を開いてからセッションを作成してください","privacyNotice":"セッションはターミナル画面の内容を設定済みの LLM サービスへ送信します。"},"binding":{"invalid":"無効","mismatchTitle":"このセッションは別の pane にバインドされています","goTo":"移動","rebind":"現在の pane に再バインド"},"writeMode":{"confirm":"書き込み確認","auto":"自動実行"},"confirm":{"title":"承認待ち","approve":"許可","deny":"拒否"},"tool":{"input":"入力","result":"結果","screen":"画面キャプチャ","send_input":"入力送信","read_screen":"画面読み取り","web_search":"Web 検索","fetch_url":"URL 取得","denied":"拒否されました"},"reasoning":{"title":"思考プロセス"},"toast":{"errorTitle":"Agent「{{title}}」でエラー","credentialWarningTitle":"メッセージに認証情報が含まれる可能性","credentialWarningDescription":"{{types}} を検出しました。内容は変更されませんが、LLM に送信され保存されるため、漏洩のリスクがあります。"}},"window":{"noWindows":"ウィンドウがありません","new":"新規ウィンドウ","newInCwd":"この場所で新規ウィンドウ","close":"ウィンドウを閉じる","closePane":"ペインを閉じる","closeConfirmTitle":"このウィンドウを閉じますか?","closePaneConfirmTitle":"このペインを閉じますか?","closeConfirmDesc":"\\"{{name}}\\" で実行中のプロセスは終了されます。この操作は取り消せません。","menu":"ウィンドウ操作","dragHandle":"ドラッグしてウィンドウを並べ替え","dragHandlePane":"ドラッグしてペインを並べ替え","rename":"ウィンドウ名を変更","renamePlaceholder":"名前を入力","renameDesc":"カスタム名はターミナルが設定したタイトルを上書きし、ゲートウェイが再起動するまで保持されます。","renameReset":"自動名に戻す"},"watch":{"title":"監視ルール","dialogDesc":"このペインの画面を監視し、条件を満たしたら通知します","openMonitor":"このターミナルを監視","rules":{"empty":"このペインにはまだ監視ルールがありません","addRule":"新規ルール","edit":"編集","delete":"削除","viewState":"状態","lastTriggered":"最終トリガー:{{time}}","neverTriggered":"未トリガー","deleteTitle":"このルールを削除しますか?","deleteDesc":"「{{name}}」は完全に削除されます。","deleteConfirm":"削除"},"type":{"match":"マッチ","unchanged":"停滞","llm":"LLM"},"typeDesc":{"match":"正規表現が画面にマッチしたらトリガー","unchanged":"抽出した値が N 分間変化しない場合にトリガー(例:ダウンロード停滞)","llm":"LLM が定期的に画面を確認し自然言語の条件を判定"},"form":{"createTitle":"監視ルールを作成","editTitle":"監視ルールを編集","name":"ルール名","namePlaceholder":"例:ダウンロード停滞アラート","triggerType":"トリガー種別","pattern":"正規表現","patternPlaceholder":"例:(\\\\d+)%","flags":"フラグ","flagsPlaceholder":"例:i","extractGroup":"キャプチャグループ番号","extractGroupHint":"0 = マッチ全体。このグループの値を追跡します","unchangedMinutes":"変化なし継続(分)","noMatchBehavior":"マッチしない場合","noMatchReset":"タイマーをリセット(進捗行の消失 = タスク完了)","noMatchIgnore":"無視(前回値を保持)","conditionPrompt":"条件(自然言語)","conditionPromptPlaceholder":"例:コンパイルエラーでビルドが失敗した","model":"モデル","followGlobalDefault":"グローバル既定に従う","modelPlaceholder":"モデル ID","modelRequiredHint":"このルールは LLM を呼び出します。選択した(またはグローバル既定の)モデルが利用可能か確認してください。","confirmWithLlm":"通知前に LLM で再確認","confirmWithLlmDesc":"誤検知を低減。モデル利用不可時はそのまま通知","summarizeWithLlm":"LLM による通知要約","summarizeWithLlmDesc":"画面内容をモデルが要約して通知本文にします","intervalSeconds":"サンプリング間隔(秒)","intervalHint":"最小 {{min}} 秒","fireMode":"発火モード","fireOnce":"一回(発火後に自動停止)","fireRepeat":"繰り返し","cooldownSeconds":"クールダウン(秒)","enabled":"有効","assistLabel":"説明から正規表現を生成","assistPlaceholder":"例:ダウンロード進捗のパーセンテージにマッチ","assistButton":"生成","assistExplanation":"説明","assistPreview":"現在の画面でのマッチ","assistPreviewEmpty":"現在の画面サンプルにマッチなし","create":"作成","save":"保存","providerUnavailable":"元のプロバイダーは利用できません","providerDisabled":"無効"},"validation":{"nameRequired":"ルール名は必須です","patternRequired":"正規表現は必須です","patternInvalid":"正規表現が無効です:{{detail}}","unchangedMinutesInvalid":"変化なし継続分は 0 より大きい必要があります","conditionPromptRequired":"条件の説明は必須です","intervalMin":"サンプリング間隔は {{min}} 秒以上にしてください"},"state":{"title":"ルール状態","back":"戻る","lastSampledAt":"最終サンプリング","lastValue":"最新値","lastValueChangedAt":"値の最終変化","lastTriggeredAt":"最終トリガー","consecutiveErrors":"連続エラー回数","lastError":"最新エラー","samples":"直近サンプル","samplesEmpty":"サンプルなし","hit":"ヒット","none":"—"},"toast":{"created":"監視ルールを作成しました","updated":"監視ルールを更新しました","deleted":"監視ルールを削除しました","triggeredTitle":"監視トリガー","openTerminal":"ターミナルを開く","modelUnavailableTitle":"監視モデル利用不可","modelUnavailableHint":"ルールは縮退動作で継続します。","ruleErrorTitle":"監視ルールを自動停止しました"},"notifPermission":{"title":"ブラウザ通知を有効にしますか?","desc":"タブがバックグラウンドでも監視トリガー時に通知を受け取れます。","enable":"有効にする","dismiss":"今はしない"}},"validation":{"deviceNameRequired":"デバイス名は必須です","hostRequired":"SSH デバイスにはホストアドレスが必要です","portRequired":"SSH デバイスには有効なポートが必要です","usernameRequired":"SSH デバイスにはユーザー名が必要です","sshConfigRequired":"SSH デバイスには ssh config のパスが必要です"},"files":{"title":"ファイル","refresh":"ファイル一覧を更新","noRoots":"アクセス可能なディレクトリがありません。「設定 → ファイル」で追加してください。","emptyDir":"空のディレクトリ","truncated":"項目が多すぎるため一覧を省略しました","download":"ダウンロード","error":{"invalid":"不正なリクエスト","outside_roots":"許可されたディレクトリの範囲外です","not_found":"すでに存在しません","not_a_directory":"ディレクトリではありません","is_directory":"これはディレクトリです","too_large":"ファイルが大きすぎてプレビューできません","binary":"バイナリファイルはプレビューできません","permission_denied":"アクセスが拒否されました","device_not_found":"デバイスが見つかりません","root_not_found":"ディレクトリ項目が見つかりません","root_disabled":"このディレクトリは無効です","connection_failed":"デバイスへの接続に失敗しました","auth_unsupported":"このデバイスの認証方式はファイルアクセスに非対応です(鍵か ssh-agent を使用)","rsync_missing_local":"サーバーに rsync がインストールされていません","rsync_missing_remote":"リモートデバイスに rsync がインストールされていません","timeout":"タイムアウトしました","unknown":"読み込みに失敗しました"},"retry":"再試行(折りたたんで再展開)","menu":{"copyAbsolute":"絶対パスをコピー","copyRelative":"相対パスをコピー","sendToAgent":"Agent に送る","expand":"展開","collapse":"折りたたむ","upload":"このフォルダにアップロード","open":"開く"},"copied":"クリップボードにコピーしました","copyFailed":"コピーに失敗しました","sendToAgent":{"prompt":"このパスを処理してください:`{{path}}`"},"upload":{"uploading":"{{name}} をアップロード中…","success":"{{name}} をアップロードしました","fail":"{{name}} のアップロードに失敗しました"},"transfer":{"legUserToTmex":"ブラウザ → tmex","legTmexToServer":"tmex → サーバー","legServerToTmex":"サーバー → tmex","legTmexToUser":"tmex → ブラウザ","cancel":"キャンセル","canceled":"{{name}} をキャンセルしました","downloaded":"{{name}} をダウンロードしました","downloadFailed":"{{name}} のダウンロードに失敗しました","dragDownloadStarted":"{{name}} のダウンロードを開始(ブラウザが処理)","tooLarge":"{{name}} はサイズ上限({{max}})を超えています"},"agentLaunch":{"connectFailed":"デバイスへの接続に失敗しました","windowFailed":"ウィンドウの作成に失敗しました"},"install":{"button":"rsync をインストール","scopeLocal":"サーバー","scopeRemote":"リモート","prompt":"{{device}}({{scope}})に rsync が見つかりません。システムに合わせた方法で rsync をインストールし(例: `brew install rsync`、`sudo apt-get install -y rsync`、`sudo yum install -y rsync`)、完了したら返信してください。"}},"file":{"invalidRef":"無効なファイル参照です","notFound":"ファイルは存在しません","accessDenied":"アクセスが拒否されました","loadFailed":"ファイルの読み込みに失敗しました","isDirectory":"これはディレクトリです","notPreviewable":"このファイル形式はプレビューできません","tooLarge":"ファイルが大きすぎてプレビューできません","binary":"バイナリファイルはプレビューできません","download":"ダウンロード","openRaw":"元ファイルを開く"}}'),t={translation:e};export{t as default,e as translation};
1
+ const e=JSON.parse('{"common":{"loading":"読み込み中...","save":"保存","saving":"保存中...","cancel":"キャンセル","add":"追加","delete":"削除","edit":"編集","confirm":"確認","close":"閉じる","expand":"展開","collapse":"折りたたむ","refresh":"更新","test":"テスト","send":"送信","success":"成功","error":"エラー","warning":"警告","info":"情報","yes":"はい","no":"いいえ","enabled":"有効","disabled":"無効","pending":"保留中","authorized":"承認済み","unknown":"不明","empty":"空","none":"なし","default":"デフォルト","optional":"任意","required":"必須","pwaInstallTitle":"アプリとしてインストール","pwaInstallHintIOSSafari":"iOS Safari では自動的にインストールプロンプトが表示されません。共有ボタンをタップし、「ホーム画面に追加」を選択してください。","pwaInstallHintIOSChrome":"iOS Chrome では自動的にインストールプロンプトが表示されません。共有ボタンをタップし、「ホーム画面に追加」を選択してください。"},"nav":{"manageDevices":"デバイス管理","settings":"設定","sidebarExpand":"サイドバーを展開","sidebarCollapse":"サイドバーを折りたたむ","openSidebar":"サイドバーを開く","closeSidebar":"サイドバーを閉じる","jumpToLatest":"最新にジャンプ","switchToEditor":"エディタ入力に切り替え","switchToDirect":"直接入力に切り替え","refreshPage":"ページを更新","refreshPageConfirm":"ページを更新してもよろしいですか?保存されていない内容は失われます。"},"device":{"title":"デバイス管理","devices":"デバイス","addDevice":"デバイスを追加","addDeviceDescription":"デバイス情報を入力し、接続方法を選択してください","addFirstDevice":"最初のデバイスを追加","editDevice":"デバイスを編集","editDeviceDescription":"デバイス設定を更新","sectionBasic":"基本情報","sectionConnection":"接続情報","sectionAuth":"認証情報","noDevices":"デバイスがありません","noDevicesDescription":"ローカルまたは SSH デバイスを追加して開始","name":"デバイス名","namePlaceholder":"例:My Server","type":"タイプ","typeLocal":"ローカルデバイス","typeSSH":"SSH リモートデバイス","typeSSHBadge":"SSH","host":"ホスト","hostPlaceholder":"example.com","port":"ポート","username":"ユーザー名","usernamePlaceholder":"root","session":"Tmux セッション名","sessionPlaceholder":"tmex","sessionHint":"空の場合、デフォルトの「tmex」が使用されます","defaultWorkingDir":"デフォルト作業ディレクトリ","defaultWorkingDirPlaceholder":"空の場合、ユーザーのホームディレクトリを使用","authMode":"認証モード","authPassword":"パスワード","authKey":"秘密鍵","authAgent":"SSH Agent","authConfigRef":"SSH Config","sshConfigRefPlaceholder":"Host エイリアス(例: my-server)","sshConfigRefHint":"ssh config の Host エイリアスを入力します。`ssh -G` で解決されます。config ファイルのパスではありません。","password":"パスワード","privateKey":"秘密鍵","privateKeyPlaceholder":"-----BEGIN OPENSSH PRIVATE KEY-----","privateKeyPassphrase":"秘密鍵のパスフレーズ(任意)","passphrase":"パスフレーズ","connect":"接続","connected":"接続済み","disconnect":"切断","disconnected":"切断済み","connecting":"接続中...","dragHandle":"ドラッグしてデバイスを並べ替え","reorderFailed":"デバイスの並べ替えに失敗しました","deleteConfirm":"このデバイスを削除しますか?","deleteDescription":"デバイス「{{name}}」は完全に削除されます。この操作は取り消せません。","deleteSuccess":"デバイスを削除しました","createSuccess":"デバイスを作成しました","updateSuccess":"デバイスを更新しました","deleteFailed":"デバイスの削除に失敗しました","createFailed":"デバイスの作成に失敗しました","updateFailed":"デバイスの更新に失敗しました","loadFailed":"デバイス一覧の読み込みに失敗しました","localDevice":"ローカルデバイス","subtitle":"{{username}}@{{host}}:{{port}}","modify":"デバイスを変更","delete":"削除"},"terminal":{"keyboardBehavior":{"title":"キーボード動作","description":"ソフトウェアキーボード表示時のページの回避方法","modeLift":"ページ移動","modeLiftDesc":"キーボード表示時にページ全体を上に移動(端末サイズは不変)","modeResize":"端末リサイズ","modeResizeDesc":"キーボード上の領域に合わせて端末を縮小(リモートの行数が変わります)","modeFollow":"カーソル追従","modeFollowDesc":"カーソルがキーボードの真上に来るよう移動(端末サイズは不変)"},"initializing":"ターミナルを初期化中...","connecting":"デバイスに接続中...","initFailed":"ターミナルの初期化に失敗しました","inputPlaceholder":"ここにコマンドを入力...","clear":"クリア","deviceError":"デバイスエラー","deviceErrorWithType":"[{{type}}] デバイスエラー","noDeviceSelected":"デバイスが選択されていません","windowClosed":"現在のウィンドウは閉じられました。サイドバーからウィンドウを選択してください。","paneClosed":"現在のペインは閉じられました。サイドバーからペインを選択してください。","bellNotification":"ターミナルベル","bellDescriptionWithTitle":"ウィンドウ {{window}} · {{paneLabel}}","bellFallback":"tmux ベルを受信","notificationFallbackTitle":"ターミナル通知","notificationSourceLabel":"{{source}} から","notificationFallbackDetail":"ターミナル通知","paneTitle":"ペイン {{index}}","activePane":"現在のペイン","activeWindow":"現在のウィンドウ","editorPlaceholder":"ここにコマンドを入力...","editorClear":"クリア","editorSendWithEnter":"Enter で送信","editorSendLineByLine":"1行ずつ送信","editorSend":"送信","sendShortcut":"{{key}} を送信","inputModeDirect":"直接入力","inputModeEditor":"エディタ","newWindow":"新規ウィンドウ","closeWindow":"ウィンドウを閉じる","closePane":"ペインを閉じる","copy":"コピー","paste":"貼り付け","copied":"クリップボードにコピーしました","copyFailed":"コピーに失敗しました","pasteFailed":"クリップボードを読み取れません。ブラウザの権限を確認してください","clearSelection":"選択を解除"},"settings":{"title":"システム設定","siteSettings":"サイト設定","siteName":"サイト名","siteNamePlaceholder":"tmex","siteUrl":"サイト URL","siteUrlPlaceholder":"http://localhost:3000","bellThrottle":"ベル制限(秒)","notificationThrottle":"通知制限(秒)","enableBrowserBellToast":"ブラウザベル Toast を有効にする","enableBrowserNotificationToast":"ブラウザ通知 Toast を有効にする","enableTelegramBellPush":"Telegram ベルプッシュを有効にする","enableTelegramNotificationPush":"Telegram 通知プッシュを有効にする","enableWeixinBellPush":"WeChat ベル通知を有効化","enableWeixinNotificationPush":"WeChat 通知プッシュを有効化","sshReconnectRetries":"SSH 再接続試行回数","sshReconnectDelay":"SSH 再接続待機(秒)","language":"言語","languagePlaceholder":"言語を選択","language_en_US":"English","language_zh_CN":"简体中文","language_ja_JP":"日本語","theme":"ダークモード","themeLight":"ライト","themeDark":"ダーク","siteTab":"サイト","notificationsTab":"通知","tabGroup":{"general":"一般","devicesAndFiles":"デバイスとファイル","notifications":"通知","ai":"AI","terminal":"ターミナル"},"terminal":{"title":"ターミナル設定","description":"ターミナルのフォントサイズ・行の高さ・フォント、モバイルのキーボード回避を調整します。フォントの選択はアプリ全体の等幅テキストに適用されます。","fontSize":"フォントサイズ","lineHeight":"行の高さ","fontFamily":"フォント","preview":"プレビュー","savedInBrowser":"これらの設定はこのブラウザにのみ保存されます。","shortcuts":{"title":"カスタムショートカット","savedOnServer":"サーバーに保存され、すべてのブラウザで共有されます。変更は「保存」後に反映されます。","preview":"プレビュー","useIcons":"キーをアイコンで表示","useIconsDesc":"Ctrl/Shift/Enter などのキー名を Apple 風の記号(⌃⇧⏎)に置き換えます。","dragHandle":"ドラッグして並べ替え","delete":"削除","labelPlaceholder":"ラベル","payloadPlaceholder":"シーケンス(例: \\\\x1b[A)","addShortcut":"ショートカットを追加","capturePrompt":"任意のキーの組み合わせを押してください…","captureHint":"ここをクリックしてキーを押すと取得します","advanced":"詳細: シーケンスを手動入力","add":"追加","reset":"デフォルトに戻す","save":"保存","saved":"ショートカットを保存しました","saveFailed":"ショートカットの保存に失敗しました","loading":"読み込み中…","action":{"paste":"貼り付け","toggleKeyboard":"テキスト入力/キーボード切替","newAgentSession":"新しい Agent セッション","scrollToBottom":"ターミナルを最下部へ"},"loadFailed":"ショートカットの読み込みに失敗しました","retry":"再試行"}},"deviceManagement":{"title":"デバイス管理","description":"ローカルおよび SSH デバイスの追加・編集・接続を行います。","openButton":"デバイス管理を開く"},"refreshToApply":"言語変更を適用するには更新してください","saveSettings":"設定を保存","settingsSaved":"設定を保存しました","saveFailed":"設定の保存に失敗しました","loadFailed":"設定の読み込みに失敗しました","restartGateway":"Gateway を再起動","restartScheduled":"Gateway の再起動が予定されました","restartConfirm":"Gateway を再起動してもよろしいですか?すべてのアクティブ接続が中断されます。","restartFailed":"Gateway の再起動に失敗しました","sshReconnectMaxRetries":"SSH 再接続試行回数","llm":{"title":"LLM プロバイダー","name":"名前","namePlaceholder":"例: OpenAI","baseUrl":"Base URL","baseUrlPlaceholder":"https://api.openai.com","baseUrlHint":"デフォルトで /v1 を自動補完。/ で終わるとパスをそのまま使用","protocol":"プロトコル","apiKey":"API キー","apiKeyPlaceholder":"API キーを入力","apiKeySetPlaceholder":"設定済み、空欄の場合は変更されません","addProvider":"プロバイダーを追加","editProvider":"プロバイダーを編集","formHint":"プロバイダーの接続を設定","models":"モデル","modelsTitle":"{{name}} のモデル","modelsHint":"このプロバイダーで利用するモデルを管理(有効化と手動追加)","modelManual":"手動","addModelPlaceholder":"モデル ID を追加","empty":"プロバイダーはまだありません","refreshModels":"モデルを更新","modelsCount":"{{total}} 個のモデル","modelsNotFetched":"モデル一覧は未取得です","modelsFetchFailed":"モデル一覧の取得に失敗しました:{{error}}","deleteProvider":"プロバイダーを削除","deleteConfirm":"プロバイダー「{{name}}」を削除しますか?","defaults":"グローバル既定","defaultProvider":"既定プロバイダー","defaultProviderNone":"未設定","defaultModel":"既定モデル","defaultModelPlaceholder":"モデル ID を入力または選択","saveDefaults":"既定を保存","loadFailed":"LLM プロバイダーの読み込みに失敗しました","createFailed":"プロバイダーの作成に失敗しました","updateFailed":"プロバイダーの更新に失敗しました","deleteFailed":"プロバイダーの削除に失敗しました","refreshModelsFailed":"モデルの更新に失敗しました","settingsLoadFailed":"LLM 設定の読み込みに失敗しました","settingsSaveFailed":"LLM 設定の保存に失敗しました"},"search":{"title":"検索","provider":"検索プロバイダー","responsesApiHint":"LLM プロバイダーが OpenAI Responses API プロトコルを使用している場合、その内蔵 hosted 検索ツールを利用できます。下記のサードパーティ検索は任意の補完です。","providerNone":"無効","tavilyApiKey":"Tavily API キー","braveApiKey":"Brave API キー","keyPlaceholder":"API キーを入力","keySetPlaceholder":"設定済み、空欄の場合は変更されません","clearKey":"クリア","clearKeyConfirm":"この API キーをクリアしますか?再度入力が必要になります。","loadFailed":"検索設定の読み込みに失敗しました","saveFailed":"検索設定の保存に失敗しました"},"files":{"title":"ファイル","description":"「ファイル」タブで閲覧できるデバイスごとのディレクトリを設定します。ローカルは直接読み取り、SSH は rsync を使用。","addRoot":"ディレクトリを追加","roots":"ディレクトリ","empty":"ディレクトリが設定されていません","missing":"デバイスが見つかりません","modalAddTitle":"ディレクトリを追加","modalEditTitle":"ディレクトリを編集","device":"デバイス","devicePlaceholder":"デバイスを選択","noDevices":"デバイスがありません。先に追加してください","path":"パス","pathPlaceholder":"/絶対パス/ディレクトリ","pathHint":"選択したデバイス上の絶対パス。","enabled":"有効","addFailed":"ディレクトリの追加に失敗しました","updateFailed":"ディレクトリの更新に失敗しました","deleteFailed":"ディレクトリの削除に失敗しました","toggleFailed":"ディレクトリの更新に失敗しました","deleteTitle":"ディレクトリを削除しますか?","deleteDesc":"「{{path}}」をホワイトリストから削除しますか?配下のファイルにアクセスできなくなります。"},"version":{"title":"バージョンと更新","currentVersion":"現在のバージョン","installMethod":"インストール方法","installMethodCli":"CLI でインストール","installMethodNonCli":"CLI 以外でインストール","deployment":"デプロイ方式","deploymentLaunchd":"launchd(macOS)","deploymentSystemd":"systemd(Linux)","deploymentNone":"なし","checkUpdate":"更新を確認","checking":"確認中…","upToDate":"最新バージョンです。","updateAvailable":"更新があります:{{version}}","changelog":"変更履歴","changelogUnavailable":"このバージョンの変更履歴はありません。","publishedAt":"公開日 {{date}}","upgrade":"今すぐ更新","upgradeDisabledDev":"production 以外の環境ではアプリ内更新は無効です。","upgradeDisabledNonCli":"アプリ内更新は CLI インストール時のみ利用できます。","upgradeWarningTitle":"更新の確認","upgradeWarningBody":"更新するとサービスが再起動し、現在のセッションが中断されます。サービスが管理する tmux プロセスの存続にも影響する可能性があります。続行しますか?","upgradeStarted":"更新を開始しました","stateDownloading":"新しいバージョンをダウンロード中…","stateExecuting":"更新を適用中、サービスを再起動しています…","interruptNotice":"サービス再起動中は接続が切断されますが、まもなく復旧します。","checkFailed":"更新の確認に失敗しました","terminalHint":"またはターミナルから更新:npx tmex-cli@<version> upgrade"}},"telegram":{"title":"Telegram Bot 管理","botName":"Bot 名","botNamePlaceholder":"例:ops-bot","botToken":"Bot Token","botTokenPlaceholder":"123456:AA...","addBot":"Bot を追加","editBot":"Bot を編集","enableBot":"Bot を有効にする","allowAuthRequests":"認証リクエストを許可","pendingChats":"承認待ち","chats":"承認済み","authorizedChats":"承認済み","noPendingChats":"承認待ちのチャットはありません","noAuthorizedChats":"承認済みのチャットはありません","approve":"承認","authorize":"認証","reject":"拒否","revokeAuth":"認証を取り消す","testMessage":"テストメッセージ","sendTestMessage":"テストメッセージを送信","deleteBot":"Bot を削除","tokenOptional":"Token(変更しない場合は空)","tokenPlaceholder":"新しい token を入力","botCreated":"Bot を作成しました","botUpdated":"Bot を更新しました","botDeleted":"Bot を削除しました","authApproved":"認証が承認されました","chatRemoved":"チャットを削除しました","testMessageSent":"テストメッセージを送信しました","createFailed":"Bot の作成に失敗しました","updateFailed":"Bot の更新に失敗しました","deleteFailed":"Bot の削除に失敗しました","approveFailed":"認証の承認に失敗しました","removeFailed":"チャットの削除に失敗しました","testMessageFailed":"テストメッセージの送信に失敗しました","loadBotsFailed":"Bot 一覧の読み込みに失敗しました","loadChatsFailed":"チャット一覧の読み込みに失敗しました","noBots":"Bot がありません。まず追加してください。","expand":"展開","collapse":"折りたたむ","authCount":"承認済み {{authorized}} / 承認待ち {{pending}}(最大 8)","chatId":"Chat ID","applyTime":"申請時間","gatewayOnline":"🟢 Gateway online @ {{siteName}}","deviceConnectionError":"🔴 {{siteName}}:デバイス「{{deviceName}}」({{host}}) で接続エラー [{{category}}]\\n{{error}}","agentCredentialWarning":"⚠️ {{siteName}}:Agent セッション「{{sessionTitle}}」のメッセージに認証情報が含まれている可能性があります({{types}})。LLM に送信され保存されるため、漏洩のリスクがあります。","authSuccess":"✅ 承認されました。通知を受信できます。","authPending":"⏳ 認証リクエストを受信しました。tmex 設定ページで承認してください。","authFailed":"❌ 認証リクエストに失敗しました。管理者に連絡してください。","testMessageTemplate":"🧪 テストメッセージ\\nサイト:{{siteName}}\\n時間:{{time}}","approveMessageTemplate":"✅ tmex で承認されました。\\nBot:{{botName}}\\n時間:{{time}}","botNotFound":"Bot が見つからないか利用できません","botNotRunning":"Bot が起動していないか利用できません"},"weixin":{"title":"WeChat (ClawBot) 管理","subtitle":"iLink bot プロトコルで tmex のアラートを個人 WeChat へ送信します。","replyOnlyNotice":"iLink はアクティブな会話ウィンドウ内でのみ返信できます。まず bot にメッセージを送って有効化すると、以降のアラートはそのセッションを再利用します。一定時間操作がないとセッションは失効するため、再度 bot にメッセージを送って再有効化してください。","accountName":"アカウント名","accountNamePlaceholder":"例:my-wechat","addAccount":"アカウントを追加","editAccount":"アカウントを編集","enableAccount":"アカウントを有効化","allowAuthRequests":"認証リクエストを許可","scanToLogin":"スキャンしてログイン","relogin":"再ログイン(再スキャン)","loggedIn":"ログイン済み","notLoggedIn":"未ログイン","scanQrcodeHint":"WeChat を開いて QR コードをスキャンし、スマホで確認してください。","loginPending":"スキャン待ち…","loginConfirmed":"ログインが確認されました。","loginExpired":"QR コードの有効期限が切れました。再試行してください。","loginError":"ログイン失敗:{{message}}","loginFailed":"ログイン失敗","refreshQrcode":"QR コードを更新","closeLogin":"閉じる","pendingUsers":"承認待ち","authorizedUsers":"承認済みユーザー","noPendingUsers":"承認待ちのユーザーはいません","noAuthorizedUsers":"承認済みのユーザーはいません","needsReactivation":"セッション失効","reactivationHint":"このユーザーに bot へメッセージを送ってもらい、アラートを再有効化してください。","approve":"承認","revokeAuth":"承認を取り消す","removeUser":"削除","testMessage":"テストメッセージ","sendTestMessage":"テストメッセージを送信","deleteAccount":"アカウントを削除","accountCreated":"アカウントを作成しました","accountUpdated":"アカウントを更新しました","accountDeleted":"アカウントを削除しました","authApproved":"認証を承認しました","userRemoved":"ユーザーを削除しました","testMessageSent":"テストメッセージを送信しました","createFailed":"アカウントの作成に失敗しました","updateFailed":"アカウントの更新に失敗しました","deleteFailed":"アカウントの削除に失敗しました","approveFailed":"承認に失敗しました","removeFailed":"ユーザーの削除に失敗しました","testMessageFailed":"テストメッセージの送信に失敗しました","loadAccountsFailed":"アカウント一覧の読み込みに失敗しました","loadUsersFailed":"ユーザー一覧の読み込みに失敗しました","noAccounts":"アカウントがまだありません。まず追加してください。","userCount":"{{authorized}} 承認済み / {{pending}} 承認待ち(最大 16)","userId":"WeChat ユーザー ID","applyTime":"初回連絡","expand":"展開","collapse":"折りたたむ","accountNameRequired":"アカウント名は必須です","accountNotFound":"アカウントが見つからないか利用できません","accountNotRunning":"アカウントが未ログインまたは未起動です","userNotFound":"ユーザーが見つかりません","authSuccess":"✅ 認証されました。通知を受け取れます。","authPending":"⏳ 認証リクエストを受け取りました。tmex の設定で承認してください。","testMessageTemplate":"🧪 テストメッセージ\\nサイト:{{siteName}}\\n時刻:{{time}}","approveMessageTemplate":"✅ tmex 経由で認証しました。\\nアカウント:{{accountName}}\\n時刻:{{time}}","keepalivePrompt":"【tmex】通知を確実に受け取るため、任意の内容を返信して接続を維持してください 🙏","scanConfirmedSendHint":"スキャン完了!WeChat でこの bot に任意のメッセージを送信して紐付けを完了してください。","bindingInProgress":"メッセージを受信、紐付けを完了しています…","bindSuccess":"WeChat を紐付けました。通知を受け取れます。","bound":"紐付け済み","unbound":"未紐付け","bindAction":"スキャンして紐付け","gatewayOnline":"🟢 tmex オンライン @ {{siteName}}"},"webhook":{"title":"Webhooks","url":"Webhook URL","secret":"シークレット","secretPlaceholder":"署名に使用(HMAC-SHA256)","enabled":"有効","eventMask":"イベント","add":"Webhook を追加","empty":"Webhook がありません。","createFailed":"Webhook の作成に失敗しました","deleteFailed":"Webhook の削除に失敗しました","loadFailed":"Webhook の読み込みに失敗しました"},"sshError":{"sshConfigRefNotSupported":"このバージョンでは SSH Config 参照はサポートされていません。host + username を使用し、Agent/秘密鍵/パスワード認証を選択してください。","configRefNotSupported":"このバージョンでは SSH Config 参照はサポートされていません。host + username を使用し、Agent/秘密鍵/パスワード認証を選択してください。","agentUnavailable":"SSH Agent が利用できません:SSH_AUTH_SOCK が検出されません。agent 環境を確認してください。","agentNoIdentity":"SSH Agent に利用可能な鍵がありません。ssh-add を実行してください。","agentNoIdentities":"SSH Agent に利用可能な鍵がありません。ssh-add を実行してください。","authFailed":"認証に失敗しました:ユーザー名、パスワード、または鍵が正しくありません。デバイス設定を確認してください。","authFailedGeneric":"認証に失敗しました:ユーザー名、パスワード、または鍵が正しくありません。デバイス設定を確認してください。","networkUnreachable":"ネットワークに到達できません:ルーティング、ファイアウォール、または VPN 設定を確認してください。","connectionRefused":"接続が拒否されました:ターゲットホストに接続できません。ホストアドレスとポートを確認してください。","timeout":"接続タイムアウト:デバイスに接続できません。ネットワークまたはファイアウォール設定を確認してください。","connectionTimeout":"接続タイムアウト:デバイスに接続できません。ネットワークまたはファイアウォール設定を確認してください。","hostNotFound":"ホストが見つかりません:ホスト名を解決できません。DNS またはホスト名設定を確認してください。","handshakeFailed":"ハンドシェイクに失敗しました:安全な接続を確立できません。キー交換アルゴリズムが互換性がない可能性があります。","tmuxUnavailable":"リモート tmux が利用できないか起動に失敗しました。tmux がインストールされ、リモート shell の PATH から参照できることを確認してください。","connectionClosed":"接続が切断されました。再接続を試みています","unknown":"接続に失敗しました:{{message}}","reconnecting":"接続が中断されました。{{delay}} 秒後に再接続します({{attempt}}/{{maxRetries}})","reconnectFailed":"自動再接続に失敗しました。手動で再試行してください","reconnected":"デバイスが自動的に再接続されました"},"deviceStatus":{"reconnecting":"再接続中 {{delay}}s","offline":"オフライン","errorBadge":{"authFailed":"認証失敗","agentUnavailable":"Agent 利用不可","agentNoIdentity":"Agent に鍵なし","configRefNotSupported":"SSH Config 非対応","networkUnreachable":"ネットワーク不可達","connectionRefused":"接続拒否","timeout":"タイムアウト","hostNotFound":"ホスト未検出","handshakeFailed":"ハンドシェイク失敗","tmuxUnavailable":"tmux 利用不可","connectionClosed":"切断","unknown":"接続エラー"}},"websocket":{"error":"WebSocket 接続エラー","checkGateway":"Gateway 状態を確認してください","upgradeFailed":"アップグレードに失敗しました","invalidMessage":"無効なメッセージ形式","reconnecting":"再接続中","reconnect":"再接続"},"wsError":{"checkGateway":"Gateway 状態を確認してください"},"apiError":{"siteNameRequired":"サイト名は空にできません","siteUrlInvalid":"サイト URL は http:// または https:// で始まる必要があります","bellThrottleInvalid":"ベル制限秒数は 0-300 の間である必要があります","sshRetriesInvalid":"SSH 再接続試行回数は 0-20 の間である必要があります","sshDelayInvalid":"SSH 再接続待機時間は 1-300 秒の間である必要があります","languageInvalid":"言語はサポートされているロケールのいずれかである必要があります","botNameRequired":"Bot 名は空にできません","botTokenRequired":"Bot token は空にできません","missingFields":"必須フィールドがありません","sshRequiresHost":"SSH デバイスには host または sshConfigRef が必要です","invalidRequest":"無効なリクエスト","deviceNotFound":"デバイスが見つかりません","botNotFound":"Bot が見つかりません","chatNotFound":"チャットが見つかりません","urlAndSecretRequired":"URL とシークレットが必要です","notFound":"見つかりません","llmProviderNameRequired":"プロバイダー名は空にできません","llmProviderProtocolInvalid":"プロトコルは openai-chat または openai-responses である必要があります","llmProviderBaseUrlInvalid":"Base URL は http:// または https:// で始まる必要があります","llmProviderApiKeyRequired":"API key は空にできません","llmProviderNotFound":"LLM プロバイダーが見つかりません","llmProviderDisabled":"LLM プロバイダー {{name}} は無効化されています","llmNoDefaultProvider":"LLM プロバイダーが指定されておらず、デフォルトプロバイダーも設定されていません","llmNoDefaultModel":"モデルが指定されておらず、デフォルトモデルも設定されていません","llmDefaultProviderNotFound":"デフォルトプロバイダーが存在しません","llmSearchProviderInvalid":"検索プロバイダーは none、tavily、brave のいずれかである必要があります","llmFetchModelsFailed":"モデル一覧の取得に失敗しました:{{detail}}","agentSessionNotFound":"Agent セッションが存在しません","agentSessionBusy":"Agent セッションは実行中です。停止するか完了をお待ちください","agentSessionAwaitingConfirmation":"Agent セッションに未処理の確認リクエストがあります。先に処理してください","agentDeviceRequired":"デバイスを指定してください","agentPaneRequired":"ターミナル pane を指定してください","agentWriteModeInvalid":"書き込みモードは confirm または auto である必要があります","agentMaxStepsInvalid":"1 ターンあたりの最大ステップ数は 1〜100 の範囲で指定してください","agentProviderWebSearchRequiresResponses":"プロバイダ内蔵の Web 検索は openai-responses プロトコルのみ対応しています","agentHostedToolUnknown":"不明な hosted ツール: {{name}}","agentHostedToolRequiresResponses":"プロバイダの hosted ツールは openai-responses プロトコルのみ対応しています","agentSessionOrphaned":"この Agent セッションは孤立しており(端末が存在しません)、読み取り専用です","agentQueuedMessageNotFound":"キューのメッセージが存在しません","agentConfirmationNotFound":"確認リクエストが存在しません","agentConfirmationAlreadyDecided":"確認リクエストは既に処理済みです","agentMessageTextRequired":"メッセージ内容を入力してください","watchRuleNotFound":"Watch ルールが存在しません","watchNameRequired":"ルール名を入力してください","watchTriggerTypeInvalid":"トリガー種別は match、unchanged、llm のいずれかです","watchPatternRequired":"match/unchanged ルールには正規表現が必要です","watchPatternInvalid":"正規表現が無効です:{{detail}}","watchUnchangedMinutesInvalid":"unchanged ルールには 0 より大きい未変化分数が必要です","watchExtractGroupInvalid":"キャプチャグループ番号は 0 以上の整数で指定してください","watchConditionPromptRequired":"llm ルールには条件の説明が必要です","watchIntervalInvalid":"サンプリング間隔は {{min}} 秒以上で指定してください","watchNoMatchBehaviorInvalid":"非マッチ時の挙動は reset または ignore です","watchFireModeInvalid":"発火モードは once または repeat です","watchCooldownInvalid":"クールダウン秒数は 0 以上の整数で指定してください","watchAssistDescriptionRequired":"マッチさせたい内容を記述してください","watchAssistModelUnavailable":"モデル呼び出しに失敗しました:{{detail}}","fileRootInvalid":"絶対パスかつ既存のディレクトリを指定してください","fileOutsideRoots":"許可されたディレクトリの範囲外です","fileNotADirectory":"ディレクトリではありません","fileTooLarge":"ファイルが大きすぎます","fileBinary":"バイナリファイルはサポートされていません","fileRootDeviceInvalid":"無効または不明なデバイス","fileRootDuplicate":"このディレクトリはこのデバイスに既に追加されています","upgradeNotAllowed":"このインストールではアプリ内更新を利用できません。","upgradeInProgress":"すでに更新が進行中です。","upgradeVersionRequired":"対象バージョンが必要です。","updateCheckFailed":"npm registry の照会に失敗しました。","terminalShortcutsTooMany":"ショートカットが多すぎます","terminalShortcutInvalid":"ショートカット設定が不正です"},"notification":{"clickToJump":"対応するペインにジャンプ","eventType":{"terminal_bell":"🔔 ターミナルベル","terminal_notification":"🔔 ターミナル通知","tmux_window_close":"🪟 ウィンドウ閉じる","tmux_pane_close":"📱 ペイン閉じる","device_tmux_missing":"⚠️ Tmux がありません","device_disconnect":"🔌 デバイス切断","session_created":"🆕 セッション作成","session_closed":"🚪 セッション閉じる","agent_confirmation_pending":"🤖 エージェント確認待ち","agent_turn_finished":"🤖 エージェントターン完了","agent_error":"🤖 エージェントエラー","watch_triggered":"👁️ Watch ルール発動","watch_model_unavailable":"👁️ Watch モデル利用不可","watch_rule_error":"👁️ Watch ルールエラー"},"site":"サイト","device":"デバイス","window":"ウィンドウ","pane":"ペイン","time":"時間","directLink":"直接リンク","message":"メッセージ","paneTitle":"タイトル","process":"プロセス","telegramBell":{"title":"🔔 {{siteName}} からのベル:{{terminalTopbarLabel}}","viewLink":"表示","terminalTopbarLabel":"ウィンドウ {{window}} · ペイン {{pane}} @ {{device}}"},"telegramNotification":{},"agent":{"confirmationPending":"Agent「{{title}}」がツール {{toolName}} の実行確認を求めています","turnFinished":"Agent「{{title}}」のターンが完了しました","error":"Agent「{{title}}」でエラーが発生しました:{{message}}"},"watch":{"matchTriggered":"Watch「{{name}}」がマッチしました:{{text}}","unchangedTriggered":"Watch「{{name}}」の値「{{value}}」が {{minutes}} 分間変化していません","llmTriggered":"Watch「{{name}}」の条件を満たしました:{{reason}}","summaryTriggered":"Watch「{{name}}」:{{summary}}","unconfirmedSuffix":"(モデル利用不可のため LLM 未確認)","modelUnavailable":"Watch「{{name}}」のモデル呼び出しに失敗しました:{{message}}","ruleError":"Watch「{{name}}」が {{count}} 回連続で失敗したため自動停止しました:{{message}}","paneGone":"Watch「{{name}}」のペイン({{paneId}})が破棄されたため、ルールを削除しました"}},"sidebar":{"noWindows":"ウィンドウがありません","noDevices":"デバイスがありません","addDeviceLink":"デバイスを追加","openSettingsLink":"設定を開く","openSettings":"設定を開く","manageDevices":"デバイス管理","settings":"設定","currentWindow":"現在のウィンドウ","currentPane":"現在のペイン","newWindow":"ウィンドウを作成","closeWindow":"ウィンドウを閉じる","closePane":"ペインを閉じる","addDevice":"デバイスを追加","tab":{"panes":"Panes","agent":"Agent","files":"Files"},"orphanedSessions":"孤立セッション"},"agent":{"error":{"streamStalled":"モデルが応答を停止しました(上流ストリームが停止)。再試行してください。"},"model":{"select":"モデルを選択","placeholder":"モデル","noProviders":"モデルがありません — 設定でプロバイダーを構成してください"},"queue":{"title":"キュー({{count}})","steer":"今すぐ注入","steerHint":"現在のステップを中断してキューを今すぐ注入","withdraw":"取り消し"},"orphan":{"readonly":"このセッションは孤立しており(端末が存在しません)、読み取り専用です","title":"孤立セッション","process":"プロセス","startedAt":"作成日時"},"files":{"comingSoon":"Coming Soon"},"panel":{"title":"Agent","empty":"セッションを選択または作成してください","inputPlaceholder":"メッセージを入力…","send":"送信","stop":"停止","retry":"再試行","scrollToBottom":"最下部へ"},"welcome":{"title":"新しい Agent チャット","subtitle":"タスクを入力して、選択した端末での作業を始めましょう"},"session":{"none":"セッション未選択","new":"新規エージェントセッション","switch":"セッションを切り替え","selectPaneHint":"Panes タブでペインを選択してセッションを開始してください","noSessions":"セッションがありません","showAll":"すべてのセッションを表示","rename":"セッション名を変更","renameTitle":"セッション名を変更","renamePlaceholder":"セッション名","save":"保存","cancel":"キャンセル","delete":"セッションを削除","deleteTitle":"このセッションを削除しますか?","deleteDesc":"「{{title}}」とそのメッセージはすべて完全に削除されます。","deleteConfirm":"削除","createDisabledNoPane":"ターミナル pane を開いてからセッションを作成してください","privacyNotice":"セッションはターミナル画面の内容を設定済みの LLM サービスへ送信します。"},"binding":{"invalid":"無効","mismatchTitle":"このセッションは別の pane にバインドされています","goTo":"移動","rebind":"現在の pane に再バインド"},"writeMode":{"confirm":"書き込み確認","auto":"自動実行"},"confirm":{"title":"承認待ち","approve":"許可","deny":"拒否"},"tool":{"input":"入力","result":"結果","screen":"画面キャプチャ","send_input":"入力送信","read_screen":"画面読み取り","web_search":"Web 検索","fetch_url":"URL 取得","denied":"拒否されました"},"reasoning":{"title":"思考プロセス"},"toast":{"errorTitle":"Agent「{{title}}」でエラー","credentialWarningTitle":"メッセージに認証情報が含まれる可能性","credentialWarningDescription":"{{types}} を検出しました。内容は変更されませんが、LLM に送信され保存されるため、漏洩のリスクがあります。"}},"window":{"noWindows":"ウィンドウがありません","new":"新規ウィンドウ","newInCwd":"この場所で新規ウィンドウ","close":"ウィンドウを閉じる","closePane":"ペインを閉じる","closeConfirmTitle":"このウィンドウを閉じますか?","closePaneConfirmTitle":"このペインを閉じますか?","closeConfirmDesc":"\\"{{name}}\\" で実行中のプロセスは終了されます。この操作は取り消せません。","menu":"ウィンドウ操作","dragHandle":"ドラッグしてウィンドウを並べ替え","dragHandlePane":"ドラッグしてペインを並べ替え","rename":"ウィンドウ名を変更","renamePlaceholder":"名前を入力","renameDesc":"カスタム名はターミナルが設定したタイトルを上書きし、ゲートウェイが再起動するまで保持されます。","renameReset":"自動名に戻す","switchPane":"ペイン切替","splitRight":"右に分割","splitDown":"下に分割","paneCount":"{{count}} ペイン","pane":"ペイン","moveToWindow":"このウィンドウへ移動","breakToWindow":"新しいウィンドウに分離"},"watch":{"title":"監視ルール","dialogDesc":"このペインの画面を監視し、条件を満たしたら通知します","openMonitor":"このターミナルを監視","rules":{"empty":"このペインにはまだ監視ルールがありません","addRule":"新規ルール","edit":"編集","delete":"削除","viewState":"状態","lastTriggered":"最終トリガー:{{time}}","neverTriggered":"未トリガー","deleteTitle":"このルールを削除しますか?","deleteDesc":"「{{name}}」は完全に削除されます。","deleteConfirm":"削除"},"type":{"match":"マッチ","unchanged":"停滞","llm":"LLM"},"typeDesc":{"match":"正規表現が画面にマッチしたらトリガー","unchanged":"抽出した値が N 分間変化しない場合にトリガー(例:ダウンロード停滞)","llm":"LLM が定期的に画面を確認し自然言語の条件を判定"},"form":{"createTitle":"監視ルールを作成","editTitle":"監視ルールを編集","name":"ルール名","namePlaceholder":"例:ダウンロード停滞アラート","triggerType":"トリガー種別","pattern":"正規表現","patternPlaceholder":"例:(\\\\d+)%","flags":"フラグ","flagsPlaceholder":"例:i","extractGroup":"キャプチャグループ番号","extractGroupHint":"0 = マッチ全体。このグループの値を追跡します","unchangedMinutes":"変化なし継続(分)","noMatchBehavior":"マッチしない場合","noMatchReset":"タイマーをリセット(進捗行の消失 = タスク完了)","noMatchIgnore":"無視(前回値を保持)","conditionPrompt":"条件(自然言語)","conditionPromptPlaceholder":"例:コンパイルエラーでビルドが失敗した","model":"モデル","followGlobalDefault":"グローバル既定に従う","modelPlaceholder":"モデル ID","modelRequiredHint":"このルールは LLM を呼び出します。選択した(またはグローバル既定の)モデルが利用可能か確認してください。","confirmWithLlm":"通知前に LLM で再確認","confirmWithLlmDesc":"誤検知を低減。モデル利用不可時はそのまま通知","summarizeWithLlm":"LLM による通知要約","summarizeWithLlmDesc":"画面内容をモデルが要約して通知本文にします","intervalSeconds":"サンプリング間隔(秒)","intervalHint":"最小 {{min}} 秒","fireMode":"発火モード","fireOnce":"一回(発火後に自動停止)","fireRepeat":"繰り返し","cooldownSeconds":"クールダウン(秒)","enabled":"有効","assistLabel":"説明から正規表現を生成","assistPlaceholder":"例:ダウンロード進捗のパーセンテージにマッチ","assistButton":"生成","assistExplanation":"説明","assistPreview":"現在の画面でのマッチ","assistPreviewEmpty":"現在の画面サンプルにマッチなし","create":"作成","save":"保存","providerUnavailable":"元のプロバイダーは利用できません","providerDisabled":"無効"},"validation":{"nameRequired":"ルール名は必須です","patternRequired":"正規表現は必須です","patternInvalid":"正規表現が無効です:{{detail}}","unchangedMinutesInvalid":"変化なし継続分は 0 より大きい必要があります","conditionPromptRequired":"条件の説明は必須です","intervalMin":"サンプリング間隔は {{min}} 秒以上にしてください"},"state":{"title":"ルール状態","back":"戻る","lastSampledAt":"最終サンプリング","lastValue":"最新値","lastValueChangedAt":"値の最終変化","lastTriggeredAt":"最終トリガー","consecutiveErrors":"連続エラー回数","lastError":"最新エラー","samples":"直近サンプル","samplesEmpty":"サンプルなし","hit":"ヒット","none":"—"},"toast":{"created":"監視ルールを作成しました","updated":"監視ルールを更新しました","deleted":"監視ルールを削除しました","triggeredTitle":"監視トリガー","openTerminal":"ターミナルを開く","modelUnavailableTitle":"監視モデル利用不可","modelUnavailableHint":"ルールは縮退動作で継続します。","ruleErrorTitle":"監視ルールを自動停止しました"},"notifPermission":{"title":"ブラウザ通知を有効にしますか?","desc":"タブがバックグラウンドでも監視トリガー時に通知を受け取れます。","enable":"有効にする","dismiss":"今はしない"}},"validation":{"deviceNameRequired":"デバイス名は必須です","hostRequired":"SSH デバイスにはホストアドレスが必要です","portRequired":"SSH デバイスには有効なポートが必要です","usernameRequired":"SSH デバイスにはユーザー名が必要です","sshConfigRequired":"SSH デバイスには ssh config のパスが必要です"},"files":{"title":"ファイル","refresh":"ファイル一覧を更新","noRoots":"アクセス可能なディレクトリがありません。「設定 → ファイル」で追加してください。","emptyDir":"空のディレクトリ","truncated":"項目が多すぎるため一覧を省略しました","download":"ダウンロード","error":{"invalid":"不正なリクエスト","outside_roots":"許可されたディレクトリの範囲外です","not_found":"すでに存在しません","not_a_directory":"ディレクトリではありません","is_directory":"これはディレクトリです","too_large":"ファイルが大きすぎてプレビューできません","binary":"バイナリファイルはプレビューできません","permission_denied":"アクセスが拒否されました","device_not_found":"デバイスが見つかりません","root_not_found":"ディレクトリ項目が見つかりません","root_disabled":"このディレクトリは無効です","connection_failed":"デバイスへの接続に失敗しました","auth_unsupported":"このデバイスの認証方式はファイルアクセスに非対応です(鍵か ssh-agent を使用)","rsync_missing_local":"サーバーに rsync がインストールされていません","rsync_missing_remote":"リモートデバイスに rsync がインストールされていません","timeout":"タイムアウトしました","unknown":"読み込みに失敗しました"},"retry":"再試行(折りたたんで再展開)","menu":{"copyAbsolute":"絶対パスをコピー","copyRelative":"相対パスをコピー","sendToAgent":"Agent に送る","expand":"展開","collapse":"折りたたむ","upload":"このフォルダにアップロード","open":"開く"},"copied":"クリップボードにコピーしました","copyFailed":"コピーに失敗しました","sendToAgent":{"prompt":"このパスを処理してください:`{{path}}`"},"upload":{"uploading":"{{name}} をアップロード中…","success":"{{name}} をアップロードしました","fail":"{{name}} のアップロードに失敗しました"},"transfer":{"legUserToTmex":"ブラウザ → tmex","legTmexToServer":"tmex → サーバー","legServerToTmex":"サーバー → tmex","legTmexToUser":"tmex → ブラウザ","cancel":"キャンセル","canceled":"{{name}} をキャンセルしました","downloaded":"{{name}} をダウンロードしました","downloadFailed":"{{name}} のダウンロードに失敗しました","dragDownloadStarted":"{{name}} のダウンロードを開始(ブラウザが処理)","tooLarge":"{{name}} はサイズ上限({{max}})を超えています"},"agentLaunch":{"connectFailed":"デバイスへの接続に失敗しました","windowFailed":"ウィンドウの作成に失敗しました"},"install":{"button":"rsync をインストール","scopeLocal":"サーバー","scopeRemote":"リモート","prompt":"{{device}}({{scope}})に rsync が見つかりません。システムに合わせた方法で rsync をインストールし(例: `brew install rsync`、`sudo apt-get install -y rsync`、`sudo yum install -y rsync`)、完了したら返信してください。"}},"file":{"invalidRef":"無効なファイル参照です","notFound":"ファイルは存在しません","accessDenied":"アクセスが拒否されました","loadFailed":"ファイルの読み込みに失敗しました","isDirectory":"これはディレクトリです","notPreviewable":"このファイル形式はプレビューできません","tooLarge":"ファイルが大きすぎてプレビューできません","binary":"バイナリファイルはプレビューできません","download":"ダウンロード","openRaw":"元ファイルを開く"}}'),t={translation:e};export{t as default,e as translation};
@@ -1,4 +1,4 @@
1
- import{g as gt}from"./chunk-FMBD7UC4-CXm-3D35.js";import{a as mt,g as lt,h as xt,d as kt}from"./chunk-ND2GUHAM-DH_J0yjP.js";import{g as _t,s as vt,a as bt,b as wt,q as Tt,p as St,_ as s,c as R,d as X,e as $t,z as Mt}from"./mermaid.core-DE3GlZm2.js";import{d as it}from"./arc-Bct5uFHQ.js";import"./index-CEPc0i5O.js";var U=(function(){var t=s(function(h,r,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=r);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],i=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(r,n,l,y,d,c,v){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(r,n){if(n.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=n,l}},"parseError"),parse:s(function(r){var n=this,l=[0],y=[],d=[null],c=[],v=this.table,k="",C=0,Q=0,yt=2,D=1,dt=c.slice.call(arguments,1),_=Object.create(this.lexer),I={yy:{}};for(var O in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O)&&(I.yy[O]=this.yy[O]);_.setInput(r,I.yy),I.yy.lexer=_,I.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var Y=_.yylloc;c.push(Y);var ft=_.options&&_.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pt(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(pt,"popStack");function tt(){var w;return w=y.pop()||_.lex()||D,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(tt,"lex");for(var b,A,T,q,F={},N,M,et,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((b===null||typeof b>"u")&&(b=tt()),T=v[A]&&v[A][b]),typeof T>"u"||!T.length||!T[0]){var H="";z=[];for(N in v[A])this.terminals_[N]&&N>yt&&z.push("'"+this.terminals_[N]+"'");_.showPosition?H="Parse error on line "+(C+1)+`:
1
+ import{g as gt}from"./chunk-FMBD7UC4-Dx0HVCZZ.js";import{a as mt,g as lt,h as xt,d as kt}from"./chunk-ND2GUHAM-BQCoMEti.js";import{g as _t,s as vt,a as bt,b as wt,q as Tt,p as St,_ as s,c as R,d as X,e as $t,z as Mt}from"./mermaid.core-D-CshtYr.js";import{d as it}from"./arc-PDHKfnGP.js";import"./index-B3ddLSja.js";var U=(function(){var t=s(function(h,r,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=r);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],i=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(r,n,l,y,d,c,v){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(r,n){if(n.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=n,l}},"parseError"),parse:s(function(r){var n=this,l=[0],y=[],d=[null],c=[],v=this.table,k="",C=0,Q=0,yt=2,D=1,dt=c.slice.call(arguments,1),_=Object.create(this.lexer),I={yy:{}};for(var O in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O)&&(I.yy[O]=this.yy[O]);_.setInput(r,I.yy),I.yy.lexer=_,I.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var Y=_.yylloc;c.push(Y);var ft=_.options&&_.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pt(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(pt,"popStack");function tt(){var w;return w=y.pop()||_.lex()||D,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(tt,"lex");for(var b,A,T,q,F={},N,M,et,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((b===null||typeof b>"u")&&(b=tt()),T=v[A]&&v[A][b]),typeof T>"u"||!T.length||!T[0]){var H="";z=[];for(N in v[A])this.terminals_[N]&&N>yt&&z.push("'"+this.terminals_[N]+"'");_.showPosition?H="Parse error on line "+(C+1)+`:
2
2
  `+_.showPosition()+`
3
3
  Expecting `+z.join(", ")+", got '"+(this.terminals_[b]||b)+"'":H="Parse error on line "+(C+1)+": Unexpected "+(b==D?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(H,{text:_.match,token:this.terminals_[b]||b,line:_.yylineno,loc:Y,expected:z})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+b);switch(T[0]){case 1:l.push(b),d.push(_.yytext),c.push(_.yylloc),l.push(T[1]),b=null,Q=_.yyleng,k=_.yytext,C=_.yylineno,Y=_.yylloc;break;case 2:if(M=this.productions_[T[1]][1],F.$=d[d.length-M],F._$={first_line:c[c.length-(M||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(M||1)].first_column,last_column:c[c.length-1].last_column},ft&&(F._$.range=[c[c.length-(M||1)].range[0],c[c.length-1].range[1]]),q=this.performAction.apply(F,[k,Q,C,I.yy,T[1],d,c].concat(dt)),typeof q<"u")return q;M&&(l=l.slice(0,-1*M*2),d=d.slice(0,-1*M),c=c.slice(0,-1*M)),l.push(this.productions_[T[1]][0]),d.push(F.$),c.push(F._$),et=v[l[l.length-2]][l[l.length-1]],l.push(et);break;case 3:return!0}}return!0},"parse")},m=(function(){var h={EOF:1,parseError:s(function(n,l){if(this.yy.parser)this.yy.parser.parseError(n,l);else throw new Error(n)},"parseError"),setInput:s(function(r,n){return this.yy=n||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:s(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var n=r.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:s(function(r){var n=r.length,l=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var d=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===y.length?this.yylloc.first_column:0)+y[y.length-l.length].length-l[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(r){this.unput(this.match.slice(r))},"less"),pastInput:s(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var r=this.pastInput(),n=new Array(r.length+1).join("-");return r+this.upcomingInput()+`
@@ -1,4 +1,4 @@
1
- import{_ as c,l as te,c as W,I as fe,af as ye,ag as be,ah as me,Y as _e,G as K,i as F,t as ke,J as Ee,V as Se,W as le,X as ce}from"./mermaid.core-DE3GlZm2.js";import{g as Ne}from"./chunk-FMBD7UC4-CXm-3D35.js";import"./index-CEPc0i5O.js";var $=(function(){var t=c(function(_,s,n,a){for(n=n||{},a=_.length;a--;n[_[a]]=s);return n},"o"),g=[1,4],d=[1,13],r=[1,12],p=[1,15],k=[1,16],f=[1,20],h=[1,19],L=[6,7,8],C=[1,26],w=[1,24],N=[1,25],i=[6,7,11],M=[1,31],x=[6,7,11,24],P=[1,6,13,16,17,20,23],U=[1,35],j=[1,36],A=[1,6,7,11,13,16,17,20,23],H=[1,38],V={trace:c(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:c(function(s,n,a,o,u,e,B){var l=e.length-1;switch(u){case 6:case 7:return o;case 8:o.getLogger().trace("Stop NL ");break;case 9:o.getLogger().trace("Stop EOF ");break;case 11:o.getLogger().trace("Stop NL2 ");break;case 12:o.getLogger().trace("Stop EOF2 ");break;case 15:o.getLogger().info("Node: ",e[l-1].id),o.addNode(e[l-2].length,e[l-1].id,e[l-1].descr,e[l-1].type,e[l]);break;case 16:o.getLogger().info("Node: ",e[l].id),o.addNode(e[l-1].length,e[l].id,e[l].descr,e[l].type);break;case 17:o.getLogger().trace("Icon: ",e[l]),o.decorateNode({icon:e[l]});break;case 18:case 23:o.decorateNode({class:e[l]});break;case 19:o.getLogger().trace("SPACELIST");break;case 20:o.getLogger().trace("Node: ",e[l-1].id),o.addNode(0,e[l-1].id,e[l-1].descr,e[l-1].type,e[l]);break;case 21:o.getLogger().trace("Node: ",e[l].id),o.addNode(0,e[l].id,e[l].descr,e[l].type);break;case 22:o.decorateNode({icon:e[l]});break;case 27:o.getLogger().trace("node found ..",e[l-2]),this.$={id:e[l-1],descr:e[l-1],type:o.getType(e[l-2],e[l])};break;case 28:this.$={id:e[l],descr:e[l],type:0};break;case 29:o.getLogger().trace("node found ..",e[l-3]),this.$={id:e[l-3],descr:e[l-1],type:o.getType(e[l-2],e[l])};break;case 30:this.$=e[l-1]+e[l];break;case 31:this.$=e[l];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:g},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:g},{6:d,7:[1,10],9:9,12:11,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},t(L,[2,3]),{1:[2,2]},t(L,[2,4]),t(L,[2,5]),{1:[2,6],6:d,12:21,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},{6:d,9:22,12:11,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},{6:C,7:w,10:23,11:N},t(i,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:f,23:h}),t(i,[2,19]),t(i,[2,21],{15:30,24:M}),t(i,[2,22]),t(i,[2,23]),t(x,[2,25]),t(x,[2,26]),t(x,[2,28],{20:[1,32]}),{21:[1,33]},{6:C,7:w,10:34,11:N},{1:[2,7],6:d,12:21,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},t(P,[2,14],{7:U,11:j}),t(A,[2,8]),t(A,[2,9]),t(A,[2,10]),t(i,[2,16],{15:37,24:M}),t(i,[2,17]),t(i,[2,18]),t(i,[2,20],{24:H}),t(x,[2,31]),{21:[1,39]},{22:[1,40]},t(P,[2,13],{7:U,11:j}),t(A,[2,11]),t(A,[2,12]),t(i,[2,15],{24:H}),t(x,[2,30]),{22:[1,41]},t(x,[2,27]),t(x,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:c(function(s,n){if(n.recoverable)this.trace(s);else{var a=new Error(s);throw a.hash=n,a}},"parseError"),parse:c(function(s){var n=this,a=[0],o=[],u=[null],e=[],B=this.table,l="",z=0,ie=0,ue=2,re=1,ge=e.slice.call(arguments,1),m=Object.create(this.lexer),T={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(T.yy[J]=this.yy[J]);m.setInput(s,T.yy),T.yy.lexer=m,T.yy.parser=this,typeof m.yylloc>"u"&&(m.yylloc={});var q=m.yylloc;e.push(q);var de=m.options&&m.options.ranges;typeof T.yy.parseError=="function"?this.parseError=T.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pe(S){a.length=a.length-2*S,u.length=u.length-S,e.length=e.length-S}c(pe,"popStack");function ae(){var S;return S=o.pop()||m.lex()||re,typeof S!="number"&&(S instanceof Array&&(o=S,S=o.pop()),S=n.symbols_[S]||S),S}c(ae,"lex");for(var E,R,v,Q,G={},X,I,oe,Y;;){if(R=a[a.length-1],this.defaultActions[R]?v=this.defaultActions[R]:((E===null||typeof E>"u")&&(E=ae()),v=B[R]&&B[R][E]),typeof v>"u"||!v.length||!v[0]){var Z="";Y=[];for(X in B[R])this.terminals_[X]&&X>ue&&Y.push("'"+this.terminals_[X]+"'");m.showPosition?Z="Parse error on line "+(z+1)+`:
1
+ import{_ as c,l as te,c as W,I as fe,af as ye,ag as be,ah as me,Y as _e,G as K,i as F,t as ke,J as Ee,V as Se,W as le,X as ce}from"./mermaid.core-D-CshtYr.js";import{g as Ne}from"./chunk-FMBD7UC4-Dx0HVCZZ.js";import"./index-B3ddLSja.js";var $=(function(){var t=c(function(_,s,n,a){for(n=n||{},a=_.length;a--;n[_[a]]=s);return n},"o"),g=[1,4],d=[1,13],r=[1,12],p=[1,15],k=[1,16],f=[1,20],h=[1,19],L=[6,7,8],C=[1,26],w=[1,24],N=[1,25],i=[6,7,11],M=[1,31],x=[6,7,11,24],P=[1,6,13,16,17,20,23],U=[1,35],j=[1,36],A=[1,6,7,11,13,16,17,20,23],H=[1,38],V={trace:c(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:c(function(s,n,a,o,u,e,B){var l=e.length-1;switch(u){case 6:case 7:return o;case 8:o.getLogger().trace("Stop NL ");break;case 9:o.getLogger().trace("Stop EOF ");break;case 11:o.getLogger().trace("Stop NL2 ");break;case 12:o.getLogger().trace("Stop EOF2 ");break;case 15:o.getLogger().info("Node: ",e[l-1].id),o.addNode(e[l-2].length,e[l-1].id,e[l-1].descr,e[l-1].type,e[l]);break;case 16:o.getLogger().info("Node: ",e[l].id),o.addNode(e[l-1].length,e[l].id,e[l].descr,e[l].type);break;case 17:o.getLogger().trace("Icon: ",e[l]),o.decorateNode({icon:e[l]});break;case 18:case 23:o.decorateNode({class:e[l]});break;case 19:o.getLogger().trace("SPACELIST");break;case 20:o.getLogger().trace("Node: ",e[l-1].id),o.addNode(0,e[l-1].id,e[l-1].descr,e[l-1].type,e[l]);break;case 21:o.getLogger().trace("Node: ",e[l].id),o.addNode(0,e[l].id,e[l].descr,e[l].type);break;case 22:o.decorateNode({icon:e[l]});break;case 27:o.getLogger().trace("node found ..",e[l-2]),this.$={id:e[l-1],descr:e[l-1],type:o.getType(e[l-2],e[l])};break;case 28:this.$={id:e[l],descr:e[l],type:0};break;case 29:o.getLogger().trace("node found ..",e[l-3]),this.$={id:e[l-3],descr:e[l-1],type:o.getType(e[l-2],e[l])};break;case 30:this.$=e[l-1]+e[l];break;case 31:this.$=e[l];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:g},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:g},{6:d,7:[1,10],9:9,12:11,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},t(L,[2,3]),{1:[2,2]},t(L,[2,4]),t(L,[2,5]),{1:[2,6],6:d,12:21,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},{6:d,9:22,12:11,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},{6:C,7:w,10:23,11:N},t(i,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:f,23:h}),t(i,[2,19]),t(i,[2,21],{15:30,24:M}),t(i,[2,22]),t(i,[2,23]),t(x,[2,25]),t(x,[2,26]),t(x,[2,28],{20:[1,32]}),{21:[1,33]},{6:C,7:w,10:34,11:N},{1:[2,7],6:d,12:21,13:r,14:14,16:p,17:k,18:17,19:18,20:f,23:h},t(P,[2,14],{7:U,11:j}),t(A,[2,8]),t(A,[2,9]),t(A,[2,10]),t(i,[2,16],{15:37,24:M}),t(i,[2,17]),t(i,[2,18]),t(i,[2,20],{24:H}),t(x,[2,31]),{21:[1,39]},{22:[1,40]},t(P,[2,13],{7:U,11:j}),t(A,[2,11]),t(A,[2,12]),t(i,[2,15],{24:H}),t(x,[2,30]),{22:[1,41]},t(x,[2,27]),t(x,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:c(function(s,n){if(n.recoverable)this.trace(s);else{var a=new Error(s);throw a.hash=n,a}},"parseError"),parse:c(function(s){var n=this,a=[0],o=[],u=[null],e=[],B=this.table,l="",z=0,ie=0,ue=2,re=1,ge=e.slice.call(arguments,1),m=Object.create(this.lexer),T={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(T.yy[J]=this.yy[J]);m.setInput(s,T.yy),T.yy.lexer=m,T.yy.parser=this,typeof m.yylloc>"u"&&(m.yylloc={});var q=m.yylloc;e.push(q);var de=m.options&&m.options.ranges;typeof T.yy.parseError=="function"?this.parseError=T.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pe(S){a.length=a.length-2*S,u.length=u.length-S,e.length=e.length-S}c(pe,"popStack");function ae(){var S;return S=o.pop()||m.lex()||re,typeof S!="number"&&(S instanceof Array&&(o=S,S=o.pop()),S=n.symbols_[S]||S),S}c(ae,"lex");for(var E,R,v,Q,G={},X,I,oe,Y;;){if(R=a[a.length-1],this.defaultActions[R]?v=this.defaultActions[R]:((E===null||typeof E>"u")&&(E=ae()),v=B[R]&&B[R][E]),typeof v>"u"||!v.length||!v[0]){var Z="";Y=[];for(X in B[R])this.terminals_[X]&&X>ue&&Y.push("'"+this.terminals_[X]+"'");m.showPosition?Z="Parse error on line "+(z+1)+`:
2
2
  `+m.showPosition()+`
3
3
  Expecting `+Y.join(", ")+", got '"+(this.terminals_[E]||E)+"'":Z="Parse error on line "+(z+1)+": Unexpected "+(E==re?"end of input":"'"+(this.terminals_[E]||E)+"'"),this.parseError(Z,{text:m.match,token:this.terminals_[E]||E,line:m.yylineno,loc:q,expected:Y})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+R+", token: "+E);switch(v[0]){case 1:a.push(E),u.push(m.yytext),e.push(m.yylloc),a.push(v[1]),E=null,ie=m.yyleng,l=m.yytext,z=m.yylineno,q=m.yylloc;break;case 2:if(I=this.productions_[v[1]][1],G.$=u[u.length-I],G._$={first_line:e[e.length-(I||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(I||1)].first_column,last_column:e[e.length-1].last_column},de&&(G._$.range=[e[e.length-(I||1)].range[0],e[e.length-1].range[1]]),Q=this.performAction.apply(G,[l,ie,z,T.yy,v[1],u,e].concat(ge)),typeof Q<"u")return Q;I&&(a=a.slice(0,-1*I*2),u=u.slice(0,-1*I),e=e.slice(0,-1*I)),a.push(this.productions_[v[1]][0]),u.push(G.$),e.push(G._$),oe=B[a[a.length-2]][a[a.length-1]],a.push(oe);break;case 3:return!0}}return!0},"parse")},y=(function(){var _={EOF:1,parseError:c(function(n,a){if(this.yy.parser)this.yy.parser.parseError(n,a);else throw new Error(n)},"parseError"),setInput:c(function(s,n){return this.yy=n||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:c(function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var n=s.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},"input"),unput:c(function(s){var n=s.length,a=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var o=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===o.length?this.yylloc.first_column:0)+o[o.length-a.length].length-a[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:c(function(){return this._more=!0,this},"more"),reject:c(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:c(function(s){this.unput(this.match.slice(s))},"less"),pastInput:c(function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:c(function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:c(function(){var s=this.pastInput(),n=new Array(s.length+1).join("-");return s+this.upcomingInput()+`
@@ -1 +1 @@
1
- import{b7 as j,b8 as p,b9 as w,ba as k,bb as q}from"./mermaid.core-DE3GlZm2.js";import{i as D}from"./init-Gi6I4Gst.js";import{e as g,f as F,a as z,b as B}from"./defaultLocale-DX6XiGOO.js";function M(n,r){return n==null||r==null?NaN:n<r?-1:n>r?1:n>=r?0:NaN}function I(n,r){return n==null||r==null?NaN:r<n?-1:r>n?1:r>=n?0:NaN}function R(n){let r,t,e;n.length!==2?(r=M,t=(o,c)=>M(n(o),c),e=(o,c)=>n(o)-c):(r=n===M||n===I?n:P,t=n,e=n);function u(o,c,i=0,h=o.length){if(i<h){if(r(c,c)!==0)return h;do{const l=i+h>>>1;t(o[l],c)<0?i=l+1:h=l}while(i<h)}return i}function f(o,c,i=0,h=o.length){if(i<h){if(r(c,c)!==0)return h;do{const l=i+h>>>1;t(o[l],c)<=0?i=l+1:h=l}while(i<h)}return i}function a(o,c,i=0,h=o.length){const l=u(o,c,i,h-1);return l>i&&e(o[l-1],c)>-e(o[l],c)?l-1:l}return{left:u,center:a,right:f}}function P(){return 0}function V(n){return n===null?NaN:+n}const $=R(M),x=$.right;R(V).center;const O=Math.sqrt(50),T=Math.sqrt(10),C=Math.sqrt(2);function v(n,r,t){const e=(r-n)/Math.max(0,t),u=Math.floor(Math.log10(e)),f=e/Math.pow(10,u),a=f>=O?10:f>=T?5:f>=C?2:1;let o,c,i;return u<0?(i=Math.pow(10,-u)/a,o=Math.round(n*i),c=Math.round(r*i),o/i<n&&++o,c/i>r&&--c,i=-i):(i=Math.pow(10,u)*a,o=Math.round(n/i),c=Math.round(r/i),o*i<n&&++o,c*i>r&&--c),c<o&&.5<=t&&t<2?v(n,r,t*2):[o,c,i]}function E(n,r,t){if(r=+r,n=+n,t=+t,!(t>0))return[];if(n===r)return[n];const e=r<n,[u,f,a]=e?v(r,n,t):v(n,r,t);if(!(f>=u))return[];const o=f-u+1,c=new Array(o);if(e)if(a<0)for(let i=0;i<o;++i)c[i]=(f-i)/-a;else for(let i=0;i<o;++i)c[i]=(f-i)*a;else if(a<0)for(let i=0;i<o;++i)c[i]=(u+i)/-a;else for(let i=0;i<o;++i)c[i]=(u+i)*a;return c}function y(n,r,t){return r=+r,n=+n,t=+t,v(n,r,t)[2]}function G(n,r,t){r=+r,n=+n,t=+t;const e=r<n,u=e?y(r,n,t):y(n,r,t);return(e?-1:1)*(u<0?1/-u:u)}function H(n,r){r||(r=[]);var t=n?Math.min(r.length,n.length):0,e=r.slice(),u;return function(f){for(u=0;u<t;++u)e[u]=n[u]*(1-f)+r[u]*f;return e}}function J(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}function K(n,r){var t=r?r.length:0,e=n?Math.min(t,n.length):0,u=new Array(e),f=new Array(t),a;for(a=0;a<e;++a)u[a]=d(n[a],r[a]);for(;a<t;++a)f[a]=r[a];return function(o){for(a=0;a<e;++a)f[a]=u[a](o);return f}}function L(n,r){var t=new Date;return n=+n,r=+r,function(e){return t.setTime(n*(1-e)+r*e),t}}function Q(n,r){var t={},e={},u;(n===null||typeof n!="object")&&(n={}),(r===null||typeof r!="object")&&(r={});for(u in r)u in n?t[u]=d(n[u],r[u]):e[u]=r[u];return function(f){for(u in t)e[u]=t[u](f);return e}}function d(n,r){var t=typeof r,e;return r==null||t==="boolean"?j(r):(t==="number"?p:t==="string"?(e=w(r))?(r=e,k):q:r instanceof w?k:r instanceof Date?L:J(r)?H:Array.isArray(r)?K:typeof r.valueOf!="function"&&typeof r.toString!="function"||isNaN(r)?Q:p)(n,r)}function U(n,r){return n=+n,r=+r,function(t){return Math.round(n*(1-t)+r*t)}}function W(n){return Math.max(0,-g(Math.abs(n)))}function X(n,r){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(g(r)/3)))*3-g(Math.abs(n)))}function Y(n,r){return n=Math.abs(n),r=Math.abs(r)-n,Math.max(0,g(r)-g(n))+1}function Z(n){return function(){return n}}function _(n){return+n}var A=[0,1];function m(n){return n}function N(n,r){return(r-=n=+n)?function(t){return(t-n)/r}:Z(isNaN(r)?NaN:.5)}function b(n,r){var t;return n>r&&(t=n,n=r,r=t),function(e){return Math.max(n,Math.min(r,e))}}function nn(n,r,t){var e=n[0],u=n[1],f=r[0],a=r[1];return u<e?(e=N(u,e),f=t(a,f)):(e=N(e,u),f=t(f,a)),function(o){return f(e(o))}}function rn(n,r,t){var e=Math.min(n.length,r.length)-1,u=new Array(e),f=new Array(e),a=-1;for(n[e]<n[0]&&(n=n.slice().reverse(),r=r.slice().reverse());++a<e;)u[a]=N(n[a],n[a+1]),f[a]=t(r[a],r[a+1]);return function(o){var c=x(n,o,1,e)-1;return f[c](u[c](o))}}function en(n,r){return r.domain(n.domain()).range(n.range()).interpolate(n.interpolate()).clamp(n.clamp()).unknown(n.unknown())}function tn(){var n=A,r=A,t=d,e,u,f,a=m,o,c,i;function h(){var s=Math.min(n.length,r.length);return a!==m&&(a=b(n[0],n[s-1])),o=s>2?rn:nn,c=i=null,l}function l(s){return s==null||isNaN(s=+s)?f:(c||(c=o(n.map(e),r,t)))(e(a(s)))}return l.invert=function(s){return a(u((i||(i=o(r,n.map(e),p)))(s)))},l.domain=function(s){return arguments.length?(n=Array.from(s,_),h()):n.slice()},l.range=function(s){return arguments.length?(r=Array.from(s),h()):r.slice()},l.rangeRound=function(s){return r=Array.from(s),t=U,h()},l.clamp=function(s){return arguments.length?(a=s?!0:m,h()):a!==m},l.interpolate=function(s){return arguments.length?(t=s,h()):t},l.unknown=function(s){return arguments.length?(f=s,l):f},function(s,S){return e=s,u=S,h()}}function un(){return tn()(m,m)}function an(n,r,t,e){var u=G(n,r,t),f;switch(e=F(e??",f"),e.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(r));return e.precision==null&&!isNaN(f=X(u,a))&&(e.precision=f),z(e,a)}case"":case"e":case"g":case"p":case"r":{e.precision==null&&!isNaN(f=Y(u,Math.max(Math.abs(n),Math.abs(r))))&&(e.precision=f-(e.type==="e"));break}case"f":case"%":{e.precision==null&&!isNaN(f=W(u))&&(e.precision=f-(e.type==="%")*2);break}}return B(e)}function on(n){var r=n.domain;return n.ticks=function(t){var e=r();return E(e[0],e[e.length-1],t??10)},n.tickFormat=function(t,e){var u=r();return an(u[0],u[u.length-1],t??10,e)},n.nice=function(t){t==null&&(t=10);var e=r(),u=0,f=e.length-1,a=e[u],o=e[f],c,i,h=10;for(o<a&&(i=a,a=o,o=i,i=u,u=f,f=i);h-- >0;){if(i=y(a,o,t),i===c)return e[u]=a,e[f]=o,r(e);if(i>0)a=Math.floor(a/i)*i,o=Math.ceil(o/i)*i;else if(i<0)a=Math.ceil(a*i)/i,o=Math.floor(o*i)/i;else break;c=i}return n},n}function fn(){var n=un();return n.copy=function(){return en(n,fn())},D.apply(n,arguments),on(n)}export{en as a,R as b,un as c,fn as l,G as t};
1
+ import{b7 as j,b8 as p,b9 as w,ba as k,bb as q}from"./mermaid.core-D-CshtYr.js";import{i as D}from"./init-Gi6I4Gst.js";import{e as g,f as F,a as z,b as B}from"./defaultLocale-DX6XiGOO.js";function M(n,r){return n==null||r==null?NaN:n<r?-1:n>r?1:n>=r?0:NaN}function I(n,r){return n==null||r==null?NaN:r<n?-1:r>n?1:r>=n?0:NaN}function R(n){let r,t,e;n.length!==2?(r=M,t=(o,c)=>M(n(o),c),e=(o,c)=>n(o)-c):(r=n===M||n===I?n:P,t=n,e=n);function u(o,c,i=0,h=o.length){if(i<h){if(r(c,c)!==0)return h;do{const l=i+h>>>1;t(o[l],c)<0?i=l+1:h=l}while(i<h)}return i}function f(o,c,i=0,h=o.length){if(i<h){if(r(c,c)!==0)return h;do{const l=i+h>>>1;t(o[l],c)<=0?i=l+1:h=l}while(i<h)}return i}function a(o,c,i=0,h=o.length){const l=u(o,c,i,h-1);return l>i&&e(o[l-1],c)>-e(o[l],c)?l-1:l}return{left:u,center:a,right:f}}function P(){return 0}function V(n){return n===null?NaN:+n}const $=R(M),x=$.right;R(V).center;const O=Math.sqrt(50),T=Math.sqrt(10),C=Math.sqrt(2);function v(n,r,t){const e=(r-n)/Math.max(0,t),u=Math.floor(Math.log10(e)),f=e/Math.pow(10,u),a=f>=O?10:f>=T?5:f>=C?2:1;let o,c,i;return u<0?(i=Math.pow(10,-u)/a,o=Math.round(n*i),c=Math.round(r*i),o/i<n&&++o,c/i>r&&--c,i=-i):(i=Math.pow(10,u)*a,o=Math.round(n/i),c=Math.round(r/i),o*i<n&&++o,c*i>r&&--c),c<o&&.5<=t&&t<2?v(n,r,t*2):[o,c,i]}function E(n,r,t){if(r=+r,n=+n,t=+t,!(t>0))return[];if(n===r)return[n];const e=r<n,[u,f,a]=e?v(r,n,t):v(n,r,t);if(!(f>=u))return[];const o=f-u+1,c=new Array(o);if(e)if(a<0)for(let i=0;i<o;++i)c[i]=(f-i)/-a;else for(let i=0;i<o;++i)c[i]=(f-i)*a;else if(a<0)for(let i=0;i<o;++i)c[i]=(u+i)/-a;else for(let i=0;i<o;++i)c[i]=(u+i)*a;return c}function y(n,r,t){return r=+r,n=+n,t=+t,v(n,r,t)[2]}function G(n,r,t){r=+r,n=+n,t=+t;const e=r<n,u=e?y(r,n,t):y(n,r,t);return(e?-1:1)*(u<0?1/-u:u)}function H(n,r){r||(r=[]);var t=n?Math.min(r.length,n.length):0,e=r.slice(),u;return function(f){for(u=0;u<t;++u)e[u]=n[u]*(1-f)+r[u]*f;return e}}function J(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}function K(n,r){var t=r?r.length:0,e=n?Math.min(t,n.length):0,u=new Array(e),f=new Array(t),a;for(a=0;a<e;++a)u[a]=d(n[a],r[a]);for(;a<t;++a)f[a]=r[a];return function(o){for(a=0;a<e;++a)f[a]=u[a](o);return f}}function L(n,r){var t=new Date;return n=+n,r=+r,function(e){return t.setTime(n*(1-e)+r*e),t}}function Q(n,r){var t={},e={},u;(n===null||typeof n!="object")&&(n={}),(r===null||typeof r!="object")&&(r={});for(u in r)u in n?t[u]=d(n[u],r[u]):e[u]=r[u];return function(f){for(u in t)e[u]=t[u](f);return e}}function d(n,r){var t=typeof r,e;return r==null||t==="boolean"?j(r):(t==="number"?p:t==="string"?(e=w(r))?(r=e,k):q:r instanceof w?k:r instanceof Date?L:J(r)?H:Array.isArray(r)?K:typeof r.valueOf!="function"&&typeof r.toString!="function"||isNaN(r)?Q:p)(n,r)}function U(n,r){return n=+n,r=+r,function(t){return Math.round(n*(1-t)+r*t)}}function W(n){return Math.max(0,-g(Math.abs(n)))}function X(n,r){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(g(r)/3)))*3-g(Math.abs(n)))}function Y(n,r){return n=Math.abs(n),r=Math.abs(r)-n,Math.max(0,g(r)-g(n))+1}function Z(n){return function(){return n}}function _(n){return+n}var A=[0,1];function m(n){return n}function N(n,r){return(r-=n=+n)?function(t){return(t-n)/r}:Z(isNaN(r)?NaN:.5)}function b(n,r){var t;return n>r&&(t=n,n=r,r=t),function(e){return Math.max(n,Math.min(r,e))}}function nn(n,r,t){var e=n[0],u=n[1],f=r[0],a=r[1];return u<e?(e=N(u,e),f=t(a,f)):(e=N(e,u),f=t(f,a)),function(o){return f(e(o))}}function rn(n,r,t){var e=Math.min(n.length,r.length)-1,u=new Array(e),f=new Array(e),a=-1;for(n[e]<n[0]&&(n=n.slice().reverse(),r=r.slice().reverse());++a<e;)u[a]=N(n[a],n[a+1]),f[a]=t(r[a],r[a+1]);return function(o){var c=x(n,o,1,e)-1;return f[c](u[c](o))}}function en(n,r){return r.domain(n.domain()).range(n.range()).interpolate(n.interpolate()).clamp(n.clamp()).unknown(n.unknown())}function tn(){var n=A,r=A,t=d,e,u,f,a=m,o,c,i;function h(){var s=Math.min(n.length,r.length);return a!==m&&(a=b(n[0],n[s-1])),o=s>2?rn:nn,c=i=null,l}function l(s){return s==null||isNaN(s=+s)?f:(c||(c=o(n.map(e),r,t)))(e(a(s)))}return l.invert=function(s){return a(u((i||(i=o(r,n.map(e),p)))(s)))},l.domain=function(s){return arguments.length?(n=Array.from(s,_),h()):n.slice()},l.range=function(s){return arguments.length?(r=Array.from(s),h()):r.slice()},l.rangeRound=function(s){return r=Array.from(s),t=U,h()},l.clamp=function(s){return arguments.length?(a=s?!0:m,h()):a!==m},l.interpolate=function(s){return arguments.length?(t=s,h()):t},l.unknown=function(s){return arguments.length?(f=s,l):f},function(s,S){return e=s,u=S,h()}}function un(){return tn()(m,m)}function an(n,r,t,e){var u=G(n,r,t),f;switch(e=F(e??",f"),e.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(r));return e.precision==null&&!isNaN(f=X(u,a))&&(e.precision=f),z(e,a)}case"":case"e":case"g":case"p":case"r":{e.precision==null&&!isNaN(f=Y(u,Math.max(Math.abs(n),Math.abs(r))))&&(e.precision=f-(e.type==="e"));break}case"f":case"%":{e.precision==null&&!isNaN(f=W(u))&&(e.precision=f-(e.type==="%")*2);break}}return B(e)}function on(n){var r=n.domain;return n.ticks=function(t){var e=r();return E(e[0],e[e.length-1],t??10)},n.tickFormat=function(t,e){var u=r();return an(u[0],u[u.length-1],t??10,e)},n.nice=function(t){t==null&&(t=10);var e=r(),u=0,f=e.length-1,a=e[u],o=e[f],c,i,h=10;for(o<a&&(i=a,a=o,o=i,i=u,u=f,f=i);h-- >0;){if(i=y(a,o,t),i===c)return e[u]=a,e[f]=o,r(e);if(i>0)a=Math.floor(a/i)*i,o=Math.ceil(o/i)*i;else if(i<0)a=Math.ceil(a*i)/i,o=Math.floor(o*i)/i;else break;c=i}return n},n}function fn(){var n=un();return n.copy=function(){return en(n,fn())},D.apply(n,arguments),on(n)}export{en as a,R as b,un as c,fn as l,G as t};