{ "name": "openproject-frontend", "repository": "https://github.com/opf/openproject", "license": "GPLv3", "version": "0.1.0", "private": true, "devDependencies": { "@angular-devkit/build-angular": "~12.2.6", "@angular-eslint/builder": "^12.0.0", "@angular-eslint/eslint-plugin": "^12.0.0", "@angular-eslint/eslint-plugin-template": "^12.0.0", "@angular-eslint/schematics": "12.5.0", "@angular-eslint/template-parser": "^12.0.0", "@angular/language-service": "12.2.6", "@html-eslint/eslint-plugin": "^0.11.0", "@html-eslint/parser": "^0.11.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "@types/chart.js": "^2.9.20", "@types/codemirror": "0.0.87", "@types/dragula": "^3.7.0", "@types/hammerjs": "^2.0.36", "@types/jasmine": "~3.6.0", "@types/jquery": "^3.3.33", "@types/jqueryui": "^1.12.10", "@types/lodash": "^4.14.149", "@types/mime": "^2.0.3", "@types/moment-timezone": "^0.5.12", "@types/mousetrap": "^1.6.3", "@types/pako": "^1.0.1", "@types/resize-observer-browser": "^0.1.4", "@types/swagger-ui": "^3.47.0", "@types/urijs": "^1.19.6", "@types/webpack-env": "^1.16.0", "@typescript-eslint/eslint-plugin": "4.23.0", "@typescript-eslint/parser": "4.23.0", "browserslist": "^4.9.1", "codelyzer": "^6.0.0", "eslint": "^7.26.0", "eslint-config-airbnb-base": "^14.2.1", "eslint-config-airbnb-typescript": "^12.3.1", "eslint-plugin-change-detection-strategy": "^0.1.1", "eslint-plugin-import": "^2.22.1", "eslint-plugin-jasmine": "^4.1.2", "eslint-plugin-jsx-a11y": "^6.4.1", "eslint-plugin-react": "^7.24.0", "eslint-plugin-react-hooks": "^4.2.0", "esprint": "^3.1.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~6.3.16", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-coverage-istanbul-reporter": "~3.0.2", "karma-jasmine": "~3.3.0", "karma-jasmine-html-reporter": "^1.5.0", "karma-spec-reporter": "^0.0.32", "optimist": "^0.6.1", "source-map-explorer": "^2.5.2", "theo": "^8.1.5", "ts-node": "~8.3.0", "typescript": "~4.2.4", "webfonts-generator": "^0.4.0", "webpack-bundle-analyzer": "^4.4.2" }, "dependencies": { "@angular/animations": "~12.2.6", "@angular/cdk": "^12.2.6", "@angular/cli": "~12.2.6", "@angular/common": "~12.2.6", "@angular/compiler": "~12.2.6", "@angular/compiler-cli": "~12.2.6", "@angular/core": "~12.2.6", "@angular/forms": "~12.2.6", "@angular/platform-browser": "~12.2.6", "@angular/platform-browser-dynamic": "~12.2.6", "@angular/router": "~12.2.6", "@datorama/akita": "^6.2.0", "@fullcalendar/angular": "5.10.1", "@fullcalendar/common": "^5.10.1", "@fullcalendar/core": "5.10.1", "@fullcalendar/daygrid": "5.10.1", "@fullcalendar/interaction": "5.10.1", "@fullcalendar/resource-common": "^5.10.1", "@fullcalendar/resource-timeline": "5.10.1", "@fullcalendar/timegrid": "5.10.1", "@kolkov/ngx-gallery": "^1.0.11", "@ng-select/ng-option-highlight": "0.0.5", "@ng-select/ng-select": "^4.0.4", "@ngneat/content-loader": "^6.1.0", "@ngx-formly/core": "^5.10.19", "@sentry/angular": "6.2.3", "@sentry/tracing": "6.2.3", "@sentry/types": "^6.2.3", "@uirouter/angular": "^8.0.1", "@uirouter/core": "^6.0.7", "@uirouter/rx": "^0.6.5", "@w11k/ngx-componentdestroyed": "^5.0.2", "@xeokit/xeokit-bim-viewer": "2.3.10", "autoprefixer": "^9.6.1", "byte-base64": "^1.1.0", "cdk-drag-scroll": "^0.0.6", "chart.js": "2.9.4", "chartjs-plugin-datalabels": "^0.6.0", "codemirror": "^5.62.0", "copy-text-to-clipboard": "^3.0.0", "core-js": "^3.2.1", "crossvent": "^1.5.4", "dom-autoscroller": "^2.2.8", "dom-plane": "^1.0.2", "dragula": "^3.5.2", "expose-loader": "^0.7.5", "flatpickr": "^4.6.3", "fuse.js": "^3.4.5", "glob": "^7.1.4", "hammerjs": "^2.0.8", "jquery": "^3.5.1", "jquery-ui": "1.13.0", "jquery-ujs": "^1.2.2", "jquery.caret": "^0.3.1", "json5": "^2.1.0", "lodash": "^4.17.19", "mark.js": "^8.11.0", "mime": "^2.5.2", "moment": "^2.24.0", "moment-timezone": "^0.5.26", "mousetrap": "~1.6.3", "ng-dynamic-component": "^6.0.0", "ng2-charts": "^2.3.1", "ng2-dragula": "^2.1.1", "observable-array": "0.0.4", "pako": "^2.0.3", "reactivestates": "2.0.1", "reflect-metadata": "^0.1.13", "rxjs": "^6.6.6", "screenfull": "^4.2.1", "swagger-ui": "^4.1.3", "tablesorter": "^2.31.3", "ts-action": "^11.0.0", "ts-action-operators": "^9.1.2", "typedjson": "^1.5.1", "urijs": "^1.19.8", "zone.js": "~0.11.4" }, "scripts": { "analyze": "ng build --configuration production --stats-json && webpack-bundle-analyzer -h 0.0.0.0 -p 9999 ../public/assets/frontend/stats.json", "prebuild": "./scripts/link_plugin_placeholder.js", "build": "node --max_old_space_size=4096 ./node_modules/@angular/cli/bin/ng build --configuration production --named-chunks --extract-css --source-map", "build:watch": "node --max_old_space_size=4096 ./node_modules/@angular/cli/bin/ng build --watch --named-chunks --extract-css", "tokens:generate": "theo src/app/spot/styles/tokens/tokens.yml --transform web --format sass,json --dest src/app/spot/styles/tokens/dist", "icon-font:generate": "node ./src/app/spot/icon-font/generate.js ./src/app/spot/icon-font", "preserve": "./scripts/link_plugin_placeholder.js", "serve": "NG_PERSISTENT_BUILD_CACHE=1 node --max_old_space_size=8096 ./node_modules/@angular/cli/bin/ng serve --host 0.0.0.0 --public-host http://localhost:4200", "serve:test": "NG_PERSISTENT_BUILD_CACHE=1 node --max_old_space_size=8096 ./node_modules/@angular/cli/bin/ng serve --host 0.0.0.0 --disable-host-check --public-host http://frontend-test:4200", "pretest": "./scripts/link_plugin_placeholder.js", "test": "ng test --watch=false", "test:watch": "ng test --watch=true", "lint": "esprint check", "lint:fix": "esprint check --fix", "lint:eslint": "eslint", "generate-typings": "tsc -d -p src/tsconfig.app.json" } }