Skip to content

Commit

Permalink
Move MessageBag and MessageProvider to contract from utils (#…
Browse files Browse the repository at this point in the history
…5092)
  • Loading branch information
huangdijia committed Sep 20, 2022
1 parent d0d7965 commit 3d09a3b
Show file tree
Hide file tree
Showing 3 changed files with 107 additions and 3 deletions.
87 changes: 87 additions & 0 deletions src/MessageBag.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
<?php

declare(strict_types=1);
/**
* This file is part of Hyperf.
*
* @link https://www.hyperf.io
* @document https://hyperf.wiki
* @contact [email protected]
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
*/
namespace Hyperf\Contract;

interface MessageBag
{
/**
* Get the keys present in the message bag.
*/
public function keys(): array;

/**
* Add a message to the bag.
*/
public function add(string $key, string $message): MessageBag;

/**
* Merge a new array of messages into the bag.
*
* @param array|MessageProvider $messages
* @return $this
*/
public function merge($messages);

/**
* Determine if messages exist for a given key.
*
* @param array|string $key
*/
public function has($key): bool;

/**
* Get the first message from the bag for a given key.
*/
public function first(?string $key = null, ?string $format = null): string;

/**
* Get all of the messages from the bag for a given key.
*/
public function get(string $key, ?string $format = null): array;

/**
* Get all of the messages for every key in the bag.
*/
public function all(?string $format = null): array;

/**
* Get the raw messages in the container.
*/
public function getMessages(): array;

/**
* Get the default message format.
*/
public function getFormat(): string;

/**
* Set the default message format.
*
* @return $this
*/
public function setFormat(string $format = ':message');

/**
* Determine if the message bag has any messages.
*/
public function isEmpty(): bool;

/**
* Determine if the message bag has any messages.
*/
public function isNotEmpty(): bool;

/**
* Get the number of messages in the container.
*/
public function count(): int;
}
20 changes: 20 additions & 0 deletions src/MessageProvider.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?php

declare(strict_types=1);
/**
* This file is part of Hyperf.
*
* @link https://www.hyperf.io
* @document https://hyperf.wiki
* @contact [email protected]
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
*/
namespace Hyperf\Contract;

interface MessageProvider
{
/**
* Get the messages for the instance.
*/
public function getMessageBag(): MessageBag;
}
3 changes: 0 additions & 3 deletions src/ValidatorInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@
*/
namespace Hyperf\Contract;

use Hyperf\Utils\Contracts\MessageBag;
use Hyperf\Utils\Contracts\MessageProvider;

interface ValidatorInterface extends MessageProvider
{
/**
Expand Down

0 comments on commit 3d09a3b

Please sign in to comment.