{
  "name": "@mark01/express-utils",
  "version": "1.0.45",
  "description": "npm package that contains utilities for express.js",
  "type": "module",
  "main": "./lib/index.js",
  "module": "./lib/index.js",
  "types": "./lib/index.d.ts",
  "exports": {
    ".": "./lib/index.js",
    "./api": "./lib/api/index.js",
    "./middleware": "./lib/middleware/index.js",
    "./utils": "./lib/utils/index.js",
    "./core": "./lib/core/index.js"
  },
  "files": [
    "lib/**/*"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/josechifflet/express-utils"
  },
  "license": "MIT",
  "author": {
    "name": "Jose Pedro Chifflet",
    "email": "josechifflet@users.noreply.github.com",
    "url": "https://github.com/josechifflet"
  },
  "engines": {
    "node": ">=22.0"
  },
  "keywords": [
    "typescript",
    "express",
    "utils",
    "jwt",
    "rate-limit",
    "slow-down",
    "api"
  ],
  "bugs": {
    "url": "https://github.com/josechifflet/express-utils/issues"
  },
  "homepage": "https://github.com/josechifflet/express-utils#readme",
  "scripts": {
    "build": "tsc",
    "prettier-check": "prettier --check src",
    "prettier-write": "prettier --write src",
    "eslint-check": "eslint src",
    "eslint-write": "eslint src --fix",
    "type-check": "tsc --noEmit",
    "test": "vitest -c ./vitest.config.unit.mts --watch false --silent true --coverage",
    "lint": "yarn prettier-check && yarn eslint-check && yarn type-check",
    "format": "yarn prettier-write && yarn eslint-write",
    "prepare": "npm run build",
    "prepublishOnly": "npm test && npm run lint",
    "preversion": "npm run lint",
    "version": "npm run format && git add -A src",
    "postversion": "git push && git push --tags"
  },
  "devDependencies": {
    "@eslint/js": "^9.14.0",
    "@tsconfig/node22": "^22.0.0",
    "@types/compression": "^1.7.5",
    "@types/cors": "^2.8.17",
    "@types/express": "^5.0.0",
    "@types/express-slow-down": "^1.3.2",
    "@types/hpp": "^0.2.2",
    "@types/morgan": "^1.9.3",
    "@types/node": "^22.9.0",
    "@types/request-ip": "^0.0.41",
    "@types/supertest": "^6.0.2",
    "@types/toobusy-js": "^0.5.2",
    "@vitest/coverage-v8": "2.1.4",
    "dpdm": "^3.9.0",
    "eslint": "9.14.0",
    "eslint-plugin-simple-import-sort": "^12.1.1",
    "globals": "^15.12.0",
    "prettier": "^3.3.3",
    "supertest": "^7.0.0",
    "ts-node": "^10.9.2",
    "tsconfig-paths": "^4.2.0",
    "typescript": "^5.6.3",
    "typescript-eslint": "^8.13.0",
    "vitest": "^2.1.4"
  },
  "dependencies": {
    "@types/winston": "^2.4.4",
    "argon2": "^0.41.1",
    "compress": "^0.99.0",
    "compression": "^1.7.5",
    "cors": "^2.8.5",
    "device-detector-js": "^3.0.3",
    "express": "^4.21.1",
    "express-jwt": "^8.4.1",
    "express-slow-down": "^2.0.3",
    "express-winston": "^4.2.0",
    "helmet": "^8.0.0",
    "hpp": "^0.2.3",
    "http-status-codes": "^2.3.0",
    "ioredis": "^5.4.1",
    "jose": "^5.9.6",
    "lint-staged": "^15.2.10",
    "morgan": "^1.10.0",
    "neverthrow": "^8.1.1",
    "otpauth": "^9.3.4",
    "rate-limit-redis": "^4.2.0",
    "request-ip": "^3.3.0",
    "semantic-release": "^24.2.0",
    "toobusy-js": "^0.5.1",
    "winston": "^3.16.0",
    "zod": "^3.23.8"
  },
  "lint-staged": {
    "*.ts": "eslint --cache --cache-location .eslintcache --fix && prettier --write"
  },
  "release": {
    "branches": [
      "main"
    ],
    "plugins": [
      [
        "@semantic-release/commit-analyzer",
        {
          "preset": "conventionalcommits",
          "releaseRules": [
            {
              "type": "build",
              "scope": "deps",
              "release": "patch"
            }
          ]
        }
      ],
      [
        "@semantic-release/release-notes-generator",
        {
          "preset": "conventionalcommits",
          "presetConfig": {
            "types": [
              {
                "type": "feat",
                "section": "Features"
              },
              {
                "type": "fix",
                "section": "Bug Fixes"
              },
              {
                "type": "build",
                "section": "Dependencies and Other Build Updates",
                "hidden": false
              }
            ]
          }
        }
      ],
      "@semantic-release/npm",
      "@semantic-release/github"
    ]
  }
}
