{ "name": "portmaster", "version": "0.8.11", "scripts": { "ng": "ng", "start": "npm install && npm run build-libs:dev && ng serve --proxy-config ./proxy.json", "build-libs": "NODE_ENV=production ng build --configuration production @safing/ui && NODE_ENV=production ng build --configuration production @safing/portmaster-api", "build-libs:dev": "ng build --configuration development @safing/ui && ng build --configuration development @safing/portmaster-api", "serve": "npm run build-libs:dev && ng serve --proxy-config ./proxy.json", "build:dev": "npm run build-libs:dev && ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "zip-dist": "node pack.js", "chrome-extension": "NODE_ENV=production ng build --configuration production portmaster-chrome-extension", "chrome-extension:dev": "ng build --configuration development portmaster-chrome-extension --watch", "build": "npm run build-libs && NODE_ENV=production ng build --configuration production --base-href /ui/modules/portmaster/", "build-tauri": "npm run build-libs && NODE_ENV=production ng build --configuration production tauri-builtin", "serve-tauri-builtin": "ng serve tauri-builtin --port 4100", "serve-app": "ng serve --port 4200 --proxy-config ./proxy.json", "tauri-dev": "npm install && run-s build-libs:dev && run-p serve-app serve-tauri-builtin" }, "private": true, "dependencies": { "@angular/animations": "^16.0.1", "@angular/cdk": "^16.0.1", "@angular/common": "^16.0.1", "@angular/compiler": "^16.0.1", "@angular/core": "^16.0.1", "@angular/forms": "^16.0.1", "@angular/localize": "^16.0.1", "@angular/platform-browser": "^16.0.1", "@angular/platform-browser-dynamic": "^16.0.1", "@angular/router": "^16.0.1", "@fortawesome/angular-fontawesome": "^0.13.0", "@fortawesome/fontawesome-svg-core": "^6.4.0", "@fortawesome/free-brands-svg-icons": "^6.4.0", "@fortawesome/free-regular-svg-icons": "^6.4.0", "@fortawesome/free-solid-svg-icons": "^6.4.0", "@tauri-apps/api": ">=2.1.1", "@tauri-apps/plugin-cli": ">=2.0.0", "@tauri-apps/plugin-clipboard-manager": ">=2.0.0", "@tauri-apps/plugin-dialog": ">=2.0.0", "@tauri-apps/plugin-notification": ">=2.0.0", "@tauri-apps/plugin-os": ">=2.0.0", "@tauri-apps/plugin-shell": "^2.0.1", "autoprefixer": "^10.4.14", "d3": "^7.8.4", "data-urls": "^5.0.0", "emoji-toolkit": "^7.0.1", "fuse.js": "^6.6.2", "ng-zorro-antd": "^16.1.0", "ngx-markdown": "^16.0.0", "postcss": "^8.4.23", "prismjs": "^1.29.0", "psl": "^1.9.0", "rxjs": "~7.8.1", "topojson-client": "^3.1.0", "topojson-simplify": "^3.0.3", "tslib": "^2.5.0", "whatwg-encoding": "^3.1.1", "zone.js": "^0.13.0" }, "devDependencies": { "@angular-builders/custom-webpack": "^16.0.0-beta.1", "@angular-devkit/build-angular": "^16.0.1", "@angular-eslint/builder": "16.0.1", "@angular-eslint/eslint-plugin": "16.0.1", "@angular-eslint/eslint-plugin-template": "16.0.1", "@angular-eslint/schematics": "16.0.1", "@angular-eslint/template-parser": "16.0.1", "@angular/cli": "^16.0.1", "@angular/compiler-cli": "^16.0.1", "@fullhuman/postcss-purgecss": "^5.0.0", "@types/chrome": "^0.0.236", "@types/d3": "^7.4.0", "@types/data-urls": "^3.0.4", "@types/jasmine": "^4.3.1", "@types/jasminewd2": "~2.0.10", "@types/node": "^20.1.5", "@types/psl": "^1.1.0", "@types/topojson-client": "^3.1.1", "@types/topojson-simplify": "^3.0.1", "@types/whatwg-encoding": "^2.0.3", "@typescript-eslint/eslint-plugin": "^5.59.6", "@typescript-eslint/parser": "^5.59.6", "eslint": "^8.40.0", "jasmine-core": "^5.0.0", "jasmine-spec-reporter": "^7.0.0", "js-yaml-loader": "^1.2.2", "ng-packagr": "^16.0.1", "npm-run-all": "^4.1.5", "postcss-import": "^15.1.0", "postcss-loader": "^7.3.0", "postcss-scss": "^4.0.6", "protractor": "~7.0.0", "tailwindcss": "^3.3.2", "ts-node": "^10.9.1", "typescript": "4.9", "webpack-bundle-analyzer": "^4.8.0", "webpack-ext-reloader": "^1.1.9", "zip-a-folder": "^1.1.5" } }