diff --git a/ZuneImpl/ZuneImpl.csproj b/ZuneImpl/ZuneImpl.csproj
index 2aa6a65..4fdebbc 100644
--- a/ZuneImpl/ZuneImpl.csproj
+++ b/ZuneImpl/ZuneImpl.csproj
@@ -33,8 +33,7 @@
-
-
+
diff --git a/ZuneShell/Microsoft/Zune/Shell/ZuneApplication.cs b/ZuneShell/Microsoft/Zune/Shell/ZuneApplication.cs
index 9a51c78..6eeb07c 100644
--- a/ZuneShell/Microsoft/Zune/Shell/ZuneApplication.cs
+++ b/ZuneShell/Microsoft/Zune/Shell/ZuneApplication.cs
@@ -28,7 +28,7 @@ using System.Linq;
#if OPENZUNE
using Microsoft.Zune.Playback;
-using OwlCore.Events;
+using OwlCore.ComponentModel;
using StrixMusic.Sdk.AdapterModels;
using StrixMusic.Sdk.AppModels;
using StrixMusic.Sdk.CoreModels;
@@ -161,22 +161,14 @@ namespace Microsoft.Zune.Shell
CultureHelper.CheckValidRegionAndLanguage();
#if OPENZUNE
- string id = Guid.NewGuid().ToString();
+ DirectoryInfo cacheFolderPath = new(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), @"Microsoft\Zune\OpenZune\LocalCoreCache"));
+ cacheFolderPath.Create();
+ OwlCore.Storage.SystemIO.SystemFolder cacheFolder = new(cacheFolderPath);
- var fileService = new OwlCore.AbstractStorage.Win32FileSystemService(@"D:\Music\Zune\Test");
- OwlCore.AbstractStorage.SystemIOFolderData settingsFolder =
- new(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), @"Microsoft\Zune\OpenZune"));
- settingsFolder.EnsureExists().Wait();
- StrixMusic.Cores.LocalFiles.Settings.LocalFilesCoreSettings settings = new(settingsFolder)
+ OwlCore.Storage.SystemIO.SystemFolder musicFolder = new(@"D:\Music\Zune\Test");
+ var localCore = new StrixMusic.Cores.Storage.StorageCore(musicFolder, cacheFolder, "Local Test")
{
- InitWithEmptyMetadataRepos = true,
- ScanWithTagLib = true,
- };
-
- var localCore = new StrixMusic.Cores.LocalFiles.LocalFilesCore(
- id, settings, fileService, null, null)
- {
- ScannerWaitBehavior = StrixMusic.Cores.Files.ScannerWaitBehavior.AlwaysWait
+ ScannerWaitBehavior = StrixMusic.Cores.Storage.ScannerWaitBehavior.AlwaysWait,
};
var prefs = new MergedCollectionConfig
diff --git a/ZuneShell/StrixMusic/AbstractStorage/FileDataProperties.cs b/ZuneShell/StrixMusic/AbstractStorage/FileDataProperties.cs
deleted file mode 100644
index 3fdff17..0000000
--- a/ZuneShell/StrixMusic/AbstractStorage/FileDataProperties.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-#if OPENZUNE
-
-using System;
-using System.IO;
-using System.Linq;
-using System.Threading.Tasks;
-
-namespace OwlCore.AbstractStorage
-{
- ///
- public class FileDataProperties : IFileDataProperties
- {
- private readonly FileInfo _file;
-
- ///
- /// Initializes a new instance of the class.
- ///
- /// The file to get properties from.
- public FileDataProperties(FileInfo file)
- {
- _file = file;
- }
-
- ///
- public async Task GetMusicPropertiesAsync()
- {
- throw new NotImplementedException();
- }
- }
-}
-
-#endif
\ No newline at end of file
diff --git a/ZuneShell/StrixMusic/AbstractStorage/NewtonsoftStreamSerializer.cs b/ZuneShell/StrixMusic/AbstractStorage/NewtonsoftStreamSerializer.cs
deleted file mode 100644
index 3a7f794..0000000
--- a/ZuneShell/StrixMusic/AbstractStorage/NewtonsoftStreamSerializer.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-#if OPENZUNE
-
-// Copyright (c) Arlo Godfrey. All Rights Reserved.
-// Licensed under the GNU Lesser General Public License, Version 3.0 with additional terms.
-// See the LICENSE, LICENSE.LESSER and LICENSE.ADDITIONAL files in the project root for more information.
-
-using System;
-using System.IO;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using Newtonsoft.Json;
-using OwlCore.Extensions;
-
-namespace OwlCore.Services
-{
- ///
- /// An and implementation for serializing and deserializing streams using System.Text.Json.
- ///
- public class NewtonsoftStreamSerializer : IAsyncSerializer, ISerializer
- {
- ///
- /// A singleton instance for .
- ///
- public static NewtonsoftStreamSerializer Singleton { get; } = new();
-
- ///
- public Task SerializeAsync(T data, CancellationToken? cancellationToken = null) => Task.Run(() => Serialize(data), cancellationToken ?? CancellationToken.None);
-
- ///
- public Task SerializeAsync(Type inputType, object data, CancellationToken? cancellationToken = null) => Task.Run(() => Serialize(inputType, data), cancellationToken ?? CancellationToken.None);
-
- ///
- public Task DeserializeAsync(Stream serialized, CancellationToken? cancellationToken = null) => Task.Run(() => Deserialize(serialized), cancellationToken ?? CancellationToken.None);
-
- ///
- public Task
-
-
-
-
+
+
+
-
-
-
+
+
-
+
v3.5
@@ -66,8 +66,13 @@
-
-
+
+
+ ..\libs\nuget\StrixMusic.Cores.Storage\StrixMusic.Cores.Storage.dll
+
+
+ ..\libs\nuget\OwlCore.Storage.OneDrive\OwlCore.Storage.OneDrive.dll
+
diff --git a/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.dll b/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.dll
new file mode 100644
index 0000000..479fdaf
Binary files /dev/null and b/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.dll differ
diff --git a/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.xml b/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.xml
new file mode 100644
index 0000000..2c3c333
--- /dev/null
+++ b/libs/nuget/OwlCore.Storage.OneDrive/OwlCore.Storage.OneDrive.xml
@@ -0,0 +1,68 @@
+
+
+
+ OwlCore.Storage.OneDrive
+
+
+
+
+ A file implementation that interacts with a file in OneDrive.
+
+
+
+
+ Creates a new instance of .
+
+
+
+
+ The graph item that was provided as the backing implementation for this file.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A folder implementation that interacts with a folder in OneDrive.
+
+
+
+
+ Creates a new instance of .
+
+
+
+
+
+
+
+
+
+
+ The graph item that was provided as the backing implementation for this file.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.deps.json b/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.deps.json
new file mode 100644
index 0000000..4c7311b
--- /dev/null
+++ b/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.deps.json
@@ -0,0 +1,722 @@
+{
+ "runtimeTarget": {
+ "name": ".NETStandard,Version=v2.0/",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETStandard,Version=v2.0": {},
+ ".NETStandard,Version=v2.0/": {
+ "StrixMusic.Cores.Storage/1.0.0": {
+ "dependencies": {
+ "MessagePack": "2.5.108",
+ "NETStandard.Library": "2.0.3",
+ "OwlCore": "0.2.1",
+ "StrixMusic.Sdk": "0.1.0-alpha",
+ "StyleCop.Analyzers": "1.1.118",
+ "System.Text.Json": "7.0.2"
+ },
+ "runtime": {
+ "StrixMusic.Cores.Storage.dll": {}
+ }
+ },
+ "CommunityToolkit.Common/8.1.0": {
+ "runtime": {
+ "lib/netstandard2.0/CommunityToolkit.Common.dll": {
+ "assemblyVersion": "8.1.0.0",
+ "fileVersion": "8.1.0.1"
+ }
+ }
+ },
+ "CommunityToolkit.Diagnostics/8.1.0": {
+ "dependencies": {
+ "System.Memory": "4.5.5"
+ },
+ "runtime": {
+ "lib/netstandard2.0/CommunityToolkit.Diagnostics.dll": {
+ "assemblyVersion": "8.1.0.0",
+ "fileVersion": "8.1.0.1"
+ }
+ }
+ },
+ "CommunityToolkit.Mvvm/8.1.0": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "System.ComponentModel.Annotations": "5.0.0",
+ "System.Memory": "4.5.5",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/CommunityToolkit.Mvvm.dll": {
+ "assemblyVersion": "8.1.0.0",
+ "fileVersion": "8.1.0.1"
+ }
+ }
+ },
+ "JetBrains.Annotations/2022.3.1": {
+ "runtime": {
+ "lib/netstandard2.0/JetBrains.Annotations.dll": {
+ "assemblyVersion": "4242.42.42.42",
+ "fileVersion": "2022.3.1.0"
+ }
+ }
+ },
+ "MessagePack/2.5.108": {
+ "dependencies": {
+ "MessagePack.Annotations": "2.5.108",
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "Microsoft.NET.StringTools": "17.4.0",
+ "System.Collections.Immutable": "6.0.0",
+ "System.Reflection.Emit": "4.7.0",
+ "System.Reflection.Emit.Lightweight": "4.7.0",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0",
+ "System.Threading.Tasks.Extensions": "4.5.4"
+ },
+ "runtime": {
+ "lib/netstandard2.0/MessagePack.dll": {
+ "assemblyVersion": "2.5.0.0",
+ "fileVersion": "2.5.108.51978"
+ }
+ }
+ },
+ "MessagePack.Annotations/2.5.108": {
+ "runtime": {
+ "lib/netstandard2.0/MessagePack.Annotations.dll": {
+ "assemblyVersion": "2.5.0.0",
+ "fileVersion": "2.5.108.51978"
+ }
+ }
+ },
+ "Microsoft.Bcl.AsyncInterfaces/7.0.0": {
+ "dependencies": {
+ "System.Threading.Tasks.Extensions": "4.5.4"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.22.51805"
+ }
+ }
+ },
+ "Microsoft.CSharp/4.7.0": {
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.CSharp.dll": {
+ "assemblyVersion": "4.0.5.0",
+ "fileVersion": "4.700.19.56404"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/7.0.0": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
+ "System.Threading.Tasks.Extensions": "4.5.4"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.22.51805"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/7.0.0": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "System.Threading.Tasks.Extensions": "4.5.4"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.22.51805"
+ }
+ }
+ },
+ "Microsoft.Identity.Client/4.53.0": {
+ "dependencies": {
+ "Microsoft.IdentityModel.Abstractions": "6.22.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.Identity.Client.dll": {
+ "assemblyVersion": "4.53.0.0",
+ "fileVersion": "4.53.0.0"
+ }
+ }
+ },
+ "Microsoft.IdentityModel.Abstractions/6.22.0": {
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll": {
+ "assemblyVersion": "6.22.0.0",
+ "fileVersion": "6.22.0.30727"
+ }
+ }
+ },
+ "Microsoft.NET.StringTools/17.4.0": {
+ "dependencies": {
+ "System.Memory": "4.5.5",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/Microsoft.NET.StringTools.dll": {
+ "assemblyVersion": "1.0.0.0",
+ "fileVersion": "17.4.0.51802"
+ }
+ }
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {},
+ "NETStandard.Library/2.0.3": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.1.0"
+ }
+ },
+ "Newtonsoft.Json/13.0.3": {
+ "runtime": {
+ "lib/netstandard2.0/Newtonsoft.Json.dll": {
+ "assemblyVersion": "13.0.0.0",
+ "fileVersion": "13.0.3.27908"
+ }
+ }
+ },
+ "OwlCore/0.2.1": {
+ "dependencies": {
+ "CommunityToolkit.Common": "8.1.0",
+ "CommunityToolkit.Diagnostics": "8.1.0",
+ "CommunityToolkit.Mvvm": "8.1.0",
+ "Microsoft.CSharp": "4.7.0",
+ "Microsoft.Extensions.DependencyInjection": "7.0.0",
+ "Newtonsoft.Json": "13.0.3",
+ "OwlCore.ComponentModel": "0.3.0",
+ "OwlCore.Extensions": "0.5.0",
+ "OwlCore.Storage": "0.8.2",
+ "System.Text.Json": "7.0.2",
+ "System.Threading.Tasks.Dataflow": "7.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/OwlCore.dll": {
+ "assemblyVersion": "0.2.1.0",
+ "fileVersion": "0.2.1.0"
+ }
+ }
+ },
+ "OwlCore.ComponentModel/0.3.0": {
+ "dependencies": {
+ "CommunityToolkit.Diagnostics": "8.1.0",
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "OwlCore.Storage": "0.8.2",
+ "System.Linq.Async": "6.0.1"
+ },
+ "runtime": {
+ "lib/netstandard2.0/OwlCore.ComponentModel.dll": {
+ "assemblyVersion": "0.3.0.0",
+ "fileVersion": "0.3.0.0"
+ }
+ }
+ },
+ "OwlCore.Extensions/0.5.0": {
+ "dependencies": {
+ "CommunityToolkit.Diagnostics": "8.1.0",
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "OwlCore.ComponentModel": "0.3.0",
+ "System.Linq.Async": "6.0.1"
+ },
+ "runtime": {
+ "lib/netstandard2.0/OwlCore.Extensions.dll": {
+ "assemblyVersion": "0.5.0.0",
+ "fileVersion": "0.5.0.0"
+ }
+ }
+ },
+ "OwlCore.Storage/0.8.2": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "System.Linq.Async": "6.0.1"
+ },
+ "runtime": {
+ "lib/netstandard2.0/OwlCore.Storage.dll": {
+ "assemblyVersion": "0.8.2.0",
+ "fileVersion": "0.8.2.0"
+ }
+ }
+ },
+ "SixLabors.ImageSharp/2.1.3": {
+ "dependencies": {
+ "System.Buffers": "4.5.1",
+ "System.Memory": "4.5.5",
+ "System.Numerics.Vectors": "4.5.0",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0",
+ "System.Text.Encoding.CodePages": "5.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/SixLabors.ImageSharp.dll": {
+ "assemblyVersion": "2.0.0.0",
+ "fileVersion": "2.1.3.0"
+ }
+ }
+ },
+ "StyleCop.Analyzers/1.1.118": {},
+ "System.Buffers/4.5.1": {
+ "runtime": {
+ "lib/netstandard2.0/System.Buffers.dll": {
+ "assemblyVersion": "4.0.3.0",
+ "fileVersion": "4.6.28619.1"
+ }
+ }
+ },
+ "System.Collections.Immutable/6.0.0": {
+ "dependencies": {
+ "System.Memory": "4.5.5",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Collections.Immutable.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.ComponentModel.Annotations/5.0.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.ComponentModel.Annotations.dll": {
+ "assemblyVersion": "4.2.1.0",
+ "fileVersion": "4.6.26515.6"
+ }
+ }
+ },
+ "System.Linq.Async/6.0.1": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Linq.Async.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.1.35981"
+ }
+ }
+ },
+ "System.Memory/4.5.5": {
+ "dependencies": {
+ "System.Buffers": "4.5.1",
+ "System.Numerics.Vectors": "4.5.0",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Memory.dll": {
+ "assemblyVersion": "4.0.1.2",
+ "fileVersion": "4.6.31308.1"
+ }
+ }
+ },
+ "System.Numerics.Vectors/4.5.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.Numerics.Vectors.dll": {
+ "assemblyVersion": "4.1.4.0",
+ "fileVersion": "4.6.26515.6"
+ }
+ }
+ },
+ "System.Reflection.Emit/4.7.0": {
+ "dependencies": {
+ "System.Reflection.Emit.ILGeneration": "4.7.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Reflection.Emit.dll": {
+ "assemblyVersion": "4.0.0.0",
+ "fileVersion": "4.700.19.56404"
+ }
+ }
+ },
+ "System.Reflection.Emit.ILGeneration/4.7.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.Reflection.Emit.ILGeneration.dll": {
+ "assemblyVersion": "4.0.0.0",
+ "fileVersion": "4.700.19.56404"
+ }
+ }
+ },
+ "System.Reflection.Emit.Lightweight/4.7.0": {
+ "dependencies": {
+ "System.Reflection.Emit.ILGeneration": "4.7.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Reflection.Emit.Lightweight.dll": {
+ "assemblyVersion": "4.0.0.0",
+ "fileVersion": "4.700.19.56404"
+ }
+ }
+ },
+ "System.Runtime.CompilerServices.Unsafe/6.0.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": {
+ "assemblyVersion": "6.0.0.0",
+ "fileVersion": "6.0.21.52210"
+ }
+ }
+ },
+ "System.Text.Encoding.CodePages/5.0.0": {
+ "dependencies": {
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Text.Encoding.CodePages.dll": {
+ "assemblyVersion": "5.0.0.0",
+ "fileVersion": "5.0.20.51904"
+ }
+ }
+ },
+ "System.Text.Encodings.Web/7.0.0": {
+ "dependencies": {
+ "System.Buffers": "4.5.1",
+ "System.Memory": "4.5.5",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Text.Encodings.Web.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.22.51805"
+ }
+ }
+ },
+ "System.Text.Json/7.0.2": {
+ "dependencies": {
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "System.Buffers": "4.5.1",
+ "System.Memory": "4.5.5",
+ "System.Numerics.Vectors": "4.5.0",
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0",
+ "System.Text.Encodings.Web": "7.0.0",
+ "System.Threading.Tasks.Extensions": "4.5.4"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Text.Json.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.323.6910"
+ }
+ }
+ },
+ "System.Threading.Tasks.Dataflow/7.0.0": {
+ "runtime": {
+ "lib/netstandard2.0/System.Threading.Tasks.Dataflow.dll": {
+ "assemblyVersion": "7.0.0.0",
+ "fileVersion": "7.0.22.51805"
+ }
+ }
+ },
+ "System.Threading.Tasks.Extensions/4.5.4": {
+ "dependencies": {
+ "System.Runtime.CompilerServices.Unsafe": "6.0.0"
+ },
+ "runtime": {
+ "lib/netstandard2.0/System.Threading.Tasks.Extensions.dll": {
+ "assemblyVersion": "4.2.0.1",
+ "fileVersion": "4.6.28619.1"
+ }
+ }
+ },
+ "TagLibSharp/2.3.0": {
+ "runtime": {
+ "lib/netstandard2.0/TagLibSharp.dll": {
+ "assemblyVersion": "2.3.0.0",
+ "fileVersion": "2.3.0.0"
+ }
+ }
+ },
+ "StrixMusic.Sdk/0.1.0-alpha": {
+ "dependencies": {
+ "CommunityToolkit.Common": "8.1.0",
+ "CommunityToolkit.Diagnostics": "8.1.0",
+ "CommunityToolkit.Mvvm": "8.1.0",
+ "JetBrains.Annotations": "2022.3.1",
+ "Microsoft.Bcl.AsyncInterfaces": "7.0.0",
+ "Microsoft.Extensions.DependencyInjection": "7.0.0",
+ "Microsoft.Identity.Client": "4.53.0",
+ "Newtonsoft.Json": "13.0.3",
+ "OwlCore": "0.2.1",
+ "SixLabors.ImageSharp": "2.1.3",
+ "System.Linq.Async": "6.0.1",
+ "System.Text.Json": "7.0.2",
+ "TagLibSharp": "2.3.0"
+ },
+ "runtime": {
+ "StrixMusic.Sdk.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "StrixMusic.Cores.Storage/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "CommunityToolkit.Common/8.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-9U91MvCETPTVkLd07rGuIIPSnoqEQq7WDwNe6zfREkCFNJtR56flnO38EXP0M+pzPpHBnNmPt9PnJoPDJZjg5w==",
+ "path": "communitytoolkit.common/8.1.0",
+ "hashPath": "communitytoolkit.common.8.1.0.nupkg.sha512"
+ },
+ "CommunityToolkit.Diagnostics/8.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-R9h5uw8W2ADbmzrJpUJHH7cBpOE2g7jJ0mL/6sJEucfDvTWk3Uq/d4ZgWfVsQTf+MX8wAsWEYsc+UNfeZ3o6LQ==",
+ "path": "communitytoolkit.diagnostics/8.1.0",
+ "hashPath": "communitytoolkit.diagnostics.8.1.0.nupkg.sha512"
+ },
+ "CommunityToolkit.Mvvm/8.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-xxOt7lu9a5kB5Fs9RfcxzVlKnhuuPe+w7AXHtmCFtS3oldrsUhEMxHfNulluXSscUUoGxZ0jh55Om12ZP6abHA==",
+ "path": "communitytoolkit.mvvm/8.1.0",
+ "hashPath": "communitytoolkit.mvvm.8.1.0.nupkg.sha512"
+ },
+ "JetBrains.Annotations/2022.3.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-11nsS3+lFICGkztVs9PP2NRItxf9fF+qD6xEW/T0YGto52zj07wseUeBdMAU1ah9HNVTDZyRC1u4NWdtJScwhw==",
+ "path": "jetbrains.annotations/2022.3.1",
+ "hashPath": "jetbrains.annotations.2022.3.1.nupkg.sha512"
+ },
+ "MessagePack/2.5.108": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kcVRbdWP3xNWLZmmpm4DFO+kuXf6mUR2mHZ27WoZIEFIv9hazuUd80injXhNrZnlq/FklAdCsLOil5M76I4Ndg==",
+ "path": "messagepack/2.5.108",
+ "hashPath": "messagepack.2.5.108.nupkg.sha512"
+ },
+ "MessagePack.Annotations/2.5.108": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-28aNCvfJClgwaKr26gf2S6LT+C1PNyPxiG+ihYpy8uCJsRLJEDoCt2I0Uk5hqOPQ8P8hI0ESy520oMkZkPmsOQ==",
+ "path": "messagepack.annotations/2.5.108",
+ "hashPath": "messagepack.annotations.2.5.108.nupkg.sha512"
+ },
+ "Microsoft.Bcl.AsyncInterfaces/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3aeMZ1N0lJoSyzqiP03hqemtb1BijhsJADdobn/4nsMJ8V1H+CrpuduUe4hlRdx+ikBQju1VGjMD1GJ3Sk05Eg==",
+ "path": "microsoft.bcl.asyncinterfaces/7.0.0",
+ "hashPath": "microsoft.bcl.asyncinterfaces.7.0.0.nupkg.sha512"
+ },
+ "Microsoft.CSharp/4.7.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==",
+ "path": "microsoft.csharp/4.7.0",
+ "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-elNeOmkeX3eDVG6pYVeV82p29hr+UKDaBhrZyWvWLw/EVZSYEkZlQdkp0V39k/Xehs2Qa0mvoCvkVj3eQxNQ1Q==",
+ "path": "microsoft.extensions.dependencyinjection/7.0.0",
+ "hashPath": "microsoft.extensions.dependencyinjection.7.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-h3j/QfmFN4S0w4C2A6X7arXij/M/OVw3uQHSOFxnND4DyAzO1F9eMX7Eti7lU/OkSthEE0WzRsfT/Dmx86jzCw==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/7.0.0",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.7.0.0.nupkg.sha512"
+ },
+ "Microsoft.Identity.Client/4.53.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-N0qNbtiuziG0UBFbbju7az96t4lEOQtuonhV+yk1mx76q4o5hBzekOURxQM0EJNWBIi68w72LivMQJuFig6kQw==",
+ "path": "microsoft.identity.client/4.53.0",
+ "hashPath": "microsoft.identity.client.4.53.0.nupkg.sha512"
+ },
+ "Microsoft.IdentityModel.Abstractions/6.22.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-iI+9V+2ciCrbheeLjpmjcqCnhy+r6yCoEcid3nkoFWerHgjVuT6CPM4HODUTtUPe1uwks4wcnAujJ8u+IKogHQ==",
+ "path": "microsoft.identitymodel.abstractions/6.22.0",
+ "hashPath": "microsoft.identitymodel.abstractions.6.22.0.nupkg.sha512"
+ },
+ "Microsoft.NET.StringTools/17.4.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-06T6Hqfs3JDIaBvJaBRFFMIdU7oE0OMab5Xl8LKQjWPxBQr3BgVFKMQPTC+GsSEuYREWmK6g5eOd7Xqd9p1YCA==",
+ "path": "microsoft.net.stringtools/17.4.0",
+ "hashPath": "microsoft.net.stringtools.17.4.0.nupkg.sha512"
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==",
+ "path": "microsoft.netcore.platforms/1.1.0",
+ "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512"
+ },
+ "NETStandard.Library/2.0.3": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-st47PosZSHrjECdjeIzZQbzivYBJFv6P2nv4cj2ypdI204DO+vZ7l5raGMiX4eXMJ53RfOIg+/s4DHVZ54Nu2A==",
+ "path": "netstandard.library/2.0.3",
+ "hashPath": "netstandard.library.2.0.3.nupkg.sha512"
+ },
+ "Newtonsoft.Json/13.0.3": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ==",
+ "path": "newtonsoft.json/13.0.3",
+ "hashPath": "newtonsoft.json.13.0.3.nupkg.sha512"
+ },
+ "OwlCore/0.2.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-KZDXrTX7E8v5J+NW//Gq9pMKCwbsSwEUMWPMfJoBgo49JvdOoi0HysfAtPAa3G1hbTloqMJl0n4fSGl9TTOQvw==",
+ "path": "owlcore/0.2.1",
+ "hashPath": "owlcore.0.2.1.nupkg.sha512"
+ },
+ "OwlCore.ComponentModel/0.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ZY9oPYyODAOvz1n++7Wrlp7/g/3/voQzPQTAGkDZYLo4onnZDVMGuFjcV7m+KFECCt33Nr5FR+dbqNHt8Soy1g==",
+ "path": "owlcore.componentmodel/0.3.0",
+ "hashPath": "owlcore.componentmodel.0.3.0.nupkg.sha512"
+ },
+ "OwlCore.Extensions/0.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-py4HxFdCFWQapL094wX1ULOMGUK4hBBGr+jRujDi7bxRqAPiSlqfKsKbsRtF/brrzvZO7qt64kw4qummyZ3sEQ==",
+ "path": "owlcore.extensions/0.5.0",
+ "hashPath": "owlcore.extensions.0.5.0.nupkg.sha512"
+ },
+ "OwlCore.Storage/0.8.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-av6eVFATaIcVqgiorzYm0J3n/gCked08OXUAMDhi+mpYUZNxMxrIeunFF5vWrZ4wE/6BgUVu5Q1b3m8NtUMR+w==",
+ "path": "owlcore.storage/0.8.2",
+ "hashPath": "owlcore.storage.0.8.2.nupkg.sha512"
+ },
+ "SixLabors.ImageSharp/2.1.3": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-8yonNRWX3vUE9k29ta0Hbfa0AEc0hbDjSH/nZ3vOTJEXmY6hLnGsjDKoz96Z+AgOsrdkAu6PdL/Ebaf70aitzw==",
+ "path": "sixlabors.imagesharp/2.1.3",
+ "hashPath": "sixlabors.imagesharp.2.1.3.nupkg.sha512"
+ },
+ "StyleCop.Analyzers/1.1.118": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Onx6ovGSqXSK07n/0eM3ZusiNdB6cIlJdabQhWGgJp3Vooy9AaLS/tigeybOJAobqbtggTamoWndz72JscZBvw==",
+ "path": "stylecop.analyzers/1.1.118",
+ "hashPath": "stylecop.analyzers.1.1.118.nupkg.sha512"
+ },
+ "System.Buffers/4.5.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
+ "path": "system.buffers/4.5.1",
+ "hashPath": "system.buffers.4.5.1.nupkg.sha512"
+ },
+ "System.Collections.Immutable/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==",
+ "path": "system.collections.immutable/6.0.0",
+ "hashPath": "system.collections.immutable.6.0.0.nupkg.sha512"
+ },
+ "System.ComponentModel.Annotations/5.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-dMkqfy2el8A8/I76n2Hi1oBFEbG1SfxD2l5nhwXV3XjlnOmwxJlQbYpJH4W51odnU9sARCSAgv7S3CyAFMkpYg==",
+ "path": "system.componentmodel.annotations/5.0.0",
+ "hashPath": "system.componentmodel.annotations.5.0.0.nupkg.sha512"
+ },
+ "System.Linq.Async/6.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-0YhHcaroWpQ9UCot3Pizah7ryAzQhNvobLMSxeDIGmnXfkQn8u5owvpOH0K6EVB+z9L7u6Cc4W17Br/+jyttEQ==",
+ "path": "system.linq.async/6.0.1",
+ "hashPath": "system.linq.async.6.0.1.nupkg.sha512"
+ },
+ "System.Memory/4.5.5": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==",
+ "path": "system.memory/4.5.5",
+ "hashPath": "system.memory.4.5.5.nupkg.sha512"
+ },
+ "System.Numerics.Vectors/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-QQTlPTl06J/iiDbJCiepZ4H//BVraReU4O4EoRw1U02H5TLUIT7xn3GnDp9AXPSlJUDyFs4uWjWafNX6WrAojQ==",
+ "path": "system.numerics.vectors/4.5.0",
+ "hashPath": "system.numerics.vectors.4.5.0.nupkg.sha512"
+ },
+ "System.Reflection.Emit/4.7.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==",
+ "path": "system.reflection.emit/4.7.0",
+ "hashPath": "system.reflection.emit.4.7.0.nupkg.sha512"
+ },
+ "System.Reflection.Emit.ILGeneration/4.7.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-AucBYo3DSI0IDxdUjKksBcQJXPHyoPyrCXYURW1WDsLI4M65Ar/goSHjdnHOAY9MiYDNKqDlIgaYm+zL2hA1KA==",
+ "path": "system.reflection.emit.ilgeneration/4.7.0",
+ "hashPath": "system.reflection.emit.ilgeneration.4.7.0.nupkg.sha512"
+ },
+ "System.Reflection.Emit.Lightweight/4.7.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-a4OLB4IITxAXJeV74MDx49Oq2+PsF6Sml54XAFv+2RyWwtDBcabzoxiiJRhdhx+gaohLh4hEGCLQyBozXoQPqA==",
+ "path": "system.reflection.emit.lightweight/4.7.0",
+ "hashPath": "system.reflection.emit.lightweight.4.7.0.nupkg.sha512"
+ },
+ "System.Runtime.CompilerServices.Unsafe/6.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
+ "path": "system.runtime.compilerservices.unsafe/6.0.0",
+ "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512"
+ },
+ "System.Text.Encoding.CodePages/5.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-NyscU59xX6Uo91qvhOs2Ccho3AR2TnZPomo1Z0K6YpyztBPM/A5VbkzOO19sy3A3i1TtEnTxA7bCe3Us+r5MWg==",
+ "path": "system.text.encoding.codepages/5.0.0",
+ "hashPath": "system.text.encoding.codepages.5.0.0.nupkg.sha512"
+ },
+ "System.Text.Encodings.Web/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-OP6umVGxc0Z0MvZQBVigj4/U31Pw72ITihDWP9WiWDm+q5aoe0GaJivsfYGq53o6dxH7DcXWiCTl7+0o2CGdmg==",
+ "path": "system.text.encodings.web/7.0.0",
+ "hashPath": "system.text.encodings.web.7.0.0.nupkg.sha512"
+ },
+ "System.Text.Json/7.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-/LZf/JrGyilojqwpaywb+sSz8Tew7ij4K/Sk+UW8AKfAK7KRhR6mKpKtTm06cYA7bCpGTWfYksIW+mVsdxPegQ==",
+ "path": "system.text.json/7.0.2",
+ "hashPath": "system.text.json.7.0.2.nupkg.sha512"
+ },
+ "System.Threading.Tasks.Dataflow/7.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BmSJ4b0e2nlplV/RdWVxvH7WECTHACofv06dx/JwOYc0n56eK1jIWdQKNYYsReSO4w8n1QA5stOzSQcfaVBkJg==",
+ "path": "system.threading.tasks.dataflow/7.0.0",
+ "hashPath": "system.threading.tasks.dataflow.7.0.0.nupkg.sha512"
+ },
+ "System.Threading.Tasks.Extensions/4.5.4": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==",
+ "path": "system.threading.tasks.extensions/4.5.4",
+ "hashPath": "system.threading.tasks.extensions.4.5.4.nupkg.sha512"
+ },
+ "TagLibSharp/2.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Qo4z6ZjnIfbR3Us1Za5M2vQ97OWZPmODvVmepxZ8XW0UIVLGdO2T63/N3b23kCcyiwuIe0TQvMEQG8wUCCD1mA==",
+ "path": "taglibsharp/2.3.0",
+ "hashPath": "taglibsharp.2.3.0.nupkg.sha512"
+ },
+ "StrixMusic.Sdk/0.1.0-alpha": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.dll b/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.dll
new file mode 100644
index 0000000..bba8c85
Binary files /dev/null and b/libs/nuget/StrixMusic.Cores.Storage/StrixMusic.Cores.Storage.dll differ