web-app/package.json

157 lines
5.5 KiB
JSON

{
"name": "mifosx-web-app",
"version": "1.0.0",
"description": "Mifos® X Web App is the default web application built on top of the Apache Fineract® platform for the Mifos® user community leveraging the popular Angular framework.",
"keywords": [
"mifos®",
"openmf",
"fineract",
"angular"
],
"homepage": "https://github.com/openMF/web-app",
"license": "MPL-2.0",
"scripts": {
"prepare": "husky",
"ng": "ng",
"build": "node version.js && npm run env -s && ng build --configuration production --output-hashing=none",
"build:prod": "node version.js && node --max-old-space-size=16384 ./node_modules/@angular/cli/bin/ng build --configuration production --output-hashing=none --base-href=/web-app/",
"start": "npm run env -s && ng serve --proxy-config proxy.conf.js",
"serve:dev": "npm run env -s && ng serve --source-map",
"serve:sw": "npm run build -s && npx http-server ./dist -p 4200",
"lint": "eslint . && stylelint \"src/**/*.scss\" && prettier . --check && htmlhint \"src\" --config .htmlhintrc",
"test": "jest --config jest.config.ts",
"test:watch": "jest --config jest.config.ts --watch",
"test:coverage": "jest --config jest.config.ts --coverage",
"test:ci": "jest --config jest.config.ts --ci --coverage --watchAll=false",
"e2e": "ng e2e",
"translations:extract": "ngx-translate-extract --input ./src --output ./src/translations/template.json --format=json --clean -sort --marker extract",
"env": "node version.js",
"postinstall": "node version.js",
"cypress:open": "cypress open",
"cypress:run": "cypress run",
"playwright": "playwright test",
"playwright:ui": "playwright test --ui",
"playwright:headed": "playwright test --headed",
"playwright:debug": "playwright test --debug",
"headers:check": "node scripts/check-file-headers.js",
"headers:add": "node scripts/add-file-headers.js"
},
"dependencies": {
"@angular/animations": "20.3.16",
"@angular/cdk": "^20.2.14",
"@angular/common": "20.3.16",
"@angular/compiler": "20.3.16",
"@angular/core": "20.3.16",
"@angular/forms": "20.3.16",
"@angular/localize": "20.3.16",
"@angular/material": "^20.2.14",
"@angular/platform-browser": "20.3.16",
"@angular/platform-browser-dynamic": "20.3.16",
"@angular/router": "20.3.16",
"@fortawesome/angular-fontawesome": "^3.0.0",
"@fortawesome/fontawesome-free": "^6.7.2",
"@fortawesome/fontawesome-svg-core": "^6.7.2",
"@fortawesome/free-brands-svg-icons": "^6.7.2",
"@fortawesome/free-solid-svg-icons": "^6.7.2",
"@material/web": "^2.4.1",
"@ngx-translate/core": "^16.0.4",
"@ngx-translate/http-loader": "^16.0.1",
"@swimlane/ngx-graph": "^11.0.0",
"@tailwindcss/forms": "^0.5.4",
"@tinymce/tinymce-angular": "^9.1.1",
"angular-oauth2-oidc": "^20.0.0",
"chart.js": "^4.5.1",
"d3": "^7.9.0",
"exceljs": "^4.4.0",
"html2canvas": "^1.4.1",
"jspdf": "^3.0.1",
"jspdf-autotable": "^5.0.2",
"lightgallery": "^2.9.0",
"lodash": "4.17.23",
"moment": "^2.29.4",
"ngx-mat-select-search": "^8.0.2",
"rxjs": "^7.8.2",
"tinymce": "^8.2.2",
"tslib": "^2.8.1",
"vkbeautify": "^0.99.3",
"zone.js": "0.15.1"
},
"devDependencies": {
"@angular-builders/jest": "^20.0.0",
"@angular-eslint/builder": "^20.7.0",
"@angular-eslint/eslint-plugin": "^20.7.0",
"@angular-eslint/eslint-plugin-template": "^20.7.0",
"@angular-eslint/schematics": "^20.7.0",
"@angular-eslint/template-parser": "^20.7.0",
"@angular/build": "^20.3.15",
"@angular/cli": "20.3.15",
"@angular/compiler-cli": "20.3.16",
"@angular/language-service": "20.3.16",
"@cypress/schematic": "^2.5.2",
"@playwright/test": "^1.57.0",
"@types/d3-dispatch": "^3.0.1",
"@types/d3-drag": "^3.0.1",
"@types/d3-scale": "^3.2.2",
"@types/d3-shape": "^3.1.0",
"@types/d3-timer": "^3.0.0",
"@types/jasminewd2": "2.0.6",
"@types/jest": "^29.5.14",
"@types/lodash": "4.14.132",
"@types/node": "22.15.29",
"@types/vkbeautify": "^0.99.2",
"@typescript-eslint/eslint-plugin": "^8.48.1",
"@typescript-eslint/parser": "^8.48.1",
"@vendure/ngx-translate-extract": "^9.4.0",
"cypress": "^13.17.0",
"eslint": "^9.39.1",
"git-describe": "^4.1.1",
"htmlhint": "1.1.4",
"https-proxy-agent": "7.0.2",
"husky": "^9.1.7",
"jasmine-core": "^4.2.0",
"jasmine-spec-reporter": "~5.0.0",
"jest": "^29.7.0",
"jest-preset-angular": "^14.6.2",
"lint-staged": "^15.2.10",
"prettier": "^3.6.2",
"prettier-plugin-multiline-arrays": "^4.0.5",
"puppeteer": "^24.4.0",
"stylelint": "^16.10.0",
"stylelint-config-recommended-scss": "^14.1.0",
"stylelint-config-standard": "^36.0.1",
"stylelint-scss": "^6.8.1",
"tailwindcss": "^3.3.3",
"ts-node": "^10.9.2",
"typescript": "^5.9.3"
},
"repository": {
"type": "git",
"url": "git+https://github.com/openMF/web-app.git"
},
"bugs": {
"url": "https://mifosforge.jira.com/jira/software/c/projects/WEB/boards/62"
},
"engines": {
"node": ">= 20.19.0",
"npm": ">= 8.11.0"
},
"lint-staged": {
"*.{js,jsx,ts,tsx}": [
"node scripts/check-file-headers.js",
"eslint --cache"
],
"*.{css,scss}": [
"node scripts/check-file-headers.js",
"stylelint"
],
"*.html": "node scripts/check-file-headers.js",
"*": "prettier --check --ignore-unknown"
},
"overrides": {
"exceljs": {
"archiver": "^7.0.1",
"unzipper": "^0.12.3"
}
}
}