{ "name": "@overleaf/document-updater", "description": "An API for applying incoming updates to documents in real-time", "private": true, "main": "app.js", "scripts": { "start": "node app.js", "test:acceptance:_run": "mocha --recursive --timeout 15000 --exit --retries=$RETRIES $@ test/acceptance/js", "test:acceptance": "yarn run test:acceptance:_run -- --grep=$MOCHA_GREP", "test:unit:_run": "mocha --recursive --exit $@ test/unit/js", "test:unit": "yarn run test:unit:_run -- --grep=$MOCHA_GREP", "nodemon": "node --watch app.js", "benchmark:apply": "node benchmarks/apply", "lint": "eslint --cache --cache-location ../../node_modules/.cache/eslint/ --max-warnings 0 --format unix .", "lint:fix": "eslint --cache --cache-location ../../node_modules/.cache/eslint/ --fix .", "types:check": "tsc --noEmit" }, "dependencies": { "@overleaf/fetch-utils": "workspace:*", "@overleaf/logger": "workspace:*", "@overleaf/metrics": "workspace:*", "@overleaf/mongo-utils": "workspace:*", "@overleaf/o-error": "workspace:*", "@overleaf/promise-utils": "workspace:*", "@overleaf/ranges-tracker": "workspace:*", "@overleaf/redis-wrapper": "workspace:*", "@overleaf/settings": "workspace:*", "@types/chai-as-promised": "^7.1.8", "async": "^3.2.5", "body-parser": "1.20.4", "bull": "^3.18.0", "bunyan": "^1.8.15", "diff-match-patch": "overleaf/diff-match-patch#89805f9c671a77a263fc53461acd62aa7498f688", "express": "4.22.1", "lodash": "^4.17.21", "minimist": "^1.2.8", "mongodb-legacy": "6.1.3", "overleaf-editor-core": "workspace:*" }, "devDependencies": { "@overleaf/migrations": "workspace:*", "basic-auth": "^2.0.1", "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "cluster-key-slot": "^1.0.5", "mocha": "^11.1.0", "mocha-junit-reporter": "^2.2.1", "mocha-multi-reporters": "^1.5.1", "sandboxed-module": "^2.0.4", "sinon": "^9.2.4", "sinon-chai": "^3.7.0", "timekeeper": "^2.0.0", "tsscmp": "^1.0.6", "typescript": "^5.0.4" } }