Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@aboviq/kollektor

Package Overview
Dependencies
Maintainers
3
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aboviq/kollektor

Generic file collector, useful for mono repos and microservices

  • 1.2.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
6
Maintainers
3
Weekly downloads
 
Created
Source

@aboviq/kollektor

Build status NPM version XO code style

Generic file collector, useful for mono repos and microservices

Installation

Install @aboviq/kollektor using npm:

npm install @aboviq/kollektor

Usage

Module usage

const kollektor = require('@aboviq/kollektor');

// Read all package.json files in a mono-repo async:
const packages = await kollektor({
	handlers: {
		'package.json': packageFile => require(packageFile)
	}
});

// ...or sync:
const packages = kollektor.sync({
	handlers: {
		'package.json': packageFile => require(packageFile)
	}
});

API

kollektor(options)

NameTypeDescription
optionsObjectOptions for specifying the behaviour of Kollektor

Returns: Promise<Array<Object>>, all collected information depending on given handlers.

kollektor.sync(options)

NameTypeDescription
optionsObjectOptions for specifying the behaviour of Kollektor

Returns: Array<Object>, all collected information depending on given handlers.

Options
options.cwd

Type: String
Default: process.cwd()

Sets the current working directory

options.handlers

Type: Object<Handler>

Example:

{
	"handlers": {
		"package.json": () => {},
		"*.yml": () => {},
		"README.md": () => {}
	}
}
Handler definition

Type: Function
Signature: handlerName :: String -> Object -> Object

handlerName is the name of the handler and is usually a filename, e.g. "package.json" which will call the handler for each package.json file it finds. The handlerName can also be a simple pattern matching multiple files, e.g: "*.yml".

When a file is found that matches the handlerName the handler function will be called with these arguments:

NameTypeDescription
fullPathStringThe full path to the found file
dataObjectThis contains dir (the relative path of the folder), dirPath (the full path of the folder) and all data returned from previous handlers affecting the same folder

The handler function can be async (return a promise) for the asynchronous version of Kollektor but must be synchronous for the sync version.

Any Object returned from a handler is merged with the current folder's data and will be fed to the next handler affecting files in the same folder. When all handlers have been called and completed for a specific folder the resulting data is what's being returned in the Array of collected information. See the tests for more details on how it works.

Contributing

See Contribution Guidelines and our Code Of Conduct.

License

MIT © Aboviq AB

Keywords

FAQs

Package last updated on 19 Dec 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc