aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/composer/composer/autoload_classmap.php1
-rw-r--r--lib/composer/composer/autoload_static.php1
-rw-r--r--lib/l10n/cs.js5
-rw-r--r--lib/l10n/cs.json5
-rw-r--r--lib/l10n/de.js7
-rw-r--r--lib/l10n/de.json7
-rw-r--r--lib/l10n/de_DE.js11
-rw-r--r--lib/l10n/de_DE.json11
-rw-r--r--lib/l10n/et_EE.js7
-rw-r--r--lib/l10n/et_EE.json7
-rw-r--r--lib/l10n/lv.js2
-rw-r--r--lib/l10n/lv.json2
-rw-r--r--lib/l10n/mk.js4
-rw-r--r--lib/l10n/mk.json4
-rw-r--r--lib/l10n/uz.js1
-rw-r--r--lib/l10n/uz.json1
-rw-r--r--lib/l10n/zh_CN.js5
-rw-r--r--lib/l10n/zh_CN.json5
-rw-r--r--lib/l10n/zh_TW.js5
-rw-r--r--lib/l10n/zh_TW.json5
-rw-r--r--lib/private/Security/Normalizer/IpAddress.php9
-rw-r--r--lib/private/TaskProcessing/Manager.php1
-rw-r--r--lib/private/Template/JSResourceLocator.php2
-rw-r--r--lib/public/Constants.php8
-rw-r--r--lib/public/TaskProcessing/TaskTypes/TextToSpeech.php92
25 files changed, 192 insertions, 16 deletions
diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php
index 3d36f50e950..6264126b028 100644
--- a/lib/composer/composer/autoload_classmap.php
+++ b/lib/composer/composer/autoload_classmap.php
@@ -837,6 +837,7 @@ return array(
'OCP\\TaskProcessing\\TaskTypes\\ContextWrite' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/ContextWrite.php',
'OCP\\TaskProcessing\\TaskTypes\\GenerateEmoji' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToImage' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToImage.php',
+ 'OCP\\TaskProcessing\\TaskTypes\\TextToSpeech' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToText' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToText.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChangeTone' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChat' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php',
diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php
index 7085d0b4a44..5771a621afe 100644
--- a/lib/composer/composer/autoload_static.php
+++ b/lib/composer/composer/autoload_static.php
@@ -878,6 +878,7 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2
'OCP\\TaskProcessing\\TaskTypes\\ContextWrite' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/ContextWrite.php',
'OCP\\TaskProcessing\\TaskTypes\\GenerateEmoji' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToImage' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToImage.php',
+ 'OCP\\TaskProcessing\\TaskTypes\\TextToSpeech' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToText' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToText.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChangeTone' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChat' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php',
diff --git a/lib/l10n/cs.js b/lib/l10n/cs.js
index 06f4631fa3c..2233f31f686 100644
--- a/lib/l10n/cs.js
+++ b/lib/l10n/cs.js
@@ -364,6 +364,11 @@ OC.L10N.register(
"How many images to generate" : "Kolik obrázků vytvořit",
"Output images" : "Výstupní obrázky",
"The generated images" : "Vytvořené obrázky",
+ "Generate speech" : "Vytvořit řeč",
+ "Generate speech from a transcript" : "Vytvořit řeč z přepisu",
+ "Write transcript that you want the assistant to generate speech from" : "Napište přepis, ze kterého chcete, aby asistent vytvořil řeč",
+ "Output speech" : "Výstupní řeč",
+ "The generated speech" : "Vytvořená řeč",
"Free text to text prompt" : "Volný text na textový prompt",
"Runs an arbitrary prompt through a language model that returns a reply" : "Spouští libovolnou výzvu skrze jazykový model který vrací odpověď",
"Describe a task that you want the assistant to do or ask a question" : "Popište úkol který chcete aby asistent udělal nebo položte dotaz",
diff --git a/lib/l10n/cs.json b/lib/l10n/cs.json
index 0fd7ca64748..087e2244eeb 100644
--- a/lib/l10n/cs.json
+++ b/lib/l10n/cs.json
@@ -362,6 +362,11 @@
"How many images to generate" : "Kolik obrázků vytvořit",
"Output images" : "Výstupní obrázky",
"The generated images" : "Vytvořené obrázky",
+ "Generate speech" : "Vytvořit řeč",
+ "Generate speech from a transcript" : "Vytvořit řeč z přepisu",
+ "Write transcript that you want the assistant to generate speech from" : "Napište přepis, ze kterého chcete, aby asistent vytvořil řeč",
+ "Output speech" : "Výstupní řeč",
+ "The generated speech" : "Vytvořená řeč",
"Free text to text prompt" : "Volný text na textový prompt",
"Runs an arbitrary prompt through a language model that returns a reply" : "Spouští libovolnou výzvu skrze jazykový model který vrací odpověď",
"Describe a task that you want the assistant to do or ask a question" : "Popište úkol který chcete aby asistent udělal nebo položte dotaz",
diff --git a/lib/l10n/de.js b/lib/l10n/de.js
index 565432632e8..672c6ca4f25 100644
--- a/lib/l10n/de.js
+++ b/lib/l10n/de.js
@@ -101,7 +101,7 @@ OC.L10N.register(
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -364,6 +364,11 @@ OC.L10N.register(
"How many images to generate" : "Wie viele Bilder erstellt werden sollen",
"Output images" : "Ausgegebene Bilder",
"The generated images" : "Die erstellten Bilder",
+ "Generate speech" : "Sprache erstellen",
+ "Generate speech from a transcript" : "Sprache aus einem Transkript erstellen",
+ "Write transcript that you want the assistant to generate speech from" : "Schreibe ein Transkript, aus dem der Assistent Sprache erstellen soll",
+ "Output speech" : "Sprachausgabe",
+ "The generated speech" : "Die erstellte Sprache",
"Free text to text prompt" : "Freie Text-zu-Text-Eingabeaufforderung",
"Runs an arbitrary prompt through a language model that returns a reply" : "Führt eine beliebige Eingabeaufforderung mit einem Sprachmodell aus, das eine Antwort zurückgibt",
"Describe a task that you want the assistant to do or ask a question" : "Eine Aufgabe beschreiben, die der Assistent erledigen soll, oder eine Frage stellen",
diff --git a/lib/l10n/de.json b/lib/l10n/de.json
index f9b01867ab0..17ce3b96f49 100644
--- a/lib/l10n/de.json
+++ b/lib/l10n/de.json
@@ -99,7 +99,7 @@
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -362,6 +362,11 @@
"How many images to generate" : "Wie viele Bilder erstellt werden sollen",
"Output images" : "Ausgegebene Bilder",
"The generated images" : "Die erstellten Bilder",
+ "Generate speech" : "Sprache erstellen",
+ "Generate speech from a transcript" : "Sprache aus einem Transkript erstellen",
+ "Write transcript that you want the assistant to generate speech from" : "Schreibe ein Transkript, aus dem der Assistent Sprache erstellen soll",
+ "Output speech" : "Sprachausgabe",
+ "The generated speech" : "Die erstellte Sprache",
"Free text to text prompt" : "Freie Text-zu-Text-Eingabeaufforderung",
"Runs an arbitrary prompt through a language model that returns a reply" : "Führt eine beliebige Eingabeaufforderung mit einem Sprachmodell aus, das eine Antwort zurückgibt",
"Describe a task that you want the assistant to do or ask a question" : "Eine Aufgabe beschreiben, die der Assistent erledigen soll, oder eine Frage stellen",
diff --git a/lib/l10n/de_DE.js b/lib/l10n/de_DE.js
index d43d052a549..2d101052cf5 100644
--- a/lib/l10n/de_DE.js
+++ b/lib/l10n/de_DE.js
@@ -12,7 +12,7 @@ OC.L10N.register(
"%s email verification" : "%s E-Mail-Überprüfung",
"Email verification" : "E-Mail-Überprüfung",
"Click the following button to confirm your email." : "Klicken Sie auf die folgende Schaltfläche, um Ihre E-Mail zu bestätigen.",
- "Click the following link to confirm your email." : "Auf den nachfolgenden Link klicken um Ihre E-Mail-Adresse zu bestätigen",
+ "Click the following link to confirm your email." : "Auf den nachfolgenden Link klicken, um Ihre E-Mail-Adresse zu bestätigen",
"Confirm your email" : "Ihre E-Mail-Adresse bestätigen",
"Other activities" : "Andere Aktivitäten",
"%1$s and %2$s" : "%1$s und %2$s",
@@ -101,7 +101,7 @@ OC.L10N.register(
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -313,7 +313,7 @@ OC.L10N.register(
"Your data directory is invalid." : "Ihr Datenverzeichnis ist ungültig.",
"Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Stellen Sie sicher, dass eine Datei \"%1$s\" im Wurzelverzeichnis des Datenverzeichnisses existiert. Sie sollte folgenden Inhalt haben: \"%2$s\"",
"Action \"%s\" not supported or implemented." : "Aktion \"%s\" wird nicht unterstützt oder ist nicht implementiert.",
- "Authentication failed, wrong token or provider ID given" : "Authentifizierung ist fehlgeschlagen. Falsches Token oder Provider-ID wurde übertragen.",
+ "Authentication failed, wrong token or provider ID given" : "Authentifizierung fehlgeschlagen, falsches Token oder falsche Provider-ID angegeben",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Es fehlen Parameter um die Anfrage zu bearbeiten. Fehlende Parameter: \"%s\"",
"ID \"%1$s\" already used by cloud federation provider \"%2$s\"" : "ID \"%1$s\" wird bereits von Cloud-Federation-Provider \"%2$s\" verwendet.",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud-Federation-Provider mit ID: \"%s\" ist nicht vorhanden.",
@@ -364,6 +364,11 @@ OC.L10N.register(
"How many images to generate" : "Wie viele Bilder erstellt werden sollen",
"Output images" : "Ausgegebene Bilder",
"The generated images" : "Die erstellten Bilder",
+ "Generate speech" : "Sprache erstellen",
+ "Generate speech from a transcript" : "Sprache aus einem Transkript erstellen",
+ "Write transcript that you want the assistant to generate speech from" : "Schreiben Sie ein Transkript, aus dem der Assistent Sprache erstellen soll",
+ "Output speech" : "Sprachausgabe",
+ "The generated speech" : "Die erstellte Sprache",
"Free text to text prompt" : "Freie Text-zu-Text-Eingabeaufforderung",
"Runs an arbitrary prompt through a language model that returns a reply" : "Führt eine beliebige Eingabeaufforderung mit einem Sprachmodell aus, das eine Antwort zurückgibt",
"Describe a task that you want the assistant to do or ask a question" : "Beschreiben Sie eine Aufgabe, die der Assistent erledigen soll, oder stellen Sie eine Frage",
diff --git a/lib/l10n/de_DE.json b/lib/l10n/de_DE.json
index 9e974ad5fac..ea316cb1060 100644
--- a/lib/l10n/de_DE.json
+++ b/lib/l10n/de_DE.json
@@ -10,7 +10,7 @@
"%s email verification" : "%s E-Mail-Überprüfung",
"Email verification" : "E-Mail-Überprüfung",
"Click the following button to confirm your email." : "Klicken Sie auf die folgende Schaltfläche, um Ihre E-Mail zu bestätigen.",
- "Click the following link to confirm your email." : "Auf den nachfolgenden Link klicken um Ihre E-Mail-Adresse zu bestätigen",
+ "Click the following link to confirm your email." : "Auf den nachfolgenden Link klicken, um Ihre E-Mail-Adresse zu bestätigen",
"Confirm your email" : "Ihre E-Mail-Adresse bestätigen",
"Other activities" : "Andere Aktivitäten",
"%1$s and %2$s" : "%1$s und %2$s",
@@ -99,7 +99,7 @@
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -311,7 +311,7 @@
"Your data directory is invalid." : "Ihr Datenverzeichnis ist ungültig.",
"Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Stellen Sie sicher, dass eine Datei \"%1$s\" im Wurzelverzeichnis des Datenverzeichnisses existiert. Sie sollte folgenden Inhalt haben: \"%2$s\"",
"Action \"%s\" not supported or implemented." : "Aktion \"%s\" wird nicht unterstützt oder ist nicht implementiert.",
- "Authentication failed, wrong token or provider ID given" : "Authentifizierung ist fehlgeschlagen. Falsches Token oder Provider-ID wurde übertragen.",
+ "Authentication failed, wrong token or provider ID given" : "Authentifizierung fehlgeschlagen, falsches Token oder falsche Provider-ID angegeben",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Es fehlen Parameter um die Anfrage zu bearbeiten. Fehlende Parameter: \"%s\"",
"ID \"%1$s\" already used by cloud federation provider \"%2$s\"" : "ID \"%1$s\" wird bereits von Cloud-Federation-Provider \"%2$s\" verwendet.",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud-Federation-Provider mit ID: \"%s\" ist nicht vorhanden.",
@@ -362,6 +362,11 @@
"How many images to generate" : "Wie viele Bilder erstellt werden sollen",
"Output images" : "Ausgegebene Bilder",
"The generated images" : "Die erstellten Bilder",
+ "Generate speech" : "Sprache erstellen",
+ "Generate speech from a transcript" : "Sprache aus einem Transkript erstellen",
+ "Write transcript that you want the assistant to generate speech from" : "Schreiben Sie ein Transkript, aus dem der Assistent Sprache erstellen soll",
+ "Output speech" : "Sprachausgabe",
+ "The generated speech" : "Die erstellte Sprache",
"Free text to text prompt" : "Freie Text-zu-Text-Eingabeaufforderung",
"Runs an arbitrary prompt through a language model that returns a reply" : "Führt eine beliebige Eingabeaufforderung mit einem Sprachmodell aus, das eine Antwort zurückgibt",
"Describe a task that you want the assistant to do or ask a question" : "Beschreiben Sie eine Aufgabe, die der Assistent erledigen soll, oder stellen Sie eine Frage",
diff --git a/lib/l10n/et_EE.js b/lib/l10n/et_EE.js
index 8649dbcd28d..d882e0ee79e 100644
--- a/lib/l10n/et_EE.js
+++ b/lib/l10n/et_EE.js
@@ -36,9 +36,11 @@ OC.L10N.register(
"Wiping of device %s has started" : "Andmete kustutamine seadmes „%s“ algas",
"Wiping of device »%s« has started" : "Andmete kustutamine seadmes „%s“ algas",
"»%s« started remote wipe" : "„%s“ alustas kaugseadme andmete kustutamist",
+ "Device or application »%s« has started the remote wipe process. You will receive another email once the process has finished" : "„%s“ seade või rakendus on alustanud kaugkustutamise protsessi. Selle lõppemisel saad veel ühe teavitava e-kirja",
"Wiping of device %s has finished" : "Andmete kustutamine seadmes „%s“ lõppes",
"Wiping of device »%s« has finished" : "Andmete kustutamine seadmes „%s“ lõppes",
"»%s« finished remote wipe" : "„%s“ lõpetas kaugseadme andmete kustutamise",
+ "Device or application »%s« has finished the remote wipe process." : "„%s“ seade või rakendus on lõpetanud kaugkustutamise protsessi.",
"Remote wipe started" : "Kaugkustutamine on alanud",
"A remote wipe was started on device %s" : "„%s“ seadme kaugkustutamine on alanud",
"Remote wipe finished" : "Kaugkustutamine on lõppenud",
@@ -292,6 +294,11 @@ OC.L10N.register(
"How many images to generate" : "Mitu pilti peaksime tekitama",
"Output images" : "Väljundpildid",
"The generated images" : "Loodud pildid",
+ "Generate speech" : "Koosta kõne",
+ "Generate speech from a transcript" : "Koosta üleskirjutusest kõne",
+ "Write transcript that you want the assistant to generate speech from" : "Kirjuta üles see, mille alusel tahad Abilisel lasta koostada kõne",
+ "Output speech" : "Kõneväljund",
+ "The generated speech" : "Koostatud kõne",
"Generate a headline" : "Alapealkirja loomine",
"Generates a possible headline for a text." : "Võimaldab luua teksti põhjal kokkuvõtliku alapealkirja.",
"Original text" : "Lähtetekst",
diff --git a/lib/l10n/et_EE.json b/lib/l10n/et_EE.json
index 0b357717ae4..295c4b77855 100644
--- a/lib/l10n/et_EE.json
+++ b/lib/l10n/et_EE.json
@@ -34,9 +34,11 @@
"Wiping of device %s has started" : "Andmete kustutamine seadmes „%s“ algas",
"Wiping of device »%s« has started" : "Andmete kustutamine seadmes „%s“ algas",
"»%s« started remote wipe" : "„%s“ alustas kaugseadme andmete kustutamist",
+ "Device or application »%s« has started the remote wipe process. You will receive another email once the process has finished" : "„%s“ seade või rakendus on alustanud kaugkustutamise protsessi. Selle lõppemisel saad veel ühe teavitava e-kirja",
"Wiping of device %s has finished" : "Andmete kustutamine seadmes „%s“ lõppes",
"Wiping of device »%s« has finished" : "Andmete kustutamine seadmes „%s“ lõppes",
"»%s« finished remote wipe" : "„%s“ lõpetas kaugseadme andmete kustutamise",
+ "Device or application »%s« has finished the remote wipe process." : "„%s“ seade või rakendus on lõpetanud kaugkustutamise protsessi.",
"Remote wipe started" : "Kaugkustutamine on alanud",
"A remote wipe was started on device %s" : "„%s“ seadme kaugkustutamine on alanud",
"Remote wipe finished" : "Kaugkustutamine on lõppenud",
@@ -290,6 +292,11 @@
"How many images to generate" : "Mitu pilti peaksime tekitama",
"Output images" : "Väljundpildid",
"The generated images" : "Loodud pildid",
+ "Generate speech" : "Koosta kõne",
+ "Generate speech from a transcript" : "Koosta üleskirjutusest kõne",
+ "Write transcript that you want the assistant to generate speech from" : "Kirjuta üles see, mille alusel tahad Abilisel lasta koostada kõne",
+ "Output speech" : "Kõneväljund",
+ "The generated speech" : "Koostatud kõne",
"Generate a headline" : "Alapealkirja loomine",
"Generates a possible headline for a text." : "Võimaldab luua teksti põhjal kokkuvõtliku alapealkirja.",
"Original text" : "Lähtetekst",
diff --git a/lib/l10n/lv.js b/lib/l10n/lv.js
index a201c8c6081..f9a25d805d4 100644
--- a/lib/l10n/lv.js
+++ b/lib/l10n/lv.js
@@ -115,7 +115,7 @@ OC.L10N.register(
"Nov." : "Nov.",
"Dec." : "Dec.",
"A valid password must be provided" : "Jānorāda derīga parole",
- "Login canceled by app" : "Pieteikšanos atcelā lietotne",
+ "Login canceled by app" : "Lietotne atcēla pieteikšanos",
"a safe home for all your data" : "droša vieta visiem Taviem datiem",
"Application is not enabled" : "Lietotne nav iespējota",
"Authentication error" : "Autentificēšanās kļūda",
diff --git a/lib/l10n/lv.json b/lib/l10n/lv.json
index 6ae08bbf873..e03e7b44be5 100644
--- a/lib/l10n/lv.json
+++ b/lib/l10n/lv.json
@@ -113,7 +113,7 @@
"Nov." : "Nov.",
"Dec." : "Dec.",
"A valid password must be provided" : "Jānorāda derīga parole",
- "Login canceled by app" : "Pieteikšanos atcelā lietotne",
+ "Login canceled by app" : "Lietotne atcēla pieteikšanos",
"a safe home for all your data" : "droša vieta visiem Taviem datiem",
"Application is not enabled" : "Lietotne nav iespējota",
"Authentication error" : "Autentificēšanās kļūda",
diff --git a/lib/l10n/mk.js b/lib/l10n/mk.js
index 360efcb0867..71f6ea50370 100644
--- a/lib/l10n/mk.js
+++ b/lib/l10n/mk.js
@@ -52,6 +52,8 @@ OC.L10N.register(
"Avatar image is not square" : "Сликата за Аватар не е квадратна",
"Files" : "Датотеки",
"View profile" : "Прегледај профил",
+ "_%nh_::_%nh_" : ["%nч","%nч"],
+ "_%nm_::_%nm_" : ["%nм","%nм"],
"Local time: %s" : "Локално време: %s",
"today" : "денес",
"tomorrow" : "утре",
@@ -122,6 +124,8 @@ OC.L10N.register(
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "За позадинското споделување %s мора се имплементира интерфејсот OCP\\Share_Backend",
"Sharing backend %s not found" : "Не е пронајдено позадинско споделување %s",
"Sharing backend for %s not found" : "Не е пронајдено позадинско споделување за %s.",
+ "%1$s shared %2$s with you" : "%1$s сподели %2$s со вас",
+ "Open %s" : "Отвори %s",
"%1$s via %2$s" : "%1$s преку %2$s",
"Unknown share type" : "Непознат вид на споделување",
"You are not allowed to share %s" : "Не сте овластени да ја споделите %s",
diff --git a/lib/l10n/mk.json b/lib/l10n/mk.json
index d4fbd122d20..9eaaa1b777f 100644
--- a/lib/l10n/mk.json
+++ b/lib/l10n/mk.json
@@ -50,6 +50,8 @@
"Avatar image is not square" : "Сликата за Аватар не е квадратна",
"Files" : "Датотеки",
"View profile" : "Прегледај профил",
+ "_%nh_::_%nh_" : ["%nч","%nч"],
+ "_%nm_::_%nm_" : ["%nм","%nм"],
"Local time: %s" : "Локално време: %s",
"today" : "денес",
"tomorrow" : "утре",
@@ -120,6 +122,8 @@
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "За позадинското споделување %s мора се имплементира интерфејсот OCP\\Share_Backend",
"Sharing backend %s not found" : "Не е пронајдено позадинско споделување %s",
"Sharing backend for %s not found" : "Не е пронајдено позадинско споделување за %s.",
+ "%1$s shared %2$s with you" : "%1$s сподели %2$s со вас",
+ "Open %s" : "Отвори %s",
"%1$s via %2$s" : "%1$s преку %2$s",
"Unknown share type" : "Непознат вид на споделување",
"You are not allowed to share %s" : "Не сте овластени да ја споделите %s",
diff --git a/lib/l10n/uz.js b/lib/l10n/uz.js
index b3d7be96b38..10dc2ccabf5 100644
--- a/lib/l10n/uz.js
+++ b/lib/l10n/uz.js
@@ -31,6 +31,7 @@ OC.L10N.register(
"Authentication error" : "Authentication error",
"Storage is temporarily not available" : "Storage is temporarily not available",
"Confirmation" : "Tasdiqlash",
+ "Text" : "Matn",
"Translate" : "Tarjima",
"File name is too long" : "File name is too long",
"Users" : "Users",
diff --git a/lib/l10n/uz.json b/lib/l10n/uz.json
index d032d72f931..6a9b2008a78 100644
--- a/lib/l10n/uz.json
+++ b/lib/l10n/uz.json
@@ -29,6 +29,7 @@
"Authentication error" : "Authentication error",
"Storage is temporarily not available" : "Storage is temporarily not available",
"Confirmation" : "Tasdiqlash",
+ "Text" : "Matn",
"Translate" : "Tarjima",
"File name is too long" : "File name is too long",
"Users" : "Users",
diff --git a/lib/l10n/zh_CN.js b/lib/l10n/zh_CN.js
index 818f0fdad18..1637350f1e9 100644
--- a/lib/l10n/zh_CN.js
+++ b/lib/l10n/zh_CN.js
@@ -364,6 +364,11 @@ OC.L10N.register(
"How many images to generate" : "生成多少张图片",
"Output images" : "输出图像",
"The generated images" : "生成的图像",
+ "Generate speech" : "生成语音",
+ "Generate speech from a transcript" : "从转录生成语音",
+ "Write transcript that you want the assistant to generate speech from" : "编写您想要助手从中生成语音的转录内容",
+ "Output speech" : "输出语音",
+ "The generated speech" : "生成的语音",
"Free text to text prompt" : "免费文本转文本提示",
"Runs an arbitrary prompt through a language model that returns a reply" : "通过语言模型运行任意提示并返回答复",
"Describe a task that you want the assistant to do or ask a question" : "描述你希望助手执行的任务或提出问题",
diff --git a/lib/l10n/zh_CN.json b/lib/l10n/zh_CN.json
index bc3d5081fdc..dd94f1bb5cf 100644
--- a/lib/l10n/zh_CN.json
+++ b/lib/l10n/zh_CN.json
@@ -362,6 +362,11 @@
"How many images to generate" : "生成多少张图片",
"Output images" : "输出图像",
"The generated images" : "生成的图像",
+ "Generate speech" : "生成语音",
+ "Generate speech from a transcript" : "从转录生成语音",
+ "Write transcript that you want the assistant to generate speech from" : "编写您想要助手从中生成语音的转录内容",
+ "Output speech" : "输出语音",
+ "The generated speech" : "生成的语音",
"Free text to text prompt" : "免费文本转文本提示",
"Runs an arbitrary prompt through a language model that returns a reply" : "通过语言模型运行任意提示并返回答复",
"Describe a task that you want the assistant to do or ask a question" : "描述你希望助手执行的任务或提出问题",
diff --git a/lib/l10n/zh_TW.js b/lib/l10n/zh_TW.js
index 95a20523c8f..4f92a865290 100644
--- a/lib/l10n/zh_TW.js
+++ b/lib/l10n/zh_TW.js
@@ -364,6 +364,11 @@ OC.L10N.register(
"How many images to generate" : "要產生多少影像",
"Output images" : "輸出影像",
"The generated images" : "產生的影像",
+ "Generate speech" : "產生語音",
+ "Generate speech from a transcript" : "從轉錄稿產生語音",
+ "Write transcript that you want the assistant to generate speech from" : "寫下您想要小幫手產生語音的來源轉錄稿",
+ "Output speech" : "輸出語音",
+ "The generated speech" : "產生的語音",
"Free text to text prompt" : "文字提示的自由文字",
"Runs an arbitrary prompt through a language model that returns a reply" : "透過回傳回覆的語言模型執行任意提示",
"Describe a task that you want the assistant to do or ask a question" : "描述您希望助理執行的任務或提出問題",
diff --git a/lib/l10n/zh_TW.json b/lib/l10n/zh_TW.json
index b9af7705ef9..34b32540bc8 100644
--- a/lib/l10n/zh_TW.json
+++ b/lib/l10n/zh_TW.json
@@ -362,6 +362,11 @@
"How many images to generate" : "要產生多少影像",
"Output images" : "輸出影像",
"The generated images" : "產生的影像",
+ "Generate speech" : "產生語音",
+ "Generate speech from a transcript" : "從轉錄稿產生語音",
+ "Write transcript that you want the assistant to generate speech from" : "寫下您想要小幫手產生語音的來源轉錄稿",
+ "Output speech" : "輸出語音",
+ "The generated speech" : "產生的語音",
"Free text to text prompt" : "文字提示的自由文字",
"Runs an arbitrary prompt through a language model that returns a reply" : "透過回傳回覆的語言模型執行任意提示",
"Describe a task that you want the assistant to do or ask a question" : "描述您希望助理執行的任務或提出問題",
diff --git a/lib/private/Security/Normalizer/IpAddress.php b/lib/private/Security/Normalizer/IpAddress.php
index b3793685a24..4d33a7bd632 100644
--- a/lib/private/Security/Normalizer/IpAddress.php
+++ b/lib/private/Security/Normalizer/IpAddress.php
@@ -42,8 +42,15 @@ class IpAddress {
$maskSize = min(64, $config->getSystemValueInt('security.ipv6_normalized_subnet_size', 56));
$maskSize = max(32, $maskSize);
if (PHP_INT_SIZE === 4) {
+ if ($maskSize === 64) {
+ $value = -1;
+ } elseif ($maskSize === 63) {
+ $value = PHP_INT_MAX;
+ } else {
+ $value = (1 << $maskSize - 32) - 1;
+ }
// as long as we support 32bit PHP we cannot use the `P` pack formatter (and not overflow 32bit integer)
- $mask = pack('VVVV', 0xFFFF, $maskSize === 64 ? 0xFFFF : ((1 << $maskSize - 32) - 1), 0, 0);
+ $mask = pack('VVVV', -1, $value, 0, 0);
} else {
$mask = pack('VVP', (1 << 32) - 1, (1 << $maskSize - 32) - 1, 0);
}
diff --git a/lib/private/TaskProcessing/Manager.php b/lib/private/TaskProcessing/Manager.php
index a701c23d56f..9992310dbbb 100644
--- a/lib/private/TaskProcessing/Manager.php
+++ b/lib/private/TaskProcessing/Manager.php
@@ -584,6 +584,7 @@ class Manager implements IManager {
\OCP\TaskProcessing\TaskTypes\TextToTextChatWithTools::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToTextChatWithTools::class),
\OCP\TaskProcessing\TaskTypes\ContextAgentInteraction::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\ContextAgentInteraction::class),
\OCP\TaskProcessing\TaskTypes\TextToTextProofread::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToTextProofread::class),
+ \OCP\TaskProcessing\TaskTypes\TextToSpeech::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToSpeech::class),
];
foreach ($context->getTaskProcessingTaskTypes() as $providerServiceRegistration) {
diff --git a/lib/private/Template/JSResourceLocator.php b/lib/private/Template/JSResourceLocator.php
index aad999f939a..a6d2d13a2ad 100644
--- a/lib/private/Template/JSResourceLocator.php
+++ b/lib/private/Template/JSResourceLocator.php
@@ -69,7 +69,7 @@ class JSResourceLocator extends ResourceLocator {
|| $this->appendScriptIfExist($this->serverroot, "dist/$app-$scriptName")
|| $this->appendScriptIfExist($appRoot, $script, $appWebRoot)
|| $this->cacheAndAppendCombineJsonIfExist($this->serverroot, $script . '.json')
- || $this->cacheAndAppendCombineJsonIfExist($appRoot, $script . '.json', $appWebRoot)
+ || $this->cacheAndAppendCombineJsonIfExist($appRoot, $script . '.json', $app)
|| $this->appendScriptIfExist($this->serverroot, $theme_dir . 'core/' . $script)
|| $this->appendScriptIfExist($this->serverroot, 'core/' . $script)
|| (strpos($scriptName, '/') === -1 && ($this->appendScriptIfExist($this->serverroot, $theme_dir . "dist/core-$scriptName")
diff --git a/lib/public/Constants.php b/lib/public/Constants.php
index 62772d195b2..8d38ade7baf 100644
--- a/lib/public/Constants.php
+++ b/lib/public/Constants.php
@@ -18,20 +18,20 @@ namespace OCP;
*/
class Constants {
/**
- * CRUDS permissions.
* @since 8.0.0
*/
- public const PERMISSION_CREATE = 4;
+ public const PERMISSION_READ = 1;
/**
* @since 8.0.0
*/
- public const PERMISSION_READ = 1;
+ public const PERMISSION_UPDATE = 2;
/**
+ * CRUDS permissions.
* @since 8.0.0
*/
- public const PERMISSION_UPDATE = 2;
+ public const PERMISSION_CREATE = 4;
/**
* @since 8.0.0
diff --git a/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php b/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php
new file mode 100644
index 00000000000..ce35be32a6f
--- /dev/null
+++ b/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php
@@ -0,0 +1,92 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OCP\TaskProcessing\TaskTypes;
+
+use OCP\IL10N;
+use OCP\L10N\IFactory;
+use OCP\TaskProcessing\EShapeType;
+use OCP\TaskProcessing\ITaskType;
+use OCP\TaskProcessing\ShapeDescriptor;
+
+/**
+ * This is the task processing task type for speech generation
+ * @since 32.0.0
+ */
+class TextToSpeech implements ITaskType {
+ /**
+ * @since 32.0.0
+ */
+ public const ID = 'core:text2speech';
+
+ private IL10N $l;
+
+ /**
+ * @param IFactory $l10nFactory
+ * @since 32.0.0
+ */
+ public function __construct(
+ IFactory $l10nFactory,
+ ) {
+ $this->l = $l10nFactory->get('lib');
+ }
+
+
+ /**
+ * @inheritDoc
+ * @since 32.0.0
+ */
+ public function getName(): string {
+ return $this->l->t('Generate speech');
+ }
+
+ /**
+ * @inheritDoc
+ * @since 32.0.0
+ */
+ public function getDescription(): string {
+ return $this->l->t('Generate speech from a transcript');
+ }
+
+ /**
+ * @return string
+ * @since 32.0.0
+ */
+ public function getId(): string {
+ return self::ID;
+ }
+
+ /**
+ * @return ShapeDescriptor[]
+ * @since 32.0.0
+ */
+ public function getInputShape(): array {
+ return [
+ 'input' => new ShapeDescriptor(
+ $this->l->t('Prompt'),
+ $this->l->t('Write transcript that you want the assistant to generate speech from'),
+ EShapeType::Text
+ ),
+ ];
+ }
+
+ /**
+ * @return ShapeDescriptor[]
+ * @since 32.0.0
+ */
+ public function getOutputShape(): array {
+ return [
+ 'speech' => new ShapeDescriptor(
+ $this->l->t('Output speech'),
+ $this->l->t('The generated speech'),
+ EShapeType::Audio
+ ),
+ ];
+ }
+}