PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.4
Booking for Appointments and Events Calendar – Amelia v2.4.4
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / wordpress / php-mcp-schema / src / Common / Protocol / DTO / ProgressNotification.php
ameliabooking / vendor / wordpress / php-mcp-schema / src / Common / Protocol / DTO Last commit date
Annotations.php 1 month ago BaseMetadata.php 1 month ago BlobResourceContents.php 1 month ago CancelledNotification.php 1 month ago CancelledNotificationParams.php 1 month ago EmbeddedResource.php 1 month ago EmptyResult.php 1 month ago GetTaskPayloadRequest.php 1 month ago GetTaskPayloadRequestParams.php 1 month ago GetTaskPayloadResult.php 1 month ago Icons.php 1 month ago InitializeRequest.php 1 month ago InitializeRequestParams.php 1 month ago InitializeResult.php 1 month ago InitializedNotification.php 1 month ago PaginatedRequest.php 1 month ago PaginatedRequestParams.php 1 month ago PaginatedResult.php 1 month ago PingRequest.php 1 month ago ProgressNotification.php 1 month ago ProgressNotificationParams.php 1 month ago Result.php 1 month ago TextResourceContents.php 1 month ago URLElicitationRequiredError.php 1 month ago
ProgressNotification.php
99 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace WP\McpSchema\Common\Protocol\DTO;
6
7 use WP\McpSchema\Common\JsonRpc\DTO\JSONRPCNotification;
8 use WP\McpSchema\Common\Protocol\Union\ClientNotificationInterface;
9 use WP\McpSchema\Common\Traits\ValidatesRequiredFields;
10 use WP\McpSchema\Server\Lifecycle\Union\ServerNotificationInterface;
11
12 /**
13 * An out-of-band notification used to inform the receiver of a progress update for a long-running request.
14 *
15 * @since 2024-11-05
16 * @last-updated 2025-11-25 (modified property: params)
17 *
18 * @mcp-domain Common
19 * @mcp-subdomain Protocol
20 * @mcp-version 2025-11-25
21 */
22 class ProgressNotification extends JSONRPCNotification implements ClientNotificationInterface, ServerNotificationInterface
23 {
24 use ValidatesRequiredFields;
25
26 public const METHOD = 'notifications/progress';
27
28 public const DISCRIMINATOR_FIELD = 'method';
29 public const DISCRIMINATOR_VALUE = 'notifications/progress';
30
31 /**
32 * @var \WP\McpSchema\Common\Protocol\DTO\ProgressNotificationParams
33 */
34 protected ProgressNotificationParams $typedParams;
35
36 /**
37 * @param '2.0' $jsonrpc @since 2025-11-25
38 * @param \WP\McpSchema\Common\Protocol\DTO\ProgressNotificationParams $params @since 2024-11-05
39 */
40 public function __construct(
41 string $jsonrpc,
42 ProgressNotificationParams $params
43 ) {
44 parent::__construct(self::METHOD, $jsonrpc, null);
45 $this->typedParams = $params;
46 }
47
48 /**
49 * Creates an instance from an array.
50 *
51 * @param array{
52 * jsonrpc: '2.0',
53 * method: 'notifications/progress',
54 * params: array<string, mixed>|\WP\McpSchema\Common\Protocol\DTO\ProgressNotificationParams
55 * } $data
56 * @phpstan-param array<string, mixed> $data
57 * @return self
58 */
59 public static function fromArray(array $data): self
60 {
61 self::assertRequired($data, ['jsonrpc', 'params']);
62
63 /** @var '2.0' $jsonrpc */
64 $jsonrpc = self::asString($data['jsonrpc']);
65
66 /** @var \WP\McpSchema\Common\Protocol\DTO\ProgressNotificationParams $params */
67 $params = is_array($data['params'])
68 ? ProgressNotificationParams::fromArray(self::asArray($data['params']))
69 : $data['params'];
70
71 return new self(
72 $jsonrpc,
73 $params
74 );
75 }
76
77 /**
78 * Converts the instance to an array.
79 *
80 * @return array<string, mixed>
81 */
82 public function toArray(): array
83 {
84 $result = parent::toArray();
85
86 $result['params'] = $this->typedParams->toArray();
87
88 return $result;
89 }
90
91 /**
92 * @return \WP\McpSchema\Common\Protocol\DTO\ProgressNotificationParams
93 */
94 public function getTypedParams(): ProgressNotificationParams
95 {
96 return $this->typedParams;
97 }
98 }
99