feat: Add custom branding functionality with CSS and JSON configuration
- Introduced custom branding CSS styles in `custom-branding.css`. - Created example JSON configuration for custom branding in `custom-branding.example.json`. - Implemented branding configuration logic in `BrandingConfig.ts` to normalize and validate branding settings. - Developed CSS loader to manage loading and unloading of custom stylesheets in `BrandingCssLoader.ts`. - Added DOM rendering capabilities for branding elements in `BrandingDomRenderer.ts`. - Defined types and interfaces for branding elements and configurations in `BrandingTypes.ts`. - Included localization support for German in `de-de.js`. - Added unit tests for branding configuration, CSS loader, and DOM renderer. - Validated project structure and static assets with new validation scripts.
This commit is contained in:
25
build-classic.ps1
Normal file
25
build-classic.ps1
Normal file
@@ -0,0 +1,25 @@
|
||||
param(
|
||||
[string]$OutputPath = ''
|
||||
)
|
||||
|
||||
$sourcePath = Join-Path $PSScriptRoot 'classic'
|
||||
$resolvedOutputPath = if ([string]::IsNullOrWhiteSpace($OutputPath)) {
|
||||
Join-Path $sourcePath 'dist'
|
||||
}
|
||||
else {
|
||||
$ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath($OutputPath)
|
||||
}
|
||||
|
||||
if (-not (Test-Path -LiteralPath $resolvedOutputPath)) {
|
||||
New-Item -ItemType Directory -Path $resolvedOutputPath -Force | Out-Null
|
||||
}
|
||||
|
||||
foreach ($file in @('custom-branding-classic.js', 'classic-deployment.md')) {
|
||||
$source = Join-Path $sourcePath $file
|
||||
if (-not (Test-Path -LiteralPath $source)) { throw ('Classic-Datei fehlt: ' + $source) }
|
||||
Copy-Item -LiteralPath $source -Destination (Join-Path $resolvedOutputPath $file) -Force
|
||||
Write-Host ('Kopiert: ' + $file) -ForegroundColor Green
|
||||
}
|
||||
|
||||
Write-Host ('Classic-Paket erstellt: ' + $resolvedOutputPath) -ForegroundColor Green
|
||||
|
||||
Reference in New Issue
Block a user