├── .gitignore
├── .vs
├── KemonoDownloader
│ ├── DesignTimeBuild
│ │ └── .dtbcache.v2
│ └── v17
│ │ ├── .futdcache.v2
│ │ └── .suo
└── ProjectEvaluation
│ ├── kemonodownloader.metadata.v5.1
│ └── kemonodownloader.projects.v5.1
├── KemonoDownloader.sln
├── KemonoDownloader
├── .gitattributes
├── .gitignore
├── KemonoDownloader.csproj
├── KemonoDownloader.sln
├── Logic
│ ├── DownloadingArt.cs
│ ├── MediaStorageOperations.cs
│ └── ProgramFunctions.cs
├── NLog.config
├── Program.cs
├── README.md
└── kemonoDownloader.db
├── KemonoDownloaderDataModels
├── Context
│ └── KemonoDbContext.cs
├── KemonoDownloaderDataModels.csproj
├── Models
│ ├── Artist.cs
│ ├── Media.cs
│ └── Post.cs
├── bin
│ └── Debug
│ │ ├── KemonoDownloaderDataModels.1.0.0.nupkg
│ │ └── net6.0
│ │ ├── KemonoDownloaderDataModels.deps.json
│ │ ├── KemonoDownloaderDataModels.dll
│ │ ├── KemonoDownloaderDataModels.pdb
│ │ └── KemonoDownloaderDataModels.runtimeconfig.json
└── obj
│ ├── Debug
│ ├── KemonoDownloaderDataModels.1.0.0.nuspec
│ └── net6.0
│ │ ├── .NETCoreApp,Version=v6.0.AssemblyAttributes.cs
│ │ ├── KemonoDownloaderDataModels.AssemblyInfo.cs
│ │ ├── KemonoDownloaderDataModels.AssemblyInfoInputs.cache
│ │ ├── KemonoDownloaderDataModels.GeneratedMSBuildEditorConfig.editorconfig
│ │ ├── KemonoDownloaderDataModels.GlobalUsings.g.cs
│ │ ├── KemonoDownloaderDataModels.assets.cache
│ │ ├── KemonoDownloaderDataModels.csproj.AssemblyReference.cache
│ │ ├── KemonoDownloaderDataModels.csproj.BuildWithSkipAnalyzers
│ │ ├── KemonoDownloaderDataModels.csproj.CoreCompileInputs.cache
│ │ ├── KemonoDownloaderDataModels.csproj.FileListAbsolute.txt
│ │ ├── KemonoDownloaderDataModels.dll
│ │ ├── KemonoDownloaderDataModels.genruntimeconfig.cache
│ │ ├── KemonoDownloaderDataModels.pdb
│ │ ├── ref
│ │ └── KemonoDownloaderDataModels.dll
│ │ └── refint
│ │ └── KemonoDownloaderDataModels.dll
│ ├── KemonoDownloaderDataModels.csproj.nuget.dgspec.json
│ ├── KemonoDownloaderDataModels.csproj.nuget.g.props
│ ├── KemonoDownloaderDataModels.csproj.nuget.g.targets
│ ├── project.assets.json
│ └── project.nuget.cache
└── artistUrls.txt
/.gitignore:
--------------------------------------------------------------------------------
1 | .vs/
--------------------------------------------------------------------------------
/.vs/KemonoDownloader/DesignTimeBuild/.dtbcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/.vs/KemonoDownloader/DesignTimeBuild/.dtbcache.v2
--------------------------------------------------------------------------------
/.vs/KemonoDownloader/v17/.futdcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/.vs/KemonoDownloader/v17/.futdcache.v2
--------------------------------------------------------------------------------
/.vs/KemonoDownloader/v17/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/.vs/KemonoDownloader/v17/.suo
--------------------------------------------------------------------------------
/.vs/ProjectEvaluation/kemonodownloader.metadata.v5.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/.vs/ProjectEvaluation/kemonodownloader.metadata.v5.1
--------------------------------------------------------------------------------
/.vs/ProjectEvaluation/kemonodownloader.projects.v5.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/.vs/ProjectEvaluation/kemonodownloader.projects.v5.1
--------------------------------------------------------------------------------
/KemonoDownloader.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.3.32811.315
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KemonoDownloader", "KemonoDownloader\KemonoDownloader.csproj", "{7F710B52-5339-4EDC-BBB5-99B08AE169E9}"
7 | EndProject
8 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KemonoDownloaderDataModels", "KemonoDownloaderDataModels\KemonoDownloaderDataModels.csproj", "{29D35D1E-9124-4A62-ABE1-ACC1F0302FE2}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Release|Any CPU = Release|Any CPU
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {7F710B52-5339-4EDC-BBB5-99B08AE169E9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {7F710B52-5339-4EDC-BBB5-99B08AE169E9}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {7F710B52-5339-4EDC-BBB5-99B08AE169E9}.Release|Any CPU.ActiveCfg = Release|Any CPU
19 | {7F710B52-5339-4EDC-BBB5-99B08AE169E9}.Release|Any CPU.Build.0 = Release|Any CPU
20 | {29D35D1E-9124-4A62-ABE1-ACC1F0302FE2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
21 | {29D35D1E-9124-4A62-ABE1-ACC1F0302FE2}.Debug|Any CPU.Build.0 = Debug|Any CPU
22 | {29D35D1E-9124-4A62-ABE1-ACC1F0302FE2}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {29D35D1E-9124-4A62-ABE1-ACC1F0302FE2}.Release|Any CPU.Build.0 = Release|Any CPU
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | GlobalSection(ExtensibilityGlobals) = postSolution
29 | SolutionGuid = {27C90BDC-7ADD-43F1-900D-4EA278DF3487}
30 | EndGlobalSection
31 | EndGlobal
32 |
--------------------------------------------------------------------------------
/KemonoDownloader/.gitattributes:
--------------------------------------------------------------------------------
1 | ###############################################################################
2 | # Set default behavior to automatically normalize line endings.
3 | ###############################################################################
4 | * text=auto
5 |
6 | ###############################################################################
7 | # Set default behavior for command prompt diff.
8 | #
9 | # This is need for earlier builds of msysgit that does not have it on by
10 | # default for csharp files.
11 | # Note: This is only used by command line
12 | ###############################################################################
13 | #*.cs diff=csharp
14 |
15 | ###############################################################################
16 | # Set the merge driver for project and solution files
17 | #
18 | # Merging from the command prompt will add diff markers to the files if there
19 | # are conflicts (Merging from VS is not affected by the settings below, in VS
20 | # the diff markers are never inserted). Diff markers may cause the following
21 | # file extensions to fail to load in VS. An alternative would be to treat
22 | # these files as binary and thus will always conflict and require user
23 | # intervention with every merge. To do so, just uncomment the entries below
24 | ###############################################################################
25 | #*.sln merge=binary
26 | #*.csproj merge=binary
27 | #*.vbproj merge=binary
28 | #*.vcxproj merge=binary
29 | #*.vcproj merge=binary
30 | #*.dbproj merge=binary
31 | #*.fsproj merge=binary
32 | #*.lsproj merge=binary
33 | #*.wixproj merge=binary
34 | #*.modelproj merge=binary
35 | #*.sqlproj merge=binary
36 | #*.wwaproj merge=binary
37 |
38 | ###############################################################################
39 | # behavior for image files
40 | #
41 | # image files are treated as binary by default.
42 | ###############################################################################
43 | #*.jpg binary
44 | #*.png binary
45 | #*.gif binary
46 |
47 | ###############################################################################
48 | # diff behavior for common document formats
49 | #
50 | # Convert binary document formats to text before diffing them. This feature
51 | # is only available from the command line. Turn it on by uncommenting the
52 | # entries below.
53 | ###############################################################################
54 | #*.doc diff=astextplain
55 | #*.DOC diff=astextplain
56 | #*.docx diff=astextplain
57 | #*.DOCX diff=astextplain
58 | #*.dot diff=astextplain
59 | #*.DOT diff=astextplain
60 | #*.pdf diff=astextplain
61 | #*.PDF diff=astextplain
62 | #*.rtf diff=astextplain
63 | #*.RTF diff=astextplain
64 |
--------------------------------------------------------------------------------
/KemonoDownloader/.gitignore:
--------------------------------------------------------------------------------
1 | ## Ignore Visual Studio temporary files, build results, and
2 | ## files generated by popular Visual Studio add-ons.
3 | ##
4 | ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
5 |
6 | # User-specific files
7 | *.rsuser
8 | *.suo
9 | *.user
10 | *.userosscache
11 | *.sln.docstates
12 |
13 | # User-specific files (MonoDevelop/Xamarin Studio)
14 | *.userprefs
15 |
16 | # Mono auto generated files
17 | mono_crash.*
18 |
19 | # Build results
20 | [Dd]ebug/
21 | [Dd]ebugPublic/
22 | [Rr]elease/
23 | [Rr]eleases/
24 | x64/
25 | x86/
26 | [Ww][Ii][Nn]32/
27 | [Aa][Rr][Mm]/
28 | [Aa][Rr][Mm]64/
29 | bld/
30 | [Bb]in/
31 | [Oo]bj/
32 | [Oo]ut/
33 | [Ll]og/
34 | [Ll]ogs/
35 |
36 | # Visual Studio 2015/2017 cache/options directory
37 | .vs/
38 | # Uncomment if you have tasks that create the project's static files in wwwroot
39 | #wwwroot/
40 |
41 | # Visual Studio 2017 auto generated files
42 | Generated\ Files/
43 |
44 | # MSTest test Results
45 | [Tt]est[Rr]esult*/
46 | [Bb]uild[Ll]og.*
47 |
48 | # NUnit
49 | *.VisualState.xml
50 | TestResult.xml
51 | nunit-*.xml
52 |
53 | # Build Results of an ATL Project
54 | [Dd]ebugPS/
55 | [Rr]eleasePS/
56 | dlldata.c
57 |
58 | # Benchmark Results
59 | BenchmarkDotNet.Artifacts/
60 |
61 | # .NET Core
62 | project.lock.json
63 | project.fragment.lock.json
64 | artifacts/
65 |
66 | # ASP.NET Scaffolding
67 | ScaffoldingReadMe.txt
68 |
69 | # StyleCop
70 | StyleCopReport.xml
71 |
72 | # Files built by Visual Studio
73 | *_i.c
74 | *_p.c
75 | *_h.h
76 | *.ilk
77 | *.meta
78 | *.obj
79 | *.iobj
80 | *.pch
81 | *.pdb
82 | *.ipdb
83 | *.pgc
84 | *.pgd
85 | *.rsp
86 | *.sbr
87 | *.tlb
88 | *.tli
89 | *.tlh
90 | *.tmp
91 | *.tmp_proj
92 | *_wpftmp.csproj
93 | *.log
94 | *.vspscc
95 | *.vssscc
96 | .builds
97 | *.pidb
98 | *.svclog
99 | *.scc
100 |
101 | # Chutzpah Test files
102 | _Chutzpah*
103 |
104 | # Visual C++ cache files
105 | ipch/
106 | *.aps
107 | *.ncb
108 | *.opendb
109 | *.opensdf
110 | *.sdf
111 | *.cachefile
112 | *.VC.db
113 | *.VC.VC.opendb
114 |
115 | # Visual Studio profiler
116 | *.psess
117 | *.vsp
118 | *.vspx
119 | *.sap
120 |
121 | # Visual Studio Trace Files
122 | *.e2e
123 |
124 | # TFS 2012 Local Workspace
125 | $tf/
126 |
127 | # Guidance Automation Toolkit
128 | *.gpState
129 |
130 | # ReSharper is a .NET coding add-in
131 | _ReSharper*/
132 | *.[Rr]e[Ss]harper
133 | *.DotSettings.user
134 |
135 | # TeamCity is a build add-in
136 | _TeamCity*
137 |
138 | # DotCover is a Code Coverage Tool
139 | *.dotCover
140 |
141 | # AxoCover is a Code Coverage Tool
142 | .axoCover/*
143 | !.axoCover/settings.json
144 |
145 | # Coverlet is a free, cross platform Code Coverage Tool
146 | coverage*.json
147 | coverage*.xml
148 | coverage*.info
149 |
150 | # Visual Studio code coverage results
151 | *.coverage
152 | *.coveragexml
153 |
154 | # NCrunch
155 | _NCrunch_*
156 | .*crunch*.local.xml
157 | nCrunchTemp_*
158 |
159 | # MightyMoose
160 | *.mm.*
161 | AutoTest.Net/
162 |
163 | # Web workbench (sass)
164 | .sass-cache/
165 |
166 | # Installshield output folder
167 | [Ee]xpress/
168 |
169 | # DocProject is a documentation generator add-in
170 | DocProject/buildhelp/
171 | DocProject/Help/*.HxT
172 | DocProject/Help/*.HxC
173 | DocProject/Help/*.hhc
174 | DocProject/Help/*.hhk
175 | DocProject/Help/*.hhp
176 | DocProject/Help/Html2
177 | DocProject/Help/html
178 |
179 | # Click-Once directory
180 | publish/
181 |
182 | # Publish Web Output
183 | *.[Pp]ublish.xml
184 | *.azurePubxml
185 | # Note: Comment the next line if you want to checkin your web deploy settings,
186 | # but database connection strings (with potential passwords) will be unencrypted
187 | *.pubxml
188 | *.publishproj
189 |
190 | # Microsoft Azure Web App publish settings. Comment the next line if you want to
191 | # checkin your Azure Web App publish settings, but sensitive information contained
192 | # in these scripts will be unencrypted
193 | PublishScripts/
194 |
195 | # NuGet Packages
196 | *.nupkg
197 | # NuGet Symbol Packages
198 | *.snupkg
199 | # The packages folder can be ignored because of Package Restore
200 | **/[Pp]ackages/*
201 | # except build/, which is used as an MSBuild target.
202 | !**/[Pp]ackages/build/
203 | # Uncomment if necessary however generally it will be regenerated when needed
204 | #!**/[Pp]ackages/repositories.config
205 | # NuGet v3's project.json files produces more ignorable files
206 | *.nuget.props
207 | *.nuget.targets
208 |
209 | # Microsoft Azure Build Output
210 | csx/
211 | *.build.csdef
212 |
213 | # Microsoft Azure Emulator
214 | ecf/
215 | rcf/
216 |
217 | # Windows Store app package directories and files
218 | AppPackages/
219 | BundleArtifacts/
220 | Package.StoreAssociation.xml
221 | _pkginfo.txt
222 | *.appx
223 | *.appxbundle
224 | *.appxupload
225 |
226 | # Visual Studio cache files
227 | # files ending in .cache can be ignored
228 | *.[Cc]ache
229 | # but keep track of directories ending in .cache
230 | !?*.[Cc]ache/
231 |
232 | # Others
233 | ClientBin/
234 | ~$*
235 | *~
236 | *.dbmdl
237 | *.dbproj.schemaview
238 | *.jfm
239 | *.pfx
240 | *.publishsettings
241 | orleans.codegen.cs
242 |
243 | # Including strong name files can present a security risk
244 | # (https://github.com/github/gitignore/pull/2483#issue-259490424)
245 | #*.snk
246 |
247 | # Since there are multiple workflows, uncomment next line to ignore bower_components
248 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
249 | #bower_components/
250 |
251 | # RIA/Silverlight projects
252 | Generated_Code/
253 |
254 | # Backup & report files from converting an old project file
255 | # to a newer Visual Studio version. Backup files are not needed,
256 | # because we have git ;-)
257 | _UpgradeReport_Files/
258 | Backup*/
259 | UpgradeLog*.XML
260 | UpgradeLog*.htm
261 | ServiceFabricBackup/
262 | *.rptproj.bak
263 |
264 | # SQL Server files
265 | *.mdf
266 | *.ldf
267 | *.ndf
268 |
269 | # Business Intelligence projects
270 | *.rdl.data
271 | *.bim.layout
272 | *.bim_*.settings
273 | *.rptproj.rsuser
274 | *- [Bb]ackup.rdl
275 | *- [Bb]ackup ([0-9]).rdl
276 | *- [Bb]ackup ([0-9][0-9]).rdl
277 |
278 | # Microsoft Fakes
279 | FakesAssemblies/
280 |
281 | # GhostDoc plugin setting file
282 | *.GhostDoc.xml
283 |
284 | # Node.js Tools for Visual Studio
285 | .ntvs_analysis.dat
286 | node_modules/
287 |
288 | # Visual Studio 6 build log
289 | *.plg
290 |
291 | # Visual Studio 6 workspace options file
292 | *.opt
293 |
294 | # Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
295 | *.vbw
296 |
297 | # Visual Studio LightSwitch build output
298 | **/*.HTMLClient/GeneratedArtifacts
299 | **/*.DesktopClient/GeneratedArtifacts
300 | **/*.DesktopClient/ModelManifest.xml
301 | **/*.Server/GeneratedArtifacts
302 | **/*.Server/ModelManifest.xml
303 | _Pvt_Extensions
304 |
305 | # Paket dependency manager
306 | .paket/paket.exe
307 | paket-files/
308 |
309 | # FAKE - F# Make
310 | .fake/
311 |
312 | # CodeRush personal settings
313 | .cr/personal
314 |
315 | # Python Tools for Visual Studio (PTVS)
316 | __pycache__/
317 | *.pyc
318 |
319 | # Cake - Uncomment if you are using it
320 | # tools/**
321 | # !tools/packages.config
322 |
323 | # Tabs Studio
324 | *.tss
325 |
326 | # Telerik's JustMock configuration file
327 | *.jmconfig
328 |
329 | # BizTalk build output
330 | *.btp.cs
331 | *.btm.cs
332 | *.odx.cs
333 | *.xsd.cs
334 |
335 | # OpenCover UI analysis results
336 | OpenCover/
337 |
338 | # Azure Stream Analytics local run output
339 | ASALocalRun/
340 |
341 | # MSBuild Binary and Structured Log
342 | *.binlog
343 |
344 | # NVidia Nsight GPU debugger configuration file
345 | *.nvuser
346 |
347 | # MFractors (Xamarin productivity tool) working folder
348 | .mfractor/
349 |
350 | # Local History for Visual Studio
351 | .localhistory/
352 |
353 | # BeatPulse healthcheck temp database
354 | healthchecksdb
355 |
356 | # Backup folder for Package Reference Convert tool in Visual Studio 2017
357 | MigrationBackup/
358 |
359 | # Ionide (cross platform F# VS Code tools) working folder
360 | .ionide/
361 |
362 | # Fody - auto-generated XML schema
363 | FodyWeavers.xsd
--------------------------------------------------------------------------------
/KemonoDownloader/KemonoDownloader.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | net6.0
6 | enable
7 | enable
8 |
9 |
10 |
11 |
12 |
13 | all
14 | runtime; build; native; contentfiles; analyzers; buildtransitive
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | PreserveNewest
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/KemonoDownloader/KemonoDownloader.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.1.32328.378
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KemonoDownloader", "KemonoDownloader.csproj", "{7D5888D1-5C01-476F-AF2E-4A5A7EBCA163}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KemonoDownloaderDataModels", "C:\Users\Gandeloft\source\repos\KemonoDownloaderDataModels\KemonoDownloaderDataModels.csproj", "{38EE4554-2573-401B-95B4-2CFCEFCFA9C0}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Release|Any CPU = Release|Any CPU
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {7D5888D1-5C01-476F-AF2E-4A5A7EBCA163}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {7D5888D1-5C01-476F-AF2E-4A5A7EBCA163}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {7D5888D1-5C01-476F-AF2E-4A5A7EBCA163}.Release|Any CPU.ActiveCfg = Release|Any CPU
19 | {7D5888D1-5C01-476F-AF2E-4A5A7EBCA163}.Release|Any CPU.Build.0 = Release|Any CPU
20 | {38EE4554-2573-401B-95B4-2CFCEFCFA9C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
21 | {38EE4554-2573-401B-95B4-2CFCEFCFA9C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
22 | {38EE4554-2573-401B-95B4-2CFCEFCFA9C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {38EE4554-2573-401B-95B4-2CFCEFCFA9C0}.Release|Any CPU.Build.0 = Release|Any CPU
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | GlobalSection(ExtensibilityGlobals) = postSolution
29 | SolutionGuid = {AAE4E2AF-E78A-404B-9FD4-9552F17432A7}
30 | EndGlobalSection
31 | EndGlobal
32 |
--------------------------------------------------------------------------------
/KemonoDownloader/Logic/DownloadingArt.cs:
--------------------------------------------------------------------------------
1 | using HtmlAgilityPack;
2 | using System.Net;
3 | using KemonoDownloaderDataModels.Models;
4 | using Microsoft.EntityFrameworkCore;
5 | using System.Text.RegularExpressions;
6 | using System.Drawing;
7 | using System;
8 | using NLog;
9 |
10 | namespace KemonoDownloader.Logic
11 | {
12 | internal class DownloadingArt
13 | {
14 | public static readonly Logger logger = LogManager.GetCurrentClassLogger();
15 | public static readonly string KEMONO_BASE_URL = "https://kemono.party/";
16 | private readonly int POSTS_PER_PAGE = 50;
17 | private readonly string paginationMarker = "?o=";
18 | private readonly MediaStorageOperations storageOps = new MediaStorageOperations();
19 |
20 | private CookieContainer _cookiesContainer => SetCookieContainer();
21 | public CookieContainer SetCookieContainer(string sessionString = "eyJfcGVybWFuZW50Ijp0cnVlLCJhY2NvdW50X2lkIjoxNzc0Nn0.Y0IIxA.blaHuCz9ddG7TEUw70X-oxMP1bo")
22 | {
23 | CookieContainer cookiesContainer = new CookieContainer();
24 | cookiesContainer.Add(new Cookie("session", sessionString) { Domain = "https://kemono.party/" });
25 | return cookiesContainer;
26 | }
27 |
28 | public void DownloadArt(List artistUrls)
29 | {
30 | // One by one artist
31 | foreach (var artistUrl in artistUrls)
32 | {
33 | ProcessSingleArtistUrl(artistUrl);
34 | }
35 | }
36 |
37 | ///
38 | /// This gets all of the artists posts,
39 | /// saves them to the database,
40 | /// then proceeds to download their art from each post.
41 | ///
42 | ///
43 | private void ProcessSingleArtistUrl(string artistUrl)
44 | {
45 | HtmlDocument firstArtistPage = TryLoop(() =>
46 | {
47 | return LoadPageHtmlFromUrl(artistUrl);
48 | }
49 | );
50 |
51 | string artistName = GetArtistsName(firstArtistPage);
52 | Artist artist = storageOps.GetArtistDatabaseInstance(artistName, artistUrl);
53 |
54 | int numberOfPosts = GetArtistsNumberOfPages(firstArtistPage);
55 | GetAllArtistPosts(artist, numberOfPosts);
56 | Console.WriteLine("Proceeding to download the artist's media from their " +
57 | "posts saved in the database.");
58 | DownloadArtistMedia(artist);
59 | }
60 |
61 | ///
62 | /// Fetched all artist's posts from Kemono and saves them in the database
63 | ///
64 | ///
65 | ///
66 | private void GetAllArtistPosts(Artist artist, int numberOfPosts)
67 | {
68 | var fullPages = numberOfPosts / POSTS_PER_PAGE;
69 | if (numberOfPosts % POSTS_PER_PAGE == 0)
70 | {
71 | fullPages -= 1;
72 | }
73 | for (int i = 0; i <= fullPages; i++)
74 | {
75 | var postHrefs = TryLoop(() =>
76 | {
77 | return GetAllPostOnAPage(artist.ArtistUrl + paginationMarker + i * POSTS_PER_PAGE);
78 | });
79 |
80 | Console.WriteLine($"Processing {artist.Name} - ({artist.ArtistUrl}) posts");
81 | ProcessPostHrefBatch(postHrefs, artist);
82 | }
83 | }
84 |
85 | ///
86 | /// The logic below is extracted into a seperate method because of the need
87 | /// to break out of a two loops.
88 | ///
89 | ///
90 | ///
91 | ///
92 | private void ProcessPostHrefBatch(List postHrefs, Artist artist)
93 | {
94 | foreach (string postHref in postHrefs)
95 | {
96 | Console.Write($"Processing post {postHref}...");
97 | if (storageOps.SavePostIntoDatabase(postHref, artist))
98 | {
99 | Console.WriteLine(" -- Post saved to database");
100 | }
101 | else
102 | {
103 | Console.WriteLine("Post already exists in database");
104 | }
105 | }
106 | }
107 |
108 | private void GetImagesFromASinglePost(string choice, Post post)
109 | {
110 | HtmlWeb hw = new HtmlWeb();
111 | HtmlDocument doc = new HtmlDocument();
112 | doc = TryLoop(() =>
113 | {
114 | return hw.Load(post.Url());
115 | });
116 |
117 | if (doc.DocumentNode.SelectNodes("//div[contains(@class, 'post__files')]") != null)
118 | {
119 | foreach (HtmlNode div in doc.DocumentNode.SelectNodes("//div[contains(@class, 'post__files')]"))
120 | {
121 | var counter = 0;
122 | // Get the value of the HREF attribute
123 | foreach (HtmlNode url in div.SelectNodes("//a[contains(@class, 'fileThumb')]"))
124 | {
125 | Sleep();
126 | string hrefValue = url.GetAttributeValue("href", string.Empty);
127 | string extension = hrefValue.Split(".").Last();
128 | if (extension.Equals("jpe"))
129 | {
130 | extension = "jpg";
131 | }
132 | var fileName = storageOps.ValidatePathName(post.Url().Split("post/")[1] + "_" + counter + "." + extension);
133 |
134 | string postFolder = post.Artist.Name;
135 |
136 | Media mediaInDb = storageOps.GetMediaInDatabase(post, hrefValue, fileName);
137 |
138 | if (mediaInDb is null)
139 | {
140 | continue;
141 | }
142 |
143 | //// create a folder for each post as well
144 | //if (choice.Equals("y"))
145 | //{
146 | // var postName = GetPostName(doc);
147 | // postFolder = postFolder + "\\" + postName;
148 | //}
149 |
150 | // Make sure that the directory exists
151 | System.IO.Directory.CreateDirectory(postFolder);
152 |
153 | if (!storageOps.CheckIfFileExists(postFolder + "\\" + fileName))
154 | {
155 | Console.WriteLine($"Saving: {fileName}");
156 | if (extension.Equals("gif"))
157 | {
158 | SaveGif(KEMONO_BASE_URL + mediaInDb.Href, postFolder + "\\" + fileName);
159 | }
160 | else SaveImage(KEMONO_BASE_URL + mediaInDb.Href, postFolder + "\\" + fileName);
161 | }
162 | else Console.WriteLine($"File exists, skipping: {fileName}");
163 | counter += 1;
164 | storageOps.MarkMediaExistsInDb(mediaInDb);
165 | }
166 | }
167 | }
168 | }
169 |
170 | private void DownloadArtistMedia(Artist artist)
171 | {
172 | foreach (Post post in artist.ArtistPosts)
173 | {
174 | if (post.Processed)
175 | {
176 | Console.WriteLine($"\n {post.KemonoId} post fully processed.");
177 | continue;
178 | }
179 | Directory.CreateDirectory(artist.Name);
180 | string choice = "n";
181 | GetPostAttachments(choice, post);
182 | GetImagesFromASinglePost(choice, post);
183 | storageOps.MarkPostProcessedInDb(post);
184 | }
185 | }
186 |
187 | private string GetPostHtmlContentAsString(Post post)
188 | {
189 | HtmlWeb hw = new HtmlWeb();
190 | var doc = hw.Load(post.Url());
191 | return doc.Text;
192 | }
193 |
194 | //private void ProcessArtistUrlWithCocksies(string artistUrl)
195 | //{
196 | // HttpClientHandler httpClientHandler = new HttpClientHandler();
197 | // httpClientHandler.CookieContainer
198 | // HttpClient httpClient = new HttpClient();
199 | // httpClient.BaseAddress = new Uri("https://kemono.party/");
200 | // httpClient.coo
201 | // // get all posts
202 | // HttpWebRequest hw = new HtmlWebRequest();
203 | // hw.UseCookies = true;
204 | // hw.PreRequest += request =>
205 | // {
206 | // request.CookieContainer = _cookiesContainer;
207 | // return true;
208 | // };
209 | //}
210 | public static HtmlDocument LoadPageHtmlFromUrl(string artistUrl)
211 | {
212 | HtmlDocument doc = new HtmlDocument();
213 | HtmlWeb hw = new HtmlWeb();
214 | doc = hw.Load(artistUrl);
215 | return doc;
216 | }
217 | public int GetArtistsNumberOfPages(HtmlDocument doc)
218 | {
219 | var posts = doc.DocumentNode.SelectSingleNode("//small");
220 | if (posts != null)
221 | return int.Parse(posts.InnerHtml.Split("\n")[1].Split(" ").Last());
222 |
223 | // if an artist only has 1 page there is no post count section,
224 | // but we can just count the number of elements on the current page
225 | // Get root node for posts on list and count article children
226 | var tiles = doc.DocumentNode.SelectSingleNode("//div[@class=\"card-list__items\"]").SelectNodes("//article");
227 | return tiles.Count;
228 | }
229 | public string GetArtistsName(HtmlDocument doc)
230 | {
231 | var artistNameator = doc.DocumentNode.SelectSingleNode("//*[@itemprop='name']");
232 | string artistName = artistNameator.GetDirectInnerText();
233 | return artistName;
234 | }
235 | ///
236 | /// Checks if the artists already exists in the database and
237 | /// returnts its instance. If it doesn't exists, creates is
238 | /// and returns it.
239 | ///
240 | ///
241 | ///
242 | ///
243 |
244 | static List GetAllPostOnAPage(string pageUrl)
245 | {
246 | HtmlWeb hw = new HtmlWeb();
247 | List postHrefs = new List();
248 | var doc = hw.Load(pageUrl);
249 | Program.logger.Info($"Processing page {pageUrl}");
250 | foreach (HtmlNode div in doc.DocumentNode.SelectNodes("//article[contains(@class, 'post-card')]"))
251 | {
252 | // Get the values of the href attribute of each post on the page
253 | string postHref = div.GetAttributeValue("data-id", string.Empty);
254 | postHrefs.Add(postHref);
255 | }
256 | return postHrefs;
257 | }
258 |
259 | private void GetPostAttachments(string choice, Post post)
260 | {
261 | string postUrl = post.Url();
262 | HtmlWeb hw = new HtmlWeb();
263 | var doc = TryLoop(() =>
264 | {
265 | return hw.Load(postUrl);
266 | });
267 |
268 | if (doc.DocumentNode.SelectNodes("//a[contains(@class, 'post__attachment-link')]") != null)
269 | {
270 | foreach (HtmlNode attachment in doc.DocumentNode.SelectNodes("//a[contains(@class, 'post__attachment-link')]"))
271 | {
272 | var url = attachment.GetAttributeValue("href", string.Empty);
273 | var fullUrl = KEMONO_BASE_URL + url;
274 | var fileName = attachment.InnerText;
275 | fileName = storageOps.ValidatePathName(postUrl.Split("post/")[1] + "_" + fileName.Split("\n")[1].TrimStart().Split("\n")[0]);
276 |
277 | Media mediaInDb = storageOps.GetMediaInDatabase(post, url, fileName);
278 |
279 | if (mediaInDb is null)
280 | {
281 | break;
282 | }
283 |
284 | if (!storageOps.CheckIfFileExists(mediaInDb.Path()))
285 | {
286 | Console.WriteLine("Downloading: " + fullUrl);
287 | WebClient webClient = new WebClient();
288 | Console.WriteLine($"Downloading attachment: {fileName}");
289 |
290 | // Create post folder
291 | //if (choice.Equals("y"))
292 | //{
293 | // System.IO.Directory.CreateDirectory(media.Post.Artist.Name);
294 | //}
295 |
296 | TryLoopAction(() =>
297 | {
298 | webClient.DownloadFile(new Uri(fullUrl), mediaInDb.Post.Artist.Name + "\\" + fileName);
299 | });
300 | Console.WriteLine("Download done.");
301 | webClient.Dispose();
302 | }
303 | else
304 | {
305 | Console.WriteLine($"File exists, skipping: {fileName}");
306 | }
307 | storageOps.MarkMediaExistsInDb(mediaInDb);
308 | }
309 | }
310 | }
311 |
312 | private void TryLoopAction(Action anyAction)
313 | {
314 | while (true)
315 | {
316 | try
317 | {
318 | anyAction();
319 | break;
320 | }
321 | catch (Exception e)
322 | {
323 | Console.ForegroundColor = ConsoleColor.Red;
324 | Console.Write("Error: ");
325 | Console.ResetColor();
326 | Console.Write(e.Message + "\n"
327 | + e.StackTrace + "\n"
328 | + e.InnerException);
329 | System.Threading.Thread.Sleep(2000); // *
330 | }
331 | }
332 | }
333 |
334 | private void SaveGif(string gifUrl, string filePath)
335 | {
336 | Console.WriteLine("Downloading: " + gifUrl);
337 | WebClient webClient = new WebClient();
338 | Console.WriteLine($"Downloading attachment: {filePath}");
339 | string nullString = TryLoop(() =>
340 | {
341 | webClient.DownloadFile(new Uri(gifUrl), filePath);
342 | return String.Empty;
343 | }
344 | );
345 | webClient.Dispose();
346 | }
347 |
348 | private bool SaveImage(string imageUrl, string filePath)
349 | {
350 | WebClient client = new WebClient();
351 |
352 | Console.WriteLine("Downloading: " + imageUrl);
353 | TryLoop(() =>
354 | {
355 | client.DownloadFile(new Uri(imageUrl), filePath);
356 | return string.Empty;
357 | }
358 | );
359 | client.Dispose();
360 | return true;
361 | }
362 |
363 | static void Sleep(int length = 1)
364 | {
365 | Random rnd = new Random();
366 | var randInt = 0;
367 | if (length == 0)
368 | {
369 | randInt = rnd.Next(1354, 5987);
370 | Console.WriteLine($"Next post, slept for {randInt} miliseconds so as to not overburden the site.");
371 | }
372 | else
373 | {
374 | randInt = rnd.Next(585, 3576);
375 | Console.WriteLine($"Slept for {randInt} miliseconds so as to not overburden the site.");
376 | }
377 |
378 | Thread.Sleep(randInt);
379 | }
380 |
381 | // https://stackoverflow.com/a/23103561/10299831
382 | static T TryLoop(Func anyMethod)
383 | {
384 | while (true)
385 | {
386 | try
387 | {
388 | return anyMethod();
389 | }
390 | catch (Exception e)
391 | {
392 | Console.WriteLine(e.Message);
393 | System.Threading.Thread.Sleep(2000); // *
394 | }
395 | }
396 | return default(T);
397 | }
398 | }
399 | }
400 |
--------------------------------------------------------------------------------
/KemonoDownloader/Logic/MediaStorageOperations.cs:
--------------------------------------------------------------------------------
1 | using HtmlAgilityPack;
2 | using KemonoDownloaderDataModels.Models;
3 | using Microsoft.EntityFrameworkCore;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Text.RegularExpressions;
9 | using System.Threading.Tasks;
10 |
11 | namespace KemonoDownloader.Logic
12 | {
13 | public class MediaStorageOperations
14 | {
15 | private KemonoDbContext dbContext = new KemonoDbContext();
16 |
17 | public MediaStorageOperations()
18 | {
19 | }
20 |
21 | ///
22 | /// When an artist doesn't have the path value in the database
23 | /// this method fills it (e.g. when an artist has only just
24 | /// been created)
25 | ///
26 | ///
27 | private string CreateArtistPath(Artist artist)
28 | {
29 | /// from -> https://kemono.party/fanbox/user/9016
30 | /// to -> fanbox/user/9016
31 | char[] artistUrlReversed = artist.ArtistUrl.Reverse().ToArray();
32 | string artistUrlReversedString = new string(artistUrlReversed);
33 | int charactersToSkipInUrl = 0;
34 | charactersToSkipInUrl += artistUrlReversedString.IndexOf("/");
35 | artistUrlReversedString = new string(artistUrlReversedString.Skip(artistUrlReversedString.IndexOf("/")).ToArray());
36 | charactersToSkipInUrl += artistUrlReversedString.IndexOf("/");
37 | artistUrlReversedString = new string(artistUrlReversedString.Skip(artistUrlReversedString.IndexOf("/")).ToArray());
38 | charactersToSkipInUrl += artistUrlReversedString.IndexOf("/");
39 | //string rawArtistKemonoHref = new string(artist.ArtistUrl.Skip(artist.ArtistUrl.Count() - charactersToSkipInUrl).ToArray());
40 | string userDirectoryPath = ValidatePathName(artist.Name + "(" + artist.ArtistUrl.Remove(0, DownloadingArt.KEMONO_BASE_URL.Length) + ")");
41 | userDirectoryPath = userDirectoryPath.Replace("user", "-");
42 | return userDirectoryPath;
43 | }
44 |
45 | public string ValidatePathName(string input, string replacement = "")
46 | {
47 | var regexSearch = new string(Path.GetInvalidFileNameChars()) + new string(Path.GetInvalidPathChars());
48 | var r = new Regex(string.Format("[{0}]", Regex.Escape(regexSearch)));
49 | var fileName = r.Replace(input, replacement);
50 | if (fileName.Length > 120)
51 | {
52 | fileName = fileName.Substring(0, 119);
53 | }
54 | return fileName;
55 | }
56 |
57 | public bool CheckIfFileExists(string fileName)
58 | {
59 | var workingDirectory = Environment.CurrentDirectory;
60 | var file = $"{workingDirectory}\\{fileName}";
61 | return File.Exists(file);
62 | }
63 |
64 | ///
65 | /// Get Post from database.
66 | /// If the post doesn't exists must be provided with an artist
67 | /// as well because it needs to create the post and for that it needs
68 | /// the artis to assotiate it with.
69 | ///
70 | ///
71 | ///
72 | /// Returns false if post already exists in database.
73 | ///
74 | public bool SavePostIntoDatabase(string postHref, Artist? artist = null)
75 | {
76 | int postKemonoId = int.Parse(postHref);
77 | Post post = dbContext.Posts.FirstOrDefault(x => x.KemonoId == postKemonoId);
78 | if (post == null)
79 | {
80 | post = new Post();
81 | post.Artist = artist;
82 | post.KemonoId = postKemonoId;
83 | // Makes the database 99+% larger
84 | //post.HtmlContent = GetPostHtmlContentAsString(post);
85 | dbContext.Posts.Add(post);
86 | dbContext.SaveChanges();
87 | return true;
88 | }
89 | else
90 | {
91 | return false;
92 | }
93 | }
94 |
95 | public Media GetMediaInDatabase(Post post, string url, string fileName)
96 | {
97 | Media media = dbContext.Media.FirstOrDefault(x => x.Href.Equals(url));
98 |
99 | if (media == null)
100 | {
101 | media = new Media();
102 | media.Post = post;
103 | media.FileName = fileName;
104 | media.Href = url;
105 | media.DateAdded = DateTime.Now;
106 | dbContext.Media.Add(media);
107 | dbContext.SaveChanges();
108 | return media;
109 | }
110 | else if (media.Exists)
111 | {
112 | Console.WriteLine($"{media.Href} already processed.");
113 | return null;
114 | }
115 | else return media;
116 | }
117 |
118 | public Artist GetArtistDatabaseInstance(string artistName, string artistUrl)
119 | {
120 | Artist artistsInDb = artistsInDb = dbContext.Artists.Include(a => a.ArtistPosts).FirstOrDefault(x => x.ArtistUrl == artistUrl);
121 |
122 | if (artistsInDb == null)
123 | {
124 | artistsInDb = new Artist();
125 | artistsInDb.Name = artistName;
126 | artistsInDb.ArtistUrl = artistUrl;
127 | artistsInDb.DateAdded = DateTime.Now;
128 | artistsInDb.PathOnDisk = CreateArtistPath(artistsInDb);
129 | dbContext.Artists.Add(artistsInDb);
130 | dbContext.SaveChanges();
131 |
132 | }
133 | return artistsInDb;
134 | }
135 |
136 | public void MarkMediaExistsInDb(Media media)
137 | {
138 | media.Exists = true;
139 | dbContext.SaveChanges();
140 | }
141 |
142 | public void MarkPostProcessedInDb(Post post)
143 | {
144 | post.Processed = true;
145 | dbContext.SaveChanges();
146 | }
147 | }
148 | }
149 |
--------------------------------------------------------------------------------
/KemonoDownloader/Logic/ProgramFunctions.cs:
--------------------------------------------------------------------------------
1 | using static KemonoDownloader.Program;
2 |
3 | namespace KemonoDownloader.Logic
4 | {
5 | public static class ProgramFunctions
6 | {
7 | public static List ReadArtistUrlsFromFile()
8 | {
9 | try
10 | {
11 | return File.ReadAllText("artistUrls.txt").Split(" ", StringSplitOptions.TrimEntries).ToList();
12 | }
13 | catch (FileNotFoundException e)
14 | {
15 | logger.Error("The file with artist URLs does not exists. You need to make sure it does before you use this option.", e.Message);
16 | Environment.Exit(0);
17 | return null;
18 | }
19 | }
20 |
21 | public static string ReadUserInput (string message, List acceptableInputs)
22 | {
23 | do
24 | {
25 | Console.WriteLine(message);
26 | string input = Console.ReadLine().ToUpper();
27 | if (acceptableInputs.Contains(input))
28 | return input;
29 | } while (true);
30 | }
31 |
32 | public static void SaveArtistUrlsToFile(string artistUrls)
33 | {
34 | using (StreamWriter sw = new StreamWriter("artistUrls.txt"))
35 | {
36 | sw.Write(artistUrls);
37 | }
38 | }
39 |
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/KemonoDownloader/NLog.config:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
14 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/KemonoDownloader/Program.cs:
--------------------------------------------------------------------------------
1 | using HtmlAgilityPack;
2 | using System.Drawing;
3 | using System.Net;
4 | using System.Text.RegularExpressions;
5 | using NLog;
6 | using static KemonoDownloader.Logic.ProgramFunctions;
7 | using KemonoDownloaderDataModels.Models;
8 | using Microsoft.EntityFrameworkCore;
9 | using System.Xml.Linq;
10 | using Microsoft.Extensions.Logging;
11 | using NLog.Fluent;
12 | using System.Data.SqlTypes;
13 | using KemonoDownloader.Logic;
14 |
15 | namespace KemonoDownloader
16 | {
17 | internal class Program
18 | {
19 | public static readonly Logger logger = LogManager.GetCurrentClassLogger();
20 | const string kemonoBaseUrl = "https://kemono.party/";
21 |
22 | static void Main(string[] args)
23 | {
24 | try
25 | {
26 | List artistUrls = null;
27 | string menu;
28 | string choice;
29 |
30 | // Where to get the artists links from
31 | Console.WriteLine("Would you like to download the artists to which the links are in the file \n\"artistUrls.txt\" or would you like to input the artist urls?");
32 | menu = ReadUserInput("Input \"1\" to read from the file, or \"2\" to input the urls.", new List() { "1", "2" });
33 |
34 | // Read from file
35 | if (menu == "1")
36 | {
37 | artistUrls = ReadArtistUrlsFromFile();
38 | }
39 | // Read console input
40 | if (menu == "2")
41 | {
42 | Console.WriteLine("Input (paste or manually type in) the artist URLs. They must be seperated by a space. " +
43 | "\n The program will not work properly if you don't correctly input the artist links." +
44 | "\n Already existing files will not be downloaded anew.");
45 | var artistUrlsRaw = Console.ReadLine();
46 | SaveArtistUrlsToFile(artistUrlsRaw);
47 | artistUrls = artistUrlsRaw.Split(" ", StringSplitOptions.TrimEntries).ToList();
48 | }
49 |
50 | // How to save downloaded posts
51 | Console.WriteLine("Do you want all of the media from a single post to also be put into post-based folder? \n");
52 | choice = ReadUserInput("Input \"N\" for: artistname\\artworks file hierarcy. Input \"Y\" for: artistname\\post\\artworks file hierarcy.", new List() { "Y", "N" });
53 |
54 | DownloadingArt da = new DownloadingArt();
55 | da.DownloadArt(artistUrls);
56 |
57 | }
58 | catch (Exception e)
59 | {
60 | logger.Error($"Unhandled exception HAPPENEDZ. Read the info: {e.Message}" +
61 | $"\n {e.StackTrace}" +
62 | $"\n {e.InnerException}" +
63 | $"\n {e.GetBaseException}" +
64 | $"\n {e.Source}");
65 | }
66 | }
67 |
68 | //static string GetPostName(HtmlDocument doc)
69 | //{
70 | // return ValidatePathName(doc.DocumentNode.SelectSingleNode("//h1[contains(@class, 'post__title')]").ChildNodes.ElementAt(1).InnerText);
71 | //}
72 | //static string ValidatePathName(string input, string replacement = "")
73 | //{
74 | // var regexSearch = new string(Path.GetInvalidFileNameChars()) + new string(Path.GetInvalidPathChars());
75 | // var r = new Regex(string.Format("[{0}]", Regex.Escape(regexSearch)));
76 | // var fileName = r.Replace(input, replacement);
77 | // if (fileName.Length > 120)
78 | // {
79 | // fileName = fileName.Substring(0, 119);
80 | // }
81 | // return fileName;
82 | //}
83 | }
84 | }
--------------------------------------------------------------------------------
/KemonoDownloader/README.md:
--------------------------------------------------------------------------------
1 | Currently the program is very primitive.
2 | You simply paste-in the link to the artist whose art you want to download.
3 | If there is more than a single site available for a particular
4 | artist, e.g. both Pixiv Fanbox and Fantia, you need to do the process
5 | for the both of those.
6 | Input just the zero-page link (without the "?o=" at the end).
7 |
8 | If the folder inside of which you've placed
9 | the .exe hasn't got enough storage space, you input giberlish, etc. the program will just stop
10 |
11 | BTC:
12 | bc1qegxawcgkw60w78qdc7ah2wyr87shn732ycjnpd
13 |
14 | ETH:
15 | 0x25D9AF6620AEb2F0f327e0d0b9a86DB9D9397c6d
16 |
--------------------------------------------------------------------------------
/KemonoDownloader/kemonoDownloader.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloader/kemonoDownloader.db
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/Context/KemonoDbContext.cs:
--------------------------------------------------------------------------------
1 | using KemonoDownloaderDataModels.Models;
2 | using Microsoft.EntityFrameworkCore;
3 | using System;
4 | using System.Collections.Generic;
5 | using System.Diagnostics;
6 | using System.Linq;
7 | using System.Reflection.Metadata;
8 | using System.Runtime.ConstrainedExecution;
9 | using System.Text;
10 | using System.Threading.Tasks;
11 |
12 | public class KemonoDbContext : DbContext
13 | {
14 | public DbSet Artists { get; set; }
15 | public DbSet Media { get; set; }
16 | public DbSet Posts { get; set; }
17 | public string DbPath { get; } = Environment.CurrentDirectory;
18 | public KemonoDbContext()
19 | {
20 | //var folder = Environment.SpecialFolder.LocalApplicationData;
21 | //var path = Environment.GetFolderPath(folder);
22 | DbPath = System.IO.Path.Join(DbPath, "kemonoDownloader.db");
23 | this.Database.EnsureCreated();
24 | }
25 |
26 | // The following configures EF to create a Sqlite database file in the
27 | // special "local" folder for your platform.
28 | protected override void OnConfiguring(DbContextOptionsBuilder options)
29 | => options.UseSqlite($"Data Source={DbPath}");
30 |
31 | protected override void OnModelCreating(ModelBuilder modelBuilder)
32 | {
33 | modelBuilder.Entity()
34 | .HasAlternateKey(p => p.KemonoId);
35 | modelBuilder.Entity()
36 | .HasAlternateKey(a => a.ArtistUrl);
37 | modelBuilder.Entity()
38 | .HasAlternateKey(a => a.Href);
39 | }
40 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/KemonoDownloaderDataModels.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | enable
6 | enable
7 |
8 |
9 |
10 |
11 |
12 | all
13 | runtime; build; native; contentfiles; analyzers; buildtransitive
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/Models/Artist.cs:
--------------------------------------------------------------------------------
1 | using System.ComponentModel.DataAnnotations;
2 |
3 | namespace KemonoDownloaderDataModels.Models
4 | {
5 | public class Artist
6 | {
7 | [Key]
8 | public int Id { get; set; }
9 | [Required]
10 | public string Name { get; set; }
11 | public string ArtistUrl { get; set; }
12 | public string PathOnDisk { get; set; }
13 | public DateTime DateAdded { get; set; }
14 | public virtual List ArtistPosts { get; set; }
15 | }
16 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/Models/Media.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace KemonoDownloaderDataModels.Models
9 | {
10 | public class Media
11 | {
12 | [Key]
13 | public int Id { get; set; }
14 | public string FileName { get; set; }
15 |
16 | ///
17 | /// Where the media file is located, e.g.
18 | /// c:/KemonoDownloader/artist/post/mediaFile.jpg
19 | /// (the above is not the correct path format)
20 | ///
29 | /// Parent post, the post inside of which this media was found
30 | ///
31 | public Post Post { get; set; }
32 | public DateTime DateAdded { get; set; }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/Models/Post.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.ComponentModel.DataAnnotations.Schema;
5 | using System.Linq;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace KemonoDownloaderDataModels.Models
10 | {
11 | public class Post
12 | {
13 | [Key]
14 | public int Id { get; set; }
15 | ///
16 | /// This is an alternate key; For each Post the KemonoId is unique
17 | ///
18 | public int KemonoId { get; set; }
19 | public string? HtmlContent { get; set; }
20 | [Required]
21 | public Artist Artist { get; set; }
22 | public virtual List PostMedia { get; set; }
23 | public bool Processed { get; set; } = false;
24 | ///
25 | /// This has to be a method and not a property
26 | /// so as not to cause an entity framework error
27 | ///
28 | ///
29 | public string Url()
30 | {
31 | return Artist.ArtistUrl + "/post/" + KemonoId;
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/bin/Debug/KemonoDownloaderDataModels.1.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/bin/Debug/KemonoDownloaderDataModels.1.0.0.nupkg
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.deps.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeTarget": {
3 | "name": ".NETCoreApp,Version=v6.0",
4 | "signature": ""
5 | },
6 | "compilationOptions": {},
7 | "targets": {
8 | ".NETCoreApp,Version=v6.0": {
9 | "KemonoDownloaderDataModels/1.0.0": {
10 | "dependencies": {
11 | "Microsoft.EntityFrameworkCore.Sqlite": "6.0.10",
12 | "Microsoft.EntityFrameworkCore.Tools": "6.0.10"
13 | },
14 | "runtime": {
15 | "KemonoDownloaderDataModels.dll": {}
16 | }
17 | },
18 | "Humanizer.Core/2.8.26": {
19 | "runtime": {
20 | "lib/netstandard2.0/Humanizer.dll": {
21 | "assemblyVersion": "2.8.0.0",
22 | "fileVersion": "2.8.26.1919"
23 | }
24 | }
25 | },
26 | "Microsoft.Data.Sqlite.Core/6.0.10": {
27 | "dependencies": {
28 | "SQLitePCLRaw.core": "2.0.6"
29 | },
30 | "runtime": {
31 | "lib/net6.0/Microsoft.Data.Sqlite.dll": {
32 | "assemblyVersion": "6.0.10.0",
33 | "fileVersion": "6.0.1022.47607"
34 | }
35 | }
36 | },
37 | "Microsoft.EntityFrameworkCore/6.0.10": {
38 | "dependencies": {
39 | "Microsoft.EntityFrameworkCore.Abstractions": "6.0.10",
40 | "Microsoft.EntityFrameworkCore.Analyzers": "6.0.10",
41 | "Microsoft.Extensions.Caching.Memory": "6.0.1",
42 | "Microsoft.Extensions.DependencyInjection": "6.0.1",
43 | "Microsoft.Extensions.Logging": "6.0.0",
44 | "System.Collections.Immutable": "6.0.0",
45 | "System.Diagnostics.DiagnosticSource": "6.0.0"
46 | },
47 | "runtime": {
48 | "lib/net6.0/Microsoft.EntityFrameworkCore.dll": {
49 | "assemblyVersion": "6.0.10.0",
50 | "fileVersion": "6.0.1022.47607"
51 | }
52 | }
53 | },
54 | "Microsoft.EntityFrameworkCore.Abstractions/6.0.10": {
55 | "runtime": {
56 | "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
57 | "assemblyVersion": "6.0.10.0",
58 | "fileVersion": "6.0.1022.47607"
59 | }
60 | }
61 | },
62 | "Microsoft.EntityFrameworkCore.Analyzers/6.0.10": {},
63 | "Microsoft.EntityFrameworkCore.Design/6.0.10": {
64 | "dependencies": {
65 | "Humanizer.Core": "2.8.26",
66 | "Microsoft.EntityFrameworkCore.Relational": "6.0.10"
67 | },
68 | "runtime": {
69 | "lib/net6.0/Microsoft.EntityFrameworkCore.Design.dll": {
70 | "assemblyVersion": "6.0.10.0",
71 | "fileVersion": "6.0.1022.47607"
72 | }
73 | }
74 | },
75 | "Microsoft.EntityFrameworkCore.Relational/6.0.10": {
76 | "dependencies": {
77 | "Microsoft.EntityFrameworkCore": "6.0.10",
78 | "Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
79 | },
80 | "runtime": {
81 | "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll": {
82 | "assemblyVersion": "6.0.10.0",
83 | "fileVersion": "6.0.1022.47607"
84 | }
85 | }
86 | },
87 | "Microsoft.EntityFrameworkCore.Sqlite/6.0.10": {
88 | "dependencies": {
89 | "Microsoft.EntityFrameworkCore.Sqlite.Core": "6.0.10",
90 | "SQLitePCLRaw.bundle_e_sqlite3": "2.0.6"
91 | }
92 | },
93 | "Microsoft.EntityFrameworkCore.Sqlite.Core/6.0.10": {
94 | "dependencies": {
95 | "Microsoft.Data.Sqlite.Core": "6.0.10",
96 | "Microsoft.EntityFrameworkCore.Relational": "6.0.10",
97 | "Microsoft.Extensions.DependencyModel": "6.0.0"
98 | },
99 | "runtime": {
100 | "lib/net6.0/Microsoft.EntityFrameworkCore.Sqlite.dll": {
101 | "assemblyVersion": "6.0.10.0",
102 | "fileVersion": "6.0.1022.47607"
103 | }
104 | }
105 | },
106 | "Microsoft.EntityFrameworkCore.Tools/6.0.10": {
107 | "dependencies": {
108 | "Microsoft.EntityFrameworkCore.Design": "6.0.10"
109 | }
110 | },
111 | "Microsoft.Extensions.Caching.Abstractions/6.0.0": {
112 | "dependencies": {
113 | "Microsoft.Extensions.Primitives": "6.0.0"
114 | },
115 | "runtime": {
116 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll": {
117 | "assemblyVersion": "6.0.0.0",
118 | "fileVersion": "6.0.21.52210"
119 | }
120 | }
121 | },
122 | "Microsoft.Extensions.Caching.Memory/6.0.1": {
123 | "dependencies": {
124 | "Microsoft.Extensions.Caching.Abstractions": "6.0.0",
125 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
126 | "Microsoft.Extensions.Logging.Abstractions": "6.0.0",
127 | "Microsoft.Extensions.Options": "6.0.0",
128 | "Microsoft.Extensions.Primitives": "6.0.0"
129 | },
130 | "runtime": {
131 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll": {
132 | "assemblyVersion": "6.0.0.0",
133 | "fileVersion": "6.0.222.6406"
134 | }
135 | }
136 | },
137 | "Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
138 | "dependencies": {
139 | "Microsoft.Extensions.Primitives": "6.0.0"
140 | },
141 | "runtime": {
142 | "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
143 | "assemblyVersion": "6.0.0.0",
144 | "fileVersion": "6.0.21.52210"
145 | }
146 | }
147 | },
148 | "Microsoft.Extensions.DependencyInjection/6.0.1": {
149 | "dependencies": {
150 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
151 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
152 | },
153 | "runtime": {
154 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll": {
155 | "assemblyVersion": "6.0.0.0",
156 | "fileVersion": "6.0.1022.47605"
157 | }
158 | }
159 | },
160 | "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {
161 | "runtime": {
162 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
163 | "assemblyVersion": "6.0.0.0",
164 | "fileVersion": "6.0.21.52210"
165 | }
166 | }
167 | },
168 | "Microsoft.Extensions.DependencyModel/6.0.0": {
169 | "dependencies": {
170 | "System.Buffers": "4.5.1",
171 | "System.Memory": "4.5.4",
172 | "System.Runtime.CompilerServices.Unsafe": "6.0.0",
173 | "System.Text.Encodings.Web": "6.0.0",
174 | "System.Text.Json": "6.0.0"
175 | },
176 | "runtime": {
177 | "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll": {
178 | "assemblyVersion": "6.0.0.0",
179 | "fileVersion": "6.0.21.52210"
180 | }
181 | }
182 | },
183 | "Microsoft.Extensions.Logging/6.0.0": {
184 | "dependencies": {
185 | "Microsoft.Extensions.DependencyInjection": "6.0.1",
186 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
187 | "Microsoft.Extensions.Logging.Abstractions": "6.0.0",
188 | "Microsoft.Extensions.Options": "6.0.0",
189 | "System.Diagnostics.DiagnosticSource": "6.0.0"
190 | },
191 | "runtime": {
192 | "lib/netstandard2.1/Microsoft.Extensions.Logging.dll": {
193 | "assemblyVersion": "6.0.0.0",
194 | "fileVersion": "6.0.21.52210"
195 | }
196 | }
197 | },
198 | "Microsoft.Extensions.Logging.Abstractions/6.0.0": {
199 | "runtime": {
200 | "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {
201 | "assemblyVersion": "6.0.0.0",
202 | "fileVersion": "6.0.21.52210"
203 | }
204 | }
205 | },
206 | "Microsoft.Extensions.Options/6.0.0": {
207 | "dependencies": {
208 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
209 | "Microsoft.Extensions.Primitives": "6.0.0"
210 | },
211 | "runtime": {
212 | "lib/netstandard2.1/Microsoft.Extensions.Options.dll": {
213 | "assemblyVersion": "6.0.0.0",
214 | "fileVersion": "6.0.21.52210"
215 | }
216 | }
217 | },
218 | "Microsoft.Extensions.Primitives/6.0.0": {
219 | "dependencies": {
220 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
221 | },
222 | "runtime": {
223 | "lib/net6.0/Microsoft.Extensions.Primitives.dll": {
224 | "assemblyVersion": "6.0.0.0",
225 | "fileVersion": "6.0.21.52210"
226 | }
227 | }
228 | },
229 | "SQLitePCLRaw.bundle_e_sqlite3/2.0.6": {
230 | "dependencies": {
231 | "SQLitePCLRaw.core": "2.0.6",
232 | "SQLitePCLRaw.lib.e_sqlite3": "2.0.6",
233 | "SQLitePCLRaw.provider.e_sqlite3": "2.0.6"
234 | },
235 | "runtime": {
236 | "lib/netstandard2.0/SQLitePCLRaw.batteries_v2.dll": {
237 | "assemblyVersion": "2.0.6.1341",
238 | "fileVersion": "2.0.6.1341"
239 | }
240 | }
241 | },
242 | "SQLitePCLRaw.core/2.0.6": {
243 | "dependencies": {
244 | "System.Memory": "4.5.4"
245 | },
246 | "runtime": {
247 | "lib/netstandard2.0/SQLitePCLRaw.core.dll": {
248 | "assemblyVersion": "2.0.6.1341",
249 | "fileVersion": "2.0.6.1341"
250 | }
251 | }
252 | },
253 | "SQLitePCLRaw.lib.e_sqlite3/2.0.6": {
254 | "runtimeTargets": {
255 | "runtimes/alpine-x64/native/libe_sqlite3.so": {
256 | "rid": "alpine-x64",
257 | "assetType": "native",
258 | "fileVersion": "0.0.0.0"
259 | },
260 | "runtimes/linux-arm/native/libe_sqlite3.so": {
261 | "rid": "linux-arm",
262 | "assetType": "native",
263 | "fileVersion": "0.0.0.0"
264 | },
265 | "runtimes/linux-arm64/native/libe_sqlite3.so": {
266 | "rid": "linux-arm64",
267 | "assetType": "native",
268 | "fileVersion": "0.0.0.0"
269 | },
270 | "runtimes/linux-armel/native/libe_sqlite3.so": {
271 | "rid": "linux-armel",
272 | "assetType": "native",
273 | "fileVersion": "0.0.0.0"
274 | },
275 | "runtimes/linux-mips64/native/libe_sqlite3.so": {
276 | "rid": "linux-mips64",
277 | "assetType": "native",
278 | "fileVersion": "0.0.0.0"
279 | },
280 | "runtimes/linux-musl-x64/native/libe_sqlite3.so": {
281 | "rid": "linux-musl-x64",
282 | "assetType": "native",
283 | "fileVersion": "0.0.0.0"
284 | },
285 | "runtimes/linux-s390x/native/libe_sqlite3.so": {
286 | "rid": "linux-s390x",
287 | "assetType": "native",
288 | "fileVersion": "0.0.0.0"
289 | },
290 | "runtimes/linux-x64/native/libe_sqlite3.so": {
291 | "rid": "linux-x64",
292 | "assetType": "native",
293 | "fileVersion": "0.0.0.0"
294 | },
295 | "runtimes/linux-x86/native/libe_sqlite3.so": {
296 | "rid": "linux-x86",
297 | "assetType": "native",
298 | "fileVersion": "0.0.0.0"
299 | },
300 | "runtimes/osx-arm64/native/libe_sqlite3.dylib": {
301 | "rid": "osx-arm64",
302 | "assetType": "native",
303 | "fileVersion": "0.0.0.0"
304 | },
305 | "runtimes/osx-x64/native/libe_sqlite3.dylib": {
306 | "rid": "osx-x64",
307 | "assetType": "native",
308 | "fileVersion": "0.0.0.0"
309 | },
310 | "runtimes/win-arm/native/e_sqlite3.dll": {
311 | "rid": "win-arm",
312 | "assetType": "native",
313 | "fileVersion": "0.0.0.0"
314 | },
315 | "runtimes/win-arm64/native/e_sqlite3.dll": {
316 | "rid": "win-arm64",
317 | "assetType": "native",
318 | "fileVersion": "0.0.0.0"
319 | },
320 | "runtimes/win-x64/native/e_sqlite3.dll": {
321 | "rid": "win-x64",
322 | "assetType": "native",
323 | "fileVersion": "0.0.0.0"
324 | },
325 | "runtimes/win-x86/native/e_sqlite3.dll": {
326 | "rid": "win-x86",
327 | "assetType": "native",
328 | "fileVersion": "0.0.0.0"
329 | }
330 | }
331 | },
332 | "SQLitePCLRaw.provider.e_sqlite3/2.0.6": {
333 | "dependencies": {
334 | "SQLitePCLRaw.core": "2.0.6"
335 | },
336 | "runtime": {
337 | "lib/net5.0/SQLitePCLRaw.provider.e_sqlite3.dll": {
338 | "assemblyVersion": "2.0.6.1341",
339 | "fileVersion": "2.0.6.1341"
340 | }
341 | }
342 | },
343 | "System.Buffers/4.5.1": {},
344 | "System.Collections.Immutable/6.0.0": {
345 | "dependencies": {
346 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
347 | }
348 | },
349 | "System.Diagnostics.DiagnosticSource/6.0.0": {
350 | "dependencies": {
351 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
352 | }
353 | },
354 | "System.Memory/4.5.4": {},
355 | "System.Runtime.CompilerServices.Unsafe/6.0.0": {},
356 | "System.Text.Encodings.Web/6.0.0": {
357 | "dependencies": {
358 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
359 | }
360 | },
361 | "System.Text.Json/6.0.0": {
362 | "dependencies": {
363 | "System.Runtime.CompilerServices.Unsafe": "6.0.0",
364 | "System.Text.Encodings.Web": "6.0.0"
365 | }
366 | }
367 | }
368 | },
369 | "libraries": {
370 | "KemonoDownloaderDataModels/1.0.0": {
371 | "type": "project",
372 | "serviceable": false,
373 | "sha512": ""
374 | },
375 | "Humanizer.Core/2.8.26": {
376 | "type": "package",
377 | "serviceable": true,
378 | "sha512": "sha512-OiKusGL20vby4uDEswj2IgkdchC1yQ6rwbIkZDVBPIR6al2b7n3pC91elBul9q33KaBgRKhbZH3+2Ur4fnWx2A==",
379 | "path": "humanizer.core/2.8.26",
380 | "hashPath": "humanizer.core.2.8.26.nupkg.sha512"
381 | },
382 | "Microsoft.Data.Sqlite.Core/6.0.10": {
383 | "type": "package",
384 | "serviceable": true,
385 | "sha512": "sha512-TWUjLTzSeENkEChqWrcaAzIrD9i5M2l2qrWDI00lC38xBPUuK1Qf57ZywO+dwmr2S3yS0VUPvpdpqCrq60QaRw==",
386 | "path": "microsoft.data.sqlite.core/6.0.10",
387 | "hashPath": "microsoft.data.sqlite.core.6.0.10.nupkg.sha512"
388 | },
389 | "Microsoft.EntityFrameworkCore/6.0.10": {
390 | "type": "package",
391 | "serviceable": true,
392 | "sha512": "sha512-aMk8c7XKynkDJM8vnRuVz3VHSLiWy4tWpkvSdrQ4No1DNLdtTI6P3iT2wAPvVkuJsS22Ifs62/Jr6AyveX5b4A==",
393 | "path": "microsoft.entityframeworkcore/6.0.10",
394 | "hashPath": "microsoft.entityframeworkcore.6.0.10.nupkg.sha512"
395 | },
396 | "Microsoft.EntityFrameworkCore.Abstractions/6.0.10": {
397 | "type": "package",
398 | "serviceable": true,
399 | "sha512": "sha512-3BMwnBB6Bgwd6bjUqx2pOYuHpGBHCJxY3vorRJYX3U2wzrz5q4jNxDZZGsMViFZeJ7PXFIwbgy6rR73J5aalsg==",
400 | "path": "microsoft.entityframeworkcore.abstractions/6.0.10",
401 | "hashPath": "microsoft.entityframeworkcore.abstractions.6.0.10.nupkg.sha512"
402 | },
403 | "Microsoft.EntityFrameworkCore.Analyzers/6.0.10": {
404 | "type": "package",
405 | "serviceable": true,
406 | "sha512": "sha512-b4jKcjo6BLuBRjLTkZPjJCvZ7oa3a798Q1AXSMAknitpBEOEIDryyRd7XZ0cnEIVCvfSND+Trgb00Z4TiTqOvg==",
407 | "path": "microsoft.entityframeworkcore.analyzers/6.0.10",
408 | "hashPath": "microsoft.entityframeworkcore.analyzers.6.0.10.nupkg.sha512"
409 | },
410 | "Microsoft.EntityFrameworkCore.Design/6.0.10": {
411 | "type": "package",
412 | "serviceable": true,
413 | "sha512": "sha512-SVqDfUftgBoKCMPfTaWXiKBZPHMjbiBJLE5WE7MeD28nTk7CkmUNX8eXyNIeWxpDuk4r0zZ6XG9zyG7Ef3KS4A==",
414 | "path": "microsoft.entityframeworkcore.design/6.0.10",
415 | "hashPath": "microsoft.entityframeworkcore.design.6.0.10.nupkg.sha512"
416 | },
417 | "Microsoft.EntityFrameworkCore.Relational/6.0.10": {
418 | "type": "package",
419 | "serviceable": true,
420 | "sha512": "sha512-8rjVzKtGSTojSefghXqh3Y2wq8A7P7iWuUQQyQieXNYrYA7nw2aHZI2rjU+7ta4jHgKITddUHFaPQJ69H18dQA==",
421 | "path": "microsoft.entityframeworkcore.relational/6.0.10",
422 | "hashPath": "microsoft.entityframeworkcore.relational.6.0.10.nupkg.sha512"
423 | },
424 | "Microsoft.EntityFrameworkCore.Sqlite/6.0.10": {
425 | "type": "package",
426 | "serviceable": true,
427 | "sha512": "sha512-JWoqE8TMKg+SwMmig3UPsC1Fg00JQ3dyPpr64VuYlnaags+1eJ5gAYJ38CHdxSGIQQouUv7fK3rfuoKfFc5kiA==",
428 | "path": "microsoft.entityframeworkcore.sqlite/6.0.10",
429 | "hashPath": "microsoft.entityframeworkcore.sqlite.6.0.10.nupkg.sha512"
430 | },
431 | "Microsoft.EntityFrameworkCore.Sqlite.Core/6.0.10": {
432 | "type": "package",
433 | "serviceable": true,
434 | "sha512": "sha512-5aynyix0/bvGlmlX3ude/ctTJ0t/styV3Cmd9BR9ujb0vlU8WuFxJqriVhuRnCLS9I7+vBgSh7FWdxWz8cHi3A==",
435 | "path": "microsoft.entityframeworkcore.sqlite.core/6.0.10",
436 | "hashPath": "microsoft.entityframeworkcore.sqlite.core.6.0.10.nupkg.sha512"
437 | },
438 | "Microsoft.EntityFrameworkCore.Tools/6.0.10": {
439 | "type": "package",
440 | "serviceable": true,
441 | "sha512": "sha512-LWQvCb3lmTxkcnzO8H0ib0Ot/Pow9Kubt2iqvhhAHEbhs7SS1ygB938EpmuD9o1yyyliAg6FHln5o6jVfEkdyQ==",
442 | "path": "microsoft.entityframeworkcore.tools/6.0.10",
443 | "hashPath": "microsoft.entityframeworkcore.tools.6.0.10.nupkg.sha512"
444 | },
445 | "Microsoft.Extensions.Caching.Abstractions/6.0.0": {
446 | "type": "package",
447 | "serviceable": true,
448 | "sha512": "sha512-bcz5sSFJbganH0+YrfvIjJDIcKNW7TL07C4d1eTmXy/wOt52iz4LVogJb6pazs7W0+74j0YpXFErvp++Aq5Bsw==",
449 | "path": "microsoft.extensions.caching.abstractions/6.0.0",
450 | "hashPath": "microsoft.extensions.caching.abstractions.6.0.0.nupkg.sha512"
451 | },
452 | "Microsoft.Extensions.Caching.Memory/6.0.1": {
453 | "type": "package",
454 | "serviceable": true,
455 | "sha512": "sha512-B4y+Cev05eMcjf1na0v9gza6GUtahXbtY1JCypIgx3B4Ea/KAgsWyXEmW4q6zMbmTMtKzmPVk09rvFJirvMwTg==",
456 | "path": "microsoft.extensions.caching.memory/6.0.1",
457 | "hashPath": "microsoft.extensions.caching.memory.6.0.1.nupkg.sha512"
458 | },
459 | "Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
460 | "type": "package",
461 | "serviceable": true,
462 | "sha512": "sha512-qWzV9o+ZRWq+pGm+1dF+R7qTgTYoXvbyowRoBxQJGfqTpqDun2eteerjRQhq5PQ/14S+lqto3Ft4gYaRyl4rdQ==",
463 | "path": "microsoft.extensions.configuration.abstractions/6.0.0",
464 | "hashPath": "microsoft.extensions.configuration.abstractions.6.0.0.nupkg.sha512"
465 | },
466 | "Microsoft.Extensions.DependencyInjection/6.0.1": {
467 | "type": "package",
468 | "serviceable": true,
469 | "sha512": "sha512-vWXPg3HJQIpZkENn1KWq8SfbqVujVD7S7vIAyFXXqK5xkf1Vho+vG0bLBCHxU36lD1cLLtmGpfYf0B3MYFi9tQ==",
470 | "path": "microsoft.extensions.dependencyinjection/6.0.1",
471 | "hashPath": "microsoft.extensions.dependencyinjection.6.0.1.nupkg.sha512"
472 | },
473 | "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {
474 | "type": "package",
475 | "serviceable": true,
476 | "sha512": "sha512-xlzi2IYREJH3/m6+lUrQlujzX8wDitm4QGnUu6kUXTQAWPuZY8i+ticFJbzfqaetLA6KR/rO6Ew/HuYD+bxifg==",
477 | "path": "microsoft.extensions.dependencyinjection.abstractions/6.0.0",
478 | "hashPath": "microsoft.extensions.dependencyinjection.abstractions.6.0.0.nupkg.sha512"
479 | },
480 | "Microsoft.Extensions.DependencyModel/6.0.0": {
481 | "type": "package",
482 | "serviceable": true,
483 | "sha512": "sha512-TD5QHg98m3+QhgEV1YVoNMl5KtBw/4rjfxLHO0e/YV9bPUBDKntApP4xdrVtGgCeQZHVfC2EXIGsdpRNrr87Pg==",
484 | "path": "microsoft.extensions.dependencymodel/6.0.0",
485 | "hashPath": "microsoft.extensions.dependencymodel.6.0.0.nupkg.sha512"
486 | },
487 | "Microsoft.Extensions.Logging/6.0.0": {
488 | "type": "package",
489 | "serviceable": true,
490 | "sha512": "sha512-eIbyj40QDg1NDz0HBW0S5f3wrLVnKWnDJ/JtZ+yJDFnDj90VoPuoPmFkeaXrtu+0cKm5GRAwoDf+dBWXK0TUdg==",
491 | "path": "microsoft.extensions.logging/6.0.0",
492 | "hashPath": "microsoft.extensions.logging.6.0.0.nupkg.sha512"
493 | },
494 | "Microsoft.Extensions.Logging.Abstractions/6.0.0": {
495 | "type": "package",
496 | "serviceable": true,
497 | "sha512": "sha512-/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
498 | "path": "microsoft.extensions.logging.abstractions/6.0.0",
499 | "hashPath": "microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512"
500 | },
501 | "Microsoft.Extensions.Options/6.0.0": {
502 | "type": "package",
503 | "serviceable": true,
504 | "sha512": "sha512-dzXN0+V1AyjOe2xcJ86Qbo233KHuLEY0njf/P2Kw8SfJU+d45HNS2ctJdnEnrWbM9Ye2eFgaC5Mj9otRMU6IsQ==",
505 | "path": "microsoft.extensions.options/6.0.0",
506 | "hashPath": "microsoft.extensions.options.6.0.0.nupkg.sha512"
507 | },
508 | "Microsoft.Extensions.Primitives/6.0.0": {
509 | "type": "package",
510 | "serviceable": true,
511 | "sha512": "sha512-9+PnzmQFfEFNR9J2aDTfJGGupShHjOuGw4VUv+JB044biSHrnmCIMD+mJHmb2H7YryrfBEXDurxQ47gJZdCKNQ==",
512 | "path": "microsoft.extensions.primitives/6.0.0",
513 | "hashPath": "microsoft.extensions.primitives.6.0.0.nupkg.sha512"
514 | },
515 | "SQLitePCLRaw.bundle_e_sqlite3/2.0.6": {
516 | "type": "package",
517 | "serviceable": true,
518 | "sha512": "sha512-zssYqiaucyGArZfg74rJuzK0ewgZiidsRVrZTmP7JLNvK806gXg6PGA46XzoJGpNPPA5uRcumwvVp6YTYxtQ5w==",
519 | "path": "sqlitepclraw.bundle_e_sqlite3/2.0.6",
520 | "hashPath": "sqlitepclraw.bundle_e_sqlite3.2.0.6.nupkg.sha512"
521 | },
522 | "SQLitePCLRaw.core/2.0.6": {
523 | "type": "package",
524 | "serviceable": true,
525 | "sha512": "sha512-Vh8n0dTvwXkCGur2WqQTITvk4BUO8i8h9ucSx3wwuaej3s2S6ZC0R7vqCTf9TfS/I4QkXO6g3W2YQIRFkOcijA==",
526 | "path": "sqlitepclraw.core/2.0.6",
527 | "hashPath": "sqlitepclraw.core.2.0.6.nupkg.sha512"
528 | },
529 | "SQLitePCLRaw.lib.e_sqlite3/2.0.6": {
530 | "type": "package",
531 | "serviceable": true,
532 | "sha512": "sha512-xlstskMKalKQl0H2uLNe0viBM6fvAGLWqKZUQ3twX5y1tSOZKe0+EbXopQKYdbjJytNGI6y5WSKjpI+kVr2Ckg==",
533 | "path": "sqlitepclraw.lib.e_sqlite3/2.0.6",
534 | "hashPath": "sqlitepclraw.lib.e_sqlite3.2.0.6.nupkg.sha512"
535 | },
536 | "SQLitePCLRaw.provider.e_sqlite3/2.0.6": {
537 | "type": "package",
538 | "serviceable": true,
539 | "sha512": "sha512-peXLJbhU+0clVBIPirihM1NoTBqw8ouBpcUsVMlcZ4k6fcL2hwgkctVB2Nt5VsbnOJcPspQL5xQK7QvLpxkMgg==",
540 | "path": "sqlitepclraw.provider.e_sqlite3/2.0.6",
541 | "hashPath": "sqlitepclraw.provider.e_sqlite3.2.0.6.nupkg.sha512"
542 | },
543 | "System.Buffers/4.5.1": {
544 | "type": "package",
545 | "serviceable": true,
546 | "sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
547 | "path": "system.buffers/4.5.1",
548 | "hashPath": "system.buffers.4.5.1.nupkg.sha512"
549 | },
550 | "System.Collections.Immutable/6.0.0": {
551 | "type": "package",
552 | "serviceable": true,
553 | "sha512": "sha512-l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==",
554 | "path": "system.collections.immutable/6.0.0",
555 | "hashPath": "system.collections.immutable.6.0.0.nupkg.sha512"
556 | },
557 | "System.Diagnostics.DiagnosticSource/6.0.0": {
558 | "type": "package",
559 | "serviceable": true,
560 | "sha512": "sha512-frQDfv0rl209cKm1lnwTgFPzNigy2EKk1BS3uAvHvlBVKe5cymGyHO+Sj+NLv5VF/AhHsqPIUUwya5oV4CHMUw==",
561 | "path": "system.diagnostics.diagnosticsource/6.0.0",
562 | "hashPath": "system.diagnostics.diagnosticsource.6.0.0.nupkg.sha512"
563 | },
564 | "System.Memory/4.5.4": {
565 | "type": "package",
566 | "serviceable": true,
567 | "sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==",
568 | "path": "system.memory/4.5.4",
569 | "hashPath": "system.memory.4.5.4.nupkg.sha512"
570 | },
571 | "System.Runtime.CompilerServices.Unsafe/6.0.0": {
572 | "type": "package",
573 | "serviceable": true,
574 | "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
575 | "path": "system.runtime.compilerservices.unsafe/6.0.0",
576 | "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512"
577 | },
578 | "System.Text.Encodings.Web/6.0.0": {
579 | "type": "package",
580 | "serviceable": true,
581 | "sha512": "sha512-Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
582 | "path": "system.text.encodings.web/6.0.0",
583 | "hashPath": "system.text.encodings.web.6.0.0.nupkg.sha512"
584 | },
585 | "System.Text.Json/6.0.0": {
586 | "type": "package",
587 | "serviceable": true,
588 | "sha512": "sha512-zaJsHfESQvJ11vbXnNlkrR46IaMULk/gHxYsJphzSF+07kTjPHv+Oc14w6QEOfo3Q4hqLJgStUaYB9DBl0TmWg==",
589 | "path": "system.text.json/6.0.0",
590 | "hashPath": "system.text.json.6.0.0.nupkg.sha512"
591 | }
592 | }
593 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.dll
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.pdb
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/bin/Debug/net6.0/KemonoDownloaderDataModels.runtimeconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "tfm": "net6.0",
4 | "framework": {
5 | "name": "Microsoft.NETCore.App",
6 | "version": "6.0.0"
7 | },
8 | "configProperties": {
9 | "System.Reflection.NullabilityInfoContext.IsSupported": true
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/KemonoDownloaderDataModels.1.0.0.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | KemonoDownloaderDataModels
5 | 1.0.0
6 | KemonoDownloaderDataModels
7 | Package Description
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
5 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: System.Reflection.AssemblyCompanyAttribute("KemonoDownloaderDataModels")]
15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
18 | [assembly: System.Reflection.AssemblyProductAttribute("KemonoDownloaderDataModels")]
19 | [assembly: System.Reflection.AssemblyTitleAttribute("KemonoDownloaderDataModels")]
20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
21 |
22 | // Generated by the MSBuild WriteCodeFragment class.
23 |
24 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.AssemblyInfoInputs.cache:
--------------------------------------------------------------------------------
1 | c58af0b8b4d336ddc656677d7985a44872160d49
2 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.GeneratedMSBuildEditorConfig.editorconfig:
--------------------------------------------------------------------------------
1 | is_global = true
2 | build_property.TargetFramework = net6.0
3 | build_property.TargetPlatformMinVersion =
4 | build_property.UsingMicrosoftNETSdkWeb =
5 | build_property.ProjectTypeGuids =
6 | build_property.InvariantGlobalization =
7 | build_property.PlatformNeutralAssembly =
8 | build_property._SupportedPlatformList = Linux,macOS,Windows
9 | build_property.RootNamespace = KemonoDownloaderDataModels
10 | build_property.ProjectDir = F:\KemonoDownloader\KemonoDownloaderDataModels\
11 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.GlobalUsings.g.cs:
--------------------------------------------------------------------------------
1 | //
2 | global using global::System;
3 | global using global::System.Collections.Generic;
4 | global using global::System.IO;
5 | global using global::System.Linq;
6 | global using global::System.Net.Http;
7 | global using global::System.Threading;
8 | global using global::System.Threading.Tasks;
9 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.assets.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.assets.cache
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.BuildWithSkipAnalyzers:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.BuildWithSkipAnalyzers
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 2887407a9dc632e5167d30abd7c54ea1ecbbe0ef
2 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.csproj.AssemblyReference.cache
2 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.GeneratedMSBuildEditorConfig.editorconfig
3 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.AssemblyInfoInputs.cache
4 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.AssemblyInfo.cs
5 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.csproj.CoreCompileInputs.cache
6 | F:\KemonoDownloader\KemonoDownloaderDataModels\bin\Debug\net6.0\KemonoDownloaderDataModels.deps.json
7 | F:\KemonoDownloader\KemonoDownloaderDataModels\bin\Debug\net6.0\KemonoDownloaderDataModels.runtimeconfig.json
8 | F:\KemonoDownloader\KemonoDownloaderDataModels\bin\Debug\net6.0\KemonoDownloaderDataModels.dll
9 | F:\KemonoDownloader\KemonoDownloaderDataModels\bin\Debug\net6.0\KemonoDownloaderDataModels.pdb
10 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.dll
11 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\refint\KemonoDownloaderDataModels.dll
12 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.pdb
13 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\KemonoDownloaderDataModels.genruntimeconfig.cache
14 | F:\KemonoDownloader\KemonoDownloaderDataModels\obj\Debug\net6.0\ref\KemonoDownloaderDataModels.dll
15 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.dll
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.genruntimeconfig.cache:
--------------------------------------------------------------------------------
1 | c32a7d2575e382c9658eb7b48b149c054d538133
2 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/KemonoDownloaderDataModels.pdb
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/ref/KemonoDownloaderDataModels.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/ref/KemonoDownloaderDataModels.dll
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/Debug/net6.0/refint/KemonoDownloaderDataModels.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AvocadoFlour/KemonoDownloader/21ddfe6f222960af64b9c9eb5a3437d952c1376d/KemonoDownloaderDataModels/obj/Debug/net6.0/refint/KemonoDownloaderDataModels.dll
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/KemonoDownloaderDataModels.csproj.nuget.dgspec.json:
--------------------------------------------------------------------------------
1 | {
2 | "format": 1,
3 | "restore": {
4 | "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj": {}
5 | },
6 | "projects": {
7 | "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj": {
8 | "version": "1.0.0",
9 | "restore": {
10 | "projectUniqueName": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj",
11 | "projectName": "KemonoDownloaderDataModels",
12 | "projectPath": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj",
13 | "packagesPath": "C:\\Users\\Gandeloft\\.nuget\\packages\\",
14 | "outputPath": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\obj\\",
15 | "projectStyle": "PackageReference",
16 | "configFilePaths": [
17 | "C:\\Users\\Gandeloft\\AppData\\Roaming\\NuGet\\NuGet.Config",
18 | "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
19 | ],
20 | "originalTargetFrameworks": [
21 | "net6.0"
22 | ],
23 | "sources": {
24 | "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
25 | "http://api.nuget.org/v3/index.json": {}
26 | },
27 | "frameworks": {
28 | "net6.0": {
29 | "targetAlias": "net6.0",
30 | "projectReferences": {}
31 | }
32 | },
33 | "warningProperties": {
34 | "warnAsError": [
35 | "NU1605"
36 | ]
37 | }
38 | },
39 | "frameworks": {
40 | "net6.0": {
41 | "targetAlias": "net6.0",
42 | "dependencies": {
43 | "Microsoft.EntityFrameworkCore.Sqlite": {
44 | "target": "Package",
45 | "version": "[6.0.10, )"
46 | },
47 | "Microsoft.EntityFrameworkCore.Tools": {
48 | "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
49 | "suppressParent": "All",
50 | "target": "Package",
51 | "version": "[6.0.10, )"
52 | }
53 | },
54 | "imports": [
55 | "net461",
56 | "net462",
57 | "net47",
58 | "net471",
59 | "net472",
60 | "net48",
61 | "net481"
62 | ],
63 | "assetTargetFallback": true,
64 | "warn": true,
65 | "frameworkReferences": {
66 | "Microsoft.NETCore.App": {
67 | "privateAssets": "all"
68 | }
69 | },
70 | "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.400\\RuntimeIdentifierGraph.json"
71 | }
72 | }
73 | }
74 | }
75 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/KemonoDownloaderDataModels.csproj.nuget.g.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | True
5 | NuGet
6 | $(MSBuildThisFileDirectory)project.assets.json
7 | $(UserProfile)\.nuget\packages\
8 | C:\Users\Gandeloft\.nuget\packages\
9 | PackageReference
10 | 6.3.0
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | C:\Users\Gandeloft\.nuget\packages\microsoft.entityframeworkcore.tools\6.0.10
21 |
22 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/KemonoDownloaderDataModels.csproj.nuget.g.targets:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/project.assets.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 3,
3 | "targets": {
4 | "net6.0": {
5 | "Humanizer.Core/2.8.26": {
6 | "type": "package",
7 | "compile": {
8 | "lib/netstandard2.0/_._": {
9 | "related": ".xml"
10 | }
11 | },
12 | "runtime": {
13 | "lib/netstandard2.0/Humanizer.dll": {
14 | "related": ".xml"
15 | }
16 | }
17 | },
18 | "Microsoft.Data.Sqlite.Core/6.0.10": {
19 | "type": "package",
20 | "dependencies": {
21 | "SQLitePCLRaw.core": "2.0.6"
22 | },
23 | "compile": {
24 | "lib/net6.0/Microsoft.Data.Sqlite.dll": {
25 | "related": ".xml"
26 | }
27 | },
28 | "runtime": {
29 | "lib/net6.0/Microsoft.Data.Sqlite.dll": {
30 | "related": ".xml"
31 | }
32 | }
33 | },
34 | "Microsoft.EntityFrameworkCore/6.0.10": {
35 | "type": "package",
36 | "dependencies": {
37 | "Microsoft.EntityFrameworkCore.Abstractions": "6.0.10",
38 | "Microsoft.EntityFrameworkCore.Analyzers": "6.0.10",
39 | "Microsoft.Extensions.Caching.Memory": "6.0.1",
40 | "Microsoft.Extensions.DependencyInjection": "6.0.1",
41 | "Microsoft.Extensions.Logging": "6.0.0",
42 | "System.Collections.Immutable": "6.0.0",
43 | "System.Diagnostics.DiagnosticSource": "6.0.0"
44 | },
45 | "compile": {
46 | "lib/net6.0/Microsoft.EntityFrameworkCore.dll": {
47 | "related": ".xml"
48 | }
49 | },
50 | "runtime": {
51 | "lib/net6.0/Microsoft.EntityFrameworkCore.dll": {
52 | "related": ".xml"
53 | }
54 | },
55 | "build": {
56 | "buildTransitive/net6.0/Microsoft.EntityFrameworkCore.props": {}
57 | }
58 | },
59 | "Microsoft.EntityFrameworkCore.Abstractions/6.0.10": {
60 | "type": "package",
61 | "compile": {
62 | "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
63 | "related": ".xml"
64 | }
65 | },
66 | "runtime": {
67 | "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
68 | "related": ".xml"
69 | }
70 | }
71 | },
72 | "Microsoft.EntityFrameworkCore.Analyzers/6.0.10": {
73 | "type": "package",
74 | "compile": {
75 | "lib/netstandard2.0/_._": {}
76 | },
77 | "runtime": {
78 | "lib/netstandard2.0/_._": {}
79 | }
80 | },
81 | "Microsoft.EntityFrameworkCore.Design/6.0.10": {
82 | "type": "package",
83 | "dependencies": {
84 | "Humanizer.Core": "2.8.26",
85 | "Microsoft.EntityFrameworkCore.Relational": "6.0.10"
86 | },
87 | "compile": {
88 | "lib/net6.0/_._": {
89 | "related": ".xml"
90 | }
91 | },
92 | "runtime": {
93 | "lib/net6.0/Microsoft.EntityFrameworkCore.Design.dll": {
94 | "related": ".xml"
95 | }
96 | },
97 | "build": {
98 | "build/net6.0/Microsoft.EntityFrameworkCore.Design.props": {}
99 | }
100 | },
101 | "Microsoft.EntityFrameworkCore.Relational/6.0.10": {
102 | "type": "package",
103 | "dependencies": {
104 | "Microsoft.EntityFrameworkCore": "6.0.10",
105 | "Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
106 | },
107 | "compile": {
108 | "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll": {
109 | "related": ".xml"
110 | }
111 | },
112 | "runtime": {
113 | "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll": {
114 | "related": ".xml"
115 | }
116 | }
117 | },
118 | "Microsoft.EntityFrameworkCore.Sqlite/6.0.10": {
119 | "type": "package",
120 | "dependencies": {
121 | "Microsoft.EntityFrameworkCore.Sqlite.Core": "6.0.10",
122 | "SQLitePCLRaw.bundle_e_sqlite3": "2.0.6"
123 | },
124 | "compile": {
125 | "lib/net6.0/_._": {}
126 | },
127 | "runtime": {
128 | "lib/net6.0/_._": {}
129 | }
130 | },
131 | "Microsoft.EntityFrameworkCore.Sqlite.Core/6.0.10": {
132 | "type": "package",
133 | "dependencies": {
134 | "Microsoft.Data.Sqlite.Core": "6.0.10",
135 | "Microsoft.EntityFrameworkCore.Relational": "6.0.10",
136 | "Microsoft.Extensions.DependencyModel": "6.0.0"
137 | },
138 | "compile": {
139 | "lib/net6.0/Microsoft.EntityFrameworkCore.Sqlite.dll": {
140 | "related": ".xml"
141 | }
142 | },
143 | "runtime": {
144 | "lib/net6.0/Microsoft.EntityFrameworkCore.Sqlite.dll": {
145 | "related": ".xml"
146 | }
147 | }
148 | },
149 | "Microsoft.EntityFrameworkCore.Tools/6.0.10": {
150 | "type": "package",
151 | "dependencies": {
152 | "Microsoft.EntityFrameworkCore.Design": "6.0.10"
153 | },
154 | "compile": {
155 | "lib/net6.0/_._": {}
156 | },
157 | "runtime": {
158 | "lib/net6.0/_._": {}
159 | }
160 | },
161 | "Microsoft.Extensions.Caching.Abstractions/6.0.0": {
162 | "type": "package",
163 | "dependencies": {
164 | "Microsoft.Extensions.Primitives": "6.0.0"
165 | },
166 | "compile": {
167 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll": {
168 | "related": ".xml"
169 | }
170 | },
171 | "runtime": {
172 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll": {
173 | "related": ".xml"
174 | }
175 | }
176 | },
177 | "Microsoft.Extensions.Caching.Memory/6.0.1": {
178 | "type": "package",
179 | "dependencies": {
180 | "Microsoft.Extensions.Caching.Abstractions": "6.0.0",
181 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
182 | "Microsoft.Extensions.Logging.Abstractions": "6.0.0",
183 | "Microsoft.Extensions.Options": "6.0.0",
184 | "Microsoft.Extensions.Primitives": "6.0.0"
185 | },
186 | "compile": {
187 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll": {
188 | "related": ".xml"
189 | }
190 | },
191 | "runtime": {
192 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll": {
193 | "related": ".xml"
194 | }
195 | }
196 | },
197 | "Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
198 | "type": "package",
199 | "dependencies": {
200 | "Microsoft.Extensions.Primitives": "6.0.0"
201 | },
202 | "compile": {
203 | "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
204 | "related": ".xml"
205 | }
206 | },
207 | "runtime": {
208 | "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
209 | "related": ".xml"
210 | }
211 | }
212 | },
213 | "Microsoft.Extensions.DependencyInjection/6.0.1": {
214 | "type": "package",
215 | "dependencies": {
216 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
217 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
218 | },
219 | "compile": {
220 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll": {
221 | "related": ".xml"
222 | }
223 | },
224 | "runtime": {
225 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll": {
226 | "related": ".xml"
227 | }
228 | },
229 | "build": {
230 | "buildTransitive/netcoreapp3.1/_._": {}
231 | }
232 | },
233 | "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {
234 | "type": "package",
235 | "compile": {
236 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
237 | "related": ".xml"
238 | }
239 | },
240 | "runtime": {
241 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
242 | "related": ".xml"
243 | }
244 | },
245 | "build": {
246 | "buildTransitive/netcoreapp3.1/_._": {}
247 | }
248 | },
249 | "Microsoft.Extensions.DependencyModel/6.0.0": {
250 | "type": "package",
251 | "dependencies": {
252 | "System.Buffers": "4.5.1",
253 | "System.Memory": "4.5.4",
254 | "System.Runtime.CompilerServices.Unsafe": "6.0.0",
255 | "System.Text.Encodings.Web": "6.0.0",
256 | "System.Text.Json": "6.0.0"
257 | },
258 | "compile": {
259 | "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll": {
260 | "related": ".xml"
261 | }
262 | },
263 | "runtime": {
264 | "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll": {
265 | "related": ".xml"
266 | }
267 | }
268 | },
269 | "Microsoft.Extensions.Logging/6.0.0": {
270 | "type": "package",
271 | "dependencies": {
272 | "Microsoft.Extensions.DependencyInjection": "6.0.0",
273 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
274 | "Microsoft.Extensions.Logging.Abstractions": "6.0.0",
275 | "Microsoft.Extensions.Options": "6.0.0",
276 | "System.Diagnostics.DiagnosticSource": "6.0.0"
277 | },
278 | "compile": {
279 | "lib/netstandard2.1/Microsoft.Extensions.Logging.dll": {
280 | "related": ".xml"
281 | }
282 | },
283 | "runtime": {
284 | "lib/netstandard2.1/Microsoft.Extensions.Logging.dll": {
285 | "related": ".xml"
286 | }
287 | }
288 | },
289 | "Microsoft.Extensions.Logging.Abstractions/6.0.0": {
290 | "type": "package",
291 | "compile": {
292 | "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {
293 | "related": ".xml"
294 | }
295 | },
296 | "runtime": {
297 | "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {
298 | "related": ".xml"
299 | }
300 | },
301 | "build": {
302 | "buildTransitive/netcoreapp3.1/_._": {}
303 | }
304 | },
305 | "Microsoft.Extensions.Options/6.0.0": {
306 | "type": "package",
307 | "dependencies": {
308 | "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
309 | "Microsoft.Extensions.Primitives": "6.0.0"
310 | },
311 | "compile": {
312 | "lib/netstandard2.1/Microsoft.Extensions.Options.dll": {
313 | "related": ".xml"
314 | }
315 | },
316 | "runtime": {
317 | "lib/netstandard2.1/Microsoft.Extensions.Options.dll": {
318 | "related": ".xml"
319 | }
320 | }
321 | },
322 | "Microsoft.Extensions.Primitives/6.0.0": {
323 | "type": "package",
324 | "dependencies": {
325 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
326 | },
327 | "compile": {
328 | "lib/net6.0/Microsoft.Extensions.Primitives.dll": {
329 | "related": ".xml"
330 | }
331 | },
332 | "runtime": {
333 | "lib/net6.0/Microsoft.Extensions.Primitives.dll": {
334 | "related": ".xml"
335 | }
336 | },
337 | "build": {
338 | "buildTransitive/netcoreapp3.1/_._": {}
339 | }
340 | },
341 | "SQLitePCLRaw.bundle_e_sqlite3/2.0.6": {
342 | "type": "package",
343 | "dependencies": {
344 | "SQLitePCLRaw.core": "2.0.6",
345 | "SQLitePCLRaw.lib.e_sqlite3": "2.0.6",
346 | "SQLitePCLRaw.provider.e_sqlite3": "2.0.6"
347 | },
348 | "compile": {
349 | "lib/netstandard2.0/SQLitePCLRaw.batteries_v2.dll": {}
350 | },
351 | "runtime": {
352 | "lib/netstandard2.0/SQLitePCLRaw.batteries_v2.dll": {}
353 | }
354 | },
355 | "SQLitePCLRaw.core/2.0.6": {
356 | "type": "package",
357 | "dependencies": {
358 | "System.Memory": "4.5.3"
359 | },
360 | "compile": {
361 | "lib/netstandard2.0/SQLitePCLRaw.core.dll": {}
362 | },
363 | "runtime": {
364 | "lib/netstandard2.0/SQLitePCLRaw.core.dll": {}
365 | }
366 | },
367 | "SQLitePCLRaw.lib.e_sqlite3/2.0.6": {
368 | "type": "package",
369 | "compile": {
370 | "lib/netstandard2.0/_._": {}
371 | },
372 | "runtime": {
373 | "lib/netstandard2.0/_._": {}
374 | },
375 | "runtimeTargets": {
376 | "runtimes/alpine-x64/native/libe_sqlite3.so": {
377 | "assetType": "native",
378 | "rid": "alpine-x64"
379 | },
380 | "runtimes/linux-arm/native/libe_sqlite3.so": {
381 | "assetType": "native",
382 | "rid": "linux-arm"
383 | },
384 | "runtimes/linux-arm64/native/libe_sqlite3.so": {
385 | "assetType": "native",
386 | "rid": "linux-arm64"
387 | },
388 | "runtimes/linux-armel/native/libe_sqlite3.so": {
389 | "assetType": "native",
390 | "rid": "linux-armel"
391 | },
392 | "runtimes/linux-mips64/native/libe_sqlite3.so": {
393 | "assetType": "native",
394 | "rid": "linux-mips64"
395 | },
396 | "runtimes/linux-musl-x64/native/libe_sqlite3.so": {
397 | "assetType": "native",
398 | "rid": "linux-musl-x64"
399 | },
400 | "runtimes/linux-s390x/native/libe_sqlite3.so": {
401 | "assetType": "native",
402 | "rid": "linux-s390x"
403 | },
404 | "runtimes/linux-x64/native/libe_sqlite3.so": {
405 | "assetType": "native",
406 | "rid": "linux-x64"
407 | },
408 | "runtimes/linux-x86/native/libe_sqlite3.so": {
409 | "assetType": "native",
410 | "rid": "linux-x86"
411 | },
412 | "runtimes/osx-arm64/native/libe_sqlite3.dylib": {
413 | "assetType": "native",
414 | "rid": "osx-arm64"
415 | },
416 | "runtimes/osx-x64/native/libe_sqlite3.dylib": {
417 | "assetType": "native",
418 | "rid": "osx-x64"
419 | },
420 | "runtimes/win-arm/native/e_sqlite3.dll": {
421 | "assetType": "native",
422 | "rid": "win-arm"
423 | },
424 | "runtimes/win-arm64/native/e_sqlite3.dll": {
425 | "assetType": "native",
426 | "rid": "win-arm64"
427 | },
428 | "runtimes/win-x64/native/e_sqlite3.dll": {
429 | "assetType": "native",
430 | "rid": "win-x64"
431 | },
432 | "runtimes/win-x86/native/e_sqlite3.dll": {
433 | "assetType": "native",
434 | "rid": "win-x86"
435 | }
436 | }
437 | },
438 | "SQLitePCLRaw.provider.e_sqlite3/2.0.6": {
439 | "type": "package",
440 | "dependencies": {
441 | "SQLitePCLRaw.core": "2.0.6"
442 | },
443 | "compile": {
444 | "lib/net5.0/SQLitePCLRaw.provider.e_sqlite3.dll": {}
445 | },
446 | "runtime": {
447 | "lib/net5.0/SQLitePCLRaw.provider.e_sqlite3.dll": {}
448 | }
449 | },
450 | "System.Buffers/4.5.1": {
451 | "type": "package",
452 | "compile": {
453 | "ref/netcoreapp2.0/_._": {}
454 | },
455 | "runtime": {
456 | "lib/netcoreapp2.0/_._": {}
457 | }
458 | },
459 | "System.Collections.Immutable/6.0.0": {
460 | "type": "package",
461 | "dependencies": {
462 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
463 | },
464 | "compile": {
465 | "lib/net6.0/System.Collections.Immutable.dll": {
466 | "related": ".xml"
467 | }
468 | },
469 | "runtime": {
470 | "lib/net6.0/System.Collections.Immutable.dll": {
471 | "related": ".xml"
472 | }
473 | },
474 | "build": {
475 | "buildTransitive/netcoreapp3.1/_._": {}
476 | }
477 | },
478 | "System.Diagnostics.DiagnosticSource/6.0.0": {
479 | "type": "package",
480 | "dependencies": {
481 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
482 | },
483 | "compile": {
484 | "lib/net6.0/System.Diagnostics.DiagnosticSource.dll": {
485 | "related": ".xml"
486 | }
487 | },
488 | "runtime": {
489 | "lib/net6.0/System.Diagnostics.DiagnosticSource.dll": {
490 | "related": ".xml"
491 | }
492 | },
493 | "build": {
494 | "buildTransitive/netcoreapp3.1/_._": {}
495 | }
496 | },
497 | "System.Memory/4.5.4": {
498 | "type": "package",
499 | "compile": {
500 | "ref/netcoreapp2.1/_._": {}
501 | },
502 | "runtime": {
503 | "lib/netcoreapp2.1/_._": {}
504 | }
505 | },
506 | "System.Runtime.CompilerServices.Unsafe/6.0.0": {
507 | "type": "package",
508 | "compile": {
509 | "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": {
510 | "related": ".xml"
511 | }
512 | },
513 | "runtime": {
514 | "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": {
515 | "related": ".xml"
516 | }
517 | },
518 | "build": {
519 | "buildTransitive/netcoreapp3.1/_._": {}
520 | }
521 | },
522 | "System.Text.Encodings.Web/6.0.0": {
523 | "type": "package",
524 | "dependencies": {
525 | "System.Runtime.CompilerServices.Unsafe": "6.0.0"
526 | },
527 | "compile": {
528 | "lib/net6.0/System.Text.Encodings.Web.dll": {
529 | "related": ".xml"
530 | }
531 | },
532 | "runtime": {
533 | "lib/net6.0/System.Text.Encodings.Web.dll": {
534 | "related": ".xml"
535 | }
536 | },
537 | "build": {
538 | "buildTransitive/netcoreapp3.1/_._": {}
539 | },
540 | "runtimeTargets": {
541 | "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll": {
542 | "assetType": "runtime",
543 | "rid": "browser"
544 | }
545 | }
546 | },
547 | "System.Text.Json/6.0.0": {
548 | "type": "package",
549 | "dependencies": {
550 | "System.Runtime.CompilerServices.Unsafe": "6.0.0",
551 | "System.Text.Encodings.Web": "6.0.0"
552 | },
553 | "compile": {
554 | "lib/net6.0/System.Text.Json.dll": {
555 | "related": ".xml"
556 | }
557 | },
558 | "runtime": {
559 | "lib/net6.0/System.Text.Json.dll": {
560 | "related": ".xml"
561 | }
562 | },
563 | "build": {
564 | "buildTransitive/netcoreapp3.1/_._": {}
565 | }
566 | }
567 | }
568 | },
569 | "libraries": {
570 | "Humanizer.Core/2.8.26": {
571 | "sha512": "OiKusGL20vby4uDEswj2IgkdchC1yQ6rwbIkZDVBPIR6al2b7n3pC91elBul9q33KaBgRKhbZH3+2Ur4fnWx2A==",
572 | "type": "package",
573 | "path": "humanizer.core/2.8.26",
574 | "files": [
575 | ".nupkg.metadata",
576 | ".signature.p7s",
577 | "humanizer.core.2.8.26.nupkg.sha512",
578 | "humanizer.core.nuspec",
579 | "lib/netstandard1.0/Humanizer.dll",
580 | "lib/netstandard1.0/Humanizer.xml",
581 | "lib/netstandard2.0/Humanizer.dll",
582 | "lib/netstandard2.0/Humanizer.xml",
583 | "logo.png"
584 | ]
585 | },
586 | "Microsoft.Data.Sqlite.Core/6.0.10": {
587 | "sha512": "TWUjLTzSeENkEChqWrcaAzIrD9i5M2l2qrWDI00lC38xBPUuK1Qf57ZywO+dwmr2S3yS0VUPvpdpqCrq60QaRw==",
588 | "type": "package",
589 | "path": "microsoft.data.sqlite.core/6.0.10",
590 | "files": [
591 | ".nupkg.metadata",
592 | ".signature.p7s",
593 | "Icon.png",
594 | "lib/net6.0/Microsoft.Data.Sqlite.dll",
595 | "lib/net6.0/Microsoft.Data.Sqlite.xml",
596 | "lib/netstandard2.0/Microsoft.Data.Sqlite.dll",
597 | "lib/netstandard2.0/Microsoft.Data.Sqlite.xml",
598 | "microsoft.data.sqlite.core.6.0.10.nupkg.sha512",
599 | "microsoft.data.sqlite.core.nuspec"
600 | ]
601 | },
602 | "Microsoft.EntityFrameworkCore/6.0.10": {
603 | "sha512": "aMk8c7XKynkDJM8vnRuVz3VHSLiWy4tWpkvSdrQ4No1DNLdtTI6P3iT2wAPvVkuJsS22Ifs62/Jr6AyveX5b4A==",
604 | "type": "package",
605 | "path": "microsoft.entityframeworkcore/6.0.10",
606 | "files": [
607 | ".nupkg.metadata",
608 | ".signature.p7s",
609 | "Icon.png",
610 | "buildTransitive/net6.0/Microsoft.EntityFrameworkCore.props",
611 | "lib/net6.0/Microsoft.EntityFrameworkCore.dll",
612 | "lib/net6.0/Microsoft.EntityFrameworkCore.xml",
613 | "microsoft.entityframeworkcore.6.0.10.nupkg.sha512",
614 | "microsoft.entityframeworkcore.nuspec"
615 | ]
616 | },
617 | "Microsoft.EntityFrameworkCore.Abstractions/6.0.10": {
618 | "sha512": "3BMwnBB6Bgwd6bjUqx2pOYuHpGBHCJxY3vorRJYX3U2wzrz5q4jNxDZZGsMViFZeJ7PXFIwbgy6rR73J5aalsg==",
619 | "type": "package",
620 | "path": "microsoft.entityframeworkcore.abstractions/6.0.10",
621 | "files": [
622 | ".nupkg.metadata",
623 | ".signature.p7s",
624 | "Icon.png",
625 | "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll",
626 | "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.xml",
627 | "microsoft.entityframeworkcore.abstractions.6.0.10.nupkg.sha512",
628 | "microsoft.entityframeworkcore.abstractions.nuspec"
629 | ]
630 | },
631 | "Microsoft.EntityFrameworkCore.Analyzers/6.0.10": {
632 | "sha512": "b4jKcjo6BLuBRjLTkZPjJCvZ7oa3a798Q1AXSMAknitpBEOEIDryyRd7XZ0cnEIVCvfSND+Trgb00Z4TiTqOvg==",
633 | "type": "package",
634 | "path": "microsoft.entityframeworkcore.analyzers/6.0.10",
635 | "files": [
636 | ".nupkg.metadata",
637 | ".signature.p7s",
638 | "Icon.png",
639 | "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll",
640 | "lib/netstandard2.0/_._",
641 | "microsoft.entityframeworkcore.analyzers.6.0.10.nupkg.sha512",
642 | "microsoft.entityframeworkcore.analyzers.nuspec"
643 | ]
644 | },
645 | "Microsoft.EntityFrameworkCore.Design/6.0.10": {
646 | "sha512": "SVqDfUftgBoKCMPfTaWXiKBZPHMjbiBJLE5WE7MeD28nTk7CkmUNX8eXyNIeWxpDuk4r0zZ6XG9zyG7Ef3KS4A==",
647 | "type": "package",
648 | "path": "microsoft.entityframeworkcore.design/6.0.10",
649 | "files": [
650 | ".nupkg.metadata",
651 | ".signature.p7s",
652 | "Icon.png",
653 | "build/net6.0/Microsoft.EntityFrameworkCore.Design.props",
654 | "lib/net6.0/Microsoft.EntityFrameworkCore.Design.dll",
655 | "lib/net6.0/Microsoft.EntityFrameworkCore.Design.xml",
656 | "microsoft.entityframeworkcore.design.6.0.10.nupkg.sha512",
657 | "microsoft.entityframeworkcore.design.nuspec"
658 | ]
659 | },
660 | "Microsoft.EntityFrameworkCore.Relational/6.0.10": {
661 | "sha512": "8rjVzKtGSTojSefghXqh3Y2wq8A7P7iWuUQQyQieXNYrYA7nw2aHZI2rjU+7ta4jHgKITddUHFaPQJ69H18dQA==",
662 | "type": "package",
663 | "path": "microsoft.entityframeworkcore.relational/6.0.10",
664 | "files": [
665 | ".nupkg.metadata",
666 | ".signature.p7s",
667 | "Icon.png",
668 | "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll",
669 | "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.xml",
670 | "microsoft.entityframeworkcore.relational.6.0.10.nupkg.sha512",
671 | "microsoft.entityframeworkcore.relational.nuspec"
672 | ]
673 | },
674 | "Microsoft.EntityFrameworkCore.Sqlite/6.0.10": {
675 | "sha512": "JWoqE8TMKg+SwMmig3UPsC1Fg00JQ3dyPpr64VuYlnaags+1eJ5gAYJ38CHdxSGIQQouUv7fK3rfuoKfFc5kiA==",
676 | "type": "package",
677 | "path": "microsoft.entityframeworkcore.sqlite/6.0.10",
678 | "files": [
679 | ".nupkg.metadata",
680 | ".signature.p7s",
681 | "Icon.png",
682 | "lib/net6.0/_._",
683 | "microsoft.entityframeworkcore.sqlite.6.0.10.nupkg.sha512",
684 | "microsoft.entityframeworkcore.sqlite.nuspec"
685 | ]
686 | },
687 | "Microsoft.EntityFrameworkCore.Sqlite.Core/6.0.10": {
688 | "sha512": "5aynyix0/bvGlmlX3ude/ctTJ0t/styV3Cmd9BR9ujb0vlU8WuFxJqriVhuRnCLS9I7+vBgSh7FWdxWz8cHi3A==",
689 | "type": "package",
690 | "path": "microsoft.entityframeworkcore.sqlite.core/6.0.10",
691 | "files": [
692 | ".nupkg.metadata",
693 | ".signature.p7s",
694 | "Icon.png",
695 | "lib/net6.0/Microsoft.EntityFrameworkCore.Sqlite.dll",
696 | "lib/net6.0/Microsoft.EntityFrameworkCore.Sqlite.xml",
697 | "microsoft.entityframeworkcore.sqlite.core.6.0.10.nupkg.sha512",
698 | "microsoft.entityframeworkcore.sqlite.core.nuspec"
699 | ]
700 | },
701 | "Microsoft.EntityFrameworkCore.Tools/6.0.10": {
702 | "sha512": "LWQvCb3lmTxkcnzO8H0ib0Ot/Pow9Kubt2iqvhhAHEbhs7SS1ygB938EpmuD9o1yyyliAg6FHln5o6jVfEkdyQ==",
703 | "type": "package",
704 | "path": "microsoft.entityframeworkcore.tools/6.0.10",
705 | "hasTools": true,
706 | "files": [
707 | ".nupkg.metadata",
708 | ".signature.p7s",
709 | "Icon.png",
710 | "lib/net6.0/_._",
711 | "microsoft.entityframeworkcore.tools.6.0.10.nupkg.sha512",
712 | "microsoft.entityframeworkcore.tools.nuspec",
713 | "tools/EntityFrameworkCore.PS2.psd1",
714 | "tools/EntityFrameworkCore.PS2.psm1",
715 | "tools/EntityFrameworkCore.psd1",
716 | "tools/EntityFrameworkCore.psm1",
717 | "tools/about_EntityFrameworkCore.help.txt",
718 | "tools/init.ps1",
719 | "tools/net461/any/ef.exe",
720 | "tools/net461/win-arm64/ef.exe",
721 | "tools/net461/win-x86/ef.exe",
722 | "tools/netcoreapp2.0/any/ef.dll",
723 | "tools/netcoreapp2.0/any/ef.runtimeconfig.json"
724 | ]
725 | },
726 | "Microsoft.Extensions.Caching.Abstractions/6.0.0": {
727 | "sha512": "bcz5sSFJbganH0+YrfvIjJDIcKNW7TL07C4d1eTmXy/wOt52iz4LVogJb6pazs7W0+74j0YpXFErvp++Aq5Bsw==",
728 | "type": "package",
729 | "path": "microsoft.extensions.caching.abstractions/6.0.0",
730 | "files": [
731 | ".nupkg.metadata",
732 | ".signature.p7s",
733 | "Icon.png",
734 | "LICENSE.TXT",
735 | "THIRD-PARTY-NOTICES.TXT",
736 | "lib/net461/Microsoft.Extensions.Caching.Abstractions.dll",
737 | "lib/net461/Microsoft.Extensions.Caching.Abstractions.xml",
738 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll",
739 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml",
740 | "microsoft.extensions.caching.abstractions.6.0.0.nupkg.sha512",
741 | "microsoft.extensions.caching.abstractions.nuspec",
742 | "useSharedDesignerContext.txt"
743 | ]
744 | },
745 | "Microsoft.Extensions.Caching.Memory/6.0.1": {
746 | "sha512": "B4y+Cev05eMcjf1na0v9gza6GUtahXbtY1JCypIgx3B4Ea/KAgsWyXEmW4q6zMbmTMtKzmPVk09rvFJirvMwTg==",
747 | "type": "package",
748 | "path": "microsoft.extensions.caching.memory/6.0.1",
749 | "files": [
750 | ".nupkg.metadata",
751 | ".signature.p7s",
752 | "Icon.png",
753 | "LICENSE.TXT",
754 | "THIRD-PARTY-NOTICES.TXT",
755 | "lib/net461/Microsoft.Extensions.Caching.Memory.dll",
756 | "lib/net461/Microsoft.Extensions.Caching.Memory.xml",
757 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll",
758 | "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml",
759 | "microsoft.extensions.caching.memory.6.0.1.nupkg.sha512",
760 | "microsoft.extensions.caching.memory.nuspec",
761 | "useSharedDesignerContext.txt"
762 | ]
763 | },
764 | "Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
765 | "sha512": "qWzV9o+ZRWq+pGm+1dF+R7qTgTYoXvbyowRoBxQJGfqTpqDun2eteerjRQhq5PQ/14S+lqto3Ft4gYaRyl4rdQ==",
766 | "type": "package",
767 | "path": "microsoft.extensions.configuration.abstractions/6.0.0",
768 | "files": [
769 | ".nupkg.metadata",
770 | ".signature.p7s",
771 | "Icon.png",
772 | "LICENSE.TXT",
773 | "THIRD-PARTY-NOTICES.TXT",
774 | "lib/net461/Microsoft.Extensions.Configuration.Abstractions.dll",
775 | "lib/net461/Microsoft.Extensions.Configuration.Abstractions.xml",
776 | "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll",
777 | "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml",
778 | "microsoft.extensions.configuration.abstractions.6.0.0.nupkg.sha512",
779 | "microsoft.extensions.configuration.abstractions.nuspec",
780 | "useSharedDesignerContext.txt"
781 | ]
782 | },
783 | "Microsoft.Extensions.DependencyInjection/6.0.1": {
784 | "sha512": "vWXPg3HJQIpZkENn1KWq8SfbqVujVD7S7vIAyFXXqK5xkf1Vho+vG0bLBCHxU36lD1cLLtmGpfYf0B3MYFi9tQ==",
785 | "type": "package",
786 | "path": "microsoft.extensions.dependencyinjection/6.0.1",
787 | "files": [
788 | ".nupkg.metadata",
789 | ".signature.p7s",
790 | "Icon.png",
791 | "LICENSE.TXT",
792 | "THIRD-PARTY-NOTICES.TXT",
793 | "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets",
794 | "buildTransitive/netcoreapp3.1/_._",
795 | "lib/net461/Microsoft.Extensions.DependencyInjection.dll",
796 | "lib/net461/Microsoft.Extensions.DependencyInjection.xml",
797 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll",
798 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml",
799 | "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll",
800 | "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml",
801 | "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll",
802 | "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml",
803 | "microsoft.extensions.dependencyinjection.6.0.1.nupkg.sha512",
804 | "microsoft.extensions.dependencyinjection.nuspec",
805 | "useSharedDesignerContext.txt"
806 | ]
807 | },
808 | "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {
809 | "sha512": "xlzi2IYREJH3/m6+lUrQlujzX8wDitm4QGnUu6kUXTQAWPuZY8i+ticFJbzfqaetLA6KR/rO6Ew/HuYD+bxifg==",
810 | "type": "package",
811 | "path": "microsoft.extensions.dependencyinjection.abstractions/6.0.0",
812 | "files": [
813 | ".nupkg.metadata",
814 | ".signature.p7s",
815 | "Icon.png",
816 | "LICENSE.TXT",
817 | "THIRD-PARTY-NOTICES.TXT",
818 | "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets",
819 | "buildTransitive/netcoreapp3.1/_._",
820 | "lib/net461/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
821 | "lib/net461/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
822 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
823 | "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
824 | "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
825 | "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
826 | "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
827 | "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
828 | "microsoft.extensions.dependencyinjection.abstractions.6.0.0.nupkg.sha512",
829 | "microsoft.extensions.dependencyinjection.abstractions.nuspec",
830 | "useSharedDesignerContext.txt"
831 | ]
832 | },
833 | "Microsoft.Extensions.DependencyModel/6.0.0": {
834 | "sha512": "TD5QHg98m3+QhgEV1YVoNMl5KtBw/4rjfxLHO0e/YV9bPUBDKntApP4xdrVtGgCeQZHVfC2EXIGsdpRNrr87Pg==",
835 | "type": "package",
836 | "path": "microsoft.extensions.dependencymodel/6.0.0",
837 | "files": [
838 | ".nupkg.metadata",
839 | ".signature.p7s",
840 | "Icon.png",
841 | "LICENSE.TXT",
842 | "THIRD-PARTY-NOTICES.TXT",
843 | "lib/net461/Microsoft.Extensions.DependencyModel.dll",
844 | "lib/net461/Microsoft.Extensions.DependencyModel.xml",
845 | "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll",
846 | "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml",
847 | "microsoft.extensions.dependencymodel.6.0.0.nupkg.sha512",
848 | "microsoft.extensions.dependencymodel.nuspec",
849 | "useSharedDesignerContext.txt"
850 | ]
851 | },
852 | "Microsoft.Extensions.Logging/6.0.0": {
853 | "sha512": "eIbyj40QDg1NDz0HBW0S5f3wrLVnKWnDJ/JtZ+yJDFnDj90VoPuoPmFkeaXrtu+0cKm5GRAwoDf+dBWXK0TUdg==",
854 | "type": "package",
855 | "path": "microsoft.extensions.logging/6.0.0",
856 | "files": [
857 | ".nupkg.metadata",
858 | ".signature.p7s",
859 | "Icon.png",
860 | "LICENSE.TXT",
861 | "THIRD-PARTY-NOTICES.TXT",
862 | "lib/net461/Microsoft.Extensions.Logging.dll",
863 | "lib/net461/Microsoft.Extensions.Logging.xml",
864 | "lib/netstandard2.0/Microsoft.Extensions.Logging.dll",
865 | "lib/netstandard2.0/Microsoft.Extensions.Logging.xml",
866 | "lib/netstandard2.1/Microsoft.Extensions.Logging.dll",
867 | "lib/netstandard2.1/Microsoft.Extensions.Logging.xml",
868 | "microsoft.extensions.logging.6.0.0.nupkg.sha512",
869 | "microsoft.extensions.logging.nuspec",
870 | "useSharedDesignerContext.txt"
871 | ]
872 | },
873 | "Microsoft.Extensions.Logging.Abstractions/6.0.0": {
874 | "sha512": "/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
875 | "type": "package",
876 | "path": "microsoft.extensions.logging.abstractions/6.0.0",
877 | "files": [
878 | ".nupkg.metadata",
879 | ".signature.p7s",
880 | "Icon.png",
881 | "LICENSE.TXT",
882 | "THIRD-PARTY-NOTICES.TXT",
883 | "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
884 | "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
885 | "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
886 | "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
887 | "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
888 | "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
889 | "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
890 | "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
891 | "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
892 | "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
893 | "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
894 | "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
895 | "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
896 | "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
897 | "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
898 | "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
899 | "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
900 | "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
901 | "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
902 | "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
903 | "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
904 | "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
905 | "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
906 | "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
907 | "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
908 | "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
909 | "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
910 | "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
911 | "build/Microsoft.Extensions.Logging.Abstractions.targets",
912 | "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
913 | "buildTransitive/netcoreapp3.1/_._",
914 | "lib/net461/Microsoft.Extensions.Logging.Abstractions.dll",
915 | "lib/net461/Microsoft.Extensions.Logging.Abstractions.xml",
916 | "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll",
917 | "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml",
918 | "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
919 | "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
920 | "microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
921 | "microsoft.extensions.logging.abstractions.nuspec",
922 | "useSharedDesignerContext.txt"
923 | ]
924 | },
925 | "Microsoft.Extensions.Options/6.0.0": {
926 | "sha512": "dzXN0+V1AyjOe2xcJ86Qbo233KHuLEY0njf/P2Kw8SfJU+d45HNS2ctJdnEnrWbM9Ye2eFgaC5Mj9otRMU6IsQ==",
927 | "type": "package",
928 | "path": "microsoft.extensions.options/6.0.0",
929 | "files": [
930 | ".nupkg.metadata",
931 | ".signature.p7s",
932 | "Icon.png",
933 | "LICENSE.TXT",
934 | "THIRD-PARTY-NOTICES.TXT",
935 | "lib/net461/Microsoft.Extensions.Options.dll",
936 | "lib/net461/Microsoft.Extensions.Options.xml",
937 | "lib/netstandard2.0/Microsoft.Extensions.Options.dll",
938 | "lib/netstandard2.0/Microsoft.Extensions.Options.xml",
939 | "lib/netstandard2.1/Microsoft.Extensions.Options.dll",
940 | "lib/netstandard2.1/Microsoft.Extensions.Options.xml",
941 | "microsoft.extensions.options.6.0.0.nupkg.sha512",
942 | "microsoft.extensions.options.nuspec",
943 | "useSharedDesignerContext.txt"
944 | ]
945 | },
946 | "Microsoft.Extensions.Primitives/6.0.0": {
947 | "sha512": "9+PnzmQFfEFNR9J2aDTfJGGupShHjOuGw4VUv+JB044biSHrnmCIMD+mJHmb2H7YryrfBEXDurxQ47gJZdCKNQ==",
948 | "type": "package",
949 | "path": "microsoft.extensions.primitives/6.0.0",
950 | "files": [
951 | ".nupkg.metadata",
952 | ".signature.p7s",
953 | "Icon.png",
954 | "LICENSE.TXT",
955 | "THIRD-PARTY-NOTICES.TXT",
956 | "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets",
957 | "buildTransitive/netcoreapp3.1/_._",
958 | "lib/net461/Microsoft.Extensions.Primitives.dll",
959 | "lib/net461/Microsoft.Extensions.Primitives.xml",
960 | "lib/net6.0/Microsoft.Extensions.Primitives.dll",
961 | "lib/net6.0/Microsoft.Extensions.Primitives.xml",
962 | "lib/netcoreapp3.1/Microsoft.Extensions.Primitives.dll",
963 | "lib/netcoreapp3.1/Microsoft.Extensions.Primitives.xml",
964 | "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll",
965 | "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml",
966 | "microsoft.extensions.primitives.6.0.0.nupkg.sha512",
967 | "microsoft.extensions.primitives.nuspec",
968 | "useSharedDesignerContext.txt"
969 | ]
970 | },
971 | "SQLitePCLRaw.bundle_e_sqlite3/2.0.6": {
972 | "sha512": "zssYqiaucyGArZfg74rJuzK0ewgZiidsRVrZTmP7JLNvK806gXg6PGA46XzoJGpNPPA5uRcumwvVp6YTYxtQ5w==",
973 | "type": "package",
974 | "path": "sqlitepclraw.bundle_e_sqlite3/2.0.6",
975 | "files": [
976 | ".nupkg.metadata",
977 | ".signature.p7s",
978 | "lib/Xamarin.iOS10/SQLitePCLRaw.batteries_v2.dll",
979 | "lib/Xamarin.tvOS10/SQLitePCLRaw.batteries_v2.dll",
980 | "lib/net461/SQLitePCLRaw.batteries_v2.dll",
981 | "lib/netstandard2.0/SQLitePCLRaw.batteries_v2.dll",
982 | "sqlitepclraw.bundle_e_sqlite3.2.0.6.nupkg.sha512",
983 | "sqlitepclraw.bundle_e_sqlite3.nuspec"
984 | ]
985 | },
986 | "SQLitePCLRaw.core/2.0.6": {
987 | "sha512": "Vh8n0dTvwXkCGur2WqQTITvk4BUO8i8h9ucSx3wwuaej3s2S6ZC0R7vqCTf9TfS/I4QkXO6g3W2YQIRFkOcijA==",
988 | "type": "package",
989 | "path": "sqlitepclraw.core/2.0.6",
990 | "files": [
991 | ".nupkg.metadata",
992 | ".signature.p7s",
993 | "lib/netstandard2.0/SQLitePCLRaw.core.dll",
994 | "sqlitepclraw.core.2.0.6.nupkg.sha512",
995 | "sqlitepclraw.core.nuspec"
996 | ]
997 | },
998 | "SQLitePCLRaw.lib.e_sqlite3/2.0.6": {
999 | "sha512": "xlstskMKalKQl0H2uLNe0viBM6fvAGLWqKZUQ3twX5y1tSOZKe0+EbXopQKYdbjJytNGI6y5WSKjpI+kVr2Ckg==",
1000 | "type": "package",
1001 | "path": "sqlitepclraw.lib.e_sqlite3/2.0.6",
1002 | "files": [
1003 | ".nupkg.metadata",
1004 | ".signature.p7s",
1005 | "build/net461/SQLitePCLRaw.lib.e_sqlite3.targets",
1006 | "lib/net461/_._",
1007 | "lib/netstandard2.0/_._",
1008 | "runtimes/alpine-x64/native/libe_sqlite3.so",
1009 | "runtimes/linux-arm/native/libe_sqlite3.so",
1010 | "runtimes/linux-arm64/native/libe_sqlite3.so",
1011 | "runtimes/linux-armel/native/libe_sqlite3.so",
1012 | "runtimes/linux-mips64/native/libe_sqlite3.so",
1013 | "runtimes/linux-musl-x64/native/libe_sqlite3.so",
1014 | "runtimes/linux-s390x/native/libe_sqlite3.so",
1015 | "runtimes/linux-x64/native/libe_sqlite3.so",
1016 | "runtimes/linux-x86/native/libe_sqlite3.so",
1017 | "runtimes/osx-arm64/native/libe_sqlite3.dylib",
1018 | "runtimes/osx-x64/native/libe_sqlite3.dylib",
1019 | "runtimes/win-arm/native/e_sqlite3.dll",
1020 | "runtimes/win-arm64/native/e_sqlite3.dll",
1021 | "runtimes/win-x64/native/e_sqlite3.dll",
1022 | "runtimes/win-x86/native/e_sqlite3.dll",
1023 | "runtimes/win10-arm/nativeassets/uap10.0/e_sqlite3.dll",
1024 | "runtimes/win10-arm64/nativeassets/uap10.0/e_sqlite3.dll",
1025 | "runtimes/win10-x64/nativeassets/uap10.0/e_sqlite3.dll",
1026 | "runtimes/win10-x86/nativeassets/uap10.0/e_sqlite3.dll",
1027 | "sqlitepclraw.lib.e_sqlite3.2.0.6.nupkg.sha512",
1028 | "sqlitepclraw.lib.e_sqlite3.nuspec"
1029 | ]
1030 | },
1031 | "SQLitePCLRaw.provider.e_sqlite3/2.0.6": {
1032 | "sha512": "peXLJbhU+0clVBIPirihM1NoTBqw8ouBpcUsVMlcZ4k6fcL2hwgkctVB2Nt5VsbnOJcPspQL5xQK7QvLpxkMgg==",
1033 | "type": "package",
1034 | "path": "sqlitepclraw.provider.e_sqlite3/2.0.6",
1035 | "files": [
1036 | ".nupkg.metadata",
1037 | ".signature.p7s",
1038 | "lib/net5.0/SQLitePCLRaw.provider.e_sqlite3.dll",
1039 | "lib/netstandard2.0/SQLitePCLRaw.provider.e_sqlite3.dll",
1040 | "lib/uap10.0/SQLitePCLRaw.provider.e_sqlite3.dll",
1041 | "sqlitepclraw.provider.e_sqlite3.2.0.6.nupkg.sha512",
1042 | "sqlitepclraw.provider.e_sqlite3.nuspec"
1043 | ]
1044 | },
1045 | "System.Buffers/4.5.1": {
1046 | "sha512": "Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
1047 | "type": "package",
1048 | "path": "system.buffers/4.5.1",
1049 | "files": [
1050 | ".nupkg.metadata",
1051 | ".signature.p7s",
1052 | "LICENSE.TXT",
1053 | "THIRD-PARTY-NOTICES.TXT",
1054 | "lib/net461/System.Buffers.dll",
1055 | "lib/net461/System.Buffers.xml",
1056 | "lib/netcoreapp2.0/_._",
1057 | "lib/netstandard1.1/System.Buffers.dll",
1058 | "lib/netstandard1.1/System.Buffers.xml",
1059 | "lib/netstandard2.0/System.Buffers.dll",
1060 | "lib/netstandard2.0/System.Buffers.xml",
1061 | "lib/uap10.0.16299/_._",
1062 | "ref/net45/System.Buffers.dll",
1063 | "ref/net45/System.Buffers.xml",
1064 | "ref/netcoreapp2.0/_._",
1065 | "ref/netstandard1.1/System.Buffers.dll",
1066 | "ref/netstandard1.1/System.Buffers.xml",
1067 | "ref/netstandard2.0/System.Buffers.dll",
1068 | "ref/netstandard2.0/System.Buffers.xml",
1069 | "ref/uap10.0.16299/_._",
1070 | "system.buffers.4.5.1.nupkg.sha512",
1071 | "system.buffers.nuspec",
1072 | "useSharedDesignerContext.txt",
1073 | "version.txt"
1074 | ]
1075 | },
1076 | "System.Collections.Immutable/6.0.0": {
1077 | "sha512": "l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==",
1078 | "type": "package",
1079 | "path": "system.collections.immutable/6.0.0",
1080 | "files": [
1081 | ".nupkg.metadata",
1082 | ".signature.p7s",
1083 | "Icon.png",
1084 | "LICENSE.TXT",
1085 | "THIRD-PARTY-NOTICES.TXT",
1086 | "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets",
1087 | "buildTransitive/netcoreapp3.1/_._",
1088 | "lib/net461/System.Collections.Immutable.dll",
1089 | "lib/net461/System.Collections.Immutable.xml",
1090 | "lib/net6.0/System.Collections.Immutable.dll",
1091 | "lib/net6.0/System.Collections.Immutable.xml",
1092 | "lib/netstandard2.0/System.Collections.Immutable.dll",
1093 | "lib/netstandard2.0/System.Collections.Immutable.xml",
1094 | "system.collections.immutable.6.0.0.nupkg.sha512",
1095 | "system.collections.immutable.nuspec",
1096 | "useSharedDesignerContext.txt"
1097 | ]
1098 | },
1099 | "System.Diagnostics.DiagnosticSource/6.0.0": {
1100 | "sha512": "frQDfv0rl209cKm1lnwTgFPzNigy2EKk1BS3uAvHvlBVKe5cymGyHO+Sj+NLv5VF/AhHsqPIUUwya5oV4CHMUw==",
1101 | "type": "package",
1102 | "path": "system.diagnostics.diagnosticsource/6.0.0",
1103 | "files": [
1104 | ".nupkg.metadata",
1105 | ".signature.p7s",
1106 | "Icon.png",
1107 | "LICENSE.TXT",
1108 | "THIRD-PARTY-NOTICES.TXT",
1109 | "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets",
1110 | "buildTransitive/netcoreapp3.1/_._",
1111 | "lib/net461/System.Diagnostics.DiagnosticSource.dll",
1112 | "lib/net461/System.Diagnostics.DiagnosticSource.xml",
1113 | "lib/net5.0/System.Diagnostics.DiagnosticSource.dll",
1114 | "lib/net5.0/System.Diagnostics.DiagnosticSource.xml",
1115 | "lib/net6.0/System.Diagnostics.DiagnosticSource.dll",
1116 | "lib/net6.0/System.Diagnostics.DiagnosticSource.xml",
1117 | "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll",
1118 | "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml",
1119 | "system.diagnostics.diagnosticsource.6.0.0.nupkg.sha512",
1120 | "system.diagnostics.diagnosticsource.nuspec",
1121 | "useSharedDesignerContext.txt"
1122 | ]
1123 | },
1124 | "System.Memory/4.5.4": {
1125 | "sha512": "1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==",
1126 | "type": "package",
1127 | "path": "system.memory/4.5.4",
1128 | "files": [
1129 | ".nupkg.metadata",
1130 | ".signature.p7s",
1131 | "LICENSE.TXT",
1132 | "THIRD-PARTY-NOTICES.TXT",
1133 | "lib/net461/System.Memory.dll",
1134 | "lib/net461/System.Memory.xml",
1135 | "lib/netcoreapp2.1/_._",
1136 | "lib/netstandard1.1/System.Memory.dll",
1137 | "lib/netstandard1.1/System.Memory.xml",
1138 | "lib/netstandard2.0/System.Memory.dll",
1139 | "lib/netstandard2.0/System.Memory.xml",
1140 | "ref/netcoreapp2.1/_._",
1141 | "system.memory.4.5.4.nupkg.sha512",
1142 | "system.memory.nuspec",
1143 | "useSharedDesignerContext.txt",
1144 | "version.txt"
1145 | ]
1146 | },
1147 | "System.Runtime.CompilerServices.Unsafe/6.0.0": {
1148 | "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
1149 | "type": "package",
1150 | "path": "system.runtime.compilerservices.unsafe/6.0.0",
1151 | "files": [
1152 | ".nupkg.metadata",
1153 | ".signature.p7s",
1154 | "Icon.png",
1155 | "LICENSE.TXT",
1156 | "THIRD-PARTY-NOTICES.TXT",
1157 | "buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets",
1158 | "buildTransitive/netcoreapp3.1/_._",
1159 | "lib/net461/System.Runtime.CompilerServices.Unsafe.dll",
1160 | "lib/net461/System.Runtime.CompilerServices.Unsafe.xml",
1161 | "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll",
1162 | "lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml",
1163 | "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll",
1164 | "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml",
1165 | "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll",
1166 | "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml",
1167 | "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
1168 | "system.runtime.compilerservices.unsafe.nuspec",
1169 | "useSharedDesignerContext.txt"
1170 | ]
1171 | },
1172 | "System.Text.Encodings.Web/6.0.0": {
1173 | "sha512": "Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
1174 | "type": "package",
1175 | "path": "system.text.encodings.web/6.0.0",
1176 | "files": [
1177 | ".nupkg.metadata",
1178 | ".signature.p7s",
1179 | "Icon.png",
1180 | "LICENSE.TXT",
1181 | "THIRD-PARTY-NOTICES.TXT",
1182 | "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets",
1183 | "buildTransitive/netcoreapp3.1/_._",
1184 | "lib/net461/System.Text.Encodings.Web.dll",
1185 | "lib/net461/System.Text.Encodings.Web.xml",
1186 | "lib/net6.0/System.Text.Encodings.Web.dll",
1187 | "lib/net6.0/System.Text.Encodings.Web.xml",
1188 | "lib/netcoreapp3.1/System.Text.Encodings.Web.dll",
1189 | "lib/netcoreapp3.1/System.Text.Encodings.Web.xml",
1190 | "lib/netstandard2.0/System.Text.Encodings.Web.dll",
1191 | "lib/netstandard2.0/System.Text.Encodings.Web.xml",
1192 | "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll",
1193 | "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml",
1194 | "system.text.encodings.web.6.0.0.nupkg.sha512",
1195 | "system.text.encodings.web.nuspec",
1196 | "useSharedDesignerContext.txt"
1197 | ]
1198 | },
1199 | "System.Text.Json/6.0.0": {
1200 | "sha512": "zaJsHfESQvJ11vbXnNlkrR46IaMULk/gHxYsJphzSF+07kTjPHv+Oc14w6QEOfo3Q4hqLJgStUaYB9DBl0TmWg==",
1201 | "type": "package",
1202 | "path": "system.text.json/6.0.0",
1203 | "files": [
1204 | ".nupkg.metadata",
1205 | ".signature.p7s",
1206 | "Icon.png",
1207 | "LICENSE.TXT",
1208 | "THIRD-PARTY-NOTICES.TXT",
1209 | "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll",
1210 | "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll",
1211 | "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll",
1212 | "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll",
1213 | "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll",
1214 | "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll",
1215 | "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll",
1216 | "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll",
1217 | "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll",
1218 | "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll",
1219 | "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll",
1220 | "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll",
1221 | "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll",
1222 | "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll",
1223 | "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll",
1224 | "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll",
1225 | "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll",
1226 | "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll",
1227 | "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll",
1228 | "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll",
1229 | "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll",
1230 | "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll",
1231 | "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll",
1232 | "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll",
1233 | "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll",
1234 | "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll",
1235 | "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll",
1236 | "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll",
1237 | "build/System.Text.Json.targets",
1238 | "buildTransitive/netcoreapp2.0/System.Text.Json.targets",
1239 | "buildTransitive/netcoreapp3.1/_._",
1240 | "lib/net461/System.Text.Json.dll",
1241 | "lib/net461/System.Text.Json.xml",
1242 | "lib/net6.0/System.Text.Json.dll",
1243 | "lib/net6.0/System.Text.Json.xml",
1244 | "lib/netcoreapp3.1/System.Text.Json.dll",
1245 | "lib/netcoreapp3.1/System.Text.Json.xml",
1246 | "lib/netstandard2.0/System.Text.Json.dll",
1247 | "lib/netstandard2.0/System.Text.Json.xml",
1248 | "system.text.json.6.0.0.nupkg.sha512",
1249 | "system.text.json.nuspec",
1250 | "useSharedDesignerContext.txt"
1251 | ]
1252 | }
1253 | },
1254 | "projectFileDependencyGroups": {
1255 | "net6.0": [
1256 | "Microsoft.EntityFrameworkCore.Sqlite >= 6.0.10",
1257 | "Microsoft.EntityFrameworkCore.Tools >= 6.0.10"
1258 | ]
1259 | },
1260 | "packageFolders": {
1261 | "C:\\Users\\Gandeloft\\.nuget\\packages\\": {}
1262 | },
1263 | "project": {
1264 | "version": "1.0.0",
1265 | "restore": {
1266 | "projectUniqueName": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj",
1267 | "projectName": "KemonoDownloaderDataModels",
1268 | "projectPath": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj",
1269 | "packagesPath": "C:\\Users\\Gandeloft\\.nuget\\packages\\",
1270 | "outputPath": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\obj\\",
1271 | "projectStyle": "PackageReference",
1272 | "configFilePaths": [
1273 | "C:\\Users\\Gandeloft\\AppData\\Roaming\\NuGet\\NuGet.Config",
1274 | "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
1275 | ],
1276 | "originalTargetFrameworks": [
1277 | "net6.0"
1278 | ],
1279 | "sources": {
1280 | "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
1281 | "http://api.nuget.org/v3/index.json": {}
1282 | },
1283 | "frameworks": {
1284 | "net6.0": {
1285 | "targetAlias": "net6.0",
1286 | "projectReferences": {}
1287 | }
1288 | },
1289 | "warningProperties": {
1290 | "warnAsError": [
1291 | "NU1605"
1292 | ]
1293 | }
1294 | },
1295 | "frameworks": {
1296 | "net6.0": {
1297 | "targetAlias": "net6.0",
1298 | "dependencies": {
1299 | "Microsoft.EntityFrameworkCore.Sqlite": {
1300 | "target": "Package",
1301 | "version": "[6.0.10, )"
1302 | },
1303 | "Microsoft.EntityFrameworkCore.Tools": {
1304 | "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
1305 | "suppressParent": "All",
1306 | "target": "Package",
1307 | "version": "[6.0.10, )"
1308 | }
1309 | },
1310 | "imports": [
1311 | "net461",
1312 | "net462",
1313 | "net47",
1314 | "net471",
1315 | "net472",
1316 | "net48",
1317 | "net481"
1318 | ],
1319 | "assetTargetFallback": true,
1320 | "warn": true,
1321 | "frameworkReferences": {
1322 | "Microsoft.NETCore.App": {
1323 | "privateAssets": "all"
1324 | }
1325 | },
1326 | "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.400\\RuntimeIdentifierGraph.json"
1327 | }
1328 | }
1329 | },
1330 | "logs": [
1331 | {
1332 | "code": "NU1803",
1333 | "level": "Warning",
1334 | "warningLevel": 1,
1335 | "message": "You are running the 'restore' operation with an 'HTTP' source, 'http://api.nuget.org/v3/index.json'. Non-HTTPS access will be removed in a future version. Consider migrating to an 'HTTPS' source."
1336 | }
1337 | ]
1338 | }
--------------------------------------------------------------------------------
/KemonoDownloaderDataModels/obj/project.nuget.cache:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2,
3 | "dgSpecHash": "FtgxdFrbVUQPCdr9O1HqeLvGQDZ9oYdmy0renPimYO5Q9aWE4qKtLfMLaOJyX+Wv/o/O/18qaQ0lgnfWk2AJTw==",
4 | "success": true,
5 | "projectFilePath": "F:\\KemonoDownloader\\KemonoDownloaderDataModels\\KemonoDownloaderDataModels.csproj",
6 | "expectedPackageFiles": [
7 | "C:\\Users\\Gandeloft\\.nuget\\packages\\humanizer.core\\2.8.26\\humanizer.core.2.8.26.nupkg.sha512",
8 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.data.sqlite.core\\6.0.10\\microsoft.data.sqlite.core.6.0.10.nupkg.sha512",
9 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore\\6.0.10\\microsoft.entityframeworkcore.6.0.10.nupkg.sha512",
10 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\6.0.10\\microsoft.entityframeworkcore.abstractions.6.0.10.nupkg.sha512",
11 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\6.0.10\\microsoft.entityframeworkcore.analyzers.6.0.10.nupkg.sha512",
12 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.design\\6.0.10\\microsoft.entityframeworkcore.design.6.0.10.nupkg.sha512",
13 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\6.0.10\\microsoft.entityframeworkcore.relational.6.0.10.nupkg.sha512",
14 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.sqlite\\6.0.10\\microsoft.entityframeworkcore.sqlite.6.0.10.nupkg.sha512",
15 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.sqlite.core\\6.0.10\\microsoft.entityframeworkcore.sqlite.core.6.0.10.nupkg.sha512",
16 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.entityframeworkcore.tools\\6.0.10\\microsoft.entityframeworkcore.tools.6.0.10.nupkg.sha512",
17 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\6.0.0\\microsoft.extensions.caching.abstractions.6.0.0.nupkg.sha512",
18 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.caching.memory\\6.0.1\\microsoft.extensions.caching.memory.6.0.1.nupkg.sha512",
19 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\6.0.0\\microsoft.extensions.configuration.abstractions.6.0.0.nupkg.sha512",
20 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\6.0.1\\microsoft.extensions.dependencyinjection.6.0.1.nupkg.sha512",
21 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\6.0.0\\microsoft.extensions.dependencyinjection.abstractions.6.0.0.nupkg.sha512",
22 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.dependencymodel\\6.0.0\\microsoft.extensions.dependencymodel.6.0.0.nupkg.sha512",
23 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.logging\\6.0.0\\microsoft.extensions.logging.6.0.0.nupkg.sha512",
24 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\6.0.0\\microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
25 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.options\\6.0.0\\microsoft.extensions.options.6.0.0.nupkg.sha512",
26 | "C:\\Users\\Gandeloft\\.nuget\\packages\\microsoft.extensions.primitives\\6.0.0\\microsoft.extensions.primitives.6.0.0.nupkg.sha512",
27 | "C:\\Users\\Gandeloft\\.nuget\\packages\\sqlitepclraw.bundle_e_sqlite3\\2.0.6\\sqlitepclraw.bundle_e_sqlite3.2.0.6.nupkg.sha512",
28 | "C:\\Users\\Gandeloft\\.nuget\\packages\\sqlitepclraw.core\\2.0.6\\sqlitepclraw.core.2.0.6.nupkg.sha512",
29 | "C:\\Users\\Gandeloft\\.nuget\\packages\\sqlitepclraw.lib.e_sqlite3\\2.0.6\\sqlitepclraw.lib.e_sqlite3.2.0.6.nupkg.sha512",
30 | "C:\\Users\\Gandeloft\\.nuget\\packages\\sqlitepclraw.provider.e_sqlite3\\2.0.6\\sqlitepclraw.provider.e_sqlite3.2.0.6.nupkg.sha512",
31 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.buffers\\4.5.1\\system.buffers.4.5.1.nupkg.sha512",
32 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.collections.immutable\\6.0.0\\system.collections.immutable.6.0.0.nupkg.sha512",
33 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.diagnostics.diagnosticsource\\6.0.0\\system.diagnostics.diagnosticsource.6.0.0.nupkg.sha512",
34 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.memory\\4.5.4\\system.memory.4.5.4.nupkg.sha512",
35 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
36 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.text.encodings.web\\6.0.0\\system.text.encodings.web.6.0.0.nupkg.sha512",
37 | "C:\\Users\\Gandeloft\\.nuget\\packages\\system.text.json\\6.0.0\\system.text.json.6.0.0.nupkg.sha512"
38 | ],
39 | "logs": [
40 | {
41 | "code": "NU1803",
42 | "level": "Warning",
43 | "warningLevel": 1,
44 | "message": "You are running the 'restore' operation with an 'HTTP' source, 'http://api.nuget.org/v3/index.json'. Non-HTTPS access will be removed in a future version. Consider migrating to an 'HTTPS' source."
45 | }
46 | ]
47 | }
--------------------------------------------------------------------------------
/artistUrls.txt:
--------------------------------------------------------------------------------
1 | https://kemono.party/fanbox/user/23198118 https://kemono.party/fanbox/user/60356242 https://kemono.party/patreon/user/11398277 https://kemono.party/fanbox/user/4698160 https://kemono.party/fanbox/user/2262943 https://kemono.party/fanbox/user/29362997 https://kemono.party/fanbox/user/1618895 https://kemono.party/fanbox/user/1992358 https://kemono.party/fanbox/user/32465500 https://kemono.party/fanbox/user/5628444 https://kemono.party/fanbox/user/59575784 https://kemono.party/fanbox/user/8899963 https://kemono.party/fanbox/user/2262943 https://kemono.party/fanbox/user/3199929 https://kemono.party/fanbox/user/34904 https://kemono.party/fanbox/user/74761925 https://kemono.party/fanbox/user/6191306 https://kemono.party/fanbox/user/31559095 https://kemono.party/fanbox/user/16629961 https://kemono.party/fanbox/user/1545742 https://kemono.party/fanbox/user/117753 https://kemono.party/fanbox/user/193635 https://kemono.party/fanbox/user/884506 https://kemono.party/patreon/user/5042442 https://kemono.party/fanbox/user/62546282 https://kemono.party/fanbox/user/2468295 https://kemono.party/patreon/user/37324136 https://kemono.party/fanbox/user/24164271 https://kemono.party/fanbox/user/44968193 https://kemono.party/fanbox/user/2254862 https://kemono.party/fanbox/user/1951517 https://kemono.party/fanbox/user/80553046 https://kemono.party/fanbox/user/17332140 https://kemono.party/fanbox/user/11586896 https://kemono.party/fanbox/user/13494047 https://kemono.party/fanbox/user/10951069 https://kemono.party/fanbox/user/59470435 https://kemono.party/fanbox/user/8252709 https://kemono.party/fanbox/user/62546282 https://kemono.party/fanbox/user/32465500 https://kemono.party/fanbox/user/6570768 https://kemono.party/fanbox/user/5818586 https://kemono.party/fantia/user/79162 https://kemono.party/fanbox/user/11229342 https://kemono.party/fanbox/user/2848117 https://kemono.party/fanbox/user/7225148 https://kemono.party/patreon/user/33095951 https://kemono.party/patreon/user/8432484 https://kemono.party/fanbox/user/95525 https://kemono.party/fanbox/user/1479742 https://kemono.party/fanbox/user/28724783 https://kemono.party/fanbox/user/26291244 https://kemono.party/fanbox/user/26291244 https://kemono.party/fanbox/user/35322125 https://kemono.party/fanbox/user/36175 https://kemono.party/fanbox/user/16396506 https://kemono.party/fanbox/user/4537818 https://kemono.party/fanbox/user/34673258 https://kemono.party/fanbox/user/9309600 https://kemono.party/patreon/user/16112298 https://kemono.party/fanbox/user/2744600 https://kemono.party/patreon/user/2394360 https://kemono.party/fanbox/user/3000591 https://kemono.party/fanbox/user/22750097 https://kemono.party/fanbox/user/3630778 https://kemono.party/fanbox/user/9480665 https://kemono.party/fanbox/user/6021189 https://kemono.party/fanbox/user/5309852 https://kemono.party/fanbox/user/74761925 https://kemono.party/patreon/user/56379528 https://kemono.party/gumroad/user/1341324150254 https://kemono.party/fanbox/user/6214 https://kemono.party/fanbox/user/6214 https://kemono.party/gumroad/user/1135809427369 https://kemono.party/fantia/user/2820 https://kemono.party/fanbox/user/440400 https://kemono.party/fanbox/user/61008905 https://kemono.party/fanbox/user/30273335 https://kemono.party/fanbox/user/10559523 https://kemono.party/fanbox/user/11365815 https://kemono.party/fanbox/user/4935 https://kemono.party/fanbox/user/5261554 https://kemono.party/patreon/user/6171404 https://kemono.party/fanbox/user/177560 https://kemono.party/fanbox/user/27106680 https://kemono.party/fanbox/user/23039427 https://kemono.party/fanbox/user/43455730 https://kemono.party/fanbox/user/64084190 https://kemono.party/fanbox/user/72927321 https://kemono.party/fanbox/user/50815444 https://kemono.party/fanbox/user/4977498 https://kemono.party/fanbox/user/7225148 https://kemono.party/fanbox/user/5261554 https://kemono.party/fanbox/user/78762602 https://kemono.party/patreon/user/15873007 https://kemono.party/patreon/user/881792 https://kemono.party/fanbox/user/8821927 https://kemono.party/fanbox/user/1284629 https://kemono.party/fanbox/user/71407 https://kemono.party/fanbox/user/2681650 https://kemono.party/fanbox/user/4234383 https://kemono.party/fanbox/user/17848 https://kemono.party/fanbox/user/4994 https://kemono.party/fanbox/user/23972229 https://kemono.party/fanbox/user/81970 https://kemono.party/fanbox/user/15914334 https://kemono.party/fanbox/user/29610865 https://kemono.party/fanbox/user/7342308 https://kemono.party/fanbox/user/36206 https://kemono.party/fanbox/user/59375709 https://kemono.party/fanbox/user/10706782 https://kemono.party/fanbox/user/37625681 https://kemono.party/fanbox/user/35145272 https://kemono.party/fanbox/user/49494721 https://kemono.party/fanbox/user/74824024 https://kemono.party/fanbox/user/569672 https://kemono.party/fanbox/user/63183178 https://kemono.party/fanbox/user/2527282 https://kemono.party/fanbox/user/64048 https://kemono.party/fanbox/user/14857335 https://kemono.party/fanbox/user/57851734 https://kemono.party/fanbox/user/4557 https://kemono.party/fanbox/user/36206 https://kemono.party/fanbox/user/51251559 https://kemono.party/fanbox/user/60959119 https://kemono.party/fanbox/user/31934781 https://kemono.party/patreon/user/45409739
--------------------------------------------------------------------------------