{
  "name": "dspace-angular",
  "version": "9.1.0-next",
  "scripts": {
    "ng": "ng",
    "config:watch": "nodemon",
    "test:rest": "ts-node --project ./tsconfig.ts-node.json scripts/test-rest.ts",
    "start": "npm run start:prod",
    "start:dev": "nodemon --exec \"cross-env NODE_ENV=development npm run serve\"",
    "start:prod": "npm run build:prod && cross-env NODE_ENV=production npm run serve:ssr",
    "start:mirador:prod": "npm run build:mirador && npm run start:prod",
    "preserve": "npm run base-href",
    "serve": "ts-node --project ./tsconfig.ts-node.json scripts/serve.ts",
    "serve:ssr": "node dist/server/main",
    "analyze": "webpack-bundle-analyzer dist/browser/stats.json",
    "build": "ng build --configuration development",
    "build:stats": "ng build --stats-json",
    "build:prod": "cross-env NODE_ENV=production npm run build:ssr",
    "build:ssr": "ng build --configuration production && ng run dspace-angular:server:production",
    "build:lint": "rimraf 'lint/dist/**/*.js' 'lint/dist/**/*.js.map' && tsc -b lint/tsconfig.json",
    "test": "ng test --source-map=true --watch=false --configuration test",
    "test:watch": "nodemon --exec \"ng test --source-map=true --watch=true --configuration test\"",
    "test:headless": "ng test --source-map=true --watch=false --configuration test --browsers=ChromeHeadless --code-coverage",
    "test:lint": "npm run build:lint && npm run test:lint:nobuild",
    "test:lint:nobuild": "jasmine --config=lint/jasmine.json",
    "lint": "npm run build:lint && npm run lint:nobuild",
    "lint:nobuild": "ng lint",
    "lint-fix": "npm run build:lint && ng lint --fix=true",
    "docs:lint": "ts-node --project ./lint/tsconfig.json ./lint/generate-docs.ts",
    "e2e": "cross-env NODE_ENV=production ng e2e",
    "clean:dev:config": "rimraf src/assets/config.json",
    "clean:coverage": "rimraf coverage",
    "clean:dist": "rimraf dist",
    "clean:doc": "rimraf doc",
    "clean:log": "rimraf *.log*",
    "clean:json": "rimraf *.records.json",
    "clean:node": "rimraf node_modules",
    "clean:cli": "rimraf .angular/cache",
    "clean:prod": "npm run clean:dist && npm run clean:log && npm run clean:doc && npm run clean:coverage && npm run clean:json",
    "clean": "npm run clean:prod && npm run clean:dev:config && npm run clean:cli && npm run clean:node",
    "sync-i18n": "ts-node --project ./tsconfig.ts-node.json scripts/sync-i18n-files.ts",
    "build:mirador": "webpack --config webpack/webpack.mirador.config.ts",
    "merge-i18n": "ts-node --project ./tsconfig.ts-node.json scripts/merge-i18n-files.ts",
    "cypress:open": "cypress open",
    "cypress:run": "cypress run",
    "env:yaml": "ts-node --project ./tsconfig.ts-node.json scripts/env-to-yaml.ts",
    "base-href": "ts-node --project ./tsconfig.ts-node.json scripts/base-href.ts",
    "check-circ-deps": "npx madge --exclude '(bitstream|bundle|collection|config-submission-form|eperson|item|version)\\.model\\.ts$' --circular --extensions ts ./",
    "postinstall": "npm run build:lint || echo 'Skipped DSpace ESLint plugins.'"
  },
  "browser": {
    "fs": false,
    "path": false,
    "http": false,
    "https": false
  },
  "private": true,
  "overrides": {
    "@kolkov/ngx-gallery": {
      "@angular/animations": "^18.2.12",
      "@angular/common": "^18.2.12",
      "@angular/core": "^18.2.12"
    },
    "@ng-bootstrap/ng-bootstrap": {
      "@angular/common": "^18.2.12",
      "@angular/core": "^18.2.12",
      "@angular/forms": "^18.2.12",
      "@angular/localize": "^18.2.12"
    },
    "@ng-dynamic-forms/core": {
      "@angular/common": "^18.2.12",
      "@angular/core": "^18.2.12",
      "@angular/forms": "^18.2.12"
    },
    "@ng-dynamic-forms/ui-ng-bootstrap": {
      "ngx-mask": "14.2.4",
      "@ng-bootstrap/ng-bootstrap": "^12.0.0",
      "bootstrap": "^5.3"
    },
    "@nicky-lenaers/ngx-scroll-to": {
      "@angular/common": "^18.2.12",
      "@angular/core": "^18.2.12"
    },
    "eslint-plugin-unused-imports": {
      "@typescript-eslint/eslint-plugin": "^7.2.0"
    },
    "ngx-infinite-scroll": {
      "@angular/common": "^18.2.12",
      "@angular/core": "^18.2.12"
    },
    "notistack": "3.0.1"
  },
  "dependencies": {
    "@angular/animations": "^18.2.12",
    "@angular/cdk": "^18.2.12",
    "@angular/common": "^18.2.12",
    "@angular/compiler": "^18.2.12",
    "@angular/core": "^18.2.12",
    "@angular/forms": "^18.2.12",
    "@angular/localize": "^18.2.12",
    "@angular/platform-browser": "^18.2.12",
    "@angular/platform-browser-dynamic": "^18.2.12",
    "@angular/platform-server": "^18.2.12",
    "@angular/router": "^18.2.12",
    "@angular/ssr": "^18.2.19",
    "@babel/runtime": "7.27.6",
    "@kolkov/ngx-gallery": "^2.0.1",
    "@ng-bootstrap/ng-bootstrap": "^12.0.0",
    "@ng-dynamic-forms/core": "^16.0.0",
    "@ng-dynamic-forms/ui-ng-bootstrap": "^16.0.0",
    "@ngrx/effects": "^18.1.1",
    "@ngrx/operators": "^18.0.0",
    "@ngrx/router-store": "^18.1.1",
    "@ngrx/store": "^18.1.1",
    "@ngx-translate/core": "^16.0.3",
    "@nicky-lenaers/ngx-scroll-to": "^14.0.0",
    "@terraformer/wkt": "^2.2.1",
    "altcha": "^0.9.0",
    "angulartics2": "^12.2.0",
    "axios": "^1.10.0",
    "bootstrap": "^5.3",
    "cerialize": "0.1.18",
    "cli-progress": "^3.12.0",
    "colors": "^1.4.0",
    "compression": "^1.7.5",
    "cookie-parser": "1.4.7",
    "core-js": "^3.42.0",
    "date-fns": "^2.29.3",
    "date-fns-tz": "^1.3.7",
    "deepmerge": "^4.3.1",
    "ejs": "^3.1.10",
    "express": "^4.21.2",
    "express-rate-limit": "^5.1.3",
    "fast-json-patch": "^3.1.1",
    "filesize": "^10.1.6",
    "http-proxy-middleware": "^2.0.9",
    "http-terminator": "^3.2.0",
    "isbot": "^5.1.28",
    "js-cookie": "2.2.1",
    "js-yaml": "^4.1.0",
    "json5": "^2.2.3",
    "jsonschema": "1.5.0",
    "jwt-decode": "^3.1.2",
    "leaflet": "^1.9.4",
    "leaflet-providers": "^2.0.0",
    "leaflet.markercluster": "^1.5.3",
    "lodash-es": "^4.17.21",
    "lru-cache": "^7.14.1",
    "markdown-it": "^13.0.1",
    "mirador": "^3.4.3",
    "mirador-dl-plugin": "^0.13.0",
    "mirador-share-plugin": "^0.16.0",
    "morgan": "^1.10.0",
    "ng2-file-upload": "7.0.1",
    "ng2-nouislider": "^2.0.0",
    "ngx-infinite-scroll": "^18.0.0",
    "ngx-matomo-client": "^6.4.1",
    "ngx-pagination": "6.0.3",
    "ngx-skeleton-loader": "^9.0.0",
    "ngx-ui-switch": "^15.0.0",
    "nouislider": "^15.7.1",
    "orejime": "^2.3.1",
    "pem": "1.14.8",
    "reflect-metadata": "^0.2.2",
    "rxjs": "^7.8.0",
    "uuid": "^8.3.2",
    "zone.js": "~0.14.10"
  },
  "devDependencies": {
    "@angular-builders/custom-webpack": "~18.0.0",
    "@angular-devkit/build-angular": "^18.2.19",
    "@angular-eslint/builder": "^18.4.1",
    "@angular-eslint/bundled-angular-compiler": "^18.4.1",
    "@angular-eslint/eslint-plugin": "^18.4.1",
    "@angular-eslint/eslint-plugin-template": "^18.4.1",
    "@angular-eslint/schematics": "^18.4.1",
    "@angular-eslint/template-parser": "^18.4.1",
    "@angular-eslint/utils": "^18.4.1",
    "@angular/cli": "^18.2.19",
    "@angular/compiler-cli": "^18.2.12",
    "@angular/language-service": "^18.2.12",
    "@cypress/schematic": "^1.5.0",
    "@fortawesome/fontawesome-free": "^6.7.2",
    "@ngrx/store-devtools": "^18.1.1",
    "@ngtools/webpack": "^18.2.19",
    "@types/deep-freeze": "0.1.5",
    "@types/ejs": "^3.1.2",
    "@types/express": "^4.17.17",
    "@types/grecaptcha": "^3.0.9",
    "@types/jasmine": "~3.6.0",
    "@types/js-cookie": "2.2.6",
    "@types/lodash-es": "^4.17.12",
    "@types/node": "^14.14.9",
    "@typescript-eslint/eslint-plugin": "^7.18.0",
    "@typescript-eslint/parser": "^7.18.0",
    "@typescript-eslint/rule-tester": "^7.18.0",
    "@typescript-eslint/utils": "^7.18.0",
    "axe-core": "^4.10.2",
    "compression-webpack-plugin": "^9.2.0",
    "copy-webpack-plugin": "^6.4.1",
    "cross-env": "^7.0.3",
    "cypress": "^13.17.0",
    "cypress-axe": "^1.6.0",
    "deep-freeze": "0.0.1",
    "eslint": "^8.39.0",
    "eslint-plugin-deprecation": "^1.4.1",
    "eslint-plugin-dspace-angular-html": "file:./lint/dist/src/rules/html",
    "eslint-plugin-dspace-angular-ts": "file:./lint/dist/src/rules/ts",
    "eslint-plugin-import": "^2.31.0",
    "eslint-plugin-import-newlines": "^1.3.1",
    "eslint-plugin-jsdoc": "^45.0.0",
    "eslint-plugin-jsonc": "^2.20.1",
    "eslint-plugin-lodash": "^7.4.0",
    "eslint-plugin-rxjs": "^5.0.3",
    "eslint-plugin-simple-import-sort": "^10.0.0",
    "eslint-plugin-unused-imports": "^3.2.0",
    "express-static-gzip": "^2.2.0",
    "jasmine": "^3.8.0",
    "jasmine-core": "^3.8.0",
    "jasmine-marbles": "0.9.2",
    "karma": "^6.4.4",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage-istanbul-reporter": "~3.0.3",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.5.0",
    "karma-mocha-reporter": "2.2.5",
    "ng-mocks": "^14.13.5",
    "ngx-mask": "14.2.4",
    "nodemon": "^2.0.22",
    "postcss": "^8.5",
    "postcss-import": "^14.0.0",
    "postcss-loader": "^4.0.3",
    "postcss-preset-env": "^7.4.2",
    "rimraf": "^3.0.2",
    "sass": "~1.89.1",
    "sass-loader": "^12.6.0",
    "sass-resources-loader": "^2.2.5",
    "ts-node": "^8.10.2",
    "typescript": "~5.4.5",
    "webpack": "5.99.9",
    "webpack-cli": "^5.1.4",
    "webpack-dev-server": "^4.15.1"
  }
}
