/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Notifier/Bridge/GoogleChat/GoogleChatOptions.php
102 строки
2 KB
Alexandre Daubois
Use CPP where possible
23 июл 2024, 15:28
Не верифицирован
23 июл 2024, 15:28
877f6b2
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Notifier\Bridge\GoogleChat; use Symfony\Component\Notifier\Message\ChatMessage; use Symfony\Component\Notifier\Message\MessageOptionsInterface; use Symfony\Component\Notifier\Notification\Notification; /** * @author Jérôme Tamarelle <jerome@tamarelle.net> */ final class GoogleChatOptions implements MessageOptionsInterface { private ?string $threadKey = null; public function __construct( private array $options = [], ) { } public static function fromNotification(Notification $notification): self { $options = new self(); $text = $notification->getEmoji().' *'.$notification->getSubject().'* '; if ($notification->getContent()) { $text .= "\r\n".$notification->getContent(); } if ($exception = $notification->getExceptionAsString()) { $text .= "\r\n".'```'.$exception.'```'; } $options->text($text); return $options; } public static function fromMessage(ChatMessage $message): self { $options = new self(); $options->text($message->getSubject()); return $options; } public function toArray(): array { return $this->options; } /** * @return $this */ public function cardV2(array $card): static { $this->options['cardsV2'][] = $card; return $this; } /** * @return $this */ public function text(string $text): static { $this->options['text'] = $text; return $this; } /** * @return $this */ public function setThreadKey(?string $threadKey): static { $this->threadKey = $threadKey; return $this; } public function getThreadKey(): ?string { return $this->threadKey; } public function getRecipientId(): ?string { return null; } }