File manager - Edit - /home/linknsbh/rassudr.online/vendor/kreait/firebase-php/src/Firebase/DynamicLink/AnalyticsInfo.php
Back
<?php declare(strict_types=1); namespace Kreait\Firebase\DynamicLink; use JsonSerializable; use Kreait\Firebase\DynamicLink\AnalyticsInfo\GooglePlayAnalytics; use Kreait\Firebase\DynamicLink\AnalyticsInfo\ITunesConnectAnalytics; use function array_key_exists; /** * @phpstan-import-type GooglePlayAnalyticsShape from GooglePlayAnalytics * @phpstan-import-type ITunesConnectAnalyticsShape from ITunesConnectAnalytics * * @phpstan-type AnalyticsInfoShape array{ * googlePlayAnalytics?: GooglePlayAnalyticsShape, * itunesConnectAnalytics?: ITunesConnectAnalyticsShape * } */ final class AnalyticsInfo implements JsonSerializable { private function __construct( private readonly ?GooglePlayAnalytics $googlePlayAnalytics, private readonly ?ITunesConnectAnalytics $iTunesConnectAnalytics, ) { } /** * @param AnalyticsInfoShape $data */ public static function fromArray(array $data): self { $googlePlayAnalytics = array_key_exists('googlePlayAnalytics', $data) ? GooglePlayAnalytics::fromArray($data['googlePlayAnalytics']) : null; $itunesConnectAnalytics = array_key_exists('itunesConnectAnalytics', $data) ? ITunesConnectAnalytics::fromArray($data['itunesConnectAnalytics']) : null; return new self($googlePlayAnalytics, $itunesConnectAnalytics); } public static function new(): self { return new self(null, null); } /** * @param GooglePlayAnalytics|GooglePlayAnalyticsShape $data */ public function withGooglePlayAnalyticsInfo($data): self { $gpInfo = $data instanceof GooglePlayAnalytics ? $data : GooglePlayAnalytics::fromArray($data); return new self($gpInfo, $this->iTunesConnectAnalytics); } /** * @param ITunesConnectAnalytics|ITunesConnectAnalyticsShape $data */ public function withItunesConnectAnalytics($data): self { $icInfo = $data instanceof ITunesConnectAnalytics ? $data : ITunesConnectAnalytics::fromArray($data); return new self($this->googlePlayAnalytics, $icInfo); } /** * @return AnalyticsInfoShape */ public function jsonSerialize(): array { return array_filter([ 'googlePlayAnalytics' => $this->googlePlayAnalytics?->jsonSerialize(), 'itunesConnectAnalytics' => $this->iTunesConnectAnalytics?->jsonSerialize(), ]); } }
| ver. 1.4 |
Github
|
.
| PHP 8.2.31 | Generation time: 0.56 |
proxy
|
phpinfo
|
Settings