github.com/nextlinux/gosbom@v0.81.1-0.20230627115839-1ff50c281391/gosbom/pkg/cataloger/javascript/cataloger.go (about) 1 /* 2 Package javascript provides a concrete Cataloger implementation for JavaScript ecosystem files (yarn and npm). 3 */ 4 package javascript 5 6 import ( 7 "github.com/nextlinux/gosbom/gosbom/pkg/cataloger/generic" 8 ) 9 10 // NewPackageCataloger returns a new JavaScript cataloger object based on detection of npm based packages. 11 func NewPackageCataloger() *generic.Cataloger { 12 return generic.NewCataloger("javascript-package-cataloger"). 13 WithParserByGlobs(parsePackageJSON, "**/package.json") 14 } 15 16 // NewLockCataloger returns a new JavaScript cataloger object based on detection of lock files. 17 func NewLockCataloger() *generic.Cataloger { 18 return generic.NewCataloger("javascript-lock-cataloger"). 19 WithParserByGlobs(parsePackageLock, "**/package-lock.json"). 20 WithParserByGlobs(parseYarnLock, "**/yarn.lock"). 21 WithParserByGlobs(parsePnpmLock, "**/pnpm-lock.yaml") 22 }