{"_id":"@agostone/gulp-glass","_rev":"2-f3765629a26fee5999444b7cf46485d3","name":"@agostone/gulp-glass","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@agostone/gulp-glass","version":"1.0.0","description":"gulp task loader","keywords":["gulp","task","loader"],"author":{"name":"Agoston Nagy","url":"https://github.com/agostone"},"repository":{"type":"git","url":"git+https://github.com/agostone/gulp-glass.git"},"main":"./Glass.js","dependencies":{"glob":"7.x","lodash":"^4.17.15"},"devDependencies":{"@commitlint/cli":"^8.1.0","@commitlint/config-conventional":"^7.5.0","eslint-config-node":"^4.0.0","husky":"^1.3.1","gulp":"4.x","jasmine":"^3.4.0","jasmine-expect":"^4.0.3"},"peerDependencies":{"gulp":"4.x"},"scripts":{"test":"jasmine"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS"}},"publishConfig":{"access":"public"},"gitHead":"6cd07a1bb49193855549d28efb99bc62db01b1df","bugs":{"url":"https://github.com/agostone/gulp-glass/issues"},"homepage":"https://github.com/agostone/gulp-glass#readme","_id":"@agostone/gulp-glass@1.0.0","_nodeVersion":"12.8.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-bZM41qNWQc7oEfZwg5ABMYO4/0ssL/6WJFOTuHb5kNVnMpFVsYjzuhT1PzX/mjOuX+aWxSys/eSe9EBf8VSdqQ==","shasum":"c57900d136ebdee00ed8fff2e10cdb71675c9cd4","tarball":"https://registry.npmjs.org/@agostone/gulp-glass/-/gulp-glass-1.0.0.tgz","fileCount":21,"unpackedSize":11122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdU1YWCRA9TVsSAnZWagAAP1wP/2NoyKQmr8TC4IpjrtnE\nJLuI67QXrafYWVNRVl7Djv33iCiV70aG7d0m8TyODiL9bQ7Bf6pKvvb+preE\nTVbwnrHX2RBZnwYe6LQVbTdE7ZJOSHbZ5iBx1T5hZGqF41zo/ojEgjI8Pfnh\nSdgFaRYVQ8gnNoB+v1FexQC4CjeWldTYdfWZU2Ot2uFmoCTPz/01pu6oPqzZ\n4ZKGoRCao1vP3ugaCnkjEXS4sYuJ6PIbaGKb2X9uiIz+v79rP4DRUtz2ETu8\ndr9HDl7LpCfxx+MVXToVOrZU+B8y4UitxKTjg9zpukfQG22CV3X98BhJgIUI\nyGp2YGaMjgH/2taBtWQ4UZmT9PI9oAKYprfO7wJv1m2lcsfj3digMU7kFNgv\nAMjspVWZ8hTQEtpLWOt0J5oRbWlGZXwQcQVYxsbyWwNaJ/yPLpNpACi/yIDG\nFF5G6mL9Ygxpqp7iQVhmeI8vg8otRfeoTcU6nPJVKyOznXYD7afkLjbqIUUP\nvowrrqyVNJzPUIRlneFDfbHB9XguifLYRMfsM4YkvdXsJE29vSEJBs6nni5f\nSzpwDGyhKRFZ7W11Vg7HNuC0CdVk7UPHMQ/4ajaUZNdPtCqssnB2kN9aKRJK\nrkDEFm6VodPnt3/rTkRsYW0FUzGJBaO6RTD6LzUOLl2erzYPBdczSp8JftU2\n8Z4V\r\n=hLiH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCF1gEcqIiHnOcTPtKPwrp/QyyIN7jRQ/DabL+G5h7ueQIgcn/V12eeNQdhZYdn6fEtNCSvDZOt69CPP1K5hy6T9mE="}]},"maintainers":[{"name":"agostone","email":"agostone@gmail.com"}],"_npmUser":{"name":"agostone","email":"agostone@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gulp-glass_1.0.0_1565742613474_0.2239019234417392"},"_hasShrinkwrap":false},"1.1.0":{"name":"@agostone/gulp-glass","version":"1.1.0","description":"gulp task loader","license":"MIT","keywords":["gulp","task","loader"],"author":{"name":"Agoston Nagy","url":"https://github.com/agostone"},"repository":{"type":"git","url":"git+https://github.com/agostone/gulp-glass.git"},"main":"./Glass.js","dependencies":{"glob":"7.x","lodash":"^4.17.15"},"devDependencies":{"@commitlint/cli":"^8.1.0","@commitlint/config-conventional":"^7.5.0","eslint-config-node":"^4.0.0","husky":"^1.3.1","gulp":"4.x","jasmine":"^3.4.0","jasmine-expect":"^4.0.3"},"peerDependencies":{"gulp":"4.x"},"scripts":{"test":"jasmine"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS"}},"publishConfig":{"access":"public"},"gitHead":"daaea97321d9f37931bc4828a5f59fe79c2fa2c8","bugs":{"url":"https://github.com/agostone/gulp-glass/issues"},"homepage":"https://github.com/agostone/gulp-glass#readme","_id":"@agostone/gulp-glass@1.1.0","_nodeVersion":"12.9.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-x9+HjFKw+ztLiidW5umOSCDGSbgQdzR7/EIO1kTlkLamRy0NU2+nPMCE4Ca8y5upA5pLFT5DCh/YZSsTKHKWzQ==","shasum":"a55a3ffe5deaea567df118c94257dd9d0ad9a4df","tarball":"https://registry.npmjs.org/@agostone/gulp-glass/-/gulp-glass-1.1.0.tgz","fileCount":19,"unpackedSize":12077,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYDB3CRA9TVsSAnZWagAAYJkP/1A/vFwWe2zyrbeNPKIz\nIcfVkfczKRYj+hfSMO6KPqUgAPG5YJ4k1P+nAno/OBAtH2AlGrpFpwR82yZ1\nKmWONSa6t/DnC7+UKi5iObgrDTIn935mSUA4kIaMpc8UBiRJJpu49b2BzhnB\n7Hu4gaAZ/AlRdqqz6hwVAB0CIWm2RSVuk0kU3J56uDwI72CYZpuCd3k7GRPO\nPVfr4oIX8VxI2n838hMY3Oj9yAOe8rqD16CuxtRlCVaT8+mJDLw6QrSx9VMG\nGOkpRBmrvdzgfRwRyYuhm8QhGqYYDBKdiQzMyU0pkWdWdyO2uULr+/3JoAJ/\nYMzyHBHjO1m424i5TVjnh7maSuRBqTKg8hbE9a9cWooRFE5NkH4YqjLDhcyw\nx7IhcMbdhnTRDCHgd4oF8jMA2cjidkeqREUf8b3SPbnLjDjPVAG+YD5Iv7Mg\nMTNPp3CzNznEjzaoyF7QhbhOJEW7nso+qWbDpFLB+NCls9lsmV6J3YJD1e1l\nHqIJ/Gr9NP8B1DV0hiABT9/seH+vUg1dEqHIKVx4WkACC/5n4cTRH+L82+N0\ntsGPDdJkfmgEfAIoGbu2ab8APQ2Oazvr6qdlzHrZNUtSfjomGDFtgbQxdM3I\n8Nt+oBaXgEiSKKdZZRapNRfyZfbQ0CbcGPCGOaKVD3ZvI4Y4oH9Z7HUe6N+e\nIuzB\r\n=Sx6i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGKi4PVtSU4RNcutj4vKQW8ejjjlZrR7RhK/7BmXN63XAiEA+1rZxE2zvANZo4aKFZJEq09xtbCIlNl1vjEfL/+kxws="}]},"maintainers":[{"name":"agostone","email":"agostone@gmail.com"}],"_npmUser":{"name":"agostone","email":"agostone@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gulp-glass_1.1.0_1566584950857_0.7107883171171838"},"_hasShrinkwrap":false}},"time":{"created":"2019-08-14T00:30:13.240Z","1.0.0":"2019-08-14T00:30:13.586Z","modified":"2022-04-04T12:02:34.593Z","1.1.0":"2019-08-23T18:29:11.066Z"},"maintainers":[{"name":"agostone","email":"agostone@gmail.com"}],"description":"gulp task loader","homepage":"https://github.com/agostone/gulp-glass#readme","keywords":["gulp","task","loader"],"repository":{"type":"git","url":"git+https://github.com/agostone/gulp-glass.git"},"author":{"name":"Agoston Nagy","url":"https://github.com/agostone"},"bugs":{"url":"https://github.com/agostone/gulp-glass/issues"},"readme":"# gulp-glass\nGlass is a task loader for gulp, making it possible to organize tasks into files and directories.\n\n## Features\n- Organize tasks into files and directories\n- Specifying as many task path(s) as you wish\n- Task aliasing\n\n## Install\n$ npm install @agostone/gulp-glass --save-dev\n\n## Usage\nReplace the contents of your gulpfile.js with the following:\n```\nconst Glass = require('@agostone/gulp-glass');\nconst glass = new Glass(<configuration>);\nglass.loadTasks();\n```\n\n### configuration\n- Required: true\n- Type: String|Object\n\nIf the configuration parameter is a simple string, it should point to a valid directory containing the task files.\nDefault pattern for finding task files is '\\**/\\*.js'.\n\nIf the configuration parameter is a plain javascript object, the structure is the following:\n```\n{\n  taskPaths: '<path>'|['<path>', '<path>', ...],\n  filePattern: '<pattern>',\n  sort: <function>,\n  nameResolver: <function>\n}\n``` \n##### taskPaths\n- Required: true\n- Type: String|Array of strings\n\nPath(s) containing task files.\n\n##### pattern\n- Required: false\n- Type: String\n- Default: '\\**/\\*.js'\n\nPattern describing task files.\n\n##### sort\n- Required: false\n- Type: Function\n- Default: Task files are ordered by full path/name in an ascending order.\n\nIf provided, defines the order used for loading task files.\nThis is a compare function for array.sort(), check the documentation for array.sort for more information.\n\n##### nameResolver\n- Required: false\n- Type: Function\n- Default: Name of the task is the filename without path and extension.\n\nIf provided, will be executed for each individual task file and should return with the desired task name.\n\nFor example (default behavior):\n```\n{\n    nameResolver: (file) => path.basename(file, path.extname(file))\n}\n```\n\n## Task registration\nTasks are automatically loaded and registered by gulp-glass. \nLoading/registration order is defined by the sort, task names by the nameResolver configuration parameter.\n\n### Examples\nFilename: '/tasks/minify.js'\n\nTask name: minify\n\nFilename: '/tasks/minify.css.js'\n\nTask name: minify.css\n\n## Task files\nTask files are regular node.js modules, they should export a gulp task function.\n\n### Example\n```\n'use strict';\n\nconst { src, dest } = require('gulp');\n\nmodule.exports = function() {\n  return src('src/*.js')\n    .pipe(dest('output/'));\n}\n```\n\n### Task aliasing\nTo create task aliases you can export an alias property on the gulp task function.\nThe alias should be either a string defining one alias, or an array of string defining multiple aliases.\nTask aliases always override the name resolver.\n\n### Example\n```\n'use strict';\n\nconst { src, dest } = require('gulp');\n\nmodule.exports = function() {\n  return src('src/*.js')\n    .pipe(dest('output/'));\n}\n\nmodule.exports.alias = 'taskAlias';\n// or\nmodule.exports.alias = ['taskAlias1', 'taskAlias2'];\n```\n## Running the tests\n```\n$ npm run test\n```\n\n## Todo\n- Lazy loading tasks, only when gulp really needs them\n","readmeFilename":"README.md","license":"MIT"}