{
  "name": "dependency-cruiser-fork",
  "version": "9.11.0-beta2",
  "description": "Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.",
  "keywords": [
    "static analysis",
    "circular",
    "dependencies",
    "typescript",
    "javascript",
    "coffeescript",
    "ES6",
    "ES2015",
    "AMD",
    "CommonJS",
    "validation",
    "spelunking"
  ],
  "author": {
    "name": "Sander Verweij",
    "url": "https://sverweij.github.io"
  },
  "contributors": [
    {
      "name": "Klaus Meinhardt",
      "url": "https://github.com/ajafff"
    }
  ],
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/sverweij/dependency-cruiser"
  },
  "bugs": {
    "url": "https://github.com/sverweij/dependency-cruiser/issues"
  },
  "homepage": "https://github.com/sverweij/dependency-cruiser",
  "bin": {
    "dependency-cruiser": "bin/dependency-cruise.js",
    "dependency-cruise": "bin/dependency-cruise.js",
    "depcruise": "bin/dependency-cruise.js",
    "depcruise-fmt": "bin/depcruise-fmt.js",
    "depcruise-wrap-stream-in-html": "bin/wrap-stream-in-html.js"
  },
  "main": "src/main/index.js",
  "types": "types/dependency-cruiser.d.ts",
  "files": [
    "bin/",
    "configs/**/*.js",
    "src/",
    "!src/**/*.hbs",
    "!src/**/*.md",
    "!**/*.DS_Store",
    "types/*.d.ts",
    "LICENSE",
    "package.json",
    "README.md"
  ],
  "scripts": {
    "build": "make dev-build",
    "build:clean": "make clean",
    "check": "npm-run-all build lint depcruise test:cover",
    "check:full": "npm-run-all check test:glob test:yarn-pnp",
    "depcruise": "node ./bin/dependency-cruise.js --config -- src bin test configs types tools",
    "depcruise:explain": "node ./bin/dependency-cruise.js --output-type err-long --config -- src bin test configs types tools",
    "depcruise:graph:doc": "npm-run-all depcruise:graph:doc:json depcruise:graph:doc:schema depcruise:graph:doc:types --parallel depcruise:graph:doc:html depcruise:graph:doc:html* depcruise:graph:doc:svg* depcruise:graph:doc:samples",
    "depcruise:graph:doc:json": "node ./bin/dependency-cruise.js --config --output-type json bin src test --output-to tmp_graph_deps.json",
    "depcruise:graph:doc:html": "./bin/depcruise-fmt.js -T dot -f - tmp_graph_deps.json | dot -T svg | node bin/wrap-stream-in-html.js > docs/dependency-cruiser-dependency-graph.html",
    "depcruise:graph:doc:html-archi": "./bin/depcruise-fmt.js -T archi -f - tmp_graph_deps.json | dot -T svg -Grankdir=TD | node bin/wrap-stream-in-html.js > docs/dependency-cruiser-archi-graph.html",
    "depcruise:graph:doc:html-dir": "./bin/depcruise-fmt.js -T ddot -f - tmp_graph_deps.json | dot -T svg -Grankdir=TD | node bin/wrap-stream-in-html.js > docs/dependency-cruiser-dir-graph.html",
    "depcruise:graph:doc:svg": "./bin/depcruise-fmt.js -T dot -f - tmp_graph_deps.json | dot -T svg > doc/real-world-samples/dependency-cruiser-without-node_modules.svg",
    "depcruise:graph:doc:svg-archi": "./bin/depcruise-fmt.js -T archi -f - tmp_graph_deps.json | dot -Grankdir=TD -T svg > doc/real-world-samples/dependency-cruiser-archi-graph.svg",
    "depcruise:graph:doc:svg-dir": "./bin/depcruise-fmt.js -T ddot -f - tmp_graph_deps.json | dot -Grankdir=TD -T svg > doc/real-world-samples/dependency-cruiser-dir-graph.svg",
    "depcruise:graph:doc:schema": "cd tools/schema && node ../../bin/dependency-cruise.js --config --output-type dot . | dot -T svg | tee ../overview.svg | node ../../bin/wrap-stream-in-html.js > ../../docs/schema-overview.html && cd -",
    "depcruise:graph:doc:samples": "sh tools/generate-samples.sh",
    "depcruise:graph:doc:types": "cd types && node ../bin/dependency-cruise.js --ts-pre-compilation-deps --config --output-type dot . | dot -T svg > overview.svg && cd -",
    "depcruise:graph:dot": "node ./bin/dependency-cruise.js --config --include-only '^(bin|src)' --output-type dot bin src | dot -T svg > tmp_deps.svg",
    "depcruise:graph:fdp": "node ./bin/dependency-cruise.js --config --include-only '^(bin|src)' --output-type dot bin src | fdp -GK=0.1 -Gsplines=true -T svg > tmp_deps.svg",
    "depcruise:graph:osage": "node ./bin/dependency-cruise.js --config --include-only '(^(bin|src)|^[^/]+(js|json)$)' --output-type dot bin src | osage -Gpack=32 -GpackMode=array2 -T svg > tmp_deps.svg",
    "depcruise:report": "node ./bin/dependency-cruise.js --output-type err-html --config --output-to dependency-violations.html -- src bin test configs types",
    "lint": "npm-run-all --parallel --aggregate-output lint:eslint lint:prettier:check lint:types",
    "lint:eslint": "eslint bin/dependency-cruise.js src test configs tools/**/*.js tools/schema/**/*.mjs --cache --cache-location .cache/eslint/",
    "lint:eslint:fix": "eslint --fix bin src test configs tools/**/*.js tools/schema/**/*.mjs --cache --cache-location .cache/eslint/",
    "lint:fix": "npm-run-all lint:eslint:fix lint:prettier lint:types:fix",
    "lint:prettier": "prettier --loglevel warn --write src/**/*.{js,json} {tools,configs}/**/*.js tools/**/*.mjs bin/* !**/*.template.js types/*.d.ts test/**/*.{spec,utl}.js",
    "lint:prettier:check": "prettier --loglevel warn --check src/**/*.{js,json} {tools,configs}/**/*.js tools/**/*.mjs bin/* !**/*.template.js types/*.d.ts test/**/*.{spec,utl}.js",
    "lint:types": "npm-run-all lint:types:tsc lint:types:lint",
    "lint:types:tsc": "tsc --noEmit --strict --types --noUnusedLocals --noUnusedParameters types/dependency-cruiser.d.ts",
    "lint:types:lint": "eslint --no-ignore --config types/.eslintrc.json types/*.d.ts",
    "lint:types:fix": "eslint --no-ignore --config types/.eslintrc.json --fix types/*.d.ts",
    "scm:push": "run-p --aggregate-output scm:push:*",
    "scm:push:bitbucket-mirror": "run-p --aggregate-output scm:push:bitbucket-mirror:*",
    "scm:push:bitbucket-mirror:commits": "git push bitbucket-mirror",
    "scm:push:bitbucket-mirror:tags": "git push --tags bitbucket-mirror",
    "scm:push:github": "run-p --aggregate-output scm:push:github:*",
    "scm:push:github:commits": "git push",
    "scm:push:github:tags": "git push --tags",
    "scm:push:gitlab-mirror": "run-p --aggregate-output scm:push:gitlab-mirror:*",
    "scm:push:gitlab-mirror:commits": "git push gitlab-mirror",
    "scm:push:gitlab-mirror:tags": "git push --tags gitlab-mirror",
    "scm:stage": "git add .",
    "test": "mocha --timeout 4000 \"test/**/*.spec.js\"",
    "test:cover": "nyc --check-coverage npm test",
    "test:glob": "set -f && test \"`bin/dependency-cruise.js test/extract/fixtures/gather-globbing/packages/**/src/**/*.js | grep \"no dependency violations found\"`\" = \"✔ no dependency violations found (6 modules, 0 dependencies cruised)\"",
    "test:yarn-pnp": "npm-run-all test:yarn-pnp:cleanup test:yarn-pnp:pack test:yarn-pnp:copy test:yarn-pnp:install test:yarn-pnp:run test:yarn-pnp:test test:yarn-pnp:cleanup",
    "test:yarn-pnp:pack": "npm pack",
    "test:yarn-pnp:copy": "shx cp -r test/integration/yarn-pnp.template test/integration/yarn-pnp.testing-ground",
    "test:yarn-pnp:install": "cd test/integration/yarn-pnp.testing-ground && yarn && yarn add -D ../../../dependency-cruiser*.tgz",
    "test:yarn-pnp:run": "cd test/integration/yarn-pnp.testing-ground && yarn dependency-cruise:json",
    "test:yarn-pnp:test": "cd test/integration/yarn-pnp.testing-ground && yarn test",
    "test:yarn-pnp:cleanup": "shx rm -rf test/integration/yarn-pnp.testing-ground dependency-cruiser*.tgz",
    "test:load": "hyperfine --warmup 3 --runs 30 \"bin/dependency-cruise.js --validate -- src bin test configs\"",
    "test:load:short": "hyperfine --warmup 1 --runs 5 \"bin/dependency-cruise.js --validate -- src bin test configs\"",
    "test:watch": "mocha --watch --watch-extensions=json --reporter=min test/\\*\\*/\\*.spec.js",
    "update-dependencies": "npm-run-all upem:update upem:install build:clean build lint:fix depcruise test:cover",
    "upem:install": "npm install",
    "upem:update": "npm outdated --json | upem",
    "version": "npm-run-all build depcruise:graph:doc scm:stage"
  },
  "dependencies": {
    "acorn": "7.4.0",
    "acorn-loose": "7.1.0",
    "acorn-walk": "7.2.0",
    "ajv": "6.12.3",
    "chalk": "4.1.0",
    "commander": "6.0.0",
    "enhanced-resolve": "5.0.0-beta.10",
    "figures": "3.2.0",
    "get-stream": "6.0.0",
    "glob": "7.1.6",
    "handlebars": "4.7.6",
    "indent-string": "4.0.0",
    "inquirer": "7.3.3",
    "json5": "2.1.3",
    "lodash": "4.17.19",
    "pnp-webpack-plugin": "1.6.4",
    "safe-regex": "2.1.1",
    "semver": "7.3.2",
    "semver-try-require": "3.0.0",
    "teamcity-service-messages": "0.1.11",
    "tsconfig-paths-webpack-plugin": "3.3.0",
    "wrap-ansi": "7.0.0"
  },
  "devDependencies": {
    "@babel/core": "7.11.1",
    "@babel/plugin-transform-modules-commonjs": "7.10.4",
    "@typescript-eslint/eslint-plugin": "3.9.0",
    "@typescript-eslint/parser": "3.9.0",
    "chai": "4.2.0",
    "chai-json-schema": "1.5.1",
    "coffeescript": "2.5.1",
    "eslint": "7.6.0",
    "eslint-config-moving-meadow": "2.0.4",
    "eslint-config-prettier": "6.11.0",
    "eslint-plugin-budapestian": "2.0.0",
    "eslint-plugin-import": "2.22.0",
    "eslint-plugin-mocha": "8.0.0",
    "eslint-plugin-node": "11.1.0",
    "eslint-plugin-security": "1.4.0",
    "eslint-plugin-unicorn": "21.0.0",
    "husky": "4.2.5",
    "intercept-stdout": "0.1.2",
    "lint-staged": "10.2.11",
    "mocha": "8.1.1",
    "normalize-newline": "3.0.0",
    "npm-run-all": "4.1.5",
    "nyc": "15.1.0",
    "prettier": "2.0.5",
    "shx": "0.3.2",
    "symlink-dir": "4.1.0",
    "typescript": "3.9.7",
    "upem": "4.0.1",
    "vue-template-compiler": "2.6.11",
    "yarn": "1.22.4",
    "~": "file:."
  },
  "upem": {
    "donotup": [
      {
        "package": "enhanced-resolve",
        "because": "we're running with enhanced-resolve version 5, which is faster, uses less memory - but also still is in beta"
      }
    ]
  },
  "nyc": {
    "statements": 99.85,
    "branches": 99.7,
    "functions": 100,
    "lines": 99.85,
    "exclude": [
      "bin",
      "configs/**/*",
      "test/**/*",
      "src/**/*.template.js",
      "src/cli/init-config/get-user-input.js",
      "src/**/*-listener.js",
      "coverage/**/*",
      "tmp*",
      "tools/**/*",
      "docs/**/*",
      "doc/**/*"
    ],
    "reporter": [
      "text-summary",
      "html",
      "lcov"
    ],
    "all": true
  },
  "eslintIgnore": [
    "node_modules",
    "coverage",
    "tmp",
    "src/**/*.template.js",
    "test/integration/**",
    "test/*/fixtures/**",
    "test/*/*/fixtures/**",
    "types/**"
  ],
  "engines": {
    "node": "^10||^12||>=13"
  },
  "supportedTranspilers": {
    "babel": ">=7.0.0 <8.0.0",
    "coffee-script": ">=1.0.0 <2.0.0",
    "coffeescript": ">=1.0.0 <3.0.0",
    "livescript": ">=1.0.0 <2.0.0",
    "typescript": ">=2.0.0 <5.0.0",
    "vue-template-compiler": ">=2.0.0 <3.0.0"
  },
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "{tools,src,config}/**/*.js": [
      "eslint --fix"
    ],
    "{tools,src,config}/**/*.{mjs,js,json}": [
      "prettier --write"
    ],
    "bin/*": [
      "eslint --fix",
      "prettier --write"
    ],
    "test/**/*.{utl,spec}.js": [
      "eslint --fix",
      "prettier --write"
    ],
    "*.d.ts": [
      "eslint --config types/.eslintrc.json --fix",
      "prettier --write --ignore-path .prettierignore"
    ]
  }
}
