1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-08-09 13:47:13 +02:00
unleash.unleash/package.json
2025-05-14 10:31:18 +00:00

281 lines
9.2 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"name": "unleash-server",
"type": "module",
"description": "Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.",
"version": "7.0.0",
"keywords": [
"unleash",
"feature flag",
"flag",
"feature toggle",
"feature",
"toggle"
],
"files": [
"dist",
"docs",
"frontend/build",
"frontend/build/*",
"frontend/build/**/*",
"frontend/index.js",
"frontend/package.json"
],
"repository": {
"type": "git",
"url": "ssh://git@github.com:unleash/unleash.git"
},
"bugs": {
"url": "https://github.com/unleash/unleash/issues"
},
"types": "./dist/lib/server-impl.d.ts",
"engines": {
"node": ">=20"
},
"license": "Apache-2.0",
"exports": "./dist/lib/server-impl.js",
"scripts": {
"start": "TZ=UTC node ./dist/server.js",
"copy-templates": "copyfiles -u 1 src/mailtemplates/**/* dist/",
"build:backend": "tsc --pretty && copyfiles -u 2 src/migrations/package.json dist/migrations",
"build:frontend": "yarn --cwd ./frontend run build",
"build:frontend:if-needed": "./scripts/build-frontend-if-needed.sh",
"build": "yarn run clean && concurrently \"yarn:copy-templates\" \"yarn:build:frontend\" \"yarn:build:backend\"",
"dev:vite": "TZ=UTC NODE_ENV=development vite-node src/server-dev.ts",
"dev:backend": "TZ=UTC NODE_ENV=development tsc-watch --onEmit \"copyfiles -u 2 src/migrations/package.json dist/migrations\" --onSuccess \"node dist/server-dev.js\"",
"dev:frontend": "wait-on tcp:4242 && yarn --cwd ./frontend run dev",
"dev:frontend:cloud": "UNLEASH_BASE_PATH=/demo/ yarn run dev:frontend",
"dev": "concurrently \"yarn:dev:backend\" \"yarn:dev:frontend\"",
"prepare:backend": "concurrently \"yarn:copy-templates\" \"yarn:build:backend\"",
"start:dev": "yarn run clean && TZ=UTC NODE_ENV=development tsc-watch --onSuccess \"node dist/server-dev.js\"",
"db-migrate": "db-migrate --migrations-dir ./src/migrations",
"lint": "biome check .",
"lint:fix": "biome check . --write",
"local:package": "del-cli --force build && mkdir build && cp -r dist docs CHANGELOG.md LICENSE README.md package.json build",
"build:watch": "tsc -w",
"prepare": "husky && yarn --cwd ./frontend install && if [ ! -d ./dist ]; then yarn build; fi",
"test": "NODE_ENV=test PORT=4243 node --experimental-vm-modules node_modules/.bin/jest",
"test:unit": "NODE_ENV=test PORT=4243 node --experimental-vm-modules node_modules/.bin/jest --testPathIgnorePatterns=src/test/e2e",
"test:docker": "./scripts/docker-postgres.sh",
"test:report": "NODE_OPTIONS=--experimental-vm-modules NODE_ENV=test PORT=4243 node node_modules/.bin/jest --reporters=\"default\" --reporters=\"jest-junit\"",
"test:docker:cleanup": "docker rm -f unleash-postgres",
"test:watch": "yarn test --watch",
"test:coverage": "NODE_ENV=test PORT=4243 node --experimental-vm-modules node_modules/.bin/jest --coverage --testLocationInResults --outputFile=\"coverage/report.json\" --forceExit",
"test:coverage:jest": "NODE_ENV=test PORT=4243 node --experimental-vm-modules node_modules/.bin/jest --silent --ci --json --coverage --testLocationInResults --outputFile=\"report.json\" --forceExit",
"test:updateSnapshot": "NODE_ENV=test PORT=4243 node --experimental-vm-modules node_modules/.bin/jest --updateSnapshot",
"seed:setup": "ts-node src/test/e2e/seed/segment.seed.ts",
"seed:serve": "UNLEASH_DATABASE_NAME=unleash_test UNLEASH_DATABASE_SCHEMA=seed yarn run start:dev",
"clean": "del-cli --force dist",
"heroku-postbuild": "cd frontend && yarn && yarn build",
"prepack": "./scripts/prepack.sh",
"schema:update": "node ./.husky/update-openapi-spec-list.js"
},
"jest-junit": {
"suiteName": "Unleash Unit Tests",
"outputDirectory": "./reports",
"outputName": "jest-junit.xml",
"uniqueOutputName": "false",
"classNameTemplate": "{classname}-{title}",
"titleTemplate": "{classname}-{title}",
"ancestorSeparator": " ",
"usePathForSuiteName": "true"
},
"jest": {
"automock": false,
"maxWorkers": 4,
"testTimeout": 20000,
"globalSetup": "./src/jest-setup.ts",
"transform": {
"^.+\\.tsx?$": [
"@swc/jest",
{
"jsc": {
"target": "ESNext",
"parser": {
"syntax": "typescript"
}
},
"isModule": true
}
]
},
"testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
"testPathIgnorePatterns": [
"/dist/",
"/node_modules/",
"/frontend/",
"/website/"
],
"moduleFileExtensions": [
"ts",
"tsx",
"js",
"jsx",
"json"
],
"coveragePathIgnorePatterns": [
"/node_modules/",
"/dist/",
"/src/migrations",
"/src/test"
],
"extensionsToTreatAsEsm": [
".ts",
".tsx"
],
"moduleNameMapper": {
"^(\\.{1,2}/.*)\\.js$": "$1"
},
"transformIgnorePatterns": [
"node_modules"
]
},
"dependencies": {
"@slack/web-api": "^7.9.1",
"@wesleytodd/openapi": "^1.1.0",
"ajv": "^8.17.1",
"ajv-formats": "^3.0.1",
"async": "^3.2.4",
"bcryptjs": "^2.4.3",
"compression": "^1.7.4",
"connect-session-knex": "^5.0.0",
"cookie-parser": "^1.4.6",
"cookie-session": "^2.0.0-rc.1",
"cors": "^2.8.5",
"date-fns": "^2.30.0",
"db-migrate": "0.11.14",
"db-migrate-pg": "1.5.2",
"db-migrate-shared": "1.2.0",
"deep-object-diff": "^1.1.9",
"deepmerge": "^4.3.1",
"errorhandler": "^1.5.1",
"express": "^4.21.2",
"express-rate-limit": "^7.3.1",
"express-session": "^1.17.3",
"fast-json-patch": "^3.1.0",
"hash-sum": "^2.0.0",
"helmet": "^8.0.0",
"http-errors": "^2.0.0",
"hyperloglog-lite": "^1.0.2",
"ip-address": "^10.0.1",
"joi": "^17.13.3",
"js-sha256": "^0.11.0",
"js-yaml": "^4.1.0",
"json-diff": "^1.0.6",
"json-schema-to-ts": "2.12.0",
"json2csv": "^5.0.7",
"knex": "^3.1.0",
"lodash.get": "^4.4.2",
"lodash.groupby": "^4.6.0",
"lodash.sortby": "^4.7.0",
"log4js": "^6.0.0",
"make-fetch-happen": "^13.0.1",
"memoizee": "^0.4.17",
"mime": "^4.0.4",
"murmurhash3js": "^3.0.1",
"mustache": "^4.1.0",
"nodemailer": "^6.9.9",
"normalize-url": "^6.1.0",
"openapi-types": "^12.1.3",
"owasp-password-strength-test": "^1.3.0",
"parse-database-url": "^0.3.0",
"pg": "^8.12.0",
"pg-connection-string": "^2.5.0",
"pkginfo": "^0.4.1",
"prom-client": "^14.0.0",
"sanitize-filename": "^1.6.3",
"semver": "^7.6.3",
"serve-favicon": "^2.5.0",
"slug": "^9.0.0",
"stoppable": "^1.1.0",
"tldts": "7.0.6",
"ts-toolbelt": "^9.6.0",
"type-is": "^1.6.18",
"ulidx": "^2.4.1",
"unleash-client": "^6.6.0",
"uuid": "^9.0.0"
},
"devDependencies": {
"@apidevtools/swagger-parser": "10.1.1",
"@babel/core": "7.26.10",
"@biomejs/biome": "^1.9.4",
"@cyclonedx/yarn-plugin-cyclonedx": "^2.0.0",
"@swc/core": "1.11.24",
"@swc/jest": "0.2.38",
"@types/bcryptjs": "2.4.6",
"@types/cors": "2.8.17",
"@types/express": "4.17.21",
"@types/express-session": "1.18.1",
"@types/faker": "5.5.9",
"@types/hash-sum": "^1.0.0",
"@types/jest": "29.5.14",
"@types/js-yaml": "4.0.9",
"@types/lodash.groupby": "4.6.9",
"@types/lodash.isequal": "^4.5.8",
"@types/make-fetch-happen": "10.0.4",
"@types/memoizee": "0.4.11",
"@types/mime": "4.0.0",
"@types/murmurhash3js": "^3.0.7",
"@types/mustache": "^4.2.5",
"@types/node": "22.15.18",
"@types/nodemailer": "6.4.17",
"@types/owasp-password-strength-test": "1.3.2",
"@types/pg": "8.11.11",
"@types/semver": "7.5.8",
"@types/slug": "^5.0.8",
"@types/stoppable": "1.1.3",
"@types/supertest": "6.0.2",
"@types/type-is": "1.6.7",
"@types/uuid": "9.0.8",
"concurrently": "^9.0.0",
"copyfiles": "2.4.1",
"coveralls": "^3.1.1",
"del-cli": "5.1.0",
"faker": "5.5.3",
"fast-check": "3.23.2",
"fetch-mock": "^12.0.0",
"husky": "^9.0.11",
"jest": "29.7.0",
"jest-junit": "^16.0.0",
"lint-staged": "15.4.3",
"nock": "13.5.6",
"openapi-enforcer": "1.23.0",
"proxyquire": "2.1.3",
"source-map-support": "0.5.21",
"superagent": "10.2.0",
"supertest": "7.0.0",
"ts-node": "10.9.2",
"tsc-watch": "6.2.1",
"typescript": "5.8.3",
"vite-node": "^3.1.3",
"wait-on": "^8.0.0"
},
"resolutions": {
"async": "^3.2.4",
"es5-ext": "0.10.64",
"node-forge": "^1.0.0",
"set-value": "^4.0.1",
"ansi-regex": "^5.0.1",
"ssh2": "^1.4.0",
"json-schema": "^0.4.0",
"ip": "^2.0.1",
"tar": "7.4.3",
"semver": "^7.6.2",
"tough-cookie": "4.1.4",
"@wesleytodd/openapi/path-to-regexp": "6.3.0",
"router/path-to-regexp": "1.9.0",
"prompt": "link:./node_modules/.cache/null"
},
"lint-staged": {
"*.{js,ts}": [
"yarn biome check --write --no-errors-on-unmatched"
],
"*.{jsx,tsx}": [
"yarn biome check --write --no-errors-on-unmatched"
],
"*.json": [
"yarn biome format --write --no-errors-on-unmatched"
]
},
"packageManager": "yarn@4.9.1"
}