diff --git a/.github/workflows/GithubActionsRelease.yml b/.github/workflows/GithubActionsRelease.yml index dfa11d6e3..15c7ca70e 100644 --- a/.github/workflows/GithubActionsRelease.yml +++ b/.github/workflows/GithubActionsRelease.yml @@ -23,6 +23,7 @@ env: projectTest: 'Material.Blazor.Test/Material.Blazor.Test.csproj' projectWeb: 'Material.Blazor.Website.WebAssembly/Material.Blazor.Website.WebAssembly.csproj' + materialBlazorMD3LibModule: 'Material.Blazor.MD3/wwwroot/Material.Blazor.MD3.lib.module.js' outputDocFxMD3: ${{github.workspace}}\siteDocFxMD3 outputMBMD3: ${{github.workspace}}\siteMBMD3 outputWebMD3: ${{github.workspace}}\siteWebMD3 @@ -404,3 +405,8 @@ jobs: -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json + - name: Compute the SHA256 hash of material.blazor.md3.lib.module.js + shell: pwsh + run: | + .\computesha.ps1 ${{env.materialBlazorMD3LibModule}} + diff --git a/.github/workflows/GithubActionsWIP.yml b/.github/workflows/GithubActionsWIP.yml index e1dc2ce0f..0677a0418 100644 --- a/.github/workflows/GithubActionsWIP.yml +++ b/.github/workflows/GithubActionsWIP.yml @@ -17,6 +17,7 @@ env: projectTest: 'Material.Blazor.Test/Material.Blazor.Test.csproj' projectWeb: 'Material.Blazor.Website.WebAssembly/Material.Blazor.Website.WebAssembly.csproj' + materialBlazorMD3LibModule: 'Material.Blazor.MD3/wwwroot/Material.Blazor.MD3.lib.module.js' outputDocFxMD3: ${{github.workspace}}\siteDocFxMD3 outputMBMD3: ${{github.workspace}}/siteMBMD3 outputWebMD3: ${{github.workspace}}/siteWebMD3 @@ -546,6 +547,10 @@ jobs: - name: Display MaterialBlazor package output Ꙫ run: dir ${{env.outputMBMD3}} + - name: Compute the SHA256 hash of material.blazor.md3.lib.module.js + shell: pwsh + run: | + .\computesha.ps1 ${{env.materialBlazorMD3LibModule}} ############################################################################################################ # deployghpages-mbcurrent diff --git a/ComputeSHA.ps1 b/ComputeSHA.ps1 new file mode 100644 index 000000000..71a13a3d0 --- /dev/null +++ b/ComputeSHA.ps1 @@ -0,0 +1,10 @@ +param( + [Parameter(Mandatory=$True, + ValueFromPipeline=$True)] + $filePath +) + +$hasher = [System.Security.Cryptography.SHA256]::Create() +$content = Get-Content -Path $filePath -AsByteStream -Raw +$hash = [System.Convert]::ToBase64String($hasher.ComputeHash($content)) +Write-Output ($filePath.ToString() + ": " + $hash) \ No newline at end of file diff --git a/Material.Blazor.MD3/package-lock.json b/Material.Blazor.MD3/package-lock.json index 611657425..cd9e09705 100644 --- a/Material.Blazor.MD3/package-lock.json +++ b/Material.Blazor.MD3/package-lock.json @@ -16,7 +16,7 @@ "@babel/plugin-transform-runtime": "^7.23.7", "@babel/preset-env": "^7.23.8", "@babel/preset-typescript": "^7.23.3", - "@material/web": "^1.1.2-nightly.6efc904.0", + "@material/web": "^1.1.2-nightly.a3b2be8.0", "babel-loader": "^9.1.3", "fork-ts-checker-webpack-plugin": "^9.0.2", "material-components-web": "14.0.0", @@ -2679,9 +2679,9 @@ } }, "node_modules/@material/web": { - "version": "1.1.2-nightly.cef1b74.0", - "resolved": "https://registry.npmjs.org/@material/web/-/web-1.1.2-nightly.cef1b74.0.tgz", - "integrity": "sha512-pTprwiP/YHm0s/kmcL1FcXqeUjNt94KzCNFjZNuN3IDTQWpmIqSYae7RxZKPhMi9PXjlqASYXguv6Q/aR26XKA==", + "version": "1.1.2-nightly.a3b2be8.0", + "resolved": "https://registry.npmjs.org/@material/web/-/web-1.1.2-nightly.a3b2be8.0.tgz", + "integrity": "sha512-9bkVNsERX3UiJSX3V/NDGs9djK4g8kN/XiZalR+MkLLKLzL7PhtcCI3orHRnIB2DQeraw8euHDdMUdLz3JU+rg==", "dev": true, "dependencies": { "lit": "^2.7.4 || ^3.0.0", diff --git a/Material.Blazor.MD3/package.json b/Material.Blazor.MD3/package.json index c6bf163e9..e26673087 100644 --- a/Material.Blazor.MD3/package.json +++ b/Material.Blazor.MD3/package.json @@ -26,7 +26,7 @@ "@babel/plugin-transform-runtime": "^7.23.7", "@babel/preset-env": "^7.23.8", "@babel/preset-typescript": "^7.23.3", - "@material/web": "^1.1.2-nightly.6efc904.0", + "@material/web": "^1.1.2-nightly.a3b2be8.0", "babel-loader": "^9.1.3", "fork-ts-checker-webpack-plugin": "^9.0.2", "material-components-web": "14.0.0", diff --git a/Material.Blazor.Website.Server.MD3/Material.Blazor.Website.Server.MD3.csproj b/Material.Blazor.Website.Server.MD3/Material.Blazor.Website.Server.MD3.csproj index baada977a..0e8a66634 100644 --- a/Material.Blazor.Website.Server.MD3/Material.Blazor.Website.Server.MD3.csproj +++ b/Material.Blazor.Website.Server.MD3/Material.Blazor.Website.Server.MD3.csproj @@ -21,4 +21,20 @@ + + + diff --git a/Material.Blazor.Website/package-lock.json b/Material.Blazor.Website/package-lock.json index 07ceb9c4d..c8c7bfee2 100644 --- a/Material.Blazor.Website/package-lock.json +++ b/Material.Blazor.Website/package-lock.json @@ -24,7 +24,7 @@ "terser": "^5.24.0", "ts-loader": "^9.5.1", "typescript": "^5.3.2", - "webpack": "^5.89.0", + "webpack": "^5.90.0", "webpack-cli": "^5.1.4" } }, @@ -2702,9 +2702,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", - "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", + "version": "20.11.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.10.tgz", + "integrity": "sha512-rZEfe/hJSGYmdfX9tvcPMYeYPW2sNl50nsw4jZmRcaG0HIAb0WYEpsB05GOb53vjqpyE9GUhlDQ4jLSoB5q9kg==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -4816,9 +4816,9 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -4919,9 +4919,9 @@ } }, "node_modules/terser": { - "version": "5.24.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", - "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", + "version": "5.27.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.0.tgz", + "integrity": "sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -4937,16 +4937,16 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -5305,19 +5305,19 @@ } }, "node_modules/webpack": { - "version": "5.89.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", - "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", + "version": "5.90.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.90.0.tgz", + "integrity": "sha512-bdmyXRCXeeNIePv6R6tGPyy20aUobw4Zy8r0LUS2EWO+U+Ke/gYDgsCh7bl5rB6jPpr4r0SZa6dPxBxLooDT3w==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", + "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.11.5", "@webassemblyjs/wasm-edit": "^1.11.5", "@webassemblyjs/wasm-parser": "^1.11.5", "acorn": "^8.7.1", "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", "enhanced-resolve": "^5.15.0", "es-module-lexer": "^1.2.1", @@ -5331,7 +5331,7 @@ "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", + "terser-webpack-plugin": "^5.3.10", "watchpack": "^2.4.0", "webpack-sources": "^3.2.3" }, diff --git a/Material.Blazor.Website/package.json b/Material.Blazor.Website/package.json index 1acdd27bc..7ad42ce5e 100644 --- a/Material.Blazor.Website/package.json +++ b/Material.Blazor.Website/package.json @@ -35,7 +35,7 @@ "terser": "^5.24.0", "ts-loader": "^9.5.1", "typescript": "^5.3.2", - "webpack": "^5.89.0", + "webpack": "^5.90.0", "webpack-cli": "^5.1.4" } } diff --git a/Material.Blazor.sln b/Material.Blazor.sln index 68464442e..4937829b5 100644 --- a/Material.Blazor.sln +++ b/Material.Blazor.sln @@ -10,6 +10,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".Solution Items", ".Solutio .gitignore = .gitignore CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md ctag.cmd = ctag.cmd + ComputeSHA.ps1 = ComputeSHA.ps1 .github\dependabot.yml = .github\dependabot.yml Directory.Build.props = Directory.Build.props filterConfig.yml = filterConfig.yml