@dwp/govuk-casa
Version:
A framework for building GOVUK Collect-And-Submit-Applications
107 lines (106 loc) • 4.54 kB
JSON
{
"name": "@dwp/govuk-casa",
"version": "9.6.2",
"description": "A framework for building GOVUK Collect-And-Submit-Applications",
"repository": {
"type": "git",
"url": "git@github.com:dwp/govuk-casa.git"
},
"main": "dist/casa.js",
"module": "dist/mjs/casa.js",
"exports": {
"types": "./dist/casa.d.ts",
"import": "./dist/mjs/esm-wrapper.js",
"require": "./dist/casa.js"
},
"files": [
"dist/**/*",
"locales/**/*",
"src/**/*.{js,cjs,mjs}",
"views/**/*",
"!dist/core-plugins/**/tests/",
"!src/core-plugins/**/tests/"
],
"engines": {
"node": ">=18 <=22",
"npm": ">=8 <=11"
},
"scripts": {
"pipeline": "npm run coverage && npm run lint",
"coverage": "c8 npm test",
"test": "npm run test:unit && npm run test:e2e && npm run core-plugin:edit-snapshot:test:e2e",
"test:unit": "mocha './tests/**/*.test.js'",
"test:e2e": "spiderplan --worker-init ./tests/e2e/worker-init.js --language en ./tests/e2e/personas/**/*.yaml",
"test:dast": "spiderplan --worker-init ./tests/e2e/worker-init.js --language en ./tests/e2e/personas/**/traversal.yaml --workers 1 --zap --zap-proxy 'http://localhost:8080/' --zap-target-hostname 'host.docker.internal'",
"test:dast:report": "curl -s --header 'X-ZAP-Api-Key: secret' http://localhost:8080/OTHER/core/other/htmlreport > gl-dast-report.html",
"test:dast:setup": "docker run --rm --name casa-dast -d -u zap -p 8080:8080 -i ghcr.io/zaproxy/zaproxy:bare@sha256:24a4037a3e8607d9fedbd75e4a7f1336d11998e1c331aab9991ef074f5de4b22 zap.sh -daemon -host 0.0.0.0 -port 8080 -config api.addrs.addr.name=\".*\" -config api.addrs.addr.regex=true -config api.key=secret -notel; npm run test:dast:ready-check",
"test:dast:ready-check": "while [ \"$(curl -Is -o /dev/null -w %{response_code} http://localhost:8080/)\" -ne \"200\" ]; do sleep 1; echo 'Waiting for ZAP to start ...'; done",
"test:dast:teardown": "docker stop casa-dast",
"lint": "eslint .",
"build": "npm run build:prepare && npm run build:sources && npm run build:css-assets",
"build:prepare": "rm -rf dist/* && mkdir -p dist/assets/js/ && mkdir -p dist/assets/css/",
"build:sources": "tsc -p tsconfig-cjs.json && ./scripts/fixup.sh && node scripts/esm-wrapper",
"build:css-assets": "node scripts/compile-sass.js",
"build:api-docs": "npx jsdoc -c ./jsdoc.json -d ./docs/api/ --debug -P '' -r -R ./README.md --verbose -t ./node_modules/docdash ./src",
"prepare": "npm run build",
"upgrade-deps": "OD=$(npm outdated --long --parseable); echo \"$OD\" | grep ':devDependencies:' | awk -F: '{ print $4 }' | xargs npm i -DE; echo \"$OD\" | grep ':dependencies:' | awk -F: '{ print $4 }' | xargs npm i -E",
"core-plugin:edit-snapshot:test:e2e": "spiderplan --worker-init ./src/core-plugins/edit-snapshot/tests/e2e/worker-init.js --language en \"./src/core-plugins/edit-snapshot/tests/e2e/personas/**/*.yaml\""
},
"keywords": [],
"author": "DWP Digital",
"license": "ISC",
"type": "module",
"dependencies": {
"@dagrejs/graphlib": "2.2.4",
"bytes": "3.1.2",
"cookie-parser": "1.4.7",
"csrf-sync": "4.2.1",
"debug": "4.4.3",
"deepmerge": "4.3.1",
"express": "4.21.2",
"express-session": "1.18.2",
"govuk-frontend": "5.13.0",
"helmet": "8.1.0",
"i18next": "25.5.3",
"i18next-http-middleware": "3.8.1",
"js-yaml": "4.1.0",
"lodash": "4.17.21",
"luxon": "3.7.2",
"nunjucks": "3.2.4",
"path-to-regexp": "8.3.0",
"rfdc": "1.4.1",
"validator": "13.15.15"
},
"devDependencies": {
"@ckeditor/jsdoc-plugins": "43.1.0",
"@dwp/commitlint-config-base": "5.0.0",
"@dwp/casa-spiderplan": "4.5.3",
"@dwp/casa-spiderplan-a11y-plugin": "1.0.3",
"@dwp/casa-spiderplan-zap-plugin": "1.0.4",
"@dwp/eslint-config-base": "9.0.2",
"@types/express": "4.17.23",
"@types/luxon": "3.7.1",
"@types/node": "24.7.1",
"@types/nunjucks": "3.2.6",
"c8": "10.1.3",
"chai": "6.2.0",
"cheerio": "1.0.0",
"commitlint": "20.1.0",
"docdash": "2.0.2",
"eslint": "9.37.0",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-jsdoc": "61.1.0",
"eslint-plugin-security": "3.0.1",
"eslint-plugin-sonarjs": "3.0.5",
"fast-check": "4.3.0",
"jsdoc": "4.0.5",
"jsdoc-tsimport-plugin": "1.0.5",
"mocha": "11.7.4",
"prettier": "3.6.2",
"prettier-plugin-jsdoc": "1.3.3",
"sass": "1.93.2",
"sinon": "21.0.0",
"supertest": "7.1.4",
"typescript": "5.9.3"
}
}