diff options
-rw-r--r-- | apps/settings/l10n/zh_CN.js | 1 | ||||
-rw-r--r-- | apps/settings/l10n/zh_CN.json | 1 | ||||
-rw-r--r-- | apps/systemtags/l10n/ja.js | 1 | ||||
-rw-r--r-- | apps/systemtags/l10n/ja.json | 1 | ||||
-rw-r--r-- | apps/user_status/l10n/zh_CN.js | 2 | ||||
-rw-r--r-- | apps/user_status/l10n/zh_CN.json | 2 | ||||
-rw-r--r-- | build/psalm-baseline.xml | 8 | ||||
-rw-r--r-- | lib/l10n/ja.js | 32 | ||||
-rw-r--r-- | lib/l10n/ja.json | 32 | ||||
-rw-r--r-- | lib/l10n/zh_CN.js | 4 | ||||
-rw-r--r-- | lib/l10n/zh_CN.json | 4 | ||||
-rw-r--r-- | lib/private/Files/Utils/Scanner.php | 9 |
12 files changed, 81 insertions, 16 deletions
diff --git a/apps/settings/l10n/zh_CN.js b/apps/settings/l10n/zh_CN.js index f279b769c6b..5f26bc6c820 100644 --- a/apps/settings/l10n/zh_CN.js +++ b/apps/settings/l10n/zh_CN.js @@ -218,6 +218,7 @@ OC.L10N.register( "One or more mimetype migrations are available. Occasionally new mimetypes are added to better handle certain file types. Migrating the mimetypes take a long time on larger instances so this is not done automatically during upgrades. Use the command `occ maintenance:repair --include-expensive` to perform the migrations." : "有一个或多个 mimetype 迁移可用。有时会添加新的 mimetype 以更好地处理某些文件类型。在较大的实例上迁移 mimetype 需要很长时间,因此升级期间不会自动完成此操作。使用命令 \"occ Maintenance:repair --include-expensive\" 执行迁移。", "MySQL row format" : "MySQL 行格式", "You are not using MySQL" : "您没有使用MySQL", + "None of your tables use ROW_FORMAT=Compressed" : "没有表使用行格式压缩", "MySQL Unicode support" : "MySQL Unicode 支持", "MySQL is used as database and does support 4-byte characters" : "MySQL用作数据库并且支持4字节字符", "MySQL is used as database but does not support 4-byte characters. To be able to handle 4-byte characters (like emojis) without issues in filenames or comments for example it is recommended to enable the 4-byte support in MySQL." : "MySQL 用作数据库,但不支持 4 字节字符。为了能够处理 4 字节字符(如表情符号),而不会在文件名或注释中出现问题,建议在 MySQL 中启用 4 字节支持。", diff --git a/apps/settings/l10n/zh_CN.json b/apps/settings/l10n/zh_CN.json index 34f49facc2e..84e9e562fd4 100644 --- a/apps/settings/l10n/zh_CN.json +++ b/apps/settings/l10n/zh_CN.json @@ -216,6 +216,7 @@ "One or more mimetype migrations are available. Occasionally new mimetypes are added to better handle certain file types. Migrating the mimetypes take a long time on larger instances so this is not done automatically during upgrades. Use the command `occ maintenance:repair --include-expensive` to perform the migrations." : "有一个或多个 mimetype 迁移可用。有时会添加新的 mimetype 以更好地处理某些文件类型。在较大的实例上迁移 mimetype 需要很长时间,因此升级期间不会自动完成此操作。使用命令 \"occ Maintenance:repair --include-expensive\" 执行迁移。", "MySQL row format" : "MySQL 行格式", "You are not using MySQL" : "您没有使用MySQL", + "None of your tables use ROW_FORMAT=Compressed" : "没有表使用行格式压缩", "MySQL Unicode support" : "MySQL Unicode 支持", "MySQL is used as database and does support 4-byte characters" : "MySQL用作数据库并且支持4字节字符", "MySQL is used as database but does not support 4-byte characters. To be able to handle 4-byte characters (like emojis) without issues in filenames or comments for example it is recommended to enable the 4-byte support in MySQL." : "MySQL 用作数据库,但不支持 4 字节字符。为了能够处理 4 字节字符(如表情符号),而不会在文件名或注释中出现问题,建议在 MySQL 中启用 4 字节支持。", diff --git a/apps/systemtags/l10n/ja.js b/apps/systemtags/l10n/ja.js index 5051951a09e..c79280a115a 100644 --- a/apps/systemtags/l10n/ja.js +++ b/apps/systemtags/l10n/ja.js @@ -68,6 +68,7 @@ OC.L10N.register( "Manage tags" : "タグを管理", "Applying tags changes…" : "タグの変更を適用しています...", "Search or create tag" : "タグを検索または作成する", + "Change tag color" : "タグの色を変更する", "Create new tag" : "新しいタグを作成", "Select or create tags to apply to all selected files" : "選択した全てのファイルに適用するタグを選択または作成する", "Cancel" : "キャンセル", diff --git a/apps/systemtags/l10n/ja.json b/apps/systemtags/l10n/ja.json index b387b61b05f..3b924838984 100644 --- a/apps/systemtags/l10n/ja.json +++ b/apps/systemtags/l10n/ja.json @@ -66,6 +66,7 @@ "Manage tags" : "タグを管理", "Applying tags changes…" : "タグの変更を適用しています...", "Search or create tag" : "タグを検索または作成する", + "Change tag color" : "タグの色を変更する", "Create new tag" : "新しいタグを作成", "Select or create tags to apply to all selected files" : "選択した全てのファイルに適用するタグを選択または作成する", "Cancel" : "キャンセル", diff --git a/apps/user_status/l10n/zh_CN.js b/apps/user_status/l10n/zh_CN.js index c9a0d791f05..1731ed11741 100644 --- a/apps/user_status/l10n/zh_CN.js +++ b/apps/user_status/l10n/zh_CN.js @@ -40,7 +40,7 @@ OC.L10N.register( "Invisible" : "隐身", "Offline" : "离线", "There was an error saving the new status" : "保存新状态时出错", - "30 minutes" : "30分钟", + "30 minutes" : "30 分钟", "1 hour" : "1小时", "4 hours" : "4小时", "Mute all notifications" : "静音所有通知", diff --git a/apps/user_status/l10n/zh_CN.json b/apps/user_status/l10n/zh_CN.json index 81669009598..af2a981d88f 100644 --- a/apps/user_status/l10n/zh_CN.json +++ b/apps/user_status/l10n/zh_CN.json @@ -38,7 +38,7 @@ "Invisible" : "隐身", "Offline" : "离线", "There was an error saving the new status" : "保存新状态时出错", - "30 minutes" : "30分钟", + "30 minutes" : "30 分钟", "1 hour" : "1小时", "4 hours" : "4小时", "Mute all notifications" : "静音所有通知", diff --git a/build/psalm-baseline.xml b/build/psalm-baseline.xml index 00add5ee78e..93c48a30283 100644 --- a/build/psalm-baseline.xml +++ b/build/psalm-baseline.xml @@ -2101,14 +2101,6 @@ <code><![CDATA[$mimetype]]></code> </ParamNameMismatch> </file> - <file src="lib/private/Files/Utils/Scanner.php"> - <LessSpecificReturnStatement> - <code><![CDATA[$mounts]]></code> - </LessSpecificReturnStatement> - <MoreSpecificReturnType> - <code><![CDATA[\OC\Files\Mount\MountPoint[]]]></code> - </MoreSpecificReturnType> - </file> <file src="lib/private/Files/View.php"> <InvalidScalarArgument> <code><![CDATA[$mtime]]></code> diff --git a/lib/l10n/ja.js b/lib/l10n/ja.js index 3d8aa44c887..4573f7e0b33 100644 --- a/lib/l10n/ja.js +++ b/lib/l10n/ja.js @@ -310,8 +310,20 @@ OC.L10N.register( "The audio to transcribe" : "文字起こしする音声", "Transcription" : "書き起こし", "The transcribed text" : "書き起こされたテキスト", + "ContextAgent" : "ContextAgent", + "Chat with an agent" : "エージェントとチャット", "Chat message" : "チャットメッセージ", + "A chat message to send to the agent." : "エージェントに送信するチャットメッセージ。", "Confirmation" : "確認", + "Whether to confirm previously requested actions: 0 for denial and 1 for confirmation." : "以前に要求されたアクションを承認するかどうか: 0なら拒否、1なら承認。", + "Conversation token" : "会話トークン", + "A token representing the conversation." : "会話を表すトークン。", + "Generated response" : "生成された応答", + "The response from the chat model." : "チャットモデルからの応答。", + "The new conversation token" : "新しい会話トークン", + "Send this along with the next interaction." : "次の交流と一緒にこれを送る。", + "Requested actions by the agent" : "エージェントが要求するアクション", + "Actions that the agent would like to carry out in JSON format." : "エージェントが JSON 形式で実行したいアクション。", "Context write" : "コンテキストを書く", "Writes text in a given style based on the provided source material." : "提供されたソース資料に基づいて、指定されたスタイルでテキストを作成します。", "Writing style" : "文体", @@ -338,6 +350,12 @@ OC.L10N.register( "Describe a task that you want the assistant to do or ask a question" : "アシスタントに実行してほしいタスクまたは質問を記述します", "Generated reply" : "生成された返信", "The generated text from the assistant" : "アシスタントから生成されたテキスト", + "Change Tone" : "トーンを変更", + "Change the tone of a piece of text." : "文章のトーンを変更する。", + "Write a text that you want the assistant to rewrite in another tone." : "アシスタントに別のトーンで書き直してもらいたい文章を書く。", + "Desired tone" : "希望するトーン", + "In which tone should your text be rewritten?" : "どのトーンで書き直すべきか?", + "The rewritten text in the desired tone, written by the assistant:" : "アシスタントが書き直した、希望するトーンの文章:", "Chat" : "チャット", "Chat with the assistant" : "アシスタントとチャット", "System prompt" : "システムプロンプト", @@ -346,6 +364,15 @@ OC.L10N.register( "The history of chat messages before the current message, starting with a message by the user" : "ユーザーのメッセージから始まる、現在のメッセージより前のチャットメッセージの履歴", "Response message" : "応答メッセージ", "The generated response as part of the conversation" : "会話の一部として生成された応答", + "Chat with tools" : "ツールでチャット", + "Chat with the language model with tool calling support." : "ツール呼び出しサポートを使用して言語モデルとチャット。", + "Tool message" : "ツールメッセージ", + "The result of tool calls in the last interaction" : "直近のインタラクションにおけるツール呼び出しの結果", + "Available tools" : "利用可能なツール", + "The available tools in JSON format" : "JSON形式で利用可能なツール", + "The response from the chat model" : "チャットモデルからの応答", + "Tool calls" : "ツールコール", + "Tools call instructions from the model in JSON format" : "JSON形式のモデルからのツール呼び出し命令", "Formalize text" : "テキストの形式化", "Takes a text and makes it sound more formal" : "テキストを使用して、よりフォーマルに聞こえるようにします", "Write a text that you want the assistant to formalize" : "アシスタントに形式化してもらいたいテキストを入力します", @@ -356,7 +383,12 @@ OC.L10N.register( "Original text" : "原文", "The original text to generate a headline for" : "見出しを生成する元のテキスト", "The generated headline" : "生成された見出し", + "Proofread" : "校正", + "Proofreads a text and lists corrections" : "文章を校正し、訂正箇所をリストアップする", "Text" : "テキスト", + "The text to proofread" : "校正するテキスト", + "Corrections" : "修正", + "The corrections that should be made in your text" : "テキストに加えるべき修正", "Reformulate text" : "テキストを書き直す", "Takes a text and reformulates it" : "テキストを受け取り、それを書き直す", "Write a text that you want the assistant to reformulate" : "アシスタントに書き直してもらいたいテキストを入力します", diff --git a/lib/l10n/ja.json b/lib/l10n/ja.json index 1d59f61994c..b2ee6efbcbf 100644 --- a/lib/l10n/ja.json +++ b/lib/l10n/ja.json @@ -308,8 +308,20 @@ "The audio to transcribe" : "文字起こしする音声", "Transcription" : "書き起こし", "The transcribed text" : "書き起こされたテキスト", + "ContextAgent" : "ContextAgent", + "Chat with an agent" : "エージェントとチャット", "Chat message" : "チャットメッセージ", + "A chat message to send to the agent." : "エージェントに送信するチャットメッセージ。", "Confirmation" : "確認", + "Whether to confirm previously requested actions: 0 for denial and 1 for confirmation." : "以前に要求されたアクションを承認するかどうか: 0なら拒否、1なら承認。", + "Conversation token" : "会話トークン", + "A token representing the conversation." : "会話を表すトークン。", + "Generated response" : "生成された応答", + "The response from the chat model." : "チャットモデルからの応答。", + "The new conversation token" : "新しい会話トークン", + "Send this along with the next interaction." : "次の交流と一緒にこれを送る。", + "Requested actions by the agent" : "エージェントが要求するアクション", + "Actions that the agent would like to carry out in JSON format." : "エージェントが JSON 形式で実行したいアクション。", "Context write" : "コンテキストを書く", "Writes text in a given style based on the provided source material." : "提供されたソース資料に基づいて、指定されたスタイルでテキストを作成します。", "Writing style" : "文体", @@ -336,6 +348,12 @@ "Describe a task that you want the assistant to do or ask a question" : "アシスタントに実行してほしいタスクまたは質問を記述します", "Generated reply" : "生成された返信", "The generated text from the assistant" : "アシスタントから生成されたテキスト", + "Change Tone" : "トーンを変更", + "Change the tone of a piece of text." : "文章のトーンを変更する。", + "Write a text that you want the assistant to rewrite in another tone." : "アシスタントに別のトーンで書き直してもらいたい文章を書く。", + "Desired tone" : "希望するトーン", + "In which tone should your text be rewritten?" : "どのトーンで書き直すべきか?", + "The rewritten text in the desired tone, written by the assistant:" : "アシスタントが書き直した、希望するトーンの文章:", "Chat" : "チャット", "Chat with the assistant" : "アシスタントとチャット", "System prompt" : "システムプロンプト", @@ -344,6 +362,15 @@ "The history of chat messages before the current message, starting with a message by the user" : "ユーザーのメッセージから始まる、現在のメッセージより前のチャットメッセージの履歴", "Response message" : "応答メッセージ", "The generated response as part of the conversation" : "会話の一部として生成された応答", + "Chat with tools" : "ツールでチャット", + "Chat with the language model with tool calling support." : "ツール呼び出しサポートを使用して言語モデルとチャット。", + "Tool message" : "ツールメッセージ", + "The result of tool calls in the last interaction" : "直近のインタラクションにおけるツール呼び出しの結果", + "Available tools" : "利用可能なツール", + "The available tools in JSON format" : "JSON形式で利用可能なツール", + "The response from the chat model" : "チャットモデルからの応答", + "Tool calls" : "ツールコール", + "Tools call instructions from the model in JSON format" : "JSON形式のモデルからのツール呼び出し命令", "Formalize text" : "テキストの形式化", "Takes a text and makes it sound more formal" : "テキストを使用して、よりフォーマルに聞こえるようにします", "Write a text that you want the assistant to formalize" : "アシスタントに形式化してもらいたいテキストを入力します", @@ -354,7 +381,12 @@ "Original text" : "原文", "The original text to generate a headline for" : "見出しを生成する元のテキスト", "The generated headline" : "生成された見出し", + "Proofread" : "校正", + "Proofreads a text and lists corrections" : "文章を校正し、訂正箇所をリストアップする", "Text" : "テキスト", + "The text to proofread" : "校正するテキスト", + "Corrections" : "修正", + "The corrections that should be made in your text" : "テキストに加えるべき修正", "Reformulate text" : "テキストを書き直す", "Takes a text and reformulates it" : "テキストを受け取り、それを書き直す", "Write a text that you want the assistant to reformulate" : "アシスタントに書き直してもらいたいテキストを入力します", diff --git a/lib/l10n/zh_CN.js b/lib/l10n/zh_CN.js index bbe0c720253..fbeeebe1e67 100644 --- a/lib/l10n/zh_CN.js +++ b/lib/l10n/zh_CN.js @@ -74,9 +74,9 @@ OC.L10N.register( "_in %n year_::_in %n years_" : ["%n年内"], "_%n year ago_::_%n years ago_" : ["%n 年前"], "_in %n hour_::_in %n hours_" : ["%n小时内"], - "_%n hour ago_::_%n hours ago_" : ["%n小时前"], + "_%n hour ago_::_%n hours ago_" : ["%n 小时前"], "_in %n minute_::_in %n minutes_" : ["%n分钟内"], - "_%n minute ago_::_%n minutes ago_" : ["%n分钟前"], + "_%n minute ago_::_%n minutes ago_" : ["%n 分钟前"], "in a few seconds" : "几秒钟内", "seconds ago" : "几秒前", "Empty file" : "空文件", diff --git a/lib/l10n/zh_CN.json b/lib/l10n/zh_CN.json index 3df5d661b16..34e5e3d3c60 100644 --- a/lib/l10n/zh_CN.json +++ b/lib/l10n/zh_CN.json @@ -72,9 +72,9 @@ "_in %n year_::_in %n years_" : ["%n年内"], "_%n year ago_::_%n years ago_" : ["%n 年前"], "_in %n hour_::_in %n hours_" : ["%n小时内"], - "_%n hour ago_::_%n hours ago_" : ["%n小时前"], + "_%n hour ago_::_%n hours ago_" : ["%n 小时前"], "_in %n minute_::_in %n minutes_" : ["%n分钟内"], - "_%n minute ago_::_%n minutes ago_" : ["%n分钟前"], + "_%n minute ago_::_%n minutes ago_" : ["%n 分钟前"], "in a few seconds" : "几秒钟内", "seconds ago" : "几秒前", "Empty file" : "空文件", diff --git a/lib/private/Files/Utils/Scanner.php b/lib/private/Files/Utils/Scanner.php index 40201d10b99..4d94629443f 100644 --- a/lib/private/Files/Utils/Scanner.php +++ b/lib/private/Files/Utils/Scanner.php @@ -23,6 +23,7 @@ use OCP\Files\Events\FileScannedEvent; use OCP\Files\Events\FolderScannedEvent; use OCP\Files\Events\NodeAddedToCache; use OCP\Files\Events\NodeRemovedFromCache; +use OCP\Files\Mount\IMountPoint; use OCP\Files\NotFoundException; use OCP\Files\Storage\IStorage; use OCP\Files\StorageNotAvailableException; @@ -85,7 +86,7 @@ class Scanner extends PublicEmitter { * get all storages for $dir * * @param string $dir - * @return \OC\Files\Mount\MountPoint[] + * @return array<string, IMountPoint> */ protected function getMounts($dir) { //TODO: move to the node based fileapi once that's done @@ -96,8 +97,9 @@ class Scanner extends PublicEmitter { $mounts = $mountManager->findIn($dir); $mounts[] = $mountManager->find($dir); $mounts = array_reverse($mounts); //start with the mount of $dir + $mountPoints = array_map(fn ($mount) => $mount->getMountPoint(), $mounts); - return $mounts; + return array_combine($mountPoints, $mounts); } /** @@ -210,6 +212,9 @@ class Scanner extends PublicEmitter { $owner = $owner['name'] ?? $ownerUid; $permissions = decoct(fileperms($fullPath)); throw new ForbiddenException("User folder $fullPath is not writable, folders is owned by $owner and has mode $permissions"); + } elseif (isset($mounts[$mount->getMountPoint() . $path . '/'])) { + // /<user>/files is overwritten by a mountpoint, so this check is irrelevant + break; } else { // if the root exists in neither the cache nor the storage the user isn't setup yet break 2; |