{"_id":"@drop-in-gaming/barrelsby","_rev":"1-e404c8cd3c2246a83e6ecc2a7706289c","name":"@drop-in-gaming/barrelsby","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"@drop-in-gaming/barrelsby","version":"0.0.1","description":"Automatic TypeScript barrels for your entire code base","main":"index.js","scripts":{"build":"tsc","clean":"rimraf bin/ && rimraf test/**/output/**","prettier:fix":"prettier --write \"src/**/*.ts\"","lint":"tslint --project tsconfig.json -t stylish","integration-test":"ts-node test/src.ts","test":"jest","synk":"SNYK_CONFIG_ORG='barrelsby'; snyk test"},"repository":{"type":"git","url":"git+https://github.com/bencoveney/barrelsby.git"},"keywords":["TypeScript","Barrel","Module","Barrelsby"],"author":{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},"license":"MIT","bugs":{"url":"https://github.com/bencoveney/barrelsby/issues"},"homepage":"https://github.com/bencoveney/barrelsby#readme","dependencies":{"@types/yargs":"^17.0.10","signale":"^1.4.0","yargs":"^17.4.1"},"devDependencies":{"@types/fs-extra":"^9.0.13","@types/jest":"^27.0.2","@types/mock-fs":"^4.13.1","@types/node":"^18.0.0","@types/rimraf":"^3.0.2","@types/signale":"^1.4.2","@types/sinon":"^10.0.6","better-console":"^1.0.1","dir-compare":"^4.0.0","fs-extra":"^10.0.0","jest":"^27.4.4","mock-fs":"^5.1.2","prettier":"^2.6.2","rimraf":"^3.0.2","sinon":"^14.0.0","snyk":"^1.858.0","ts-jest":"^27.1.4","ts-node":"^10.7.0","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.5.3"},"bin":{"barrelsby":"bin/cli.js"},"engine":{"node":">=0.10"},"contributors":[{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},{"name":"Noah","email":"bitforger.huyv0@8shield.net","url":"https://github.com/bitforger"}],"engines":{"node":">=6.0.0"},"gitHead":"bd394d55fc5986433d68fb9ae9947119a45c00c1","_id":"@drop-in-gaming/barrelsby@0.0.1","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-M7AfxjrKFJcw7zIU1H+NTg1/DJXohe9BJbJEGoQJWiz4ERph/bqWoT8igAGK6Hntvr+q2dOzbA1jYTdrpfw63Q==","shasum":"83b7ce57a0e6fb07b684b0e6943280cd950a3b9a","tarball":"https://registry.npmjs.org/@drop-in-gaming/barrelsby/-/barrelsby-0.0.1.tgz","fileCount":118,"unpackedSize":167230,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDOUeoiknyIFhh9lyyD/TbuGmzHl+Ngdeju3dRoGiGjKAiBI/eLUv7ZZn+aS/XKiZUEYr50cOE78cY4UDP74McDLbQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkLSypACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrvwg/+ImRh9zVIIo8UfsW9y4btvYfdmNrkAww85W6z0OlCtAcaEidl\r\nHw3j5vvLSP57A+zVuoauFFiNHkz12stIRFu5fOm3AKk+5TDuJij18NRj7jrA\r\n0E+3OTJJj6/RcY7KhxIRbKs2i6ee4ejzwmD8TWStB+R1CJ9NgL2w8IA0XK4k\r\nYvEsfVkrPRNg+X9uXdlD/YG+QAbE4Eh7DegmtdictHcVc4OxZGSt1+u7K/US\r\nJIkV6zvYau1uibD6rYvryqH9q3udoGDzoaqAaTfMJWVIf5ci3MzqIcsaBSdl\r\nmdsttUS2SJjbesmN2y2sZvVkNP1xZBFKfngQW4oPmTTiLZAvgtjlDcnNY2Mb\r\n4TIvYep5r2WFBqNQawSX4cKjGY14fhJibi3l3LFTtv07oFZG2jlDB+61NCy4\r\nz99AuVkzufaTuE5YdEt+F7RY28Vkqcz8Ik6aGFG/IYCBvR2LH+JtznngXkMn\r\n7fF22c7d8rWRTG4Mmu/W8R8SgXqUQClNLENI9GZz9S08eeqnduPx8u3DN4ub\r\nFc/j1NQg+XcxfnMHpG20rRM7pJcNRN89CL2c+IJFZIX5OFx+iPQAfczeMulv\r\nnLpFb16sLRgR3sGYk5M3FbZpaeiaj0P6MWd7C72fnLeu0FiwOgadZq5mI392\r\nOGA4+c26tQsN/8nDi3Qxftu/5ZIQcMIvU5g=\r\n=Zt5F\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"drop-in-gaming","email":"support@dropingaming.com"},"directories":{},"maintainers":[{"name":"drop-in-gaming","email":"support@dropingaming.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/barrelsby_0.0.1_1680682153414_0.7154190120542385"},"_hasShrinkwrap":false},"0.0.2":{"name":"@drop-in-gaming/barrelsby","version":"0.0.2","description":"Automatic TypeScript barrels for your entire code base","main":"index.js","scripts":{"build":"tsc","clean":"rimraf bin/ && rimraf test/**/output/**","prettier:fix":"prettier --write \"src/**/*.ts\"","lint":"tslint --project tsconfig.json -t stylish","integration-test":"ts-node test/src.ts","test":"jest","synk":"SNYK_CONFIG_ORG='barrelsby'; snyk test"},"repository":{"type":"git","url":"git+https://github.com/bencoveney/barrelsby.git"},"keywords":["TypeScript","Barrel","Module","Barrelsby"],"author":{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},"license":"MIT","bugs":{"url":"https://github.com/bencoveney/barrelsby/issues"},"homepage":"https://github.com/bencoveney/barrelsby#readme","dependencies":{"@types/yargs":"^17.0.10","signale":"^1.4.0","yargs":"^17.4.1"},"devDependencies":{"@types/fs-extra":"^9.0.13","@types/jest":"^27.0.2","@types/mock-fs":"^4.13.1","@types/node":"^18.0.0","@types/rimraf":"^3.0.2","@types/signale":"^1.4.2","@types/sinon":"^10.0.6","better-console":"^1.0.1","dir-compare":"^4.0.0","fs-extra":"^10.0.0","jest":"^27.4.4","mock-fs":"^5.1.2","prettier":"^2.6.2","rimraf":"^3.0.2","sinon":"^14.0.0","snyk":"^1.858.0","ts-jest":"^27.1.4","ts-node":"^10.7.0","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.5.3"},"bin":{"barrelsby":"bin/cli.js"},"engine":{"node":">=0.10"},"contributors":[{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},{"name":"Noah","email":"bitforger.huyv0@8shield.net","url":"https://github.com/bitforger"}],"engines":{"node":">=6.0.0"},"gitHead":"bd394d55fc5986433d68fb9ae9947119a45c00c1","_id":"@drop-in-gaming/barrelsby@0.0.2","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-8KWE+kU1ZYjbaXdkm0LS62rMBnZDApFRxuSGkkbTM0VXgVa+SaP/KWZknTaOgCDDKJda3pdibri9CXScysL8Xg==","shasum":"acde6c16d014d11a8bed8de137c14d9f042305bc","tarball":"https://registry.npmjs.org/@drop-in-gaming/barrelsby/-/barrelsby-0.0.2.tgz","fileCount":118,"unpackedSize":167516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+tEWBlr/EFGneqeQ+JQV5Iun93+BPOaOf3h5ABQsiFAiEAh30DMspdz0eEw2gfj7Wx//V1MB/BD7Nkh5NfFyQOKgg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkLTJaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrBWg/+JxiBPqnToqy9b0e+uCiR9shZyhm0h8Kpe1X3chrjLLesAOX7\r\n29jqyDIIovbnxyQ5d1VYPens0F6WtWMc6rYr7v4G94CNC7s+ozRhFP71lnFz\r\nvYTTTd4HuhTXSl/TphUmRqeere+fH/tv6UlcgLvg9mhvKoMOneGaSHcY6IOn\r\nJx8ZKxKXl9XDrinCeYGSLX5uCasjLOFNyWI+DTPprVKaNhBgzWGRSbkxGOEI\r\naWQ6Q5nOetTnjf0Nz4nI1bwmBaWM/ZB1d/THe9l2hmqj9Wx+BRkdF6GXCt3S\r\nFEI2VVmlb4aUp+cpZJcntvcYy4FrVpSQ+57nIEkOQZ011UhKWkPDBTgSKkhT\r\noV3m/4O8gQSt3ULD2OwZExsOAwpXW5J5hbECAAaIoZf+n3bact+I4VrZMDIR\r\nf1B+GB0ikvwm/rQhvi4iLD9JVyFvijgD2WKKuwlU/k/KLm4uVueAzT9nnG9W\r\nOI6IouirpmK2t0ut1nH2qEywXY58av25+9VNup05bs4ckzC5le71Goppoufg\r\ndtogPxj72KDg2Aowus3CGiEqBPR+a+9aeK4bWwYpzPiLlXmGBEBnVlLUQMdt\r\ne/QHeFV9I5T0pQoan4A8Bbux81vS0VyaLPZ7JFyNnxNy4ubliofSYTlzYABN\r\nWpLWI0nHRWOQ/fsf6zpKm+xeIOCfHMhHLMI=\r\n=0moj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"drop-in-gaming","email":"support@dropingaming.com"},"directories":{},"maintainers":[{"name":"drop-in-gaming","email":"support@dropingaming.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/barrelsby_0.0.2_1680683610261_0.3605663074642824"},"_hasShrinkwrap":false}},"time":{"created":"2023-04-05T08:09:13.354Z","0.0.1":"2023-04-05T08:09:13.566Z","modified":"2023-04-05T08:33:30.544Z","0.0.2":"2023-04-05T08:33:30.451Z"},"maintainers":[{"name":"drop-in-gaming","email":"support@dropingaming.com"}],"description":"Automatic TypeScript barrels for your entire code base","homepage":"https://github.com/bencoveney/barrelsby#readme","keywords":["TypeScript","Barrel","Module","Barrelsby"],"repository":{"type":"git","url":"git+https://github.com/bencoveney/barrelsby.git"},"contributors":[{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},{"name":"Noah","email":"bitforger.huyv0@8shield.net","url":"https://github.com/bitforger"}],"author":{"name":"Ben Coveney","email":"bencoveney@gmail.com","url":"https://github.com/bencoveney"},"bugs":{"url":"https://github.com/bencoveney/barrelsby/issues"},"license":"MIT","readme":"# ![Barrelsby Logo](https://github.com/bencoveney/barrelsby/blob/master/img/logo.png?raw=true)\n\nAutomatically create TypeScript barrels for your entire code base.\n\n[![npm version](https://badge.fury.io/js/barrelsby.svg)](https://badge.fury.io/js/barrelsby)\n[![Node.js CI](https://github.com/bencoveney/barrelsby/actions/workflows/node.js.yml/badge.svg?branch=master)](https://github.com/bencoveney/barrelsby/actions/workflows/node.js.yml)\n[![CodeQL](https://github.com/bencoveney/barrelsby/actions/workflows/codeql-analysis.yml/badge.svg?branch=master)](https://github.com/bencoveney/barrelsby/actions/workflows/codeql-analysis.yml)\n\n## About Barrels\n\nBarrels are files that rollup exports from several modules into a single convenient module\ntypically named `index.ts`. They tend to help simplify large blocks of import statements at the top\nof files and help to group up related functionality.\n\nA barrel file looks like this:\n\n```TypeScript\nexport * from \"./DropDown\";\nexport * from \"./TextBox\";\nexport * from \"./CheckBox\";\nexport * from \"./DateTimePicker\";\nexport * from \"./Slider\";\n```\n\nIt can help you go from messy imports like this:\n\n```TypeScript\nimport {DropDown} from \"./src/controls/DropDown\";\nimport {TextBox} from \"./src/controls/TextBox\";\nimport {CheckBox} from \"./src/controls/CheckBox\";\nimport {DateTimePicker} from \"./src/controls/DateTimePicker\";\nimport {Slider} from \"./src/controls/Slider\";\n```\n\n...to something tidier like this:\n\n```TypeScript\nimport {DropDown, TextBox, CheckBox, DateTimePicker, Slider} from \"./src/controls\";\n```\n\n...or even this:\n\n```TypeScript\nimport * as Controls from \"./src/controls/index\";\n```\n\n### More Reading\n\n* [TattooCoder Blog](http://tattoocoder.com/angular2-barrels/)\n\n### Barrelsby Articles\n\n* [Rupesh Tiwari Blog](http://rupeshtiwari.com/create-barrel/)\n* [Medium Article](https://medium.com/@klauskpm/do-a-barrel-export-aa5b79b76b05)\n\n### Alternatives\n\n* [Barrelbot](https://github.com/sw-yx/barrelbot)\n* [creeate-index](https://github.com/gajus/create-index)\n\n## Usage\n\nTo install Barrelsby:\n\n```\nnpm install --save-dev barrelsby\n```\n\nTo run barrelsby first add a script to the `package.json` file:\n\n```json\n{\n  \"scripts\": {\n    \"generate-barrels\": \"barrelsby --delete\"\n  }\n}\n```\n\nYou can now generate barrels:\n\n```\nnpm run generate-barrels\n```\n\n## Configuration Options\n\nBarrelsby accepts a number of options to help refine how your barrels are created. These options\ncan be configured from the command line or using a configuration file.\n\n### `-c [path]` or `--config [path]`\n\nSpecifies the location of the barrelsby configuration file. This file must be a `.json` file. You\ncan include any of the configuration options using their long name.\n\n### `-d [path...]` or `--directory [path...]`\n\nSpecifies a list of root directories where barrels will be created from. Uses the current directory\nby default.\n\n**Note**: This is backwards compatible with previous versions. Existing configuration files will be\nparsed correctly. The following two json files will behave identically.\n\n```json lines\n{\n  \"directory\": \"./src\"\n}\n\n{\n  \"directory\": [\"./src\"]\n}\n```\n\n### `-D` or `--delete`\n\nDeletes any existing barrels encountered by barrelsby. Disabled by default.\n\n### `-e [regex...]` or `--exclude [regex...]`\n\nExcludes any files whose paths match any of the specified regular expressions.\n\n### `-E` or `--exportDefault`\n\nAlso export the default export of the file. Currently works only with the `flat` mode.\n\n```TypeScript\nexport * from \"./barrel\";\nexport * from \"./barrel\";\nexport { default as barrel } from \"./barrel\";\n```\n\n### `-h` or `--help`\n\nDisplays help information on the command line arguments that barrelsby accepts.\n\n### `-i [regex...]` or `--include [regex...]`\n\nOnly include files whose paths match any of the specified regular expressions.\n\n### `-l [mode]` or `--location [mode]`\n\nThe mode that barrelsby should use to determine where which directories to create barrels in.\nDefaulted to *top*.\n\n- `top` only creates a barrel in the target directory.\n- `below` creates a barrel in every directory just below the target directory.\n- `all` creates a barrel in every directory below (and including) the target directory.\n- `replace` only creates barrels in directories where one already existed.\n- `branch` creates a barrel in every directory that contains other directories.\n\n### `-L` or `--local`\n\nEnable this to prevent barrels including modules that exist in the same directory, rather\nthan recursively searching child directories.\n\n### `-n [name]` or `--name [name]`\n\nSpecifies the name to use for creating new barrels (and identifying old ones). `.ts` wil be\nappended if not included in the name. Barrels names will be defaulted to `index.ts`.\n\n### `-s [mode]` or `--structure [mode]`\n\nThe structure that barrelsby should create inside the barrels. Defaulted to *flat*.\n\n#### `flat`\n\nExports modules without any nesting.\n\n```TypeScript\nexport * from \"./barrel\";\nexport * from \"./index\";\nexport * from \"./directory2/script\";\nexport * from \"./directory2/directory4/deeplyNested\";\nexport * from \"./directory3/program\";\n```\n\n#### `filesystem`\n\nExports modules as a nested structure that matches the file system directories.\n\n```TypeScript\nimport * as barrelts from \"./barrel\";\nimport * as directory2directory4deeplyNestedts from \"./directory2/directory4/deeplyNested\";\nimport * as directory2scriptts from \"./directory2/script\";\nimport * as directory3programts from \"./directory3/program\";\nimport * as indexts from \"./index\";\nexport {barrelts as barrel};\nexport const directory2 = {\n  directory4: {\n    deeplyNested: directory2directory4deeplyNestedts,\n  },\n  script: directory2scriptts,\n};\nexport const directory3 = {\n  program: directory3programts,\n};\nexport {indexts as index};\n```\n\n### `-q` or `--singleQuotes`\n\nUse 'single quotes' in the generated barrel files instead of the default \"double quotes\".\n\n### `-S` or `--noSemicolon`\n\nOmit semicolons from the end of lines in the generated barrel files.\n\n### `-H` or `--noHeader`\n\nOmit adding a header comment to the top of the barrel file.\n\n### `-v` or `--version`\n\nDisplay the barrelsby version number.\n\n### `-V` or `--verbose`\n\nDisplay additional debug information.\n\n## Requirements\n\nRequires node v6.0.0 or greater for ES6 syntax.\n\n## Contributing\n\nSee CONTRIBUTING.md\n","readmeFilename":"README.md"}