Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
7bf711d
Refactor: Transition to TypeScript and Webpack build system
MaxymGorn Nov 30, 2025
1c59600
fix ts file
MaxymGorn Nov 30, 2025
e13b96a
fix configs
MaxymGorn Dec 5, 2025
a903fda
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 5, 2025
f191cd0
small fix
MaxymGorn Dec 5, 2025
f4b851d
small fix
MaxymGorn Dec 5, 2025
53314e8
run webpack only one time
MaxymGorn Dec 5, 2025
06e9681
fix
MaxymGorn Dec 5, 2025
23f8add
fix errors
MaxymGorn Dec 5, 2025
8e743c0
add new structure for cropper *.ts files
MaxymGorn Dec 13, 2025
a71d8aa
fix copy css for cropper
MaxymGorn Dec 13, 2025
90806c2
fix building project for multi-TFM build
MaxymGorn Dec 14, 2025
69b0ee2
Separate DotNet build steps for library and project
MaxymGorn Dec 14, 2025
186389e
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 14, 2025
e1f0e37
small fix
MaxymGorn Dec 15, 2025
24adfd3
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 15, 2025
7dc8982
Merge branch 'feature/add_typescript_for_project' of https://github.c…
MaxymGorn Dec 15, 2025
eaea10d
fix namespaces for .ts files
MaxymGorn Dec 27, 2025
44ab07e
add vitest
MaxymGorn Dec 29, 2025
5a924c6
add creation cobertura file for vitest coverage report
MaxymGorn Dec 30, 2025
3ddcabd
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
034d3ec
Enable JS tests and set permissions in CI workflows
MaxymGorn Dec 30, 2025
9396ad2
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
4bb5612
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
da054b8
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
54f7339
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
6a01969
test
MaxymGorn Dec 30, 2025
6c71dff
Merge branch 'feature/add_typescript_for_project' of https://github.c…
MaxymGorn Dec 30, 2025
f3cc460
revert unit test
MaxymGorn Dec 30, 2025
22667cb
test
MaxymGorn Dec 30, 2025
7663818
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
837d2b0
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
3a23bb4
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 30, 2025
84c41c7
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
aca9751
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
6afda9c
Remove 'contents: read' permission from CI workflow
MaxymGorn Dec 31, 2025
3437b11
Remove contents read permission in cd.yml
MaxymGorn Dec 31, 2025
f7b0255
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
23a7846
Downgrade Super-Linter version from v8.3.0 to v8.2.1
MaxymGorn Dec 31, 2025
daca010
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
243f295
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
50edc0e
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
d78cb21
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
9a474a5
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
7eb1570
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
3dfdff6
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
716b297
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
b3a14b7
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
1663e14
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
6f6fa9c
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
0b93324
revert test
MaxymGorn Dec 31, 2025
c0ca686
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
b91a197
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
5c0fd01
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
880c581
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
f04f0ec
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
2d18cce
Update build-test-template.yml
MaxymGorn Dec 31, 2025
5460795
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
d7f2bee
Update build-test-template.yml
MaxymGorn Dec 31, 2025
46021c8
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
8ea7c9f
Update build-test-template.yml
MaxymGorn Dec 31, 2025
88179d6
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
87ded16
Update build-test-template.yml
MaxymGorn Dec 31, 2025
0d032dc
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
2c75b57
add eslint
MaxymGorn Dec 31, 2025
0e2bbbf
add eslinting
MaxymGorn Dec 31, 2025
34f3024
fix permissions for es-linting job
MaxymGorn Dec 31, 2025
5496d69
fix name job
MaxymGorn Dec 31, 2025
43223c9
fix install command packages for ESLint - TypeScript Linting
MaxymGorn Dec 31, 2025
72d5c45
fix end of line for ts files
MaxymGorn Dec 31, 2025
ffc17c5
fix code smells
MaxymGorn Dec 31, 2025
be048c0
fix: Wrong indentation type(spaces instead of tabs)
MaxymGorn Dec 31, 2025
9efd8b5
move logic to blob helper
MaxymGorn Dec 31, 2025
0e7a4f9
fix formatting
MaxymGorn Dec 31, 2025
66a66f5
Update codecov.yml
MaxymGorn Dec 31, 2025
0e6ab8c
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
edacfef
fix error in helper
MaxymGorn Dec 31, 2025
750fd28
Merge branch 'feature/add_typescript_for_project' of https://github.c…
MaxymGorn Dec 31, 2025
ae11232
Update codecov.yml
MaxymGorn Dec 31, 2025
37b1e2f
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
95279f8
Update codecov.yml
MaxymGorn Dec 31, 2025
97e02e8
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
be8f3d0
Update codecov.yml
MaxymGorn Dec 31, 2025
df72f05
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
e6102ae
Update codecov.yml
MaxymGorn Dec 31, 2025
4aa54d1
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
007be45
Update codecov.yml
MaxymGorn Dec 31, 2025
1ca0f10
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Dec 31, 2025
0021ef3
fix splitting webpack files to cropper and cropper js interop files;c…
MaxymGorn Jan 2, 2026
2dac4f2
Merge branch 'feature/add_typescript_for_project' of https://github.c…
MaxymGorn Jan 2, 2026
09519a3
fix naming
MaxymGorn Jan 2, 2026
d331af8
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 7, 2026
49273dd
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 7, 2026
9a6fdbf
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 11, 2026
c90caaf
Generate and bundle TypeScript .d.ts files automatically
MaxymGorn Jan 11, 2026
9d47080
fix eslint
MaxymGorn Jan 11, 2026
6bd51c2
fix
MaxymGorn Jan 11, 2026
226d2b3
fix docs description
MaxymGorn Jan 12, 2026
095d82c
update npm packages version
MaxymGorn Jan 12, 2026
2d2f3d0
fix TypeScript types
MaxymGorn Jan 12, 2026
3f282ae
fix project file
MaxymGorn Jan 12, 2026
033b433
Update src/Cropper.Blazor/Cropper.Blazor/Cropper.Blazor.csproj
MaxymGorn Jan 12, 2026
043f91a
fix release pipeline
MaxymGorn Jan 12, 2026
7755464
Merge branch 'feature/add_typescript_for_project' of https://github.c…
MaxymGorn Jan 12, 2026
c86c31a
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 13, 2026
891b855
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 13, 2026
8c0106e
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 13, 2026
7fcfafb
Merge branch 'dev' into feature/add_typescript_for_project
MaxymGorn Jan 13, 2026
6940612
fix description project
MaxymGorn Jan 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/linters/.jscpd.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
"**/*.md",
"**/*excubowebcompiler.json",
"**/bin/**",
"**/obj/**"
"**/obj/**",
"**/node_modules/**"
],
"absolute": true,
"minTokens": 75
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ jobs:
uses: CropperBlazor/Cropper.Blazor/.github/workflows/build-test-template.yml@dev
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
run-js-tests: true

deploy-to-github-pages:
permissions:
Expand Down
26 changes: 25 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,28 @@ jobs:
uses: CropperBlazor/Cropper.Blazor/.github/workflows/build-test-template.yml@dev
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
run-js-tests: true

es-linting:
permissions:
contents: read
needs: code-quality-check
name: ESLint - TypeScript Linting
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v5
with:
persist-credentials: false

- name: Install npm dependencies
run: npm install
working-directory: src/Cropper.Blazor/Cropper.Blazor

- name: Run ESLint
run: npm run lint
working-directory: src/Cropper.Blazor/Cropper.Blazor

code-linting:
permissions:
Expand Down Expand Up @@ -63,8 +85,10 @@ jobs:
VALIDATE_MARKDOWN_PRETTIER: false
VALIDATE_YAML_PRETTIER: false
VALIDATE_JSON_PRETTIER: false
VALIDATE_TYPESCRIPT_PRETTIER: false
VALIDATE_TYPESCRIPT_ES: false

FILTER_REGEX_EXCLUDE: '(\W|^)(obj/|bin/)|(\W|^)(.*([.]min[.]css))($)|(\W|^)(.*([.]min[.]js))($)'
FILTER_REGEX_EXCLUDE: '(\W|^)(obj/|bin/|node_modules/|webpack\.config\.js)|(\W|^).*([.]min[.]css)($)|(\W|^).*([.]min[.]js)($)'
FILTER_REGEX_INCLUDE: "/github/workspace/src/Cropper.Blazor/.*|/github/workspace/.github/.*"

JSCPD_CONFIG_FILE: ".jscpd.json"
Expand Down
10 changes: 10 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ jobs:
with:
configuration: "Release"
publish-coverage: true
run-js-tests: true

deploy-to-nuget:
name: Deploy to NuGet
Expand Down Expand Up @@ -73,6 +74,15 @@ jobs:
if ! jq -e '.Root.Children["cropper.min.js"]' "$json_path" > /dev/null; then
error_messages+="For .NET $net_version: Key 'cropper.min.js' does not exist.\n"
fi
if ! jq -e '.Root.Children["blob-helper.d.ts"]' "$json_path" > /dev/null; then
error_messages+="For .NET $net_version: Key 'blob-helper.d.ts' does not exist.\n"
fi
if ! jq -e '.Root.Children["cropperJsInterop.d.ts"]' "$json_path" > /dev/null; then
error_messages+="For .NET $net_version: Key 'cropperJsInterop.d.ts' does not exist.\n"
fi
if ! jq -e '.Root.Children["cropper-url-image-helper.d.ts"]' "$json_path" > /dev/null; then
error_messages+="For .NET $net_version: Key 'cropper-url-image-helper.d.ts' does not exist.\n"
fi
else
error_messages+="File $json_path does not exist for .NET $net_version.\n"
fi
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,10 @@ _ReSharper*/
[Tt]est[Rr]esult*
.vs/
.idea/
*.cobertura.xml
#Nuget packages folder
packages/
# Node.js
node_modules/
coverage/
package-lock.json
3 changes: 2 additions & 1 deletion NuGet_README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
[![NuGet Downloads](https://img.shields.io/nuget/dt/Cropper.Blazor?logo=nuget&label=nuget%20downloads&color=ff5c9b)](https://www.nuget.org/packages/Cropper.Blazor)
[![NuGet Version](https://img.shields.io/nuget/v/Cropper.Blazor?logo=nuget&label=nuget%20version&color=009DEA)](https://www.nuget.org/packages/Cropper.Blazor)

The most powerful image cropping tool for Blazor WebAssembly / Server, Hybrid with MAUI, MVC and
The most powerful image cropping tool for Blazor Web App / WebAssembly / Server, Hybrid with MAUI, MVC and
other frameworks.

Cropper.Blazor is an essential component for building interactive image cropping and manipulation features in Blazor web applications. This versatile Blazor library empowers developers to integrate intuitive image cropping functionality directly into their Blazor projects, offering users a seamless and responsive image editing experience.
Expand All @@ -33,6 +33,7 @@ Cropper.Blazor is an essential component for building interactive image cropping
| 1.5.x | [.NET 6](https://dotnet.microsoft.com/download/dotnet/6.0), [.NET 7](https://dotnet.microsoft.com/en-us/download/dotnet/7.0), [.NET 8](https://dotnet.microsoft.com/en-us/download/dotnet/8.0), [.NET 9](https://dotnet.microsoft.com/en-us/download/dotnet/9.0), [.NET 10](https://dotnet.microsoft.com/en-us/download/dotnet/10.0) | :heavy_check_mark: |

- Supported .NET 10.0, .NET 9.0, .NET 8.0, .NET 7.0, .NET 6.0 versions for these web platforms:
- Blazor Web App
- Blazor WebAssembly
- Blazor Server
- Blazor Server Hybrid with MVC
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
[![NuGet Downloads](https://img.shields.io/nuget/dt/Cropper.Blazor?logo=nuget&label=nuget%20downloads&color=ff5c9b)](https://www.nuget.org/packages/Cropper.Blazor)
[![NuGet Version](https://img.shields.io/nuget/v/Cropper.Blazor?logo=nuget&label=nuget%20version&color=009DEA)](https://www.nuget.org/packages/Cropper.Blazor)

The most powerful image cropping tool for Blazor WebAssembly / Server, Hybrid with MAUI, MVC and
The most powerful image cropping tool for Blazor Web App / WebAssembly / Server, Hybrid with MAUI, MVC and
other frameworks.

Cropper.Blazor is an essential component for building interactive image cropping and manipulation features in Blazor web applications. This versatile Blazor library empowers developers to integrate intuitive image cropping functionality directly into their Blazor projects, offering users a seamless and responsive image editing experience.
Expand All @@ -36,6 +36,7 @@ Cropper.Blazor is an essential component for building interactive image cropping
| 1.5.x | [.NET 6](https://dotnet.microsoft.com/download/dotnet/6.0), [.NET 7](https://dotnet.microsoft.com/en-us/download/dotnet/7.0), [.NET 8](https://dotnet.microsoft.com/en-us/download/dotnet/8.0), [.NET 9](https://dotnet.microsoft.com/en-us/download/dotnet/9.0), [.NET 10](https://dotnet.microsoft.com/en-us/download/dotnet/10.0) | :heavy_check_mark: |

- Supported .NET 10.0, .NET 9.0, .NET 8.0, .NET 7.0, .NET 6.0 versions for these web platforms:
- Blazor Web App
- Blazor WebAssembly
- Blazor Server
- Blazor Server Hybrid with MVC
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
<PackageReference Include="Microsoft.Maui.Controls" Version="9.0.120" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="9.0.120" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="9.0.11" />
<PackageReference Include="MudBlazor" Version="8.14.0" />
<PackageReference Include="MudBlazor" Version="8.15.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="MudBlazor" Version="8.14.0" />
<PackageReference Include="MudBlazor" Version="8.15.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="MudBlazor" Version="8.14.0" />
<PackageReference Include="MudBlazor" Version="8.15.0" />
</ItemGroup>

<ItemGroup>
Expand Down
6 changes: 3 additions & 3 deletions src/Cropper.Blazor/Client/Cropper.Blazor.Client.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@
<!--Packages-->
<ItemGroup>
<PackageReference Include="BlazorWasmPreRendering.Build" Version="7.0.0" />
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="10.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="10.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="10.0.0" PrivateAssets="all" />
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="10.0.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="10.0.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="10.0.1" PrivateAssets="all" />
<PackageReference Include="Blazored.LocalStorage" Version="4.5.0" />
</ItemGroup>

Expand Down
Loading
Loading