Initial commit
This commit is contained in:
commit
29ecdf6ca5
|
@ -0,0 +1,478 @@
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using YoutubeExplode.Playlists;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Microsoft.AspNetCore.Http;
|
||||||
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using YoutubeExplode;
|
||||||
|
using System.Text;
|
||||||
|
using System.Net.Http.Headers;
|
||||||
|
using System.Net.Http;
|
||||||
|
using System.IO;
|
||||||
|
using YoutubeExplode.Channels;
|
||||||
|
using System.Net;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
using System.Drawing;
|
||||||
|
using YoutubeExplode.Videos.Streams;
|
||||||
|
using YoutubeExplode.Videos;
|
||||||
|
using AngleSharp.Common;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
namespace DL.Controllers
|
||||||
|
{
|
||||||
|
[Route("Grabber")]
|
||||||
|
[ApiController]
|
||||||
|
|
||||||
|
public class YoutubeController : ControllerBase
|
||||||
|
{
|
||||||
|
private static bool ChannelIsValid(string id)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrWhiteSpace(id))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Channel IDs should start with these characters
|
||||||
|
if (!id.StartsWith("UC", StringComparison.Ordinal))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Channel IDs are always 24 characters
|
||||||
|
if (id.Length != 24)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return !Regex.IsMatch(id, @"[^0-9a-zA-Z_\-]");
|
||||||
|
}
|
||||||
|
public string fixstr(string inputString)
|
||||||
|
{
|
||||||
|
|
||||||
|
string pattern = " *[\\~#%&*{}/:<>?|\"-]+ *";
|
||||||
|
string replacement = "_";
|
||||||
|
|
||||||
|
Regex regEx = new Regex(pattern);
|
||||||
|
string sanitized = regEx.Replace(inputString, replacement);
|
||||||
|
string asAscii = Encoding.ASCII.GetString(
|
||||||
|
Encoding.Convert(
|
||||||
|
Encoding.UTF8,
|
||||||
|
Encoding.GetEncoding(
|
||||||
|
Encoding.ASCII.EncodingName,
|
||||||
|
new EncoderReplacementFallback("_"),
|
||||||
|
new DecoderExceptionFallback()
|
||||||
|
),
|
||||||
|
Encoding.UTF8.GetBytes(sanitized)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
return asAscii.Replace(';', ' ');
|
||||||
|
}
|
||||||
|
[HttpGet("Video/{id}")]
|
||||||
|
public async
|
||||||
|
Task<FileStreamResult> DownloadAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var videoname0 = await YT.Videos.GetAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
var strs = await YT.Videos.Streams.GetManifestAsync(id);
|
||||||
|
var high = strs.GetMuxedStreams().GetWithHighestVideoQuality();
|
||||||
|
string sanitized = fixstr(videoname0.Title);
|
||||||
|
|
||||||
|
return File(YT.Videos.Streams.GetAsync(high).Result, $"video/{high.Container.Name}", $"{sanitized}.{high.Container.Name}", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpGet("VideoHigh/{id}")]
|
||||||
|
public async Task<FileStreamResult> DownloadOnlyVideoAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var videoname0 = await YT.Videos.GetAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(videoname0.Title);
|
||||||
|
var strs = await YT.Videos.Streams.GetManifestAsync(id);
|
||||||
|
var high = strs.GetVideoStreams().GetWithHighestVideoQuality();
|
||||||
|
|
||||||
|
|
||||||
|
return File(YT.Videos.Streams.GetAsync(high).Result, $"video/{high.Container.Name}", $"{sanitized}.{high.Container.Name}", true);
|
||||||
|
}
|
||||||
|
[HttpGet("Audio/{id}")]
|
||||||
|
public async Task<FileStreamResult> DownloadAudioAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var videoname0 = await YT.Videos.GetAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(videoname0.Title);
|
||||||
|
var strs = await YT.Videos.Streams.GetManifestAsync(id);
|
||||||
|
var high = strs.GetAudioOnlyStreams().GetWithHighestBitrate();
|
||||||
|
|
||||||
|
|
||||||
|
return File(YT.Videos.Streams.GetAsync(high).Result, $"audio/{high.Container.Name}", $"{sanitized}.{high.Container.Name}", true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpGet("Search/{id}")]
|
||||||
|
public async Task<IActionResult> SearchAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Search.GetVideosAsync(id))
|
||||||
|
{
|
||||||
|
s += $"{v.Id}\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "query.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("ChannelNew2/{date}/{id}")]
|
||||||
|
public async Task<IActionResult> NewUser2VideosAsync(string date,string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
var vids = ChannelIsValid(id) ? id : (await YT.Channels.GetByUserAsync(id)).Id.ToString();
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Channels.GetUploadsAsync(vids))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}/*
|
||||||
|
public async Task<IActionResult> NewUser2VideosAsync(string date, string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var vids = ChannelIsValid(id) ? new ChannelId(id) : (await YT.Channels.GetByUserAsync(id)).Id;
|
||||||
|
var ien = YT.Channels.GetUploadsAsync(vids);
|
||||||
|
var vids2 = await ien.ToListAsync();
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
foreach (YoutubeExplode.Playlists.PlaylistVideo v in vids2)
|
||||||
|
{
|
||||||
|
if (v.UploadDate.Date >= new DateTime(int.Parse(date.Split("-")[0]), int.Parse(date.Split("-")[1]), int.Parse(date.Split("-")[2])))
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ','*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Replace(" ", "-").Length, 439))} {v.Engagement.LikeCount} {v.Engagement.DislikeCount} {v.Engagement.ViewCount} {v.UploadDate.ToString("MM/dd/yyyy")} {v.Duration.Hours}:{v.Duration.Minutes}:{v.Duration.Seconds} ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
} }
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
return await User2VideosAsync(id);
|
||||||
|
}*/
|
||||||
|
[HttpGet("Channel2/{id}")]
|
||||||
|
public async Task<IActionResult> User2VideosAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
var vids = ChannelIsValid(id) ? id : (await YT.Channels.GetByUserAsync(id)).Id.ToString();
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Channels.GetUploadsAsync(vids))
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("User/{id}")]
|
||||||
|
public async Task<IActionResult> UserVideosAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
|
||||||
|
var vids = await YT.Channels.GetByUserAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Channels.GetUploadsAsync(vids.Id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("UserNew/{date}/{id}")]
|
||||||
|
public async Task<IActionResult> NewUserVideosAsync(string date,string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
var vids = await YT.Channels.GetByUserAsync(id);
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Channels.GetUploadsAsync(vids.Id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
public async Task<IActionResult> NewUserVideosAsync(string date, string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var vids = await YT.Channels.GetByUserAsync(id);
|
||||||
|
var ien = YT.Channels.GetUploadsAsync(vids.Id);
|
||||||
|
var vids2 = await ien.ToListAsync();
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
foreach (var v in vids2)
|
||||||
|
{
|
||||||
|
if (v.UploadDate.Date >= new DateTime(int.Parse(date.Split("-")[0]), int.Parse(date.Split("-")[1]), int.Parse(date.Split("-")[2])))
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ','*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Replace(" ", "-").Length, 439))} {v.Engagement.LikeCount} {v.Engagement.DislikeCount} {v.Engagement.ViewCount} {v.UploadDate.ToString("MM/dd/yyyy")} {v.Duration.Hours}:{v.Duration.Minutes}:{v.Duration.Seconds} ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
} }
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
|
||||||
|
return await UserVideosAsync(id);
|
||||||
|
}*/
|
||||||
|
[HttpGet("Channel/{id}")]
|
||||||
|
public async Task<IActionResult> ChannelVideosAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Channels.GetUploadsAsync(id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("ChannelNew/{date}/{id}")]
|
||||||
|
public async Task<IActionResult> NewChannelVideosAsync(string date,string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach (YoutubeExplode.Playlists.PlaylistVideo v in YT.Channels.GetUploadsAsync(id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.ChannelTitle.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
|
||||||
|
}
|
||||||
|
/* public async Task<IActionResult> NewChannelVideosAsync(string date, string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
var ien = YT.Channels.GetUploadsAsync(id);
|
||||||
|
var vids2 = await ien.ToListAsync();
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
foreach (var v in vids2)
|
||||||
|
{
|
||||||
|
if (v.UploadDate.Date >= new DateTime(int.Parse(date.Split("-")[0]), int.Parse(date.Split("-")[1]), int.Parse(date.Split("-")[2])))
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ','*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Replace(" ", "-").Length, 439))} {v.Engagement.LikeCount} {v.Engagement.DislikeCount} {v.Engagement.ViewCount} {v.UploadDate.ToString("MM/dd/yyyy")} {v.Duration.Hours}:{v.Duration.Minutes}:{v.Duration.Seconds} ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
|
||||||
|
return await ChannelVideosAsync(id);
|
||||||
|
}*/
|
||||||
|
[HttpGet("searchinfo/{id}")]
|
||||||
|
public async Task<IActionResult> SearchInfoAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
int videos = 0;
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Search.GetVideosAsync(id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
videos++;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("Playlist/{id}")]
|
||||||
|
public async Task<IActionResult> PlaylistAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
string s = "";
|
||||||
|
await foreach(var v in YT.Search.GetVideosAsync(id))
|
||||||
|
{
|
||||||
|
s += $"{v.Id}\n";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "query.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("playlistinfo/{id}")]
|
||||||
|
public async Task<IActionResult> PlaylistInfoAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
|
||||||
|
|
||||||
|
string s = "";
|
||||||
|
|
||||||
|
await foreach(var v in YT.Playlists.GetVideosAsync(id))
|
||||||
|
{
|
||||||
|
|
||||||
|
var fileName = v.Title;
|
||||||
|
|
||||||
|
|
||||||
|
string sanitized = fixstr(fileName).Replace(' ', '*');
|
||||||
|
|
||||||
|
s += $"{v.Id} {sanitized.Substring(0, Math.Min(sanitized.Length, 439))} {v.Author.Title.Replace("*", "_").Replace(" ", "*").Substring(0, Math.Min(v.Author.Title.Replace(" ", "-").Length, 439))} {0} {0} 0 8/20/1992 ENDLINE\n";
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(s), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("Info/{id}")]
|
||||||
|
public async Task<IActionResult> InfoAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var vids = await YT.Videos.GetAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes($"{vids.Title}\nhttps://i.ytimg.com/vi/{id}/default.jpg\n{vids.Author}"), "text/plain", "info.txt", true);
|
||||||
|
}
|
||||||
|
[HttpGet("jpg/{id}")]
|
||||||
|
public async Task<IActionResult> Jpg(string id)
|
||||||
|
{
|
||||||
|
|
||||||
|
return Redirect($"https://i.ytimg.com/vi/{id}/default.jpg");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[HttpGet("ConvertString/{id}/{prefix}")]
|
||||||
|
public async Task<IActionResult> REDIR(string id, string prefix)
|
||||||
|
{
|
||||||
|
try{
|
||||||
|
VideoId v=id;
|
||||||
|
string newid = v.ToString();
|
||||||
|
|
||||||
|
return Redirect(prefix + newid);
|
||||||
|
}catch(Exception)
|
||||||
|
{
|
||||||
|
return NotFound("nope not avail");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
[HttpGet("Descript/{id}")]
|
||||||
|
public async Task<IActionResult> DescAsync(string id)
|
||||||
|
{
|
||||||
|
var YT = new YoutubeClient();
|
||||||
|
var vids = await YT.Videos.GetAsync(id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return File(ASCIIEncoding.Default.GetBytes(vids.Description), "text/plain", "desc.txt");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
|
||||||
|
WORKDIR /src
|
||||||
|
RUN apt install git
|
||||||
|
RUN git clone https://gitlab.tesses.net/tesses50/ytapic.git .
|
||||||
|
RUN dotnet restore "./ytapic.csproj" --disable-parallel
|
||||||
|
RUN dotnet publish "./ytapic.csproj" -c Release -o /app --no-restore
|
||||||
|
|
||||||
|
#serve stage
|
||||||
|
FROM mcr.microsoft.com/dotnet/aspnet:6.0
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=build /app ./
|
||||||
|
|
||||||
|
EXPOSE 5069
|
||||||
|
|
||||||
|
ENTRYPOINT ["dotnet","ytapic.dll"]
|
|
@ -0,0 +1,25 @@
|
||||||
|
var builder = WebApplication.CreateBuilder(args);
|
||||||
|
|
||||||
|
// Add services to the container.
|
||||||
|
|
||||||
|
builder.Services.AddControllers();
|
||||||
|
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
||||||
|
builder.Services.AddEndpointsApiExplorer();
|
||||||
|
builder.Services.AddSwaggerGen();
|
||||||
|
|
||||||
|
var app = builder.Build();
|
||||||
|
|
||||||
|
// Configure the HTTP request pipeline.
|
||||||
|
if (app.Environment.IsDevelopment())
|
||||||
|
{
|
||||||
|
app.UseSwagger();
|
||||||
|
app.UseSwaggerUI();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
app.UseAuthorization();
|
||||||
|
|
||||||
|
app.MapControllers();
|
||||||
|
|
||||||
|
app.Run();
|
|
@ -0,0 +1,31 @@
|
||||||
|
{
|
||||||
|
"$schema": "https://json.schemastore.org/launchsettings.json",
|
||||||
|
"iisSettings": {
|
||||||
|
"windowsAuthentication": false,
|
||||||
|
"anonymousAuthentication": true,
|
||||||
|
"iisExpress": {
|
||||||
|
"applicationUrl": "http://localhost:16439",
|
||||||
|
"sslPort": 44365
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"ytapic": {
|
||||||
|
"commandName": "Project",
|
||||||
|
"dotnetRunMessages": true,
|
||||||
|
"launchBrowser": true,
|
||||||
|
"launchUrl": "swagger",
|
||||||
|
"applicationUrl": "https://localhost:7003;http://localhost:5069",
|
||||||
|
"environmentVariables": {
|
||||||
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"IIS Express": {
|
||||||
|
"commandName": "IISExpress",
|
||||||
|
"launchBrowser": true,
|
||||||
|
"launchUrl": "swagger",
|
||||||
|
"environmentVariables": {
|
||||||
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
namespace ytapic;
|
||||||
|
|
||||||
|
public class WeatherForecast
|
||||||
|
{
|
||||||
|
public DateTime Date { get; set; }
|
||||||
|
|
||||||
|
public int TemperatureC { get; set; }
|
||||||
|
|
||||||
|
public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
|
||||||
|
|
||||||
|
public string? Summary { get; set; }
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"AllowedHosts": "*"
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"AllowedHosts": "*"
|
||||||
|
}
|
Binary file not shown.
|
@ -0,0 +1,181 @@
|
||||||
|
{
|
||||||
|
"runtimeTarget": {
|
||||||
|
"name": ".NETCoreApp,Version=v6.0",
|
||||||
|
"signature": ""
|
||||||
|
},
|
||||||
|
"compilationOptions": {},
|
||||||
|
"targets": {
|
||||||
|
".NETCoreApp,Version=v6.0": {
|
||||||
|
"ytapic/1.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore": "6.2.3",
|
||||||
|
"YoutubeExplode": "6.2.1"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"ytapic.dll": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"AngleSharp/0.17.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"System.Buffers": "4.5.1",
|
||||||
|
"System.Text.Encoding.CodePages": "5.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/AngleSharp.dll": {
|
||||||
|
"assemblyVersion": "0.17.0.0",
|
||||||
|
"fileVersion": "0.17.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {},
|
||||||
|
"Microsoft.NETCore.Platforms/5.0.0": {},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
|
||||||
|
"assemblyVersion": "1.2.3.0",
|
||||||
|
"fileVersion": "1.2.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.2.3": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server": "3.0.0",
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.2.3",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen": "6.2.3",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI": "6.2.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.2.3": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.OpenApi": "1.2.3"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {
|
||||||
|
"assemblyVersion": "6.2.3.0",
|
||||||
|
"fileVersion": "6.2.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.2.3": {
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.2.3"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
|
||||||
|
"assemblyVersion": "6.2.3.0",
|
||||||
|
"fileVersion": "6.2.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.2.3": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
|
||||||
|
"assemblyVersion": "6.2.3.0",
|
||||||
|
"fileVersion": "6.2.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"System.Buffers/4.5.1": {},
|
||||||
|
"System.Text.Encoding.CodePages/5.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.NETCore.Platforms": "5.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"YoutubeExplode/6.2.1": {
|
||||||
|
"dependencies": {
|
||||||
|
"AngleSharp": "0.17.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net5.0/YoutubeExplode.dll": {
|
||||||
|
"assemblyVersion": "6.2.1.0",
|
||||||
|
"fileVersion": "6.2.1.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"ytapic/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
},
|
||||||
|
"AngleSharp/0.17.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-74haoXINcj4SdMsmiNzk+9VUwIX1U9P61O6AZd5Uao8SGNnJJB8Y/r8VJRc8orn4c7Vk/oURAKSNF9XcSDxbfA==",
|
||||||
|
"path": "anglesharp/0.17.0",
|
||||||
|
"hashPath": "anglesharp.0.17.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==",
|
||||||
|
"path": "microsoft.extensions.apidescription.server/3.0.0",
|
||||||
|
"hashPath": "microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.NETCore.Platforms/5.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-VyPlqzH2wavqquTcYpkIIAQ6WdenuKoFN0BdYBbCWsclXacSOHNQn66Gt4z5NBqEYW0FAPm5rlvki9ZiCij5xQ==",
|
||||||
|
"path": "microsoft.netcore.platforms/5.0.0",
|
||||||
|
"hashPath": "microsoft.netcore.platforms.5.0.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
|
||||||
|
"path": "microsoft.openapi/1.2.3",
|
||||||
|
"hashPath": "microsoft.openapi.1.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-cnzQDn0Le+hInsw2SYwlOhOCPXpYi/szcvnyqZJ12v+QyrLBwAmWXBg6RIyHB18s/mLeywC+Rg2O9ndz0IUNYQ==",
|
||||||
|
"path": "swashbuckle.aspnetcore/6.2.3",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.6.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-qOF7j1sL0bWm8g/qqHVPCvkO3JlVvUIB8WfC98kSh6BT5y5DAnBNctfac7XR5EZf+eD7/WasvANncTqwZYfmWQ==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swagger/6.2.3",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-+Xq7WdMCCfcXlnbLJVFNgY8ITdP2TRYIlpbt6IKzDw5FwFxdi9lBfNDtcT+/wkKwX70iBBFmXldnnd02/VO72A==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggergen/6.2.3",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-bCRI87uKJVb4G+KURWm8LQrL64St04dEFZcF6gIM67Zc0Sr/N47EO83ybLMYOvfNdO1DCv8xwPcrz9J/VEhQ5g==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggerui/6.2.3",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"System.Buffers/4.5.1": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
|
||||||
|
"path": "system.buffers/4.5.1",
|
||||||
|
"hashPath": "system.buffers.4.5.1.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages/5.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-NyscU59xX6Uo91qvhOs2Ccho3AR2TnZPomo1Z0K6YpyztBPM/A5VbkzOO19sy3A3i1TtEnTxA7bCe3Us+r5MWg==",
|
||||||
|
"path": "system.text.encoding.codepages/5.0.0",
|
||||||
|
"hashPath": "system.text.encoding.codepages.5.0.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"YoutubeExplode/6.2.1": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-VL8EzTwe8ttO0mGWh5EGGsK7A6mDUS71Ayl8mjS+oj/36W8kaWikMeOvcUyUko0Iy5X4atGcL76TMWDcc4Kj9g==",
|
||||||
|
"path": "youtubeexplode/6.2.1",
|
||||||
|
"hashPath": "youtubeexplode.6.2.1.nupkg.sha512"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
"runtimeOptions": {
|
||||||
|
"tfm": "net6.0",
|
||||||
|
"frameworks": [
|
||||||
|
{
|
||||||
|
"name": "Microsoft.NETCore.App",
|
||||||
|
"version": "6.0.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Microsoft.AspNetCore.App",
|
||||||
|
"version": "6.0.0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"configProperties": {
|
||||||
|
"System.GC.Server": true,
|
||||||
|
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,4 @@
|
||||||
|
// <autogenerated />
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"Version": 1,
|
||||||
|
"Hash": "yfHNznURhKMtX/pyceoc92mqpNgFx/PbQ9NqT3vsmVQ=",
|
||||||
|
"Source": "ytapic",
|
||||||
|
"BasePath": "_content/ytapic",
|
||||||
|
"Mode": "Default",
|
||||||
|
"ManifestType": "Build",
|
||||||
|
"ReferencedProjectsConfiguration": [],
|
||||||
|
"DiscoveryPatterns": [],
|
||||||
|
"Assets": []
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: System.Reflection.AssemblyCompanyAttribute("ytapic")]
|
||||||
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
|
||||||
|
[assembly: System.Reflection.AssemblyProductAttribute("ytapic")]
|
||||||
|
[assembly: System.Reflection.AssemblyTitleAttribute("ytapic")]
|
||||||
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|
||||||
|
// Generated by the MSBuild WriteCodeFragment class.
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
fe45e6750fb4c6c35e23f5a58f076b7b39b15f4b
|
|
@ -0,0 +1,16 @@
|
||||||
|
is_global = true
|
||||||
|
build_property.TargetFramework = net6.0
|
||||||
|
build_property.TargetPlatformMinVersion =
|
||||||
|
build_property.UsingMicrosoftNETSdkWeb = true
|
||||||
|
build_property.ProjectTypeGuids =
|
||||||
|
build_property.InvariantGlobalization =
|
||||||
|
build_property.PlatformNeutralAssembly =
|
||||||
|
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||||
|
build_property.RootNamespace = ytapic
|
||||||
|
build_property.RootNamespace = ytapic
|
||||||
|
build_property.ProjectDir = /home/mike/ytapic/
|
||||||
|
build_property.RazorLangVersion = 6.0
|
||||||
|
build_property.SupportLocalizedComponentNames =
|
||||||
|
build_property.GenerateRazorMetadataSourceChecksumAttributes =
|
||||||
|
build_property.MSBuildProjectDirectory = /home/mike/ytapic
|
||||||
|
build_property._RazorSourceGeneratorDebug =
|
|
@ -0,0 +1,17 @@
|
||||||
|
// <auto-generated/>
|
||||||
|
global using global::Microsoft.AspNetCore.Builder;
|
||||||
|
global using global::Microsoft.AspNetCore.Hosting;
|
||||||
|
global using global::Microsoft.AspNetCore.Http;
|
||||||
|
global using global::Microsoft.AspNetCore.Routing;
|
||||||
|
global using global::Microsoft.Extensions.Configuration;
|
||||||
|
global using global::Microsoft.Extensions.DependencyInjection;
|
||||||
|
global using global::Microsoft.Extensions.Hosting;
|
||||||
|
global using global::Microsoft.Extensions.Logging;
|
||||||
|
global using global::System;
|
||||||
|
global using global::System.Collections.Generic;
|
||||||
|
global using global::System.IO;
|
||||||
|
global using global::System.Linq;
|
||||||
|
global using global::System.Net.Http;
|
||||||
|
global using global::System.Net.Http.Json;
|
||||||
|
global using global::System.Threading;
|
||||||
|
global using global::System.Threading.Tasks;
|
|
@ -0,0 +1,16 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
|
||||||
|
|
||||||
|
// Generated by the MSBuild WriteCodeFragment class.
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
92314763d38ca17153d34f8998f0e0e8e9c0d522
|
|
@ -0,0 +1,29 @@
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/appsettings.Development.json
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/appsettings.json
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/ytapic
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/ytapic.deps.json
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/ytapic.runtimeconfig.json
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/ytapic.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/ytapic.pdb
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/AngleSharp.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/Microsoft.OpenApi.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll
|
||||||
|
/home/mike/ytapic/bin/Debug/net6.0/YoutubeExplode.dll
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.csproj.AssemblyReference.cache
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.GeneratedMSBuildEditorConfig.editorconfig
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.AssemblyInfoInputs.cache
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.AssemblyInfo.cs
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.csproj.CoreCompileInputs.cache
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.MvcApplicationPartsAssemblyInfo.cs
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.MvcApplicationPartsAssemblyInfo.cache
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/staticwebassets.build.json
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/staticwebassets.development.json
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/scopedcss/bundle/ytapic.styles.css
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.csproj.CopyComplete
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.dll
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/refint/ytapic.dll
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.pdb
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ytapic.genruntimeconfig.cache
|
||||||
|
/home/mike/ytapic/obj/Debug/net6.0/ref/ytapic.dll
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
5dcada28b46b1feb6889a21a59fc164ae4a5fa1c
|
Binary file not shown.
|
@ -0,0 +1,500 @@
|
||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"targets": {
|
||||||
|
"net6.0": {
|
||||||
|
"AngleSharp/0.17.0": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"System.Buffers": "4.5.1",
|
||||||
|
"System.Text.Encoding.CodePages": "5.0.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/netstandard2.0/AngleSharp.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/AngleSharp.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"build": {
|
||||||
|
"build/Microsoft.Extensions.ApiDescription.Server.props": {},
|
||||||
|
"build/Microsoft.Extensions.ApiDescription.Server.targets": {}
|
||||||
|
},
|
||||||
|
"buildMultiTargeting": {
|
||||||
|
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {},
|
||||||
|
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.NETCore.Platforms/5.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/netstandard1.0/_._": {}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard1.0/_._": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server": "3.0.0",
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.2.3",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen": "6.2.3",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI": "6.2.3"
|
||||||
|
},
|
||||||
|
"build": {
|
||||||
|
"build/Swashbuckle.AspNetCore.props": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.OpenApi": "1.2.3"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"frameworkReferences": [
|
||||||
|
"Microsoft.AspNetCore.App"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.2.3"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
|
||||||
|
"related": ".pdb;.xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"frameworkReferences": [
|
||||||
|
"Microsoft.AspNetCore.App"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"System.Buffers/4.5.1": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"ref/netcoreapp2.0/_._": {}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netcoreapp2.0/_._": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages/5.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.NETCore.Platforms": "5.0.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeTargets": {
|
||||||
|
"runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": {
|
||||||
|
"assetType": "runtime",
|
||||||
|
"rid": "win"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"YoutubeExplode/6.2.1": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"AngleSharp": "0.17.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net5.0/YoutubeExplode.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net5.0/YoutubeExplode.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"AngleSharp/0.17.0": {
|
||||||
|
"sha512": "74haoXINcj4SdMsmiNzk+9VUwIX1U9P61O6AZd5Uao8SGNnJJB8Y/r8VJRc8orn4c7Vk/oURAKSNF9XcSDxbfA==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "anglesharp/0.17.0",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"anglesharp.0.17.0.nupkg.sha512",
|
||||||
|
"anglesharp.nuspec",
|
||||||
|
"lib/net461/AngleSharp.dll",
|
||||||
|
"lib/net461/AngleSharp.xml",
|
||||||
|
"lib/net472/AngleSharp.dll",
|
||||||
|
"lib/net472/AngleSharp.xml",
|
||||||
|
"lib/netstandard2.0/AngleSharp.dll",
|
||||||
|
"lib/netstandard2.0/AngleSharp.xml",
|
||||||
|
"logo.png"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {
|
||||||
|
"sha512": "LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "microsoft.extensions.apidescription.server/3.0.0",
|
||||||
|
"hasTools": true,
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"build/Microsoft.Extensions.ApiDescription.Server.props",
|
||||||
|
"build/Microsoft.Extensions.ApiDescription.Server.targets",
|
||||||
|
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props",
|
||||||
|
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets",
|
||||||
|
"microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512",
|
||||||
|
"microsoft.extensions.apidescription.server.nuspec",
|
||||||
|
"tools/Newtonsoft.Json.dll",
|
||||||
|
"tools/dotnet-getdocument.deps.json",
|
||||||
|
"tools/dotnet-getdocument.dll",
|
||||||
|
"tools/dotnet-getdocument.runtimeconfig.json",
|
||||||
|
"tools/net461-x86/GetDocument.Insider.exe",
|
||||||
|
"tools/net461-x86/GetDocument.Insider.exe.config",
|
||||||
|
"tools/net461/GetDocument.Insider.exe",
|
||||||
|
"tools/net461/GetDocument.Insider.exe.config",
|
||||||
|
"tools/netcoreapp2.1/GetDocument.Insider.deps.json",
|
||||||
|
"tools/netcoreapp2.1/GetDocument.Insider.dll",
|
||||||
|
"tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Microsoft.NETCore.Platforms/5.0.0": {
|
||||||
|
"sha512": "VyPlqzH2wavqquTcYpkIIAQ6WdenuKoFN0BdYBbCWsclXacSOHNQn66Gt4z5NBqEYW0FAPm5rlvki9ZiCij5xQ==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "microsoft.netcore.platforms/5.0.0",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"LICENSE.TXT",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"lib/netstandard1.0/_._",
|
||||||
|
"microsoft.netcore.platforms.5.0.0.nupkg.sha512",
|
||||||
|
"microsoft.netcore.platforms.nuspec",
|
||||||
|
"runtime.json",
|
||||||
|
"useSharedDesignerContext.txt",
|
||||||
|
"version.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"sha512": "Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "microsoft.openapi/1.2.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"lib/net46/Microsoft.OpenApi.dll",
|
||||||
|
"lib/net46/Microsoft.OpenApi.pdb",
|
||||||
|
"lib/net46/Microsoft.OpenApi.xml",
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.dll",
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.pdb",
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.xml",
|
||||||
|
"microsoft.openapi.1.2.3.nupkg.sha512",
|
||||||
|
"microsoft.openapi.nuspec"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.2.3": {
|
||||||
|
"sha512": "cnzQDn0Le+hInsw2SYwlOhOCPXpYi/szcvnyqZJ12v+QyrLBwAmWXBg6RIyHB18s/mLeywC+Rg2O9ndz0IUNYQ==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "swashbuckle.aspnetcore/6.2.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"build/Swashbuckle.AspNetCore.props",
|
||||||
|
"swashbuckle.aspnetcore.6.2.3.nupkg.sha512",
|
||||||
|
"swashbuckle.aspnetcore.nuspec"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.2.3": {
|
||||||
|
"sha512": "qOF7j1sL0bWm8g/qqHVPCvkO3JlVvUIB8WfC98kSh6BT5y5DAnBNctfac7XR5EZf+eD7/WasvANncTqwZYfmWQ==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "swashbuckle.aspnetcore.swagger/6.2.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.Swagger.dll",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.Swagger.pdb",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.Swagger.xml",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.pdb",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.xml",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.pdb",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.xml",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml",
|
||||||
|
"swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512",
|
||||||
|
"swashbuckle.aspnetcore.swagger.nuspec"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.2.3": {
|
||||||
|
"sha512": "+Xq7WdMCCfcXlnbLJVFNgY8ITdP2TRYIlpbt6IKzDw5FwFxdi9lBfNDtcT+/wkKwX70iBBFmXldnnd02/VO72A==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggergen/6.2.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
|
||||||
|
"swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512",
|
||||||
|
"swashbuckle.aspnetcore.swaggergen.nuspec"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.2.3": {
|
||||||
|
"sha512": "bCRI87uKJVb4G+KURWm8LQrL64St04dEFZcF6gIM67Zc0Sr/N47EO83ybLMYOvfNdO1DCv8xwPcrz9J/VEhQ5g==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggerui/6.2.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
|
||||||
|
"lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
|
||||||
|
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
|
||||||
|
"lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
|
||||||
|
"swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512",
|
||||||
|
"swashbuckle.aspnetcore.swaggerui.nuspec"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"System.Buffers/4.5.1": {
|
||||||
|
"sha512": "Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "system.buffers/4.5.1",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"LICENSE.TXT",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"lib/net461/System.Buffers.dll",
|
||||||
|
"lib/net461/System.Buffers.xml",
|
||||||
|
"lib/netcoreapp2.0/_._",
|
||||||
|
"lib/netstandard1.1/System.Buffers.dll",
|
||||||
|
"lib/netstandard1.1/System.Buffers.xml",
|
||||||
|
"lib/netstandard2.0/System.Buffers.dll",
|
||||||
|
"lib/netstandard2.0/System.Buffers.xml",
|
||||||
|
"lib/uap10.0.16299/_._",
|
||||||
|
"ref/net45/System.Buffers.dll",
|
||||||
|
"ref/net45/System.Buffers.xml",
|
||||||
|
"ref/netcoreapp2.0/_._",
|
||||||
|
"ref/netstandard1.1/System.Buffers.dll",
|
||||||
|
"ref/netstandard1.1/System.Buffers.xml",
|
||||||
|
"ref/netstandard2.0/System.Buffers.dll",
|
||||||
|
"ref/netstandard2.0/System.Buffers.xml",
|
||||||
|
"ref/uap10.0.16299/_._",
|
||||||
|
"system.buffers.4.5.1.nupkg.sha512",
|
||||||
|
"system.buffers.nuspec",
|
||||||
|
"useSharedDesignerContext.txt",
|
||||||
|
"version.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages/5.0.0": {
|
||||||
|
"sha512": "NyscU59xX6Uo91qvhOs2Ccho3AR2TnZPomo1Z0K6YpyztBPM/A5VbkzOO19sy3A3i1TtEnTxA7bCe3Us+r5MWg==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "system.text.encoding.codepages/5.0.0",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"LICENSE.TXT",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"lib/MonoAndroid10/_._",
|
||||||
|
"lib/MonoTouch10/_._",
|
||||||
|
"lib/net46/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net461/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net461/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/netstandard1.3/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/xamarinios10/_._",
|
||||||
|
"lib/xamarinmac20/_._",
|
||||||
|
"lib/xamarintvos10/_._",
|
||||||
|
"lib/xamarinwatchos10/_._",
|
||||||
|
"ref/MonoAndroid10/_._",
|
||||||
|
"ref/MonoTouch10/_._",
|
||||||
|
"ref/xamarinios10/_._",
|
||||||
|
"ref/xamarinmac20/_._",
|
||||||
|
"ref/xamarintvos10/_._",
|
||||||
|
"ref/xamarinwatchos10/_._",
|
||||||
|
"runtimes/win/lib/net461/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/net461/System.Text.Encoding.CodePages.xml",
|
||||||
|
"runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"system.text.encoding.codepages.5.0.0.nupkg.sha512",
|
||||||
|
"system.text.encoding.codepages.nuspec",
|
||||||
|
"useSharedDesignerContext.txt",
|
||||||
|
"version.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"YoutubeExplode/6.2.1": {
|
||||||
|
"sha512": "VL8EzTwe8ttO0mGWh5EGGsK7A6mDUS71Ayl8mjS+oj/36W8kaWikMeOvcUyUko0Iy5X4atGcL76TMWDcc4Kj9g==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "youtubeexplode/6.2.1",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"ReadMe.md",
|
||||||
|
"favicon.png",
|
||||||
|
"lib/net461/YoutubeExplode.dll",
|
||||||
|
"lib/net461/YoutubeExplode.xml",
|
||||||
|
"lib/net5.0/YoutubeExplode.dll",
|
||||||
|
"lib/net5.0/YoutubeExplode.xml",
|
||||||
|
"lib/netcoreapp3.0/YoutubeExplode.dll",
|
||||||
|
"lib/netcoreapp3.0/YoutubeExplode.xml",
|
||||||
|
"lib/netstandard2.0/YoutubeExplode.dll",
|
||||||
|
"lib/netstandard2.0/YoutubeExplode.xml",
|
||||||
|
"lib/netstandard2.1/YoutubeExplode.dll",
|
||||||
|
"lib/netstandard2.1/YoutubeExplode.xml",
|
||||||
|
"youtubeexplode.6.2.1.nupkg.sha512",
|
||||||
|
"youtubeexplode.nuspec"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"projectFileDependencyGroups": {
|
||||||
|
"net6.0": [
|
||||||
|
"Swashbuckle.AspNetCore >= 6.2.3",
|
||||||
|
"YouTubeExplode >= 6.2.1"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"packageFolders": {
|
||||||
|
"/home/mike/.nuget/packages/": {}
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "/home/mike/ytapic/ytapic.csproj",
|
||||||
|
"projectName": "ytapic",
|
||||||
|
"projectPath": "/home/mike/ytapic/ytapic.csproj",
|
||||||
|
"packagesPath": "/home/mike/.nuget/packages/",
|
||||||
|
"outputPath": "/home/mike/ytapic/obj/",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"configFilePaths": [
|
||||||
|
"/home/mike/.nuget/NuGet/NuGet.Config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net6.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"https://api.nuget.org/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net6.0": {
|
||||||
|
"targetAlias": "net6.0",
|
||||||
|
"projectReferences": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net6.0": {
|
||||||
|
"targetAlias": "net6.0",
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[6.2.3, )"
|
||||||
|
},
|
||||||
|
"YouTubeExplode": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[6.2.1, )"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.AspNetCore.App": {
|
||||||
|
"privateAssets": "none"
|
||||||
|
},
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/6.0.400/RuntimeIdentifierGraph.json"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"version": 2,
|
||||||
|
"dgSpecHash": "bZVKtEXdl2VV8dgQVj7V1sheDUR1OY5+0DA0CIcrJ3ZgqykE4/zPwEsq6fZwf2xevvPWowhDHit7d4LDNcoYLQ==",
|
||||||
|
"success": true,
|
||||||
|
"projectFilePath": "/home/mike/ytapic/ytapic.csproj",
|
||||||
|
"expectedPackageFiles": [
|
||||||
|
"/home/mike/.nuget/packages/anglesharp/0.17.0/anglesharp.0.17.0.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/microsoft.extensions.apidescription.server/3.0.0/microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/microsoft.netcore.platforms/5.0.0/microsoft.netcore.platforms.5.0.0.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/microsoft.openapi/1.2.3/microsoft.openapi.1.2.3.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/swashbuckle.aspnetcore/6.2.3/swashbuckle.aspnetcore.6.2.3.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/swashbuckle.aspnetcore.swagger/6.2.3/swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/swashbuckle.aspnetcore.swaggergen/6.2.3/swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/swashbuckle.aspnetcore.swaggerui/6.2.3/swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/system.buffers/4.5.1/system.buffers.4.5.1.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/system.text.encoding.codepages/5.0.0/system.text.encoding.codepages.5.0.0.nupkg.sha512",
|
||||||
|
"/home/mike/.nuget/packages/youtubeexplode/6.2.1/youtubeexplode.6.2.1.nupkg.sha512"
|
||||||
|
],
|
||||||
|
"logs": []
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
2.0
|
||||||
|
2.0
|
||||||
|
2.0
|
|
@ -0,0 +1,74 @@
|
||||||
|
{
|
||||||
|
"format": 1,
|
||||||
|
"restore": {
|
||||||
|
"/home/mike/ytapic/ytapic.csproj": {}
|
||||||
|
},
|
||||||
|
"projects": {
|
||||||
|
"/home/mike/ytapic/ytapic.csproj": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "/home/mike/ytapic/ytapic.csproj",
|
||||||
|
"projectName": "ytapic",
|
||||||
|
"projectPath": "/home/mike/ytapic/ytapic.csproj",
|
||||||
|
"packagesPath": "/home/mike/.nuget/packages/",
|
||||||
|
"outputPath": "/home/mike/ytapic/obj/",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"configFilePaths": [
|
||||||
|
"/home/mike/.nuget/NuGet/NuGet.Config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net6.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"https://api.nuget.org/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net6.0": {
|
||||||
|
"targetAlias": "net6.0",
|
||||||
|
"projectReferences": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net6.0": {
|
||||||
|
"targetAlias": "net6.0",
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[6.2.3, )"
|
||||||
|
},
|
||||||
|
"YouTubeExplode": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[6.2.1, )"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.AspNetCore.App": {
|
||||||
|
"privateAssets": "none"
|
||||||
|
},
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/6.0.400/RuntimeIdentifierGraph.json"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||||
|
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||||
|
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||||
|
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">/home/mike/.nuget/packages/</NuGetPackageRoot>
|
||||||
|
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">/home/mike/.nuget/packages/</NuGetPackageFolders>
|
||||||
|
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||||
|
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.3.0</NuGetToolVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<SourceRoot Include="/home/mike/.nuget/packages/" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server/3.0.0/build/Microsoft.Extensions.ApiDescription.Server.props" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server/3.0.0/build/Microsoft.Extensions.ApiDescription.Server.props')" />
|
||||||
|
<Import Project="$(NuGetPackageRoot)swashbuckle.aspnetcore/6.2.3/build/Swashbuckle.AspNetCore.props" Condition="Exists('$(NuGetPackageRoot)swashbuckle.aspnetcore/6.2.3/build/Swashbuckle.AspNetCore.props')" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">/home/mike/.nuget/packages/microsoft.extensions.apidescription.server/3.0.0</PkgMicrosoft_Extensions_ApiDescription_Server>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server/3.0.0/build/Microsoft.Extensions.ApiDescription.Server.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server/3.0.0/build/Microsoft.Extensions.ApiDescription.Server.targets')" />
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
|
@ -0,0 +1,14 @@
|
||||||
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.2.3" />
|
||||||
|
<PackageReference Include="YouTubeExplode" Version="6.2.1" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
Loading…
Reference in New Issue