thelounge/package.json
Reto Brunner 646bafab99 mocha: move spec to invocation
If we specify the spec in the config file, we can't manually
specify a specific test file from the cli.

This is annoying, as the alternative is copying out the full
package.json blurb into the shell.

Rather, give the spec in the invocation and add a helper
that makes testing a specific file simple.

With this `yarn test:nospec test/plugins/link.ts` will only run
tests within that file
2024-01-27 15:34:13 +01:00

179 lines
5.4 KiB
JSON

{
"name": "thelounge",
"description": "The self-hosted Web IRC client",
"version": "4.4.1",
"preferGlobal": true,
"bin": {
"thelounge": "index.js"
},
"repository": {
"type": "git",
"url": "https://github.com/thelounge/thelounge.git"
},
"homepage": "https://thelounge.chat/",
"scripts": {
"build:client": "webpack",
"build:server": "tsc -p server/tsconfig.json",
"build": "run-p --aggregate-output build:client build:server",
"coverage": "run-s test:* && nyc --nycrc-path=test/.nycrc-report.json report",
"dev": "cross-env NODE_ENV=development ts-node --project server/tsconfig.json server/index.ts start --dev",
"format:prettier": "prettier --write \"**/*.*\"",
"generate:config:doc": "ts-node scripts/generate-config-doc.js",
"lint:check-eslint": "eslint-config-prettier .eslintrc.cjs",
"lint:eslint": "eslint . --report-unused-disable-directives --color",
"lint:prettier": "prettier --list-different \"**/*.*\"",
"lint:stylelint": "stylelint --color \"client/**/*.css\"",
"lint": "run-p --aggregate-output --continue-on-error lint:*",
"start": "node index start",
"test": "run-p --aggregate-output --continue-on-error lint:* test:*",
"test:mocha": "webpack --mode=development && cross-env NODE_ENV=test TS_NODE_PROJECT='./test/tsconfig.json' mocha --config=test/.mocharc.yml 'test/**/*.ts'",
"test:nospec": "webpack --mode=development && cross-env NODE_ENV=test TS_NODE_PROJECT='./test/tsconfig.json' mocha --config=test/.mocharc.yml",
"watch": "webpack --watch"
},
"keywords": [
"lounge",
"browser",
"web",
"chat",
"client",
"irc",
"server",
"thelounge"
],
"license": "MIT",
"engines": {
"node": ">=16.0.0"
},
"files": [
"./.thelounge_home",
"./index.js",
"./yarn.lock",
"./client/index.html.tpl",
"./dist/package.json",
"./dist/**/*.js",
"./public/**"
],
"dependencies": {
"@fastify/busboy": "1.0.0",
"bcryptjs": "2.4.3",
"chalk": "4.1.2",
"cheerio": "1.0.0-rc.12",
"commander": "9.0.0",
"content-disposition": "0.5.4",
"express": "4.17.3",
"file-type": "16.5.4",
"filenamify": "4.3.0",
"got": "11.8.5",
"irc-framework": "4.13.1",
"is-utf8": "0.2.1",
"ldapjs": "2.3.1",
"linkify-it": "3.0.3",
"lodash": "4.17.21",
"mime-types": "2.1.34",
"node-forge": "1.3.0",
"package-json": "7.0.0",
"read": "1.0.7",
"read-chunk": "3.2.0",
"semver": "7.5.2",
"socket.io": "4.6.1",
"tlds": "1.228.0",
"ua-parser-js": "1.0.33",
"uuid": "8.3.2",
"web-push": "3.4.5",
"yarn": "1.22.17"
},
"optionalDependencies": {
"sqlite3": "5.1.6"
},
"devDependencies": {
"@babel/core": "7.17.10",
"@babel/plugin-transform-runtime": "7.18.2",
"@babel/preset-env": "7.17.10",
"@fortawesome/fontawesome-free": "5.15.4",
"@istanbuljs/nyc-config-typescript": "1.0.2",
"@textcomplete/core": "0.1.10",
"@textcomplete/textarea": "0.1.12",
"@types/bcryptjs": "2.4.6",
"@types/chai": "4.3.5",
"@types/cheerio": "0.22.35",
"@types/content-disposition": "0.5.8",
"@types/express": "4.17.13",
"@types/is-utf8": "0.2.3",
"@types/ldapjs": "2.2.2",
"@types/linkify-it": "3.0.5",
"@types/lodash": "4.14.200",
"@types/mime-types": "2.1.1",
"@types/mocha": "9.1.1",
"@types/mousetrap": "1.6.13",
"@types/node": "17.0.31",
"@types/read": "0.0.29",
"@types/semver": "7.3.9",
"@types/sortablejs": "1.13.0",
"@types/sqlite3": "3.1.8",
"@types/ua-parser-js": "0.7.36",
"@types/uuid": "8.3.4",
"@types/web-push": "3.3.2",
"@types/webpack-env": "1.16.4",
"@types/webpack-hot-middleware": "2.25.6",
"@types/ws": "8.5.4",
"@typescript-eslint/eslint-plugin": "5.22.0",
"@typescript-eslint/parser": "5.22.0",
"@vue/runtime-dom": "3.2.33",
"@vue/test-utils": "2.4.0",
"babel-loader": "8.2.5",
"babel-plugin-istanbul": "6.1.1",
"babel-preset-typescript-vue3": "2.0.17",
"chai": "4.3.7",
"copy-webpack-plugin": "10.2.4",
"cross-env": "7.0.3",
"css-loader": "6.5.1",
"cssnano": "5.0.17",
"dayjs": "1.10.8",
"emoji-regex": "10.2.1",
"eslint": "8.16.0",
"eslint-config-prettier": "8.3.0",
"eslint-define-config": "1.5.1",
"eslint-plugin-vue": "9.0.1",
"fork-ts-checker-webpack-plugin": "7.2.13",
"fuzzy": "0.1.3",
"husky": "4.3.8",
"mini-css-extract-plugin": "2.5.3",
"mocha": "9.2.2",
"mousetrap": "1.6.5",
"normalize.css": "8.0.1",
"npm-run-all": "4.1.5",
"nyc": "15.1.0",
"postcss": "8.4.31",
"postcss-import": "14.0.2",
"postcss-loader": "6.2.1",
"postcss-preset-env": "7.3.0",
"prettier": "2.5.1",
"pretty-quick": "3.1.3",
"primer-tooltips": "2.0.0",
"sinon": "13.0.2",
"socket.io-client": "4.5.0",
"sortablejs": "1.15.0",
"stylelint": "14.3.0",
"stylelint-config-standard": "24.0.0",
"ts-loader": "9.3.0",
"ts-node": "10.7.0",
"ts-sinon": "2.0.2",
"typescript": "4.7.2",
"undate": "0.3.0",
"vue": "3.2.35",
"vue-eslint-parser": "8.3.0",
"vue-loader": "17.0.1",
"vue-router": "4.0.15",
"vuex": "4.0.2",
"webpack": "5.76.0",
"webpack-cli": "4.9.2",
"webpack-dev-middleware": "5.3.3",
"webpack-hot-middleware": "2.25.4"
},
"husky": {
"hooks": {
"pre-commit": "pretty-quick --staged"
}
}
}