diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index e6f4215..bc94de3 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -5,13 +5,13 @@ on: branches: - "dev" paths: - - "SimpleToolkit.Extensions**" + - "MSEssentials.Extensions**" pull_request: branches: - "dev" - "main" paths: - - "SimpleToolkit.Extensions**" + - "MSEssentials.Extensions**" jobs: build: diff --git a/.gitea/workflows/build_publish.yml b/.gitea/workflows/build_publish.yml index 05ef69d..c2918ed 100644 --- a/.gitea/workflows/build_publish.yml +++ b/.gitea/workflows/build_publish.yml @@ -8,7 +8,7 @@ on: branches: - "main" paths: - - "SimpleToolkit.Extensions**" + - "MSEssentials.Extensions**" jobs: build: @@ -66,7 +66,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: nuget - path: ./SimpleToolkit.Extensions.${{needs.version.outputs.version}}.nupkg + path: ./MSEssentials.Extensions.${{needs.version.outputs.version}}.nupkg outputs: version: ${{needs.version.outputs.version}} publish: @@ -84,11 +84,11 @@ jobs: with: dotnet-version: 8.0.x - name: Publish - run: dotnet nuget push ./SimpleToolkit.Extensions.${{needs.pack.outputs.version}}.nupkg --source https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_KEY }} + run: dotnet nuget push ./MSEssentials.Extensions.${{needs.pack.outputs.version}}.nupkg --source https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_KEY }} - name: Create Release uses: akkuman/gitea-release-action@v1 with: tag_name: ${{needs.pack.outputs.version}} name: ${{needs.pack.outputs.version}} files: |- - SimpleToolkit.Extensions.${{needs.pack.outputs.version}}.nupkg \ No newline at end of file + MSEssentials.Extensions.${{needs.pack.outputs.version}}.nupkg \ No newline at end of file diff --git a/LICENSE b/LICENSE index d28fc4c..215bccb 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2026 SimpleToolkit +Copyright (c) 2026 Mateusz Skoczek Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including diff --git a/SimpleToolkit.Extensions.sln b/MSEssentials.Extensions.sln similarity index 78% rename from SimpleToolkit.Extensions.sln rename to MSEssentials.Extensions.sln index 715ea78..285cdf5 100644 --- a/SimpleToolkit.Extensions.sln +++ b/MSEssentials.Extensions.sln @@ -1,6 +1,6 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleToolkit.Extensions", "SimpleToolkit.Extensions\SimpleToolkit.Extensions.csproj", "{6D174E00-25BB-4E29-F2DA-041331660D09}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSEssentials.Extensions", "MSEssentials.Extensions\MSEssentials.Extensions.csproj", "{6D174E00-25BB-4E29-F2DA-041331660D09}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/SimpleToolkit.Extensions/HttpClientExtensions.cs b/MSEssentials.Extensions/HttpClientExtensions.cs similarity index 89% rename from SimpleToolkit.Extensions/HttpClientExtensions.cs rename to MSEssentials.Extensions/HttpClientExtensions.cs index 621b258..ef8b706 100644 --- a/SimpleToolkit.Extensions/HttpClientExtensions.cs +++ b/MSEssentials.Extensions/HttpClientExtensions.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace SimpleToolkit.Extensions +namespace MSEssentials.Extensions { public static class HttpClientExtensions { @@ -14,7 +14,7 @@ namespace SimpleToolkit.Extensions { long? contentLength = response.Content.Headers.ContentLength; - using (Stream download = await response.Content.ReadAsStreamAsync(cancellationToken)) + await using (Stream download = await response.Content.ReadAsStreamAsync(cancellationToken)) { if (progress == null || !contentLength.HasValue) { diff --git a/SimpleToolkit.Extensions/IEnumerableExtensions.cs b/MSEssentials.Extensions/IEnumerableExtensions.cs similarity index 90% rename from SimpleToolkit.Extensions/IEnumerableExtensions.cs rename to MSEssentials.Extensions/IEnumerableExtensions.cs index c5590f9..32078d9 100644 --- a/SimpleToolkit.Extensions/IEnumerableExtensions.cs +++ b/MSEssentials.Extensions/IEnumerableExtensions.cs @@ -1,4 +1,4 @@ -namespace SimpleToolkit.Extensions; +namespace MSEssentials.Extensions; public static class IEnumerableExtensions { diff --git a/SimpleToolkit.Extensions/SimpleToolkit.Extensions.csproj b/MSEssentials.Extensions/MSEssentials.Extensions.csproj similarity index 67% rename from SimpleToolkit.Extensions/SimpleToolkit.Extensions.csproj rename to MSEssentials.Extensions/MSEssentials.Extensions.csproj index 7f45d8b..d49c88c 100644 --- a/SimpleToolkit.Extensions/SimpleToolkit.Extensions.csproj +++ b/MSEssentials.Extensions/MSEssentials.Extensions.csproj @@ -4,13 +4,13 @@ net8.0 enable enable - SimpleToolkit.Extensions + MSEssentials.Extensions Mateusz Skoczek Mateusz Skoczek - https://repos.mateuszskoczek.com/SimpleToolkit/ - https://repos.mateuszskoczek.com/SimpleToolkit/SimpleToolkit.Extensions/src/branch/main/LICENSE + https://repos.mateuszskoczek.com/MSEssentials/ + https://repos.mateuszskoczek.com/MSEssentials/MSEssentials.Extensions/src/branch/main/LICENSE icon.png - https://repos.mateuszskoczek.com/SimpleToolkit/SimpleToolkit.Extensions + https://repos.mateuszskoczek.com/MSEssentials/MSEssentials.Extensions Set of helpers, class extensions, UI controls used in my other C# projects - Class extensions README.md diff --git a/MSEssentials.Extensions/README.md b/MSEssentials.Extensions/README.md new file mode 100644 index 0000000..c077697 --- /dev/null +++ b/MSEssentials.Extensions/README.md @@ -0,0 +1,57 @@ +# MSEssentials.Extensions + +### Set of helpers, class extensions, UI controls used in my other C# projects + +MSEssentials is package of useful classes, helpers, extensions and UI controls, I use in my C# projects. Extensions subpackage contains classes extensions. + +--- + +## NuGet registry status + +| Subpackage | Status | +|-----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **MSEssentials.Extensions** | [![NuGet version (MSEssentials.Extensions)](https://img.shields.io/nuget/v/MSEssentials.Extensions.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.Extensions/) | +| MSEssentials.AspNetCore.Attributes | [![NuGet version (MSEssentials.AspNetCore.Attributes)](https://img.shields.io/nuget/v/MSEssentials.AspNetCore.Attributes.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.AspNetCore.Attributes/) | +| MSEssentials.UI.Common.MVVM | [![NuGet version (MSEssentials.UI.Common.MVVM)](https://img.shields.io/nuget/v/MSEssentials.UI.Common.MVVM.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.UI.Common.MVVM/) | +| MSEssentials.UI.Common.Extensions | [![NuGet version (MSEssentials.UI.Common.Extensions)](https://img.shields.io/nuget/v/MSEssentials.UI.Common.Extensions.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.UI.Common.Extensions/) | +| MSEssentials.UI.WinUI.Behaviors | [![NuGet version (MSEssentials.UI.WinUI.Behaviors)](https://img.shields.io/nuget/v/MSEssentials.UI.WinUI.Behaviors.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.UI.WinUI.Behaviors/) | +| MSEssentials.UI.WinUI.Converters | [![NuGet version (MSEssentials.UI.WinUI.Converters)](https://img.shields.io/nuget/v/MSEssentials.UI.WinUI.Converters.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.UI.WinUI.Converters/) | +| MSEssentials.UI.WinUI.Controls | [![NuGet version (MSEssentials.UI.WinUI.Controls)](https://img.shields.io/nuget/v/MSEssentials.UI.WinUI.Controls.svg?style=flat-square)](https://www.nuget.org/packages/MSEssentials.UI.WinUI.Controls/) | + +## Features + +- **StringExtensions** + - *(static)* **CreateRandom** - returns random string + - **Shuffle** - returns shuffled string +- **HttpClientExtensions** + - **DownloadAsync** - allows to track progress of downloading data +- **StreamExtensions** + - **CopyToAsync** - allows to track progress of copying data +- **IEnumerableExtensions** + - **Random** - returns random item from IEnumerable + +## Installation and usage + +You can download package from official NuGet registry or .nupkg file itself from Releases tab. + +**CLI:** + +``` +dotnet add package MSEssentials.Extensions +``` + +**Package reference in .csproj file:** + +``` + +``` + +## Attribution and contribution + +This project is open source on MIT License, so you can just copy and upload again to your repository. But according to the license, you must include information about the original author. You can find license [here](https://repos.mateuszskoczek.com/MSEssentials/MSEssentials.Extensions/src/branch/main/LICENSE). + +However, the preferred way to contribute would be to propose improvements in a pull request, through issues, or through other means of communication. + +**Other sources:** + +- Icon by [Icons8](icons8.com) \ No newline at end of file diff --git a/SimpleToolkit.Extensions/StreamExtensions.cs b/MSEssentials.Extensions/StreamExtensions.cs similarity index 97% rename from SimpleToolkit.Extensions/StreamExtensions.cs rename to MSEssentials.Extensions/StreamExtensions.cs index 3586c01..0c4dc8f 100644 --- a/SimpleToolkit.Extensions/StreamExtensions.cs +++ b/MSEssentials.Extensions/StreamExtensions.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace SimpleToolkit.Extensions +namespace MSEssentials.Extensions { public static class StreamExtensions { diff --git a/SimpleToolkit.Extensions/StringExtensions.cs b/MSEssentials.Extensions/StringExtensions.cs similarity index 86% rename from SimpleToolkit.Extensions/StringExtensions.cs rename to MSEssentials.Extensions/StringExtensions.cs index 440c2da..dc195a4 100644 --- a/SimpleToolkit.Extensions/StringExtensions.cs +++ b/MSEssentials.Extensions/StringExtensions.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace SimpleToolkit.Extensions +namespace MSEssentials.Extensions { public static class StringExtensions { @@ -20,9 +20,7 @@ namespace SimpleToolkit.Extensions { n--; int k = rng.Next(n + 1); - char value = array[k]; - array[k] = array[n]; - array[n] = value; + (array[k], array[n]) = (array[n], array[k]); } return new string(array); } diff --git a/SimpleToolkit.Extensions/icon.png b/MSEssentials.Extensions/icon.png similarity index 100% rename from SimpleToolkit.Extensions/icon.png rename to MSEssentials.Extensions/icon.png diff --git a/README.md b/README.md index b1a3d43..83ed614 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@

-

SimpleToolkit.Extensions

+

MSEssentials.Extensions

Set of helpers, class extensions, UI controls used in my other C# projects

-

SimpleToolkit is package of useful classes, helpers, extensions and UI controls, I use in my C# projects. Extensions subpackage contains classes extensions.

+

MSEssentials is package of useful classes, helpers, extensions and UI controls, I use in my C# projects. Extensions subpackage contains classes extensions.

--- @@ -13,7 +13,7 @@ > [!Important] > **For Github users:** > -> This is only mirror repository. All changes are first uploaded to the repository here. Releases are also published on original repository. However, Github repository handles issues and pull requests for better accessibility. +> This is only mirror repository. All changes are first uploaded to the repository here. Releases are also published on original repository. However, Github repository handles issues and pull requests for better accessibility. ## NuGet registry status @@ -28,10 +28,10 @@ - SimpleToolkit.Extensions + MSEssentials.Extensions - + @@ -41,58 +41,50 @@ - SimpleToolkit.Attributes + MSEssentials.AspNetCore.Attributes - + - SimpleToolkit.MVVM + MSEssentials.UI.Common.MVVM - + - SimpleToolkit.UI.Models + MSEssentials.UI.Common.Extensions - + - SimpleToolkit.UI.WinUI.Behaviors + MSEssentials.UI.WinUI.Behaviors - + - SimpleToolkit.UI.WinUI.Converters + MSEssentials.UI.WinUI.Converters - + - SimpleToolkit.UI.WinUI.Controls + MSEssentials.UI.WinUI.Controls - - - - - - SimpleToolkit.UI.WinUI.Helpers - - - + @@ -116,18 +108,18 @@ You can download package from official NuGet registry or .nupkg file itself from **CLI:** ``` -dotnet add package SimpleToolkit.Extensions +dotnet add package MSEssentials.Extensions ``` **Package reference in .csproj file:** ``` - + ``` ## Attribution and contribution -This project is open source on MIT License, so you can just copy and upload again to your repository. But according to the license, you must include information about the original author. You can find license here. +This project is open source on MIT License, so you can just copy and upload again to your repository. But according to the license, you must include information about the original author. You can find license here. However, the preferred way to contribute would be to propose improvements in a pull request, through issues, or through other means of communication. diff --git a/SimpleToolkit.Extensions/README.md b/SimpleToolkit.Extensions/README.md deleted file mode 100644 index 75ea325..0000000 --- a/SimpleToolkit.Extensions/README.md +++ /dev/null @@ -1,58 +0,0 @@ -# SimpleToolkit.Extensions - -### Set of helpers, class extensions, UI controls used in my other C# projects - -SimpleToolkit is package of useful classes, helpers, extensions and UI controls, I use in my C# projects. Extensions subpackage contains classes extensions. - ---- - -## NuGet registry status - -| Subpackage | Status | -|-----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| **SimpleToolkit.Extensions** | [![NuGet version (SimpleToolkit.Extensions)](https://img.shields.io/nuget/v/SimpleToolkit.Extensions.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.Extensions/) | -| SimpleToolkit.Attributes | [![NuGet version (SimpleToolkit.Attributes)](https://img.shields.io/nuget/v/SimpleToolkit.Attributes.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.Attributes/) | -| SimpleToolkit.MVVM | [![NuGet version (SimpleToolkit.MVVM)](https://img.shields.io/nuget/v/SimpleToolkit.MVVM.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.MVVM/) | -| SimpleToolkit.UI.Models | [![NuGet version (SimpleToolkit.UI.Models)](https://img.shields.io/nuget/v/SimpleToolkit.UI.Models.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.UI.Models/) | -| SimpleToolkit.UI.WinUI.Behaviors | [![NuGet version (SimpleToolkit.UI.WinUI.Behaviors)](https://img.shields.io/nuget/v/SimpleToolkit.UI.WinUI.Behaviors.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.UI.WinUI.Behaviors/) | -| SimpleToolkit.UI.WinUI.Converters | [![NuGet version (SimpleToolkit.UI.WinUI.Converters)](https://img.shields.io/nuget/v/SimpleToolkit.UI.WinUI.Converters.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.UI.WinUI.Converters/) | -| SimpleToolkit.UI.WinUI.Controls | [![NuGet version (SimpleToolkit.UI.WinUI.Controls)](https://img.shields.io/nuget/v/SimpleToolkit.UI.WinUI.Controls.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.UI.WinUI.Controls/) | -| SimpleToolkit.UI.WinUI.Helpers | [![NuGet version (SimpleToolkit.UI.WinUI.Helpers)](https://img.shields.io/nuget/v/SimpleToolkit.UI.WinUI.Helpers.svg?style=flat-square)](https://www.nuget.org/packages/SimpleToolkit.UI.WinUI.Helpers/) | - -## Features - -- **StringExtensions** - - *(static)* **CreateRandom** - returns random string - - **Shuffle** - returns shuffled string -- **HttpClientExtensions** - - **DownloadAsync** - allows to track progress of downloading data -- **StreamExtensions** - - **CopyToAsync** - allows to track progress of copying data -- **IEnumerableExtensions** - - **Random** - returns random item from IEnumerable - -## Installation and usage - -You can download package from official NuGet registry or .nupkg file itself from Releases tab. - -**CLI:** - -``` -dotnet add package SimpleToolkit.Extensions -``` - -**Package reference in .csproj file:** - -``` - -``` - -## Attribution and contribution - -This project is open source on MIT License, so you can just copy and upload again to your repository. But according to the license, you must include information about the original author. You can find license [here](https://repos.mateuszskoczek.com/SimpleToolkit/SimpleToolkit.Extensions/src/branch/main/LICENSE). - -However, the preferred way to contribute would be to propose improvements in a pull request, through issues, or through other means of communication. - -**Other sources:** - -- Icon by [Icons8](icons8.com) \ No newline at end of file