PHP 8.2.30
Preview: HasContext.php Size: 1.31 KB
/proc/thread-self/root/home/byroehnu/easetack.com/vendor/spatie/flare-client-php/src/Concerns/HasContext.php

<?php

namespace Spatie\FlareClient\Concerns;

trait HasContext
{
    protected ?string $messageLevel = null;

    protected ?string $stage = null;

    /**
     * @var array<string, mixed>
     */
    protected array $userProvidedContext = [];

    public function stage(?string $stage): self
    {
        $this->stage = $stage;

        return $this;
    }

    public function messageLevel(?string $messageLevel): self
    {
        $this->messageLevel = $messageLevel;

        return $this;
    }

    /**
     * @param string $groupName
     * @param mixed $default
     *
     * @return array<int, mixed>
     */
    public function getGroup(string $groupName = 'context', $default = []): array
    {
        return $this->userProvidedContext[$groupName] ?? $default;
    }

    public function context(string $key, mixed $value): self
    {
        return $this->group('context', [$key => $value]);
    }

    /**
     * @param string $groupName
     * @param array<string, mixed> $properties
     *
     * @return $this
     */
    public function group(string $groupName, array $properties): self
    {
        $group = $this->userProvidedContext[$groupName] ?? [];

        $this->userProvidedContext[$groupName] = array_merge_recursive_distinct(
            $group,
            $properties
        );

        return $this;
    }
}

Directory Contents

Dirs: 0 × Files: 2

Name Size Perms Modified Actions
1.31 KB lrw-rw-rw- 2025-02-14 13:42:06
Edit Download
411 B lrw-rw-rw- 2025-02-14 13:42:06
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).