//using System;
//using System.IO;
//using UnityEditor;
//using UnityEngine;
//using Object = UnityEngine.Object;
//namespace XGame.Editor.Build.AssetBundles
//{
// public class ABPackerInfoEditor
// {
// private Object asset;
// public long PackerId { get; private set; }
// public ABPackerType PackerType { get; private set; }
// public string AssetGUID
// {
// get
// {
// if (asset != null)
// {
// var assetPath = AssetDatabase.GetAssetPath(asset);
// return AssetDatabase.AssetPathToGUID(assetPath);
// }
// return string.Empty;
// }
// }
// public bool IsInspector { set; get; }
// ///
// /// 删除的监听事件
// ///
// private event Action onDelete;
// public event Action OnDelete
// {
// add => onDelete += value;
// remove => onDelete -= value;
// }
// public ABPackerInfoEditor(ABPackerInfo info)
// {
// PackerId = info.packerId;
// PackerType = info.packerType;
// asset = AssetDatabase.LoadMainAssetAtPath(info.AssetPath);
// }
// public void OnGUI()
// {
// if (IsInspector)
// {
// EditorGUILayout.BeginVertical("Box");
// }
// else
// {
// EditorGUILayout.BeginHorizontal("Box");
// }
// DrawAsset();
// DrawButtons();
// if (IsInspector)
// {
// EditorGUILayout.EndVertical();
// }
// else
// {
// EditorGUILayout.EndHorizontal();
// }
// }
// private readonly GUIContent assetContent = new GUIContent("Asset", "资源或者文件夹,只能选择Res/Addressable目录下的资源");
// private readonly GUIContent packerTypeContent = new GUIContent("Packer Type", "打包分类 \r\nTopDirectoryOnly:默认方式,当前目录的资源(不包含子目录)打一个包 \r\nAllDirectories:当前目录及子目录的资源打一个包 \r\nSingleAsset:单个资源打包");
// private void DrawAsset()
// {
// var lastAsset = asset;
// asset = EditorGUILayout.ObjectField(assetContent, asset, typeof(Object), false);
// var assetPath = AssetDatabase.GetAssetPath(asset);
// if (!string.IsNullOrEmpty(assetPath))
// {
// if (!AssetBundleHelper.IsValidPath(assetPath))
// //if (FileUtil.IsFileIgnore(assetPath) || !assetPath.StartsWith(FileUtil.ToRelativePath(PathDefine.ResAddressablePath)))
// {
// Debug.LogError($"选择了错误的资源或文件夹,只能选择Res/Addressable目录下的资源. Path:{assetPath}");
// asset = lastAsset;
// assetPath = AssetDatabase.GetAssetPath(asset);
// }
// }
// var isFile = (!string.IsNullOrEmpty(assetPath) && File.Exists(assetPath));
// if (isFile)
// {
// PackerType = ABPackerType.SingleAsset;
// EditorGUI.BeginDisabledGroup(true);
// }
// PackerType = (ABPackerType)EditorGUILayout.EnumPopup(packerTypeContent, PackerType);
// if (isFile)
// {
// EditorGUI.EndDisabledGroup();
// }
// }
// private void DrawButtons()
// {
// bool isDelete = GUILayout.Button("Delete", GUILayout.Width(60));
// if (isDelete)
// {
// //删除
// onDelete?.Invoke(PackerId);
// }
// }
// }
//}