/// <summary> /// Get downloads information about packages for selected period. /// </summary> /// <param name="period">Requested period - year, month</param> /// <param name="filter">Specify packages type</param> /// <returns>Information about package downloads.</returns> public async Task <PackageDownloads[]> GetDownloadsAsync(DateTimeOffset period, PackageFilter filter = PackageFilter.All) { AssertIsLoggedIn(); CheckYear(period); var publisherInfo = await GetPublisherInfoAsync(); var date = period.ToString(ClientConsts.PERIOD_DT_FORMAT); var parameters = new Dictionary <string, string>() { { "package_filter", filter.ToString().ToLowerInvariant() } }; var response = await FetchDataAsync <DownloadsResponse>($"/api/publisher-info/downloads/{publisherInfo.Id}/{date}.json" + ToQueryString(parameters)); var downloads = new PackageDownloads[response.Payload.Length]; for (int i = 0; i < response.Payload.Length; i++) { downloads[i] = new PackageDownloads(response.Payload[i], response.Links[i].ShortUrl); } return(downloads); }
private static string GetFilterDisplayName(PackageFilter filter) { switch (filter) { case PackageFilter.All: return("All packages"); case PackageFilter.Local: return("In Project"); case PackageFilter.Modules: return("Built-in packages"); default: return(filter.ToString()); } }
private static string GetFilterDisplayName(PackageFilter filter) { switch (filter) { case PackageFilter.Unity: return("Unity Registry"); case PackageFilter.Other: return("My Registries"); case PackageFilter.Local: return("In Project"); case PackageFilter.Modules: return("Built-in"); case PackageFilter.None: return("None"); default: return(filter.ToString()); } }
public static void SetLastUsedPackageFilter(string str, PackageFilter filter) { EditorPrefs.SetString(lastUsedFilterPrefix + GetHascodeHexString(str), filter.ToString()); }