A\ő2018.1.6f1ţ˙˙˙˙˙’3$řĚuń옲e+ Í=^7€˙˙˙˙€Ś€˛€ЀŚ€Ś€Ś€#Ś€+H€3˙˙˙˙€1€1€˙˙˙˙@ހ€ Q€j€ H€<˙˙˙˙ €1€1€˙˙˙˙ @ހ€ Q€j€Ő€I˙˙˙˙€1€1€˙˙˙˙Ŕހ€H€j€˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€™€PAssetMetaDataguiddata[0]data[1]data[2]data[3]pathNameoriginalNamelabelsassetStoreRef ˙˙ŢšőRkVc}­j˘9Ź­;Ę7€˙˙˙˙€Ś€˛€ Ő€ ހ#€.€,€†€Ä€ ހ#€.€,€H€Ť€˙˙˙˙€1€1€˙˙˙˙ @ހ€ Q€j€ ń€5˙˙˙˙ €1€1€˙˙˙˙ €ހ€€j€˙˙˙˙€G›€˙˙˙˙€H€]˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€H€b˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€H€k˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€y€ € ހ#€.€,€Ő€p˙˙˙˙ €1€1€˙˙˙˙!Ŕހ€"€j€˙˙˙˙#€H€›€˙˙˙˙$€1€1€˙˙˙˙%@ހ€&Q€j€'y€ € (ހ#)€.€,*€ €„+@ž€“ ,@ހ#-€.€,.€H€˜˙˙˙˙/€1€1€˙˙˙˙0@ހ€1Q€j€2H€Ł˙˙˙˙3€1€1€˙˙˙˙4@ހ€5Q€j€6H€ľ˙˙˙˙7€1€1€˙˙˙˙8@ހ€9Q€j€:MonoImporterPPtrm_FileIDm_PathIDm_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariants˙˙˙8-l'€Łć„hŒÎA,Œ€7€˙˙˙˙€Ś€˛€Ő€ ހ€.€€†€Ä€ ހ€.€€H€Ť€˙˙˙˙€1€1€˙˙˙˙ @ހ€ Q€j€ H€ę€˙˙˙˙ €1€1€˙˙˙˙ @ހ€Q€j€ń€(˙˙˙˙€1€1€˙˙˙˙€ހ€€j€˙˙˙˙€H€›€˙˙˙˙€1€1€˙˙˙˙@ހ€Q€j€y€ € ހ€.€€y€< ހ€.€€ހCH€T˙˙˙˙€1€1€˙˙˙˙ @ހ€!Q€j€"H€`˙˙˙˙#€1€1€˙˙˙˙$@ހ€%Q€j€&H€l˙˙˙˙'€1€1€˙˙˙˙(@ހ€)Q€j€*L€{+PPtrm_FileIDm_PathIDm_DefaultReferencesm_Iconm_ExecutionOrderm_ClassNamem_Namespacem_AssemblyNamem_IsEditorScripttxDŕyŻŔ5Lóă"˜JŽ‚ZqPG:çIPackages/com.unity.package-manager-ui/Editor/Sources/UI/PackageDetails.csPackageDetailsŒKusing System; using System.Linq; using Semver; using UnityEngine; using UnityEngine.Experimental.UIElements; namespace UnityEditor.PackageManager.UI { internal class PackageDetailsFactory : UxmlFactory { protected override PackageDetails DoCreate(IUxmlAttributes bag, CreationContext cc) { return new PackageDetails(); } } internal class PackageDetails : VisualElement { internal static PackageTag[] SupportedTags() { return new PackageTag[] { PackageTag.preview }; } private readonly VisualElement root; private Package package; private PackageFilter filter; private const string emptyId = "emptyArea"; private const string emptyDescriptionClass = "empty"; private enum PackageAction { Add, Remove, Update, Downgrade, Enable, Disable } private static readonly string[] PackageActionVerbs = { "Install", "Remove", "Update to", "Go back to", "Enable", "Disable" }; private static readonly string[] PackageActionInProgressVerbs = { "Installing", "Removing", "Updating to", "Going back to", "Enabling", "Disabling" }; public PackageDetails() { root = Resources.Load("Templates/PackageDetails").CloneTree(null); Add(root); root.StretchToParentSize(); SetUpdateVisibility(false); RemoveButton.visible = false; root.Q(emptyId).visible = false; UpdateButton.clickable.clicked += UpdateClick; RemoveButton.clickable.clicked += RemoveClick; ViewDocButton.clickable.clicked += ViewDocClick; ViewChangelogButton.clickable.clicked += ViewChangelogClick; ViewChangelogButton.parent.clippingOptions = ClippingOptions.NoClipping; ViewChangelogButton.parent.parent.clippingOptions = ClippingOptions.NoClipping; PackageCollection.Instance.OnFilterChanged += OnFilterChanged; } private void SetUpdateVisibility(bool value) { if (UpdateContainer != null) UIUtils.SetElementDisplay(UpdateContainer, value); } // Package version to display public PackageInfo Display(Package package) { return PackageCollection.Instance.Filter == PackageFilter.All || package.Current == null ? package.Latest : package.Current; } private void OnFilterChanged(PackageFilter obj) { root.Q(emptyId).visible = false; } public void SetPackage(Package package, PackageFilter filter) { if (this.package != null) { if (this.package.AddSignal.Operation != null) { this.package.AddSignal.Operation.OnOperationError -= OnAddOperationError; this.package.AddSignal.Operation.OnOperationSuccess -= OnAddOperationSuccess; } if (this.package.RemoveSignal.Operation != null) { this.package.RemoveSignal.Operation.OnOperationError -= OnRemoveOperationError; } } this.filter = filter; this.package = package; var detailVisible = true; Error error = null; if (package == null || Display(package) == null) { detailVisible = false; UIUtils.SetElementDisplay(ViewChangelogButton, false); UIUtils.SetElementDisplay(ViewDocButton, false); } else { SetUpdateVisibility(true); RemoveButton.visible = true; var displayPackage = Display(package); if (string.IsNullOrEmpty(displayPackage.Description)) { DetailDesc.text = "There is no description for this package."; DetailDesc.AddToClassList(emptyDescriptionClass); } else { DetailDesc.text = displayPackage.Description; DetailDesc.RemoveFromClassList(emptyDescriptionClass); } root.Q