Added support for air-gapped and enterprise environments where npm package access is restricted, specifically addressing esbuild platform binary download issues. **New Files:** - Dockerfile.frontend.prebuilt: Alternative Dockerfile that uses pre-built Angular files - DEPLOYMENT.md: Comprehensive deployment guide with two options **Changes:** - package.json: Added optionalDependencies for esbuild platform binaries - @esbuild/darwin-arm64 - @esbuild/darwin-x64 - @esbuild/linux-arm64 - @esbuild/linux-x64 **Deployment Options:** **Option 1 - Standard Build (current default):** - Builds Angular in Docker - Requires npm registry access - Best for cloud/development **Option 2 - Pre-built (for air-gapped):** 1. Build Angular locally: npm run build:prod 2. Change dockerfile in docker-compose.yml to Dockerfile.frontend.prebuilt 3. Docker only needs to copy files, no npm required - No npm registry access needed during Docker build - Faster, more reliable builds - Best for enterprise/air-gapped/CI-CD **Troubleshooting:** See DEPLOYMENT.md for full troubleshooting guide including: - esbuild platform binary issues - Custom npm registry configuration - Environment-specific recommendations This addresses npm package access issues in restricted environments while maintaining flexibility for standard deployments. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
56 lines
1.4 KiB
JSON
56 lines
1.4 KiB
JSON
{
|
|
"name": "frontend",
|
|
"version": "0.0.0",
|
|
"scripts": {
|
|
"ng": "ng",
|
|
"start": "ng serve --proxy-config proxy.conf.json",
|
|
"build": "ng build",
|
|
"build:prod": "ng build --configuration production",
|
|
"watch": "ng build --watch --configuration development",
|
|
"test": "ng test"
|
|
},
|
|
"prettier": {
|
|
"printWidth": 100,
|
|
"singleQuote": true,
|
|
"overrides": [
|
|
{
|
|
"files": "*.html",
|
|
"options": {
|
|
"parser": "angular"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"private": true,
|
|
"dependencies": {
|
|
"@angular/common": "^19.0.0",
|
|
"@angular/compiler": "^19.0.0",
|
|
"@angular/core": "^19.0.0",
|
|
"@angular/forms": "^19.0.0",
|
|
"@angular/platform-browser": "^19.0.0",
|
|
"@angular/router": "^19.0.0",
|
|
"rxjs": "~7.8.0",
|
|
"tslib": "^2.3.0",
|
|
"zone.js": "~0.15.0"
|
|
},
|
|
"devDependencies": {
|
|
"@angular/build": "^19.0.0",
|
|
"@angular/cli": "^19.0.0",
|
|
"@angular/compiler-cli": "^19.0.0",
|
|
"@types/jasmine": "~5.1.0",
|
|
"jasmine-core": "~5.9.0",
|
|
"karma": "~6.4.0",
|
|
"karma-chrome-launcher": "~3.2.0",
|
|
"karma-coverage": "~2.2.0",
|
|
"karma-jasmine": "~5.1.0",
|
|
"karma-jasmine-html-reporter": "~2.1.0",
|
|
"typescript": "~5.8.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"@esbuild/darwin-arm64": "^0.25.4",
|
|
"@esbuild/darwin-x64": "^0.25.4",
|
|
"@esbuild/linux-arm64": "^0.25.4",
|
|
"@esbuild/linux-x64": "^0.25.4"
|
|
}
|
|
}
|