#nullable enable
using Cysharp.Threading.Tasks;
using UnityEngine;
using UVC.Data;
using UVC.Data.Core;
using UVC.UI.Modal;
using UVC.UI.Tab;
namespace UVC.Factory.Modal.Settings
{
public class DisplayDataOrderModal : ModalView
{
[SerializeField]
public TabController tabController; // 탭 컨트롤러
///
/// 모달이 열릴 때 호출됩니다. (비동기)
///
/// 모달에 표시할 내용/설정
public override async UniTask OnOpen(ModalContent content)
{
await base.OnOpen(content); // 부모의 OnOpen을 먼저 호출해서 기본 UI를 설정해요.
if (tabController != null)
{
var dic = DataMask.DataMasks;
foreach (var item in dic)
{
Debug.Log($"Key: {item.Key}, Value: {item.Value}");
// 1. TabConfig 설정
tabController.AddTabConfig(item.Key, item.Key, "Prefabs/UI/Tab/DisplayDataOrderTabContent", "", item.Key, true);
}
// 2. 컨트롤러 초기화
tabController.Initialize();
}
}
///
/// 모달이 닫힐 때 결과로 반환할 데이터를 돌려줍니다.
///
/// 선택된 UIPlaybackListItemData 또는 null
public override UniTask