mirror of
https://github.com/AtomUI/AtomUI.git
synced 2026-10-16 21:21:03 +08:00
76 lines
5.1 KiB
PowerShell
76 lines
5.1 KiB
PowerShell
$repositoryRoot = Split-Path -Parent $PSScriptRoot
|
|
|
|
$AtomUIReleaseBuildPrerequisiteProjects = @(
|
|
"src/AtomUI.Build.Tasks/AtomUI.Build.Tasks.csproj",
|
|
"src/AtomUI.Generator.LinkedPublish/AtomUI.Generator.LinkedPublish.csproj"
|
|
)
|
|
|
|
$AtomUIReleasePackages = @(
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Native"; ProjectPath = "src/AtomUI.Native/AtomUI.Native.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Localization"; ProjectPath = "src/AtomUI.Localization/AtomUI.Localization.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Core"; ProjectPath = "src/AtomUI.Core/AtomUI.Core.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Fonts.AlibabaSans"; ProjectPath = "src/AtomUI.Fonts.AlibabaSans/AtomUI.Fonts.AlibabaSans.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Controls.Shared"; ProjectPath = "src/AtomUI.Controls.Shared/AtomUI.Controls.Shared.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Controls"; ProjectPath = "src/AtomUI.Controls/AtomUI.Controls.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Desktop.Controls"; ProjectPath = "src/AtomUI.Desktop.Controls/AtomUI.Desktop.Controls.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Toolkits.GalleryBase"; ProjectPath = "src/AtomUI.Toolkits.GalleryBase/AtomUI.Toolkits.GalleryBase.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Generator"; ProjectPath = "src/AtomUI.Generator/AtomUI.Generator.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Icons.Shared"; ProjectPath = "src/AtomUI.Icons.Shared/AtomUI.Icons.Shared.csproj" },
|
|
[PSCustomObject]@{ Group = "Base"; PackageId = "AtomUI.Icons.AntDesign"; ProjectPath = "src/AtomUI.Icons.AntDesign/AtomUI.Icons.AntDesign.csproj" },
|
|
[PSCustomObject]@{ Group = "Extension"; PackageId = "AtomUI.Desktop.Controls.DataGrid"; ProjectPath = "src/AtomUI.Desktop.Controls.DataGrid/AtomUI.Desktop.Controls.DataGrid.csproj" },
|
|
[PSCustomObject]@{ Group = "Extension"; PackageId = "AtomUI.Desktop.Controls.ColorPicker"; ProjectPath = "src/AtomUI.Desktop.Controls.ColorPicker/AtomUI.Desktop.Controls.ColorPicker.csproj" },
|
|
[PSCustomObject]@{ Group = "Extension"; PackageId = "AtomUI.Desktop.Controls.Extras"; ProjectPath = "src/AtomUI.Desktop.Controls.Extras/AtomUI.Desktop.Controls.Extras.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.LanguagePack.Template"; ProjectPath = "src/AtomUI.LanguagePack.Template/AtomUI.LanguagePack.Template.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.Controls.I18n.PtBR"; ProjectPath = "src/LanguagePacks/pt-BR/AtomUI.Controls.I18n.PtBR/AtomUI.Controls.I18n.PtBR.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.Desktop.Controls.I18n.PtBR"; ProjectPath = "src/LanguagePacks/pt-BR/AtomUI.Desktop.Controls.I18n.PtBR/AtomUI.Desktop.Controls.I18n.PtBR.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.Desktop.Controls.DataGrid.I18n.PtBR"; ProjectPath = "src/LanguagePacks/pt-BR/AtomUI.Desktop.Controls.DataGrid.I18n.PtBR/AtomUI.Desktop.Controls.DataGrid.I18n.PtBR.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.Desktop.Controls.ColorPicker.I18n.PtBR"; ProjectPath = "src/LanguagePacks/pt-BR/AtomUI.Desktop.Controls.ColorPicker.I18n.PtBR/AtomUI.Desktop.Controls.ColorPicker.I18n.PtBR.csproj" },
|
|
[PSCustomObject]@{ Group = "Language"; PackageId = "AtomUI.I18n.PtBR"; ProjectPath = "src/LanguagePacks/pt-BR/AtomUI.I18n.PtBR/AtomUI.I18n.PtBR.csproj" }
|
|
)
|
|
|
|
$duplicatePackageIds = @(
|
|
$AtomUIReleasePackages |
|
|
Group-Object PackageId |
|
|
Where-Object Count -gt 1 |
|
|
Select-Object -ExpandProperty Name
|
|
)
|
|
if ($duplicatePackageIds.Count -gt 0) {
|
|
throw "Duplicate NuGet package IDs: $($duplicatePackageIds -join ', ')"
|
|
}
|
|
|
|
foreach ($package in $AtomUIReleasePackages) {
|
|
$package.ProjectPath = Join-Path $repositoryRoot $package.ProjectPath
|
|
if (-not (Test-Path -LiteralPath $package.ProjectPath -PathType Leaf)) {
|
|
throw "NuGet package project does not exist: $($package.ProjectPath)"
|
|
}
|
|
}
|
|
|
|
$AtomUIReleaseBuildPrerequisiteProjects = @(
|
|
foreach ($project in $AtomUIReleaseBuildPrerequisiteProjects) {
|
|
$projectPath = Join-Path $repositoryRoot $project
|
|
if (-not (Test-Path -LiteralPath $projectPath -PathType Leaf)) {
|
|
throw "NuGet build prerequisite project does not exist: $projectPath"
|
|
}
|
|
|
|
$projectPath
|
|
}
|
|
)
|
|
|
|
$AtomUIReleasePackageProjects = @($AtomUIReleasePackages | Select-Object -ExpandProperty ProjectPath)
|
|
$AtomUIBasePackageProjects = @(
|
|
$AtomUIReleasePackages |
|
|
Where-Object Group -eq "Base" |
|
|
Select-Object -ExpandProperty ProjectPath
|
|
)
|
|
$AtomUIExtensionPackageProjects = @(
|
|
$AtomUIReleasePackages |
|
|
Where-Object Group -eq "Extension" |
|
|
Select-Object -ExpandProperty ProjectPath
|
|
)
|
|
$AtomUILanguagePackageProjects = @(
|
|
$AtomUIReleasePackages |
|
|
Where-Object Group -eq "Language" |
|
|
Select-Object -ExpandProperty ProjectPath
|
|
)
|
|
$AtomUIExpectedPackageIds = @($AtomUIReleasePackages | Select-Object -ExpandProperty PackageId)
|