{ "name": "@overleaf/filestore", "description": "An API for CRUD operations on binary files stored in S3", "private": true, "main": "app.js", "type": "module", "scripts": { "test:acceptance:run": "mocha --recursive --timeout 15000 $@ test/acceptance/js", "test:acceptance": "npm run test:acceptance:_run -- --grep=$MOCHA_GREP", "test:unit:run": "mocha --recursive $@ test/unit/js", "test:unit": "npm run test:unit:_run", "start": "node app.js", "nodemon": "node --watch app.js", "lint": "eslint --max-warnings 0 --format unix .", "format": "prettier --list-different $PWD/'**/{*.*js,*.ts}'", "format:fix": "prettier --write $PWD/'**/{*.*js,*.ts}'", "test:acceptance:_run": "mocha --recursive --timeout 15000 --exit $@ test/acceptance/js", "test:unit:_run": "vitest --config ./vitest.config.unit.cjs", "lint:fix": "eslint --fix .", "types:check": "tsc --noEmit" }, "dependencies": { "@aws-sdk/client-s3": "^3.864.0", "@overleaf/logger": "*", "@overleaf/metrics": "*", "@overleaf/o-error": "*", "@overleaf/object-persistor": "*", "@overleaf/settings": "*", "@overleaf/stream-utils": "^0.1.0", "body-parser": "^1.20.3", "bunyan": "^1.8.15", "express": "^4.21.2", "glob": "^12.0.0", "lodash.once": "^4.1.1", "node-fetch": "^2.7.0", "range-parser": "^1.2.1", "tiny-async-pool": "^1.1.0" }, "devDependencies": { "@google-cloud/storage": "^6.10.1", "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "mocha": "^11.1.0", "mocha-junit-reporter": "^2.2.1", "mocha-multi-reporters": "^1.5.1", "mongodb": "6.12.0", "sandboxed-module": "2.0.4", "sinon": "9.0.2", "sinon-chai": "^3.7.0", "streamifier": "^0.1.1", "typescript": "^5.0.4", "vitest": "^4.0.0" } }