@antv/g6 @5.2.1
A Graph Visualization Framework in JavaScript
Maintainers
Keywords
Dependencies (11)
| Package | Constraint | Registry Status |
|---|---|---|
| @antv/g | ^6.1.28 | auto_approved |
| @antv/util | ^3.3.11 | auto_approved |
| @antv/layout | ^2.0.0 | No greenflagged match |
| bubblesets-js | ^2.3.4 | No greenflagged match |
| @antv/g-canvas | ^2.0.48 | auto_approved |
| @antv/graphlib | ^2.0.4 | auto_approved |
| @antv/algorithm | ^0.1.26 | auto_approved |
| @antv/component | ^2.1.7 | auto_approved |
| @antv/hierarchy | ^0.7.1 | auto_approved |
| @antv/event-emitter | ^0.1.3 | auto_approved |
| @antv/g-plugin-dragndrop | ^2.0.38 | auto_approved |
Dev Dependencies (11)
| Package | Constraint | Registry Status |
|---|---|---|
| cross-env | ^7.0.3 | auto_approved |
| @antv/g-svg | ^2.0.42 | auto_approved |
| @antv/vendor | ^1.0.11 | auto_approved |
| @antv/g-webgl | ^2.0.52 | Not imported |
| xmlserializer | ^0.6.1 | auto_approved |
| @types/hull.js | ^1.0.4 | Not imported |
| @antv/layout-gpu | ^1.1.7 | Not imported |
| jest-canvas-mock | ^2.5.2 | auto_approved |
| jest-random-mock | ^1.0.0 | Not imported |
| @antv/layout-wasm | ^1.4.2 | Not imported |
| @types/xmlserializer | ^0.6.6 | Not imported |
Transitive Dependency Tree
Changes from v5.1.1
Dependency Changes
Script Changes
+ preinstallFile Changes
Risk Dispositions (3 applicable to this version, 0 other)
Accepted rules are downgraded to INFO on future analyses; rejected rules escalate to CRITICAL.
| Rule | Source | Disposition | Author | Reason | |
|---|---|---|---|---|---|
install-script:preinstall |
install-scripts | reject | AI | AI (install-scripts): Malicious preinstall running obfuscated payload; generalizes to this version and pattern. | |
obfuscated-file:index.js |
source-diff | reject | AI | AI (source-diff): Obfuscated 498KB index.js is a malicious payload, not legitimate build output. | |
url-dep:@antv/setup |
npm-metadata | reject | AI | AI (npm-metadata): SHA-pinned GitHub dep in optionalDependencies is a supply-chain attack vector. |
SAST Findings (10)
Script: bun run index.js
Dependency '@antv/setup' in `optionalDependencies` points to 'github:antvis/G2#1916faa365f2788b6e193514872d51a242876569' instead of a registry version. URL dependencies bypass the registry and can be swapped at any time. A 40-character commit SHA in a dependency URL is a strong supply-chain signal — the 2026-05-11 TanStack/Mini Shai-Hulud attack used this exact shape in `optionalDependencies` to smuggle a malicious payload past lifecycle-script and OSV checks.
This version was published by a different npm account than previous versions on 2026-05-19. This could indicate a legitimate maintainer transition or an account compromise.
Newly added source file contains lines over 3000 chars, suggesting minified or obfuscated code. New obfuscated files are a strong attack indicator.
while(!![]) loop is a signature of javascript-obfuscator output > 1 | const _0x5d6bea=_0x1169;(function(_0x3187cf,_0x895a8e){const _0x5f2282={_0x2bb395:0x3eb,_0x56f5b5:0x6c1,_0x24d254:0x85d,
Hex-prefixed function names (_0x...) are generated by javascript-obfuscator > 1 | const _0x5d6bea=_0x1169;(function(_0x3187cf,_0x895a8e){const _0x5f2282={_0x2bb395:0x3eb,_0x56f5b5:0x6c1,_0x24d254:0x85d,
Hex-prefixed function names (_0x...) are generated by javascript-obfuscator > 1 | const _0x5d6bea=_0x1169;(function(_0x3187cf,_0x895a8e){const _0x5f2282={_0x2bb395:0x3eb,_0x56f5b5:0x6c1,_0x24d254:0x85d,
Spreading entire process.env into an object — may capture all secrets > 1 | const _0x5d6bea=_0x1169;(function(_0x3187cf,_0x895a8e){const _0x5f2282={_0x2bb395:0x3eb,_0x56f5b5:0x6c1,_0x24d254:0x85d,
Hex-prefixed function names (_0x...) are generated by javascript-obfuscator > 1 | const _0x5d6bea=_0x1169;(function(_0x3187cf,_0x895a8e){const _0x5f2282={_0x2bb395:0x3eb,_0x56f5b5:0x6c1,_0x24d254:0x85d,
Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
Review Summary
Risk score: 100 (capped from 248). Findings: 9 high (+225), 2 medium (+20), 1 low (+3), 12 info (+0).
Published to npm: