From c9983577a8f7d6a49f9617d4792bcf2395386a31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Thu, 3 Aug 2023 13:01:21 +0200 Subject: [PATCH] feat: Expose text processing API in text MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- lib/Service/InitialStateProvider.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/Service/InitialStateProvider.php b/lib/Service/InitialStateProvider.php index 97ad82b8353..01b9b663a51 100644 --- a/lib/Service/InitialStateProvider.php +++ b/lib/Service/InitialStateProvider.php @@ -3,6 +3,9 @@ namespace OCA\Text\Service; use OCP\AppFramework\Services\IInitialState; +use OCP\TextProcessing\IManager; +use OCP\TextProcessing\IProvider; +use OCP\TextProcessing\ITaskType; use OCP\Translation\ITranslationManager; class InitialStateProvider { @@ -10,6 +13,7 @@ public function __construct( private IInitialState $initialState, private ConfigService $configService, private ITranslationManager $translationManager, + private IManager $textProcessingManager, private ?string $userId ) { } @@ -44,6 +48,18 @@ public function provideState(): void { 'translation_languages', $this->translationManager->getLanguages() ); + + $this->initialState->provideInitialState( + 'textprocessing', + array_map(function(string $className) { + /** @var class-string $className */ + $type = \OCP\Server::get($className); + return [ + 'task' => $className, + 'name' => $type->getName(), + ]; + }, $this->textProcessingManager->getAvailableTaskTypes()), + ); } public function provideFileId(int $fileId): void {