{ "name": "@overleaf/project-history", "description": "An API for saving and compressing individual document updates into a browseable history", "private": true, "main": "app.js", "type": "module", "scripts": { "test:acceptance": "npm run test:acceptance:_run -- --grep=$MOCHA_GREP", "test:unit": "npm run test:unit:_run -- --grep=$MOCHA_GREP", "start": "node app.js", "nodemon": "node --watch app.js", "test:acceptance:_run": "LOG_LEVEL=fatal mocha --loader=esmock --recursive --reporter spec --timeout 15000 --exit $@ test/acceptance/js", "test:unit:_run": "LOG_LEVEL=fatal mocha --loader=esmock --recursive --reporter spec $@ test/unit/js", "lint": "eslint --max-warnings 0 --format unix .", "format": "prettier --list-different $PWD/'**/*.js'", "format:fix": "prettier --write $PWD/'**/*.js'", "lint:fix": "eslint --fix .", "types:check": "tsc --noEmit" }, "dependencies": { "@overleaf/fetch-utils": "*", "@overleaf/logger": "*", "@overleaf/metrics": "*", "@overleaf/o-error": "*", "@overleaf/promise-utils": "*", "@overleaf/redis-wrapper": "*", "@overleaf/settings": "*", "async": "^3.2.5", "aws-sdk": "^2.650.0", "body-parser": "^1.20.3", "bunyan": "^1.8.15", "celebrate": "^15.0.3", "cli": "^1.0.1", "diff-match-patch": "overleaf/diff-match-patch#89805f9c671a77a263fc53461acd62aa7498f688", "esmock": "^2.6.3", "express": "^4.21.0", "lodash": "^4.17.20", "mongodb-legacy": "6.1.0", "overleaf-editor-core": "*", "request": "^2.88.2" }, "devDependencies": { "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "mocha": "^10.2.0", "nock": "^13.5.3", "sinon": "~9.0.1", "sinon-chai": "^3.7.0", "timekeeper": "2.2.0", "typescript": "^5.0.4" } }