{
  "name": "@athenna/mail",
  "version": "5.3.0",
  "description": "The Athenna email handler. Built on top of nodemailer.",
  "license": "MIT",
  "author": "Victor Tesoura Júnior <txsoura@athenna.io>",
  "bugs": "https://github.com/AthennaIO/Mail/issues",
  "repository": "https://github.com/AthennaIO/Mail.git",
  "homepage": "https://github.com/AthennaIO/Mail#readme",
  "keywords": [
    "esm",
    "nodejs",
    "athenna",
    "mail",
    "smtp",
    "pop3",
    "aws-ses",
    "nodemailer"
  ],
  "engines": {
    "node": ">=20.0.0"
  },
  "scripts": {
    "build": "node node_modules/@athenna/tsconfig/src/build.js",
    "lint:fix": "eslint \"{bin,src,configurer,tests}/**/*.ts\" --fix",
    "test": "npm run --silent lint:fix && node --enable-source-maps --import=@athenna/tsconfig bin/test.ts",
    "test:debug": "cross-env NODE_DEBUG=athenna:* node --inspect --enable-source-maps --import=@athenna/tsconfig bin/test.ts",
    "test:coverage": "c8 npm run --silent test"
  },
  "files": [
    "src/*.js",
    "src/*.d.ts",
    "src/**/*.js",
    "src/**/*.d.ts",
    "templates",
    "configurer"
  ],
  "type": "module",
  "main": "./src/index.js",
  "types": "./src/index.d.ts",
  "exports": {
    ".": "./src/index.js",
    "./types": "./src/types/index.js",
    "./package": "./package.json",
    "./package.json": "./package.json",
    "./providers/MailProvider": "./src/providers/MailProvider.js",
    "./providers/SmtpServerProvider": "./src/providers/SmtpServerProvider.js"
  },
  "imports": {
    "#bin/*": "./bin/*.js",
    "#bin": "./bin/index.js",
    "#src/*": "./src/*.js",
    "#src": "./src/index.js",
    "#src/types": "./src/types/index.js",
    "#src/debug": "./src/debug/index.js",
    "#tests/*": "./tests/*.js",
    "#tests": "./tests/index.js"
  },
  "dependencies": {
    "nodemailer": "^6.10.0",
    "nodemailer-markdown": "^1.0.3",
    "smtp-server": "^3.13.6"
  },
  "devDependencies": {
    "@athenna/artisan": "^5.6.0",
    "@athenna/common": "^5.7.0",
    "@athenna/config": "^5.3.0",
    "@athenna/ioc": "^5.1.0",
    "@athenna/logger": "^5.3.0",
    "@athenna/test": "^5.3.0",
    "@athenna/tsconfig": "^5.0.0",
    "@athenna/view": "^5.3.0",
    "@types/nodemailer": "^6.4.17",
    "@types/smtp-server": "^3.5.10",
    "@typescript-eslint/eslint-plugin": "^8.21.0",
    "@typescript-eslint/parser": "^8.21.0",
    "commitizen": "^4.3.1",
    "cz-conventional-changelog": "^3.3.0",
    "eslint": "^8.57.1",
    "eslint-config-prettier": "^8.10.0",
    "eslint-config-standard": "^17.1.0",
    "eslint-plugin-import": "^2.31.0",
    "eslint-plugin-n": "^15.7.0",
    "eslint-plugin-prettier": "^4.2.1",
    "eslint-plugin-promise": "^6.6.0",
    "husky": "^3.1.0",
    "lint-staged": "^12.5.0",
    "prettier": "^2.8.8"
  },
  "c8": {
    "all": true,
    "include": [
      "src/**/*.ts"
    ],
    "exclude": [],
    "reporter": [
      "text-summary",
      "html"
    ],
    "report-dir": "./tests/coverage",
    "check-coverage": true
  },
  "husky": {
    "hooks": {
      "prepare-commit-msg": "lint-staged && exec < /dev/tty && git cz --hook || true"
    }
  },
  "lint-staged": {
    "*.ts": [
      "eslint --fix",
      "git add"
    ],
    "*.json": [
      "prettier --write",
      "git add"
    ]
  },
  "config": {
    "commitizen": {
      "path": "./node_modules/cz-conventional-changelog"
    }
  },
  "prettier": {
    "singleQuote": true,
    "trailingComma": "none",
    "arrowParens": "avoid",
    "endOfLine": "lf",
    "semi": false,
    "printWidth": 80,
    "overrides": [
      {
        "files": "tests/**/*",
        "options": {
          "printWidth": 120
        }
      }
    ]
  },
  "eslintIgnore": [],
  "eslintConfig": {
    "env": {
      "es2021": true,
      "node": true
    },
    "globals": {
      "ioc": true,
      "Env": true,
      "Path": true,
      "Config": true,
      "container": true
    },
    "plugins": [
      "prettier",
      "@typescript-eslint"
    ],
    "extends": [
      "standard",
      "eslint:recommended",
      "plugin:prettier/recommended",
      "plugin:@typescript-eslint/recommended",
      "plugin:@typescript-eslint/eslint-recommended"
    ],
    "parser": "@typescript-eslint/parser",
    "rules": {
      "camelcase": "off",
      "dot-notation": "off",
      "prettier/prettier": "error",
      "no-useless-constructor": "off",
      "@typescript-eslint/no-explicit-any": "off",
      "@typescript-eslint/no-empty-function": "off",
      "@typescript-eslint/no-unused-vars": [
        "error",
        {
          "argsIgnorePattern": "^_",
          "varsIgnorePattern": "^_",
          "caughtErrorsIgnorePattern": "^_"
        }
      ]
    }
  },
  "athenna": {
    "commands": [
      "@athenna/artisan/commands/ConfigureCommand"
    ],
    "templates": {
      "exception": "node_modules/@athenna/core/templates/exception.edge",
      "facade": "node_modules/@athenna/core/templates/facade.edge",
      "provider": "node_modules/@athenna/core/templates/provider.edge",
      "repository": "node_modules/@athenna/core/templates/repository.edge",
      "service": "node_modules/@athenna/core/templates/service.edge",
      "test": "node_modules/@athenna/core/templates/test.edge",
      "test-fn": "node_modules/@athenna/core/templates/test-fn.edge",
      "test-cli": "node_modules/@athenna/core/templates/test-cli.edge",
      "test-rest": "node_modules/@athenna/core/templates/test-rest.edge",
      "command": "node_modules/@athenna/artisan/templates/command.edge",
      "controller": "node_modules/@athenna/http/templates/controller.edge",
      "middleware": "node_modules/@athenna/http/templates/middleware.edge",
      "interceptor": "node_modules/@athenna/http/templates/interceptor.edge",
      "terminator": "node_modules/@athenna/http/templates/terminator.edge"
    }
  }
}
