{
	"name": "trough",
	"versions": {
		"1.0.0": {
			"name": "trough",
			"version": "1.0.0",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"dependencies": {},
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "http://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "http://wooorm.com"
				}
			],
			"engines": {
				"node": ">=0.11.0"
			},
			"files": [
				"index.js"
			],
			"devDependencies": {
				"browserify": "^13.0.0",
				"esmangle": "^1.0.0",
				"nyc": "^7.1.0",
				"remark-cli": "^1.0.0",
				"remark-comment-config": "^4.0.0",
				"remark-github": "^5.0.0",
				"remark-lint": "^4.0.0",
				"remark-toc": "^3.0.0",
				"remark-validate-links": "^4.0.0",
				"tape": "^4.4.0",
				"xo": "^0.16.0"
			},
			"scripts": {
				"build-md": "remark . --quiet --frail",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "esmangle trough.js > trough.min.js",
				"build": "npm run build-md && npm run build-bundle && npm run build-mangle",
				"lint": "xo",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run build && npm run lint && npm run test-coverage"
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"xo": {
				"space": true,
				"rules": {
					"guard-for-in": "off",
					"max-lines": "off"
				},
				"ignores": [
					"trough.js",
					"trough.min.js"
				]
			},
			"remarkConfig": {
				"output": true,
				"plugins": {
					"comment-config": null,
					"lint": {
						"heading-increment": false,
						"no-duplicate-headings": false,
						"list-item-spacing": false
					},
					"github": null,
					"toc": {
						"tight": true,
						"maxDepth": 3
					},
					"validate-links": null
				},
				"settings": {
					"bullet": "*"
				}
			},
			"gitHead": "78f9debf5f756e2b18ce9ff70db4f2907896e3a8",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.0",
			"_shasum": "6bdedfe7f2aa49a6f3c432257687555957f342fd",
			"_from": ".",
			"_npmVersion": "3.3.6",
			"_nodeVersion": "5.0.0",
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"dist": {
				"shasum": "6bdedfe7f2aa49a6f3c432257687555957f342fd",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.0.tgz"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"_npmOperationalInternal": {
				"host": "packages-12-west.internal.npmjs.com",
				"tmp": "tmp/trough-1.0.0.tgz_1470065839549_0.26185039919801056"
			},
			"directories": {}
		},
		"1.0.1": {
			"name": "trough",
			"version": "1.0.1",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "http://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "http://wooorm.com"
				}
			],
			"files": [
				"index.js"
			],
			"dependencies": {},
			"devDependencies": {
				"browserify": "^14.1.0",
				"esmangle": "^1.0.0",
				"nyc": "^11.0.0",
				"remark-cli": "^3.0.0",
				"remark-preset-wooorm": "^3.0.0",
				"tape": "^4.4.0",
				"xo": "^0.18.0"
			},
			"scripts": {
				"build-md": "remark . -qfo",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "esmangle trough.js > trough.min.js",
				"build": "npm run build-md && npm run build-bundle && npm run build-mangle",
				"lint": "xo",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run build && npm run lint && npm run test-coverage"
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"xo": {
				"space": true,
				"esnext": false,
				"rules": {
					"guard-for-in": "off",
					"unicorn/prefer-type-error": "off"
				},
				"ignores": [
					"trough.js"
				]
			},
			"remarkConfig": {
				"plugins": [
					"preset-wooorm"
				]
			},
			"gitHead": "5980e8f9091ba499b894014476414cfe258404c7",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.1",
			"_shasum": "a9fd8b0394b0ae8fff82e0633a0a36ccad5b5f86",
			"_from": ".",
			"_npmVersion": "2.14.2",
			"_nodeVersion": "4.0.0",
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"dist": {
				"shasum": "a9fd8b0394b0ae8fff82e0633a0a36ccad5b5f86",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.1.tgz"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/trough-1.0.1.tgz_1499594561072_0.2403400642797351"
			},
			"directories": {}
		},
		"1.0.2": {
			"name": "trough",
			"version": "1.0.2",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "http://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "http://wooorm.com"
				}
			],
			"files": [
				"index.js"
			],
			"dependencies": {},
			"devDependencies": {
				"browserify": "^16.0.0",
				"esmangle": "^1.0.0",
				"nyc": "^11.0.0",
				"prettier": "^1.12.0",
				"remark-cli": "^5.0.0",
				"remark-preset-wooorm": "^4.0.0",
				"tape": "^4.4.0",
				"xo": "^0.20.0"
			},
			"scripts": {
				"format": "remark . -qfo && prettier --write '**/*.js' && xo --fix",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "esmangle trough.js > trough.min.js",
				"build": "npm run build-bundle && npm run build-mangle",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run format && npm run build && npm run test-coverage"
			},
			"prettier": {
				"tabWidth": 2,
				"useTabs": false,
				"singleQuote": true,
				"bracketSpacing": false,
				"semi": false,
				"trailingComma": "none"
			},
			"xo": {
				"prettier": true,
				"esnext": false,
				"rules": {
					"guard-for-in": "off",
					"unicorn/prefer-type-error": "off",
					"no-var": "off",
					"prefer-arrow-callback": "off"
				},
				"ignores": [
					"trough.js"
				]
			},
			"remarkConfig": {
				"plugins": [
					"preset-wooorm"
				]
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"gitHead": "b0935085712558b7497721a4a4da977bd65be80d",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.2",
			"_npmVersion": "5.6.0",
			"_nodeVersion": "9.5.0",
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"dist": {
				"integrity": "sha512-FHkoUZvG6Egrv9XZAyYGKEyb1JMsFphgPjoczkZC2y6W93U1jswcVURB8MUvtsahEPEVACyxD47JAL63vF4JsQ==",
				"shasum": "7f1663ec55c480139e2de5e486c6aef6cc24a535",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz",
				"fileCount": 4,
				"unpackedSize": 11855,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa06cTCRA9TVsSAnZWagAAGgkQAKS7ViyM838Pgtw68Evs\nunrg9Yuc7OGFBSAPUxJ3bjz3GDrJkVPGs8oy1GTy9awhUoFRdREkjTj0SpEw\nBxhRiTQioT48wAEuYjzTX8C8ddYoMOBNiJrlUy/6u3cFVpiVIMIOtpxwQjzi\n8gKRl97DmFpEvMDwui5JzVa1SfKwKgMLCjPlIOK7g4x/je02f9DpoZ5NAxl3\ncuiG4z596kbyECFL11ZlFRU1p3sKyTgiWkb7mJQoexR91xO0mHSdXz6xmAGL\nbG7vKhk3EReXq5JVz5s+X/gI3iXPLeVxsy5PjlDCy9C/3SFXzx/BOxjR7Ap+\n/gEhk8Z0CfEiH2UKMall3W4Mcjy5nM/mv9zzqMVzDZVAWEX6cBAUE26FZCx4\nXBie9iITiH2tnMMqKsZL0HARkdgOPqRN19DGq6Ph+PE8k3fLHW7ZsGdB2tvP\nxu2OXzJXkEqfPbKKN7c3AG2zER4/qul/mhefKOHlzRTXWE/6nS4m/TpgD1et\nUY6DSPYZf2RyTCUkkonohzC/jQL4jwMgIL+ba0zjHBwVe/kobABQKsegTnfo\nMCrpoOCBZ64zydLAyrvJqnWTsKDQ8GXxj/8LYf55E9WWZZ/2xMVt516flAif\nXsWZPA2oxsFvyiuc5FXYo03ZV0Ej8gCJUxAOvI1j81TXwsKID9YqgeIwdZek\nhCsw\r\n=HnHQ\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/trough_1.0.2_1523820305253_0.8164597630291217"
			},
			"_hasShrinkwrap": false
		},
		"1.0.3": {
			"name": "trough",
			"version": "1.0.3",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "http://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "http://wooorm.com"
				}
			],
			"files": [
				"index.js",
				"wrap.js"
			],
			"dependencies": {},
			"devDependencies": {
				"browserify": "^16.0.0",
				"nyc": "^11.0.0",
				"prettier": "^1.12.0",
				"remark-cli": "^5.0.0",
				"remark-preset-wooorm": "^4.0.0",
				"tape": "^4.4.0",
				"tinyify": "^2.4.3",
				"xo": "^0.20.0"
			},
			"scripts": {
				"format": "remark . -qfo && prettier --write '**/*.js' && xo --fix",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "browserify index.js -s trough -p tinyify > trough.min.js",
				"build": "npm run build-bundle && npm run build-mangle",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run format && npm run build && npm run test-coverage"
			},
			"prettier": {
				"tabWidth": 2,
				"useTabs": false,
				"singleQuote": true,
				"bracketSpacing": false,
				"semi": false,
				"trailingComma": "none"
			},
			"xo": {
				"prettier": true,
				"esnext": false,
				"rules": {
					"guard-for-in": "off",
					"unicorn/prefer-type-error": "off",
					"no-var": "off",
					"prefer-arrow-callback": "off"
				},
				"ignores": [
					"trough.js"
				]
			},
			"remarkConfig": {
				"plugins": [
					"preset-wooorm"
				]
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"gitHead": "3aa804aa9e1b070c12aff2ee68b4e8eebaf33e1b",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.3",
			"_npmVersion": "6.3.0",
			"_nodeVersion": "10.0.0",
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"dist": {
				"integrity": "sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==",
				"shasum": "e29bd1614c6458d44869fc28b255ab7857ef7c24",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.3.tgz",
				"fileCount": 5,
				"unpackedSize": 12800,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbZ1yTCRA9TVsSAnZWagAAHYoP/itSeV9pGJmjfm4NCRAB\n+OKsk7Ky3d4ue+eqNyBYT7cjQ20/5TzVCVI3lJTMOcroyS/KXhKEeXOBzehc\nGAp/9m1PGag8CoCgS3ZAGuhCzph06wNJaz1QGV5LxX6xZG6/gOqB9tlADcc7\nWNUf1/VWZiaQm9YCLkOs2wrjqDWsnUX1L/53pV3Ed5vgrFqlxlY1pXz7S3YR\n2sYngrbkQHtMWGgaeaLcOEuZF2mXrGGGmHSMBfk5FgrglW+dlskAsN+Ywfeb\nHL37X3tnUpd+qUeRFrsWfkIL0IdZMnQtcLAd4uUFgG39VXiDnmJ9TJ68T97S\nBtciHRQ2Ags9tHtSmfgbZU3oSe03+7UYpZL03EJD0EoqQ+XgxCvvmhdd1GvN\n0wjAh7JktT7Anp8nokYMh974dMT+VQ4mJjj8B6n04YbhCbVSDDpxyXAGyMHP\nwniFjR3W+swPua2h49jCIjKvEfzp4oE2+h2h7rzv6kXbk3OapAFj6QzdCexU\nITrnKhFo4ArBnjLpsTX1txXKYzJW1mSXRSknOv0JfgDHpFMx1XUIX3iBZLA+\nGk62ODTsileAgXrY3lCZoezw9VjqzPHSvZTzUIOz48ugdqP2mfmukZEtZGZJ\nERHWqD63loTepsEVxHZGF+W63gaUk52wlXNeqrmu9qIytVUs+YXRURh7W6QY\nX1yy\r\n=WBpp\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/trough_1.0.3_1533500562861_0.1501738347718511"
			},
			"_hasShrinkwrap": false
		},
		"1.0.4": {
			"name": "trough",
			"version": "1.0.4",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "https://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "https://wooorm.com"
				}
			],
			"dependencies": {},
			"devDependencies": {
				"browserify": "^16.0.0",
				"nyc": "^14.0.0",
				"prettier": "^1.12.0",
				"remark-cli": "^6.0.0",
				"remark-preset-wooorm": "^4.0.0",
				"tape": "^4.4.0",
				"tinyify": "^2.4.3",
				"xo": "^0.24.0"
			},
			"scripts": {
				"format": "remark . -qfo && prettier --write \"**/*.js\" && xo --fix",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "browserify index.js -s trough -p tinyify > trough.min.js",
				"build": "npm run build-bundle && npm run build-mangle",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run format && npm run build && npm run test-coverage"
			},
			"prettier": {
				"tabWidth": 2,
				"useTabs": false,
				"singleQuote": true,
				"bracketSpacing": false,
				"semi": false,
				"trailingComma": "none"
			},
			"xo": {
				"prettier": true,
				"esnext": false,
				"rules": {
					"guard-for-in": "off",
					"unicorn/prefer-type-error": "off"
				},
				"ignores": [
					"trough.js"
				]
			},
			"remarkConfig": {
				"plugins": [
					"preset-wooorm"
				]
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"gitHead": "663811420b859bfbf9653d7d02d0d26e62aaee6d",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.4",
			"_nodeVersion": "11.9.0",
			"_npmVersion": "6.9.0",
			"dist": {
				"integrity": "sha512-tdzBRDGWcI1OpPVmChbdSKhvSVurznZ8X36AYURAcl+0o2ldlCY2XPzyXNNxwJwwyIU+rIglTCG4kxtNKBQH7Q==",
				"shasum": "3b52b1f13924f460c3fbfd0df69b587dbcbc762e",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.4.tgz",
				"fileCount": 5,
				"unpackedSize": 12994,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc2oY6CRA9TVsSAnZWagAAnVIP/39EbwhVxIMt9IWBNsp/\n1nqumCo+bF0THpXkviS/VMIUtl2ePtKTNKn09U34ELyakJQcHUw+THfvkoL3\nAjrW4jQhP7K1ap0ScjI5v5pxXA44LTFfw8UunT86Omlxavk4WmIuvBrXQeLV\nCdJyG0UoTFkOroCpDKaB2UX5mOPhoCnTM4SPhAMjb8/RoI7JyVYrgcXLkcmI\nGwoen3KYygTA988vhMgFxgDef89Ha87fSyISaw/4zTM/ug2Q7L9VAReC2isj\n8rTdZRe5zurU8M01N49tTu8X1wonw1b6UATC6TdDZE35m9/CksvorzBYGrUl\n5o/ndxEogKhcjqLfA6Vwqheeppr0LIq6x3vi8wby9B2AOr/X7Ki0xo4jVHOk\np5YyTPFNRJdGLK8Bg2XmWJos2R5f6eJt1Vnewt7GwqGPJZU7GjejpkpltToZ\nmMgxPEIT9+hGt++RvHmiIYoT+i/lZab6PJhb2gufRkMQu2pzRMjoiX5WzS77\nwCiUCST6iisYIB5g/otcpas9ky4ynuVfZPS9gKIG3oh/6cOkY1DnIT2b6L5x\nYBD13QiCyjbueHYzHrSK0QmhzVO86mpUaM9Dk+UIVlfYUaYk1kOvU2yLdIZb\nti73bSLZB/NmwYsfnRCeKZp+C4npOJcR/50HwJgYsMtTqpR+6UpQdhsrjhjo\ndyvh\r\n=I3L1\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/trough_1.0.4_1557825081403_0.1279159862776782"
			},
			"_hasShrinkwrap": false
		},
		"1.0.5": {
			"name": "trough",
			"version": "1.0.5",
			"description": "Middleware: a channel used to convey a liquid",
			"license": "MIT",
			"keywords": [
				"middleware",
				"ware"
			],
			"repository": {
				"type": "git",
				"url": "git+https://github.com/wooorm/trough.git"
			},
			"bugs": {
				"url": "https://github.com/wooorm/trough/issues"
			},
			"funding": {
				"type": "github",
				"url": "https://github.com/sponsors/wooorm"
			},
			"author": {
				"name": "Titus Wormer",
				"email": "tituswormer@gmail.com",
				"url": "https://wooorm.com"
			},
			"contributors": [
				{
					"name": "Titus Wormer",
					"email": "tituswormer@gmail.com",
					"url": "https://wooorm.com"
				}
			],
			"dependencies": {},
			"devDependencies": {
				"browserify": "^16.0.0",
				"nyc": "^15.0.0",
				"prettier": "^1.0.0",
				"remark-cli": "^7.0.0",
				"remark-preset-wooorm": "^6.0.0",
				"tape": "^4.0.0",
				"tinyify": "^2.0.0",
				"xo": "^0.25.0"
			},
			"scripts": {
				"format": "remark . -qfo && prettier --write \"**/*.js\" && xo --fix",
				"build-bundle": "browserify index.js -s trough > trough.js",
				"build-mangle": "browserify index.js -s trough -p tinyify > trough.min.js",
				"build": "npm run build-bundle && npm run build-mangle",
				"test-api": "node test",
				"test-coverage": "nyc --reporter lcov tape test.js",
				"test": "npm run format && npm run build && npm run test-coverage"
			},
			"prettier": {
				"tabWidth": 2,
				"useTabs": false,
				"singleQuote": true,
				"bracketSpacing": false,
				"semi": false,
				"trailingComma": "none"
			},
			"xo": {
				"prettier": true,
				"esnext": false,
				"rules": {
					"unicorn/prefer-reflect-apply": "off",
					"unicorn/prefer-type-error": "off",
					"guard-for-in": "off"
				},
				"ignores": [
					"trough.js"
				]
			},
			"remarkConfig": {
				"plugins": [
					"preset-wooorm"
				]
			},
			"nyc": {
				"check-coverage": true,
				"lines": 100,
				"functions": 100,
				"branches": 100
			},
			"gitHead": "1e1ccc351816677c62202bd66aa385a572eafa1a",
			"homepage": "https://github.com/wooorm/trough#readme",
			"_id": "trough@1.0.5",
			"_nodeVersion": "13.0.1",
			"_npmVersion": "6.13.6",
			"dist": {
				"integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==",
				"shasum": "b8b639cefad7d0bb2abd37d433ff8293efa5f406",
				"tarball": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz",
				"fileCount": 5,
				"unpackedSize": 13121,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeLAz0CRA9TVsSAnZWagAABx0P+wZAqHnvTpouWtTZRelo\nzVbDdjddlFI7DS7L123E/LyyzRdc1nh3FaNwBkHS8h69HFPAegG+MnMMAJ3D\nPu8uHJDixRL2/OWnE4G7pqWAz5fqEv1B8W1Q7bvVJhAA67QDtw18AyEugZfg\ntiGDske1oi3WVGTRUPbmSLZm8adgON1fVvG76kGzJeQvMhOe6B4ITl136gRl\n4nG3TCRI/SfUUJOYNJd6me+EdRDVhOWweeNNiXe0PQURQVtoZ870Zyl8yqU4\nHOnitGril3wpZO5Lh9D2yx5pnJeuY8Kz/wFqH+CsF3mQfTQBF7eYepfm3Iv8\nOP5dzg2/juLKpKnNZCCtUYboz0cr7XMOtD91fmCBMG1KRCWWaEHo/bi2g4h3\nCJOWQiIZCg1AlkkR/NIfVtIf5wWAjHdD2PX5pbJ1Wd9HfUJCoco8CAvsiNFl\nF6LLEd1Dpes2z7HB3OGsC3mlu0jPRxCpC3JjGpx+Jv0G99XrTqwYtdWj5iFp\nSUNHTwTkkpKWbjIGGh4ld9JtBCXlhd+4Tyr8brT0+NMsUJZm9urbc+cvWF9n\nSELT80tHOopp9v363XXaO9e8WsXhRkhsl/E0radDLSfDghhVwNP+6Wrz8ykt\n8IycIM7zpw7CHH+8wvz047jcwR95xKIJyhnRgezfedTmHuD4ZD6cHfCcZ9g3\nf4LG\r\n=du5U\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "wooorm",
					"email": "tituswormer@gmail.com"
				}
			],
			"_npmUser": {
				"name": "wooorm",
				"email": "tituswormer@gmail.com"
			},
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/trough_1.0.5_1579945204047_0.43205000711550223"
			},
			"_hasShrinkwrap": false
		}
	},
	"time": {
		"modified": "2020-01-25T09:40:08.430Z",
		"created": "2016-08-01T15:37:21.468Z",
		"1.0.0": "2016-08-01T15:37:21.468Z",
		"1.0.1": "2017-07-09T10:02:42.292Z",
		"1.0.2": "2018-04-15T19:25:06.523Z",
		"1.0.3": "2018-08-05T20:22:42.926Z",
		"1.0.4": "2019-05-14T09:11:21.726Z",
		"1.0.5": "2020-01-25T09:40:04.207Z"
	},
	"users": {},
	"dist-tags": {
		"latest": "1.0.5"
	},
	"_uplinks": {
		"npmjs": {
			"etag": "W/\"90a34410a8d7fa7973130bdbe52ba967\"",
			"fetched": 1600679317713
		}
	},
	"_distfiles": {
		"trough-1.0.0.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.0.tgz",
			"sha": "6bdedfe7f2aa49a6f3c432257687555957f342fd",
			"registry": "npmjs"
		},
		"trough-1.0.1.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.1.tgz",
			"sha": "a9fd8b0394b0ae8fff82e0633a0a36ccad5b5f86",
			"registry": "npmjs"
		},
		"trough-1.0.2.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz",
			"sha": "7f1663ec55c480139e2de5e486c6aef6cc24a535",
			"registry": "npmjs"
		},
		"trough-1.0.3.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.3.tgz",
			"sha": "e29bd1614c6458d44869fc28b255ab7857ef7c24",
			"registry": "npmjs"
		},
		"trough-1.0.4.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.4.tgz",
			"sha": "3b52b1f13924f460c3fbfd0df69b587dbcbc762e",
			"registry": "npmjs"
		},
		"trough-1.0.5.tgz": {
			"url": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz",
			"sha": "b8b639cefad7d0bb2abd37d433ff8293efa5f406",
			"registry": "npmjs"
		}
	},
	"_attachments": {
		"trough-1.0.5.tgz": {
			"shasum": "b8b639cefad7d0bb2abd37d433ff8293efa5f406"
		}
	},
	"_rev": "2-16337769271cbabf",
	"_id": "trough",
	"readme": "# trough\n\n[![Build][build-badge]][build]\n[![Coverage][coverage-badge]][coverage]\n[![Downloads][downloads-badge]][downloads]\n[![Size][size-badge]][size]\n\n> **trough** /trôf/ — a channel used to convey a liquid.\n\n`trough` is like [`ware`][ware] with less sugar, and middleware functions can\nchange the input of the next.\n\n## Install\n\n[npm][]:\n\n```sh\nnpm install trough\n```\n\n## Use\n\n```js\nvar fs = require('fs')\nvar path = require('path')\nvar trough = require('trough')\n\nvar pipeline = trough()\n  .use(function(fileName) {\n    console.log('Checking… ' + fileName)\n  })\n  .use(function(fileName) {\n    return path.join(process.cwd(), fileName)\n  })\n  .use(function(filePath, next) {\n    fs.stat(filePath, function(err, stats) {\n      next(err, {filePath, stats})\n    })\n  })\n  .use(function(ctx, next) {\n    if (ctx.stats.isFile()) {\n      fs.readFile(ctx.filePath, next)\n    } else {\n      next(new Error('Expected file'))\n    }\n  })\n\npipeline.run('readme.md', console.log)\npipeline.run('node_modules', console.log)\n```\n\nYields:\n\n```txt\nChecking… readme.md\nChecking… node_modules\nError: Expected file\n    at ~/example.js:21:12\n    at wrapped (~/node_modules/trough/index.js:93:19)\n    at next (~/node_modules/trough/index.js:56:24)\n    at done (~/node_modules/trough/index.js:124:12)\n    at ~/node_modules/example.js:14:7\n    at FSReqWrap.oncomplete (fs.js:153:5)\nnull <Buffer 23 20 74 72 6f 75 67 68 20 5b 21 5b 42 75 69 6c 64 20 53 74 61 74 75 73 5d 5b 74 72 61 76 69 73 2d 62 61 64 67 65 5d 5d 5b 74 72 61 76 69 73 5d 20 5b ... >\n```\n\n## API\n\n### `trough()`\n\nCreate a new [`Trough`][trough].\n\n#### `trough.wrap(middleware, callback[, …input])`\n\nCall `middleware` with all input.\nIf `middleware` accepts more arguments than given in input, and extra `done`\nfunction is passed in after the input when calling it.\nIt must be called.\n\nThe first value in `input` is called the main input value.\nAll other input values are called the rest input values.\nThe values given to `callback` are the input values, merged with every non-nully\noutput value.\n\n*   If `middleware` throws an error, returns a promise that is rejected, or\n    calls the given `done` function with an error, `callback` is invoked with\n    that error\n*   If `middleware` returns a value or returns a promise that is resolved, that\n    value is the main output value\n*   If `middleware` calls `done`, all non-nully values except for the first one\n    (the error) overwrite the output values\n\n### `Trough`\n\nA pipeline.\n\n#### `Trough#run([input…, ]done)`\n\nRun the pipeline (all [`use()`][use]d middleware).\nInvokes [`done`][done] on completion with either an error or the output of the\nlast middleware.\n\n> Note!\n> as the length of input defines whether [async][] functions get a `next`\n> function, it’s recommended to keep `input` at one value normally.\n\n##### `function done(err?, [output…])`\n\nThe final handler passed to [`run()`][run], invoked with an error if a\n[middleware function][fn] rejected, passed, or threw one, or the output of the\nlast middleware function.\n\n#### `Trough#use(fn)`\n\nAdd `fn`, a [middleware function][fn], to the pipeline.\n\n##### `function fn([input…, ][next])`\n\nA middleware function invoked with the output of its predecessor.\n\n###### Synchronous\n\nIf `fn` returns or throws an error, the pipeline fails and `done` is invoked\nwith that error.\n\nIf `fn` returns a value (neither `null` nor `undefined`), the first `input` of\nthe next function is set to that value (all other `input` is passed through).\n\nThe following example shows how returning an error stops the pipeline:\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val) {\n    return new Error('Got: ' + val)\n  })\n  .run('some value', console.log)\n```\n\nYields:\n\n```txt\nError: Got: some value\n    at ~/example.js:5:12\n    …\n```\n\nThe following example shows how throwing an error stops the pipeline:\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val) {\n    throw new Error('Got: ' + val)\n  })\n  .run('more value', console.log)\n```\n\nYields:\n\n```txt\nError: Got: more value\n    at ~/example.js:5:11\n    …\n```\n\nThe following example shows how the first output can be modified:\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val) {\n    return 'even ' + val\n  })\n  .run('more value', 'untouched', console.log)\n```\n\nYields:\n\n```txt\nnull 'even more value' 'untouched'\n```\n\n###### Promise\n\nIf `fn` returns a promise, and that promise rejects, the pipeline fails and\n`done` is invoked with the rejected value.\n\nIf `fn` returns a promise, and that promise resolves with a value (neither\n`null` nor `undefined`), the first `input` of the next function is set to that\nvalue (all other `input` is passed through).\n\nThe following example shows how rejecting a promise stops the pipeline:\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val) {\n    return new Promise(function(resolve, reject) {\n      reject('Got: ' + val)\n    })\n  })\n  .run('val', console.log)\n```\n\nYields:\n\n```txt\nGot: val\n```\n\nThe following example shows how the input isn’t touched by resolving to `null`.\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function() {\n    return new Promise(function(resolve) {\n      setTimeout(function() {\n        resolve(null)\n      }, 100)\n    })\n  })\n  .run('Input', console.log)\n```\n\nYields:\n\n```txt\nnull 'Input'\n```\n\n###### Asynchronous\n\nIf `fn` accepts one more argument than the given `input`, a `next` function is\ngiven (after the input).  `next` must be called, but doesn’t have to be called\nasync.\n\nIf `next` is given a value (neither `null` nor `undefined`) as its first\nargument, the pipeline fails and `done` is invoked with that value.\n\nIf `next` is given no value (either `null` or `undefined`) as the first\nargument, all following non-nully values change the input of the following\nfunction, and all nully values default to the `input`.\n\nThe following example shows how passing a first argument stops the pipeline:\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val, next) {\n    next(new Error('Got: ' + val))\n  })\n  .run('val', console.log)\n```\n\nYields:\n\n```txt\nError: Got: val\n    at ~/example.js:5:10\n```\n\nThe following example shows how more values than the input are passed.\n\n```js\nvar trough = require('trough')\n\ntrough()\n  .use(function(val, next) {\n    setTimeout(function() {\n      next(null, null, 'values')\n    }, 100)\n  })\n  .run('some', console.log)\n```\n\nYields:\n\n```txt\nnull 'some' 'values'\n```\n\n## License\n\n[MIT][license] © [Titus Wormer][author]\n\n<!-- Definitions -->\n\n[build-badge]: https://img.shields.io/travis/wooorm/trough.svg\n\n[build]: https://travis-ci.org/wooorm/trough\n\n[coverage-badge]: https://img.shields.io/codecov/c/github/wooorm/trough.svg\n\n[coverage]: https://codecov.io/github/wooorm/trough\n\n[downloads-badge]: https://img.shields.io/npm/dm/trough.svg\n\n[downloads]: https://www.npmjs.com/package/trough\n\n[size-badge]: https://img.shields.io/bundlephobia/minzip/trough.svg\n\n[size]: https://bundlephobia.com/result?p=trough\n\n[npm]: https://docs.npmjs.com/cli/install\n\n[license]: license\n\n[author]: https://wooorm.com\n\n[ware]: https://github.com/segmentio/ware\n\n[trough]: #trough-1\n\n[use]: #troughusefn\n\n[run]: #troughruninput-done\n\n[fn]: #function-fninput-next\n\n[done]: #function-doneerr-output\n\n[async]: #asynchronous"
}