{
  "name": "@northscaler/service-support",
  "version": "0.5.0",
  "description": "Artifacts that assist in writing service layers effectively",
  "repository": {
    "type": "git",
    "url": "https://github.com/northscaler/service-support"
  },
  "keywords": [
    "service",
    "decorator",
    "backend",
    "back-end",
    "server",
    "service-layer"
  ],
  "license": "MIT",
  "engines": {
    "node": ">=10.3.0"
  },
  "scripts": {
    "build": "npm ci && npm test",
    "transpile": "run-s transpile-main transpile-test",
    "clean": "rimraf dist docs coverage .nyc_output",
    "prenuke": "npm run clean",
    "nuke": "rimraf node_modules",
    "transpile-main": "babel --delete-dir-on-start --verbose --out-dir dist/main --copy-files src/main",
    "transpile-test": "babel --delete-dir-on-start --verbose --out-dir dist/test --copy-files src/test",
    "unit-integration": "nyc -x 'dist/test' --exclude-after-remap false mocha --exit 'dist/test/unit/**/*.spec.js' 'dist/test/integration/**/*.spec.js'",
    "postunit-integration": "run-s report",
    "integration": "nyc -x 'dist/test' --exclude-after-remap false mocha --exit 'dist/test/integration/**/*.spec.js'",
    "postintegration": "run-s report",
    "i": "mocha --exit 'src/test/integration/**/*.spec.js'",
    "test-grep": "mocha --exit 'src/test/{unit,integration}/**/*.spec.js' --grep",
    "unit": "nyc -x 'dist/test' --exclude-after-remap false mocha --exit 'dist/test/unit/**/*.spec.js'",
    "postunit": "run-s report",
    "u": "mocha --exit 'src/test/unit/**/*.spec.js'",
    "test": "run-s transpile unit-integration lint",
    "report": "nyc report --reporter=html",
    "lint": "find src -name '*.js' | xargs standard --verbose index.js",
    "lint-staged": "git diff --name-only --cached | egrep '^src/.+.js$' | xargs standard --verbose",
    "format": "find src -name '*.js' | xargs standard --fix index.js",
    "format-staged": "git diff --name-only --cached | egrep '^src/.+.js$' | xargs standard --fix",
    "make-distribution": "run-s transpile doc lic",
    "doc": "jsdoc --verbose -d docs -r -c jsdoc.json -R README.md src/main",
    "lic": "node lic.js > LICENSE",
    "pre-commit": "run-s lint-staged",
    "pre-push": "run-s test"
  },
  "files": [
    "dist/",
    "docs/",
    "src/",
    "index.js"
  ],
  "husky": {
    "hooks": {
      "pre-commit": "npm run pre-commit",
      "pre-push": "npm run pre-push"
    }
  },
  "publishConfig": {
    "access": "public"
  },
  "dependencies": {
    "@northscaler/aspectify": "1.3.0",
    "@northscaler/enum-support": "4.3.0",
    "@northscaler/error-support": "3.5.0",
    "npm-run-all": "4.1.5"
  },
  "devDependencies": {
    "@babel/cli": "7.23.0",
    "@babel/core": "7.12.3",
    "@babel/eslint-parser": "7.12.1",
    "@babel/plugin-proposal-class-properties": "7.12.1",
    "@babel/plugin-proposal-decorators": "7.12.1",
    "@babel/plugin-proposal-nullish-coalescing-operator": "7.12.1",
    "@babel/plugin-proposal-numeric-separator": "7.12.5",
    "@babel/plugin-proposal-object-rest-spread": "7.12.1",
    "@babel/plugin-proposal-optional-chaining": "7.12.1",
    "@babel/plugin-proposal-throw-expressions": "7.12.1",
    "@babel/preset-env": "7.12.1",
    "@babel/register": "7.12.1",
    "@northscaler/mongo-test-support": "1.3.0",
    "acorn": "8.0.4",
    "babel-eslint": "10.1.0",
    "chai": "4.2.0",
    "copyfiles": "2.4.0",
    "dirty-chai": "2.0.1",
    "fs-extra": "9.0.1",
    "husky": "4.3.8",
    "intercept-stdout": "0.1.2",
    "jsdoc": "4.0.2",
    "lodash.template": "4.5.0",
    "mocha": "10.2.0",
    "mongodb": "3.7.4",
    "mongoose": "5.13.20",
    "npm-run-all": "4.1.5",
    "nyc": "15.1.0",
    "standard": "16.0.2"
  },
  "babel": {
    "sourceMaps": "both",
    "presets": [
      [
        "@babel/preset-env",
        {
          "targets": {
            "node": true
          }
        }
      ]
    ],
    "plugins": [
      [
        "@babel/plugin-proposal-optional-chaining",
        {
          "loose": false
        }
      ],
      [
        "@babel/plugin-proposal-decorators",
        {
          "legacy": true
        }
      ],
      [
        "@babel/plugin-proposal-throw-expressions"
      ],
      [
        "@babel/plugin-proposal-class-properties",
        {
          "loose": false
        }
      ]
    ]
  },
  "mocha": {
    "colors": true,
    "require": "@babel/register"
  },
  "standard": {
    "parser": "@babel/eslint-parser"
  }
}
