<?php

namespace App\View\Components;

use Closure;
use Illuminate\Contracts\View\View;
use Illuminate\View\Component;

class SuccessBlock extends Component
{

    private const array SUCCESS_TYPES = [
        'custom' => [
            'icon' => 'check',
            'message' => '%s'
        ]
    ];

    public array $successArray;

    /**
     * Create a new component instance.
     */
    public function __construct(
        public string $successType,
        public string $message = "",
    )
    {
        $this->successArray = self::SUCCESS_TYPES[$this->successType] ?? self::SUCCESS_TYPES['custom'];
    }

    /**
     * Get the view / contents that represent the component.
     */
    public function render(): View|Closure|string
    {
        return view('components.success-block');
    }
}
