{
  "name": "@ccas-produits-numeriques/common-utilities",
  "description": "[SIJ] Common utilities shared between applications",
  "version": "3.5.2",
  "author": "CCAS",
  "license": "MIT",
  "keywords": [
    "utilities",
    "typescript",
    "fastify",
    "logging",
    "http",
    "crypto",
    "validation",
    "sij"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ccas-produits-numeriques/common-utilities.git"
  },
  "bugs": {
    "url": "https://github.com/ccas-produits-numeriques/common-utilities/issues"
  },
  "homepage": "https://github.com/ccas-produits-numeriques/common-utilities#readme",
  "sideEffects": false,
  "type": "module",
  "packageManager": "pnpm@10.18.2",
  "engines": {
    "node": ">=24",
    "npm": "please-use-pnpm"
  },
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "exports": {
    ".": {
      "browser": {
        "import": "./dist/browser/index.js",
        "types": "./dist/browser/index.d.ts"
      },
      "node": {
        "import": "./dist/node/index.js",
        "types": "./dist/node/index.d.ts"
      },
      "default": {
        "import": "./dist/node/index.js",
        "types": "./dist/node/index.d.ts"
      }
    },
    "./core": {
      "browser": {
        "import": "./dist/browser/core/index.js",
        "types": "./dist/browser/core/index.d.ts"
      },
      "node": {
        "import": "./dist/node/core/index.js",
        "types": "./dist/node/core/index.d.ts"
      },
      "default": {
        "import": "./dist/node/core/index.js",
        "types": "./dist/node/core/index.d.ts"
      }
    },
    "./http": {
      "browser": {
        "import": "./dist/browser/http/index.js",
        "types": "./dist/browser/http/index.d.ts"
      },
      "node": {
        "import": "./dist/node/http/index.js",
        "types": "./dist/node/http/index.d.ts"
      },
      "default": {
        "import": "./dist/node/http/index.js",
        "types": "./dist/node/http/index.d.ts"
      }
    },
    "./logging": {
      "browser": {
        "import": "./dist/browser/logging/index.js",
        "types": "./dist/browser/logging/index.d.ts"
      },
      "node": {
        "import": "./dist/node/logging/index.js",
        "types": "./dist/node/logging/index.d.ts"
      },
      "default": {
        "import": "./dist/node/logging/index.js",
        "types": "./dist/node/logging/index.d.ts"
      }
    },
    "./fastify": {
      "node": {
        "import": "./dist/node/fastify/index.js",
        "types": "./dist/node/fastify/index.d.ts"
      },
      "default": {
        "import": "./dist/node/fastify/index.js",
        "types": "./dist/node/fastify/index.d.ts"
      }
    },
    "./types": {
      "browser": {
        "import": "./dist/browser/types/index.js",
        "types": "./dist/browser/types/index.d.ts"
      },
      "node": {
        "import": "./dist/node/types/index.js",
        "types": "./dist/node/types/index.d.ts"
      },
      "default": {
        "import": "./dist/node/types/index.js",
        "types": "./dist/node/types/index.d.ts"
      }
    },
    "./zod": {
      "browser": {
        "import": "./dist/browser/zod/index.js",
        "types": "./dist/browser/zod/index.d.ts"
      },
      "node": {
        "import": "./dist/node/zod/index.js",
        "types": "./dist/node/zod/index.d.ts"
      },
      "default": {
        "import": "./dist/node/zod/index.js",
        "types": "./dist/node/zod/index.d.ts"
      }
    },
    "./mongodb": {
      "node": {
        "import": "./dist/node/mongodb/index.js",
        "types": "./dist/node/mongodb/index.d.ts"
      },
      "default": {
        "import": "./dist/node/mongodb/index.js",
        "types": "./dist/node/mongodb/index.d.ts"
      }
    },
    "./extractions": {
      "browser": {
        "import": "./dist/core/extractions/index.js",
        "types": "./dist/core/extractions/index.d.ts"
      },
      "node": {
        "import": "./dist/core/extractions/index.js",
        "types": "./dist/core/extractions/index.d.ts"
      },
      "default": {
        "import": "./dist/core/extractions/index.js",
        "types": "./dist/core/extractions/index.d.ts"
      }
    }
  },
  "files": [
    "dist",
    "README.md",
    "LICENSE"
  ],
  "dependencies": {
    "@hapi/boom": "^10.0.1"
  },
  "peerDependencies": {
    "@sentry/node": "^10.32.0",
    "@sentry/profiling-node": "^10.32.0",
    "date-fns": "^4.1.0",
    "fastify": "^5.12.7",
    "fastify-type-provider-zod": "^6.1.0",
    "jsonwebtoken": "^9.0.3",
    "luxon": "^3.7.2",
    "mongodb": "^7.0.0",
    "pino": "^10.1.0",
    "pino-pretty": "^13.1.3",
    "rate-limiter-flexible": "^9.0.1",
    "type-fest": "^5.3.0",
    "undici": "^7.30.1",
    "zod": "^4.3.0",
    "zod-mongodb-schema": "^3.0.0"
  },
  "scripts": {
    "build": "tsc",
    "dev": "tsc --watch",
    "prepublishOnly": "pnpm build",
    "lint": "eslint --cache .",
    "lint:fix": "pnpm lint --fix",
    "prettier:fix": "prettier --write -u .",
    "prettier:check": "prettier --check -u .",
    "pretest": "docker compose up -d --wait",
    "test": "vitest",
    "posttest": "docker compose down -v",
    "test:ci": "pnpm test -- --run",
    "test:ci:coverage": "pnpm test:ci --coverage.include='src' --coverage.provider='v8' --coverage.enabled --coverage.exclude='**/tests'",
    "test:watch": "vitest --watch",
    "typecheck": "tsc --noEmit",
    "clean": "rm -rf dist",
    "check": "pnpm typecheck && pnpm lint && pnpm test:ci",
    "release": "semantic-release"
  },
  "devDependencies": {
    "@eslint/compat": "^2.1.1",
    "@eslint/js": "^10.0.1",
    "@semantic-release/github": "^12.0.10",
    "@semantic-release/npm": "^13.2.0",
    "@sentry/node": "^10.76.2",
    "@sentry/profiling-node": "^10.76.2",
    "@types/jsonwebtoken": "^9.0.10",
    "@types/luxon": "^3.7.6",
    "@types/node": "^25.9.9",
    "date-fns": "^4.4.0",
    "eslint": "^10.13.0",
    "eslint-import-resolver-typescript": "^4.4.5",
    "eslint-plugin-import-x": "^4.17.1",
    "eslint-plugin-n": "^18.5.0",
    "fastify": "^5.12.7",
    "fastify-type-provider-zod": "^7.0.0",
    "globals": "^17.13.0",
    "jsonwebtoken": "^9.0.3",
    "luxon": "^3.7.2",
    "mongodb": "^7.7.0",
    "pino": "^10.3.1",
    "prettier": "^3.9.10",
    "rate-limiter-flexible": "^11.2.3",
    "semantic-release": "^25.0.9",
    "type-fest": "^5.10.0",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.71.2",
    "undici": "^7.30.1",
    "vite-tsconfig-paths": "^6.1.1",
    "vitest": "^5.0.5",
    "zod": "4.6.7",
    "zod-mongodb-schema": "3.0.2"
  },
  "prettier": {
    "printWidth": 120,
    "bracketSpacing": true,
    "trailingComma": "es5",
    "arrowParens": "always"
  },
  "lint-staged": {
    "*.{js,jsx,ts,tsx}": [
      "eslint --cache --fix",
      "prettier --write -u"
    ],
    "*": [
      "prettier --write -u"
    ],
    "pnpm-lock.yaml": [
      "pnpm dedupe"
    ]
  }
}
