{"bin":{"depcruise":"bin/dependency-cruiser.mjs","depcruise-fmt":"bin/depcruise-fmt.mjs","dependency-cruise":"bin/dependency-cruiser.mjs","depcruise-baseline":"bin/depcruise-baseline.mjs","dependency-cruiser":"bin/dependency-cruiser.mjs","depcruise-wrap-stream-in-html":"bin/wrap-stream-in-html.mjs"},"bugs":{"url":"https://github.com/sverweij/dependency-cruiser/issues"},"dist":{"shasum":"70a2d974303f1ede9ee95ddd8aca7808ab8c9c06","tarball":"https://registry.npmjs.org/dependency-cruiser/-/dependency-cruiser-18.3.0.tgz","fileCount":243,"integrity":"sha512-LqZl/eyG/9zROxe02TLQfXujJIwcYj6HwIjDkeI11JzW3ADmO93hZ2zwjQHNnfeXKlYujq1hgU3O5TdeupO7zQ==","signatures":[{"sig":"MEUCIQChBB1bL/7+cmhJSx/Q4y6JW/liU3LOzl3LFseFwD9OdAIgZy5rbVgXMYBrWeWdruZ2fW8qzXB7T0tr5vF0X0/qoPg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dependency-cruiser@18.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1023030},"main":"src/main/index.mjs","name":"dependency-cruiser","type":"commonjs","upem":{"policies":[{"policy":"wanted","because":"test/cli/index.spec.mjs:534:5 fails with test/cli/__fixtures__/babel/ts/src/something/some-page.tsx: Unexpected token, expected \"</>/<=/>=\" (11:27) after upgrading (and handling breaking changes)","package":"@babel/core"},{"policy":"wanted","because":"test/cli/index.spec.mjs:534:5 fails with test/cli/__fixtures__/babel/ts/src/something/some-page.tsx: Unexpected token, expected \"</>/<=/>=\" (11:27) after upgrading (and handling breaking changes)","package":"@babel/plugin-transform-modules-commonjs"},{"policy":"wanted","because":"test/cli/index.spec.mjs:534:5 fails with test/cli/__fixtures__/babel/ts/src/something/some-page.tsx: Unexpected token, expected \"</>/<=/>=\" (11:27) after upgrading (and handling breaking changes)","package":"@babel/preset-typescript"},{"policy":"wanted","because":"we want to keep interpret ~similar to what webpack-cli uses (which is ^3.1.1 since 2022-11-15). See https://github.com/webpack/webpack-cli/blame/main/packages/webpack-cli/package.json","package":"interpret"},{"policy":"wanted","because":"we want to keep rechoir ~similar to what webpack-cli uses (which is ^0.8.0 since 2022-11-15). See https://github.com/webpack/webpack-cli/blame/main/packages/webpack-cli/package.json","package":"rechoir"},{"policy":"wanted","because":"our unit tests that use this fail when upgrading to version 9 - unclear why","package":"symlink-dir"},{"policy":"wanted","because":"we want to stay on version 6, which is still on beta. This is OK - as we use it as devDependency for testing purposes only","package":"typescript"}]},"types":"types/dependency-cruiser.d.mts","author":{"url":"https://sverweij.github.io","name":"Sander Verweij"},"engines":{"node":"^22||^24||>=26"},"exports":{".":{"types":"./types/dependency-cruiser.d.mts","import":"./src/main/index.mjs"},"./sample-reporter-plugin":{"types":"./types/plugins/stats-reporter-plugin.d.mts","import":"./configs/plugins/stats-reporter-plugin.mjs"},"./mermaid-reporter-plugin":{"types":"./types/plugins/mermaid-reporter-plugin.d.mts","import":"./src/report/mermaid.mjs"},"./sample-3d-reporter-plugin":{"types":"./types/plugins/3d-reporter-plugin.d.mts","import":"./configs/plugins/3d-reporter-plugin.mjs"},"./config-utl/extract-ts-config":{"types":"./types/config-utl/extract-ts-config.d.mts","import":"./src/config-utl/extract-ts-config.mjs"},"./config-utl/extract-babel-config":{"types":"./types/config-utl/extract-babel-config.d.mts","import":"./src/config-utl/extract-babel-config.mjs"},"./config-utl/extract-depcruise-config":{"types":"./types/config-utl/extract-depcruise-config.d.mts","import":"./src/config-utl/extract-depcruise-config/index.mjs"},"./config-utl/extract-depcruise-options":{"types":"./types/config-utl/extract-depcruise-options.d.mts","import":"./src/config-utl/extract-depcruise-options.mjs"},"./config-utl/extract-webpack-resolve-config":{"types":"./types/config-utl/extract-webpack-resolve-config.d.mts","import":"./src/config-utl/extract-webpack-resolve-config.mjs"}},"gitHead":"5e067a0682f8834fe9a405293e4b154df6dab5b4","imports":{"#*":"./src/*"},"license":"MIT","scripts":{"lint":"npm-run-all --parallel --aggregate-output --node-run lint:eslint format:check lint:types","test":"LANG=en_US.UTF-8 NODE_OPTIONS=--no-warnings NO_COLOR=1 mocha","build":"make build","check":"npm-run-all --node-run build lint depcruise test:cover","format":"prettier --log-level warn --write \"src/**/*.?js\" \"configs/**/*.?js\" \"tools/**/*.mjs\" \"bin/*\" \"types/*.d.mts\" \"test/**/*.spec.{cjs,js}\" \"test/**/*.{spec,utl}.mjs\"","test:e":"LANG=en_US.UTF-8 NODE_OPTIONS=--no-warnings NO_COLOR=1 mocha --grep \"^\\[[E]\\]\"","test:i":"LANG=en_US.UTF-8 NODE_OPTIONS=--no-warnings NO_COLOR=1 mocha --grep \"^\\[[I]\\]\"","test:u":"LANG=en_US.UTF-8 NODE_OPTIONS=--no-warnings NO_COLOR=1 mocha --grep \"^\\[[U]\\]\"","prepack":"npm-run-all --node-run prepack:format-src-with-tabs prepack:clean-pkg-json","prepare":"husky","version":"npm-run-all --node-run build depcruise:graph:doc scm:stage","lint:fix":"npm-run-all --node-run lint:eslint:fix format lint:types:fix","postpack":"git restore package.json bin src types configs","scm:push":"run-p --aggregate-output scm:push:*","depcruise":"node ./bin/dependency-cruiser.mjs src bin test configs types tools --ignore-known","scm:stage":"git add .","test:glob":"set -f && test \"`bin/dependency-cruiser.mjs --no-config test/extract/__mocks__/gather-globbing/packages/**/src/**/*.js | grep \"no dependency violations found\"`\" = \"✔ no dependency violations found (6 modules, 0 dependencies cruised)\"","test:load":"hyperfine --warmup 3 --runs 30 \"bin/dependency-cruiser.mjs src bin test configs types tools --ignore-known --no-cache --no-progress\"","check:full":"npm-run-all --node-run check test:glob","lint:types":"npm-run-all --node-run lint:types:tsc lint:types:lint","test:cover":"LANG=en_US.UTF-8 NODE_OPTIONS=--no-warnings NO_COLOR=1 c8 mocha","build:clean":"make clean","lint:eslint":"oxlint bin/dependency-cruiser.mjs bin src test configs tools/**/*.mjs","upem:update":"npm outdated --json --long | upem | pbcopy && pbpaste","format:check":"prettier --log-level warn --check \"src/**/*.?js\" \"configs/**/*.?js\" \"tools/**/*.mjs\" \"bin/*\" \"types/*.d.mts\" \"test/**/*.spec.{cjs,js}\" \"test/**/*.{spec,utl}.mjs\"","upem:install":"npm install","depcruise:all":"node ./bin/dependency-cruiser.mjs src bin test configs types tools","upem-outdated":"npm outdated --json --long | upem --dry-run","lint:types:fix":"oxlint --fix types/*.d.mts","lint:types:tsc":"tsc --project types/tsconfig.json","depcruise:focus":"node ./bin/dependency-cruiser.mjs src bin test configs types tools --progress --no-cache --output-type text --focus","lint:eslint:fix":"oxlint bin/dependency-cruiser.mjs bin src test configs tools/**/*.mjs --fix","lint:types:lint":"oxlint types/*.d.mts","scm:push:github":"run-p --aggregate-output scm:push:github:*","test:load:short":"hyperfine --warmup 1 --runs 5 \"bin/dependency-cruiser.mjs src bin test configs types tools --ignore-known --no-cache --no-progress\"","depcruise:report":"node ./bin/dependency-cruiser.mjs src bin test configs types --output-type err-html --config configs/.dependency-cruiser-show-metrics-config.mjs --output-to dependency-violations.html","test:load:cached":"hyperfine --warmup 3 --runs 30 \"bin/dependency-cruiser.mjs src bin test configs types tools --ignore-known --cache node_modules/.cache/dependency-cruiser/load-cached --no-progress\"","depcruise:explain":"node ./bin/dependency-cruiser.mjs src bin test configs types tools --output-type err-long --progress none","depcruise:reaches":"node ./bin/dependency-cruiser.mjs src bin test configs types tools --progress --no-cache --config configs/.dependency-cruiser-unlimited.mjs --output-type text --reaches","depcruise:baseline":"node ./bin/dependency-cruiser.mjs src bin test configs types tools --baseline --progress","depcruise:graph:doc":"npm-run-all --node-run depcruise:graph:doc:json --parallel depcruise:graph:doc:fmt-* depcruise:graph:doc:samples","update-dependencies":"npm-run-all --node-run upem:update upem:install build:clean build lint:eslint:clear-caches lint:fix depcruise test:cover","depcruise:graph:view":"node ./bin/dependency-cruiser.mjs bin src --prefix vscode://file/$(pwd)/ --config configs/.dependency-cruiser-show-metrics-config.mjs --output-type dot-webpage --progress cli-feedback --highlight \"$(watskeburt main)\" | browser","scm:push:github:tags":"git push --tags","depcruise:report:view":"node ./bin/dependency-cruiser.mjs src bin test configs types --output-type err-html --config configs/.dependency-cruiser-show-metrics-config.mjs --output-to - | browser","prepack:clean-pkg-json":"clean-pkg-json --dry | jq '.scripts = {test: \"echo see github for test, build and analysis scripts\"}' | jq '.type = \"module\"' > smaller-package.json && mv smaller-package.json package.json && prettier --log-level warn --write --use-tabs package.json","scm:push:gitlab-mirror":"run-p --aggregate-output scm:push:gitlab-mirror:*","test:load:cached:short":"hyperfine --warmup 1 --runs 5 \"bin/dependency-cruiser.mjs src bin test configs types tools --ignore-known --cache node_modules/.cache/dependency-cruiser/load-cached --no-progress\"","depcruise:graph:mermaid":"node ./bin/dependency-cruiser.mjs bin src --include-only ^src/ --collapse 2 --output-type mermaid","scm:push:github:commits":"git push","depcruise:graph:doc:json":"node ./bin/dependency-cruiser.mjs bin src test --output-type json --output-to node_modules/.cache/tmp_graph_deps.json --progress","lint:eslint:clear-caches":"rm -rf node_modules/.cache/eslint/","depcruise:graph:view:diff":"node ./bin/dependency-cruiser.mjs bin src test --prefix vscode://file/$(pwd)/ --config configs/.dependency-cruiser-unlimited.mjs --output-type dot-webpage --progress cli-feedback --affected | browser","scm:push:bitbucket-mirror":"run-p --aggregate-output scm:push:bitbucket-mirror:*","depcruise:graph:doc:fmt-dir":"./bin/depcruise-fmt.mjs -T ddot -f - node_modules/.cache/tmp_graph_deps.json | dot -T svg -Grankdir=TD | tee doc/real-world-samples/dependency-cruiser-dir-graph.svg | node bin/wrap-stream-in-html.mjs > docs/dependency-cruiser-dir-graph.html","depcruise:graph:doc:samples":"sh tools/generate-samples.sh","scm:push:gitlab-mirror:tags":"git push --tags gitlab-mirror","depcruise:graph:mermaid:diff":"node ./bin/dependency-cruiser.mjs bin src test types tools --config configs/.dependency-cruiser-unlimited.mjs --output-type mermaid --affected $SHA","prepack:format-src-with-tabs":"prettier --log-level warn --write --use-tabs bin src types configs","depcruise:graph:doc:fmt-archi":"./bin/depcruise-fmt.mjs -T archi -f - node_modules/.cache/tmp_graph_deps.json | dot -T svg -Gordering=in -Grankdir=TD | tee doc/real-world-samples/dependency-cruiser-archi-graph.svg | node bin/wrap-stream-in-html.mjs > docs/dependency-cruiser-archi-graph.html","depcruise:graph:doc:fmt-types":"cd types && node ../bin/dependency-cruiser.mjs . --output-type dot | dot -T svg | tee overview.svg | ../bin/wrap-stream-in-html.mjs > overview.html && cd -","depcruise:graph:doc:fmt-detail":"./bin/depcruise-fmt.mjs -T dot -f - node_modules/.cache/tmp_graph_deps.json | dot -T svg | tee doc/real-world-samples/dependency-cruiser-without-node_modules.svg | node bin/wrap-stream-in-html.mjs > docs/dependency-cruiser-dependency-graph.html","depcruise:graph:doc:fmt-schema":"cd tools/schema && node ../../bin/dependency-cruiser.mjs . --output-type dot | dot -T svg | tee ../overview.svg | node ../../bin/wrap-stream-in-html.mjs > ../../docs/schema-overview.html && cd -","scm:push:bitbucket-mirror:tags":"git push --tags bitbucket-mirror","scm:push:gitlab-mirror:commits":"git push gitlab-mirror","scm:push:bitbucket-mirror:commits":"git push bitbucket-mirror"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sverweij","email":"sverweij@protonmail.ch"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:7372fb7b-4dcb-490a-adb4-55fc4d80a02d"}},"homepage":"https://github.com/sverweij/dependency-cruiser","keywords":["static analysis","circular","dependencies","typescript","javascript","coffeescript","ES6","ES2015","AMD","CommonJS","validation","spelunking"],"overrides":{"upem":{"@npmcli/map-workspaces":{"minimatch":"^10.2.4"}},"mocha":{"diff":"^8.0.3","glob":"^13.0.3","minimatch":"^10.2.4","serialize-javascript":"^7.0.3"},"baseline-browser-mapping":"^2.9.15"},"repository":{"url":"git+https://github.com/sverweij/dependency-cruiser.git","type":"git"},"_npmVersion":"11.18.0","description":"Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.","directories":{},"maintainers":[{"name":"sverweij","email":"sverweij@protonmail.ch"},{"name":"foureightone","email":"foureightone@gmail.com"}],"_nodeVersion":"26.8.2","allowScripts":{"esbuild":true,"@swc/core":true,"yarn@1.22.22":true},"contributors":[{"url":"https://github.com/0xflotus","name":"0xflotus"},{"url":"https://github.com/alvaro-cuesta","name":"Álvaro Cuesta"},{"url":"https://github.com/annamooseity","name":"anna"},{"url":"https://github.com/bashess","name":"Bastian Hess"},{"url":"https://github.com/soulhat","name":"Bin"},{"url":"https://github.com/mrmckeb","name":"Brody McKee"},{"url":"https://github.com/christianvuerings","name":"Christian Vuerings"},{"url":"https://github.com/Creative-Ataraxia","name":"Creative Ataraxia"},{"url":"https://github.com/cunzaizhuyi","name":"cunzaizhuyi"},{"url":"https://github.com/dignite","name":"Daniel Edholm Ignat"},{"url":"https://danielorodriguez.com","name":"Daniel Rodríguez Rivero"},{"url":"https://github.com/davidparkagoda","name":"davidparkagoda"},{"url":"https://github.com/electrovir","name":"electrovir"},{"url":"https://forivall.com","name":"Emily Marigold Klassen"},{"url":"https://github.com/ferdynator","name":"Frederik Schubert"},{"url":"https://github.com/friederbluemle","name":"Frieder Bluemle"},{"url":"https://github.com/lin-hun","name":"fusheng"},{"url":"https://github.com/greglockwood","name":"Greg Lockwood"},{"url":"https://mh4gf.dev","name":"Hirotaka Miyagi"},{"url":"https://github.com/Winner95","name":"Ivan"},{"url":"https://github.com/magland","name":"Jeremy Magland"},{"url":"https://jessitron.com","name":"Jessica Kerr"},{"url":"https://jonlauridsen.com","name":"Jon Lauridsen"},{"url":"https://github.com/radiantly","name":"Joshua T"},{"url":"https://github.com/kubotak-is","name":"KenjiroKubota"},{"url":"https://github.com/sushichan044","name":"Kentaro Suzuki"},{"url":"https://github.com/ajafff","name":"Klaus Meinhardt"},{"url":"https://larsartmann.com","name":"Lars Artmann"},{"url":"https://github.com/lukeapage","name":"Luke Page"},{"url":"https://github.com/martinslota","name":"Martin Slota"},{"url":"https://github.com/BRMatt","name":"Matt Button"},{"url":"https://github.com/1000i100","name":"Millicent Billette"},{"url":"https://github.com/elektronik2k5","name":"Nick Ribal"},{"url":"https://github.com/quentindemetz","name":"Quentin de Metz"},{"url":"https://klos.dev","name":"Radosław Kłos"},{"url":"https://github.com/neelance","name":"Richard Musiol"},{"url":"https://github.com/donroyco","name":"Roy Swinkels"},{"url":"https://sebastianlandwehr.com","name":"Sebastian Landwehr"},{"url":"https://sharangpai.me","name":"Sharang Pai"},{"url":"https://stefan-gojan.de","name":"Stefan Gojan"},{"url":"https://github.com/tharun208","name":"Tharun Rajendran"},{"url":"https://truongsinh.pro","name":"TruongSinh Tran-Nguyen"},{"url":"https://github.com/7rulnik","name":"Valentin Semirulnik"},{"url":"https://bestmike007.com","name":"Yuanhai He"},{"url":"https://www.zigae.com/","name":"정건우"}],"dependencies":{"acorn":"8.18.0","json5":"2.2.3","ignore":"7.0.9","semver":"7.8.5","prompts":"2.4.2","rechoir":"0.8.0","acorn-jsx":"5.3.2","commander":"15.0.0","interpret":"3.1.1","picomatch":"4.0.7","acorn-walk":"8.3.5","safe-regex":"2.1.1","watskeburt":"6.0.0","acorn-loose":"8.5.2","acorn-jsx-walk":"2.0.0","enhanced-resolve":"5.25.1","is-installed-globally":"1.0.0","tsconfig-paths-webpack-plugin":"4.2.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"12.0.0","ajv":"8.20.0","svgo":"4.1.0","upem":"11.0.1","yarn":"1.22.22","husky":"9.1.7","mocha":"12.0.1","oxlint":"1.82.0","svelte":"5.57.0","esbuild":"0.28.2","prettier":"3.9.6","@swc/core":"1.16.2","proxyquire":"2.1.3","typescript":"^6.0.3","@babel/core":"^7.29.7","@types/node":"26.5.1","lint-staged":"17.5.1","symlink-dir":"^7.1.0","coffeescript":"2.7.0","npm-run-all2":"9.0.3","@types/prompts":"2.4.9","clean-pkg-json":"2.0.0","@vue/compiler-sfc":"3.5.42","normalize-newline":"5.0.0","vue-template-compiler":"2.7.16","@babel/preset-typescript":"^7.29.7","@babel/plugin-transform-modules-commonjs":"^7.29.7"},"supportedTranspilers":{"swc":">=1.0.0 <2.0.0","babel":">=7.0.0 <8.0.0","svelte":">=3.0.0 <6.0.0","livescript":">=1.0.0 <2.0.0","typescript":">=2.0.0 <7.0.0","coffeescript":">=1.0.0 <3.0.0","coffee-script":">=1.0.0 <2.0.0","@vue/compiler-sfc":">=3.0.0 <4.0.0","vue-template-compiler":">=2.0.0 <3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dependency-cruiser_18.3.0_1789329435756_0.4623881206072822","host":"s3://npm-registry-packages-npm-production"},"we-have-these-dependencies-because":{"overrides":{"diff":"Transitive dependency of mocha 11.7.5. diff has a low severity vulnerability in < 8.0.3 (see https://github.com/advisories/GHSA-73rr-hh4g-fpgx)","baseline-browser-mapping":"Without this override this transitive dependency will start rudely printing that it is outdated in the middle of our tests (for reading babel configurations, go figure)"},"dependencies":{"ignore":"to ignore files in .gitignore (both in the git based caching and in init-config","rechoir":"extracting webpack resolve configs; it's what webpack itself uses. version is synched with that in webpack","interpret":"extracting webpack resolve configs; it's what webpack itself uses. version is synched with that in webpack"}},"_id":"dependency-cruiser@18.3.0","version":"18.3.0"}