using System; using UnityEngine; using UnityEngine.UI; namespace Minesweeper.Presentation.Views { public sealed class MainMenuView : MonoBehaviour, IMainMenuView { [SerializeField] private GameObject root; [SerializeField] private Button startButton; public event Action StartClicked; private void Awake() { if (root == null) { root = gameObject; } } private void OnEnable() { if (startButton != null) { startButton.onClick.AddListener(OnStartClicked); } } private void OnDisable() { if (startButton != null) { startButton.onClick.RemoveListener(OnStartClicked); } } public void Show() { root.SetActive(true); } public void Hide() { root.SetActive(false); } private void OnStartClicked() { StartClicked?.Invoke(); } } }