{"_id":"@11ty/recursive-copy","_rev":"10-3f76f5a6f60b99780143eddcbbe2a605","name":"@11ty/recursive-copy","dist-tags":{"latest":"5.0.2"},"versions":{"3.0.0":{"name":"@11ty/recursive-copy","version":"3.0.0","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@3.0.0","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/timkendrick/recursive-copy","bugs":{"url":"https://github.com/timkendrick/recursive-copy/issues"},"dist":{"shasum":"3dc6e3fac20d8f1d37b48c4757ae94e7311e662c","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-3.0.0.tgz","fileCount":5,"integrity":"sha512-v1Mr7dWx5nk69/HRRtDHUYDV9N8+cE12IGiKSFOwML7HjOzUXwTP88e3cGuhqoVstkBil1ZEIaOB0KPP1zwqXA==","signatures":[{"sig":"MEYCIQDwyUtSkPWgeyizLSw7QlnyOgqwNyVLnGMgeUZCkuNZuQIhAKdUxrpEZzxcdXT4XRF5NU0W8ELVUNIFGz/xopleggSr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24374},"main":"index.js","types":"index.d.ts","gitHead":"69a2e49e3f359bb82bed7fbe97344d4643cb0a4e","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"zachleat","email":"zachleatherman@gmail.com"},"repository":{"url":"git+https://github.com/timkendrick/recursive-copy.git","type":"git"},"_npmVersion":"10.5.0","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.12.2","dependencies":{"junk":"^1.0.1","pify":"^2.3.0","errno":"^0.1.2","slash":"^1.0.0","mkdirp":"^3.0.1","rimraf":"^5.0.7","promise":"^7.0.1","maximatch":"^0.1.0","graceful-fs":"^4.2.11"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.12.1","chai":"^3.5.0","mocha":"^2.4.5","eslint":"^2.9.0","rewire":"^2.3.3","through2":"^2.0.1","@types/node":"^14.6.0","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_3.0.0_1720713454359_0.7563665015867584","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"@11ty/recursive-copy","version":"3.0.1","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@3.0.1","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"9c6aad23beb271e23ef8c8ed43e975b99fe746b6","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-3.0.1.tgz","fileCount":5,"integrity":"sha512-suoSv7CanyKXIwwtLlzP43n3Mm3MTR7UzaLgnG+JP9wAdg4uCIUJiAhhgs/nkwtkvsuqfrGWrUiaG1K9mEoiPg==","signatures":[{"sig":"MEQCIEJj1QPkd/Kzgln5AcjkHAAFa/XuiK+W8zws4Yibm9X6AiBpKD6ogx/Uf2gttg8yL20XLsKmZPQ7Xor/cII+IHZZEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@3.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24545},"main":"index.js","types":"index.d.ts","gitHead":"b8a108dd0e80dd5043042fd4047458f6ffb46b81","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"zachleat","email":"zachleatherman@gmail.com"},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"10.8.2","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.18.1","dependencies":{"junk":"^1.0.1","pify":"^2.3.0","errno":"^0.1.2","slash":"^1.0.0","mkdirp":"^3.0.1","rimraf":"^5.0.7","promise":"^7.0.1","maximatch":"^0.1.0","graceful-fs":"^4.2.11"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.12.1","chai":"^3.5.0","mocha":"^2.4.5","eslint":"^2.9.0","rewire":"^2.3.3","through2":"^2.0.1","@types/node":"^14.6.0","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_3.0.1_1733506170229_0.7155081740243117","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@11ty/recursive-copy","version":"4.0.0","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@4.0.0","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"1b6b4589b7eff8f040eb69f73d2cf8a1ef427d0d","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.0.tgz","fileCount":5,"integrity":"sha512-bVo57cFmX2YH2II1yq4SahJIzlL0YszQlBl+U2pt2j/YlmQY51tI9XXpm2AHLcZiHewcuvnn5nmpScURGSFxtw==","signatures":[{"sig":"MEUCIQDcReKuJ6NBZLUp6Ni30Q+A6yLXGtKOHzQTEd7FDhRJjgIgXzKiOfuzXXE6qV7pKdAJH5En4gulganLjQmVGMmEwXA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24777},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"52aa861c976af00323328079bf61f4034710f1c6","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"zachleat","email":"zachleatherman@gmail.com"},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"10.8.2","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.18.3","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","slash":"^3.0.0","maximatch":"^0.1.0","graceful-fs":"^4.2.11"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_4.0.0_1741118821789_0.9700030897658589","host":"s3://npm-registry-packages-npm-production"}},"4.0.1":{"name":"@11ty/recursive-copy","version":"4.0.1","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@4.0.1","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"6b55a36ffc64d976099aac377ed94d38ca53c8eb","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.1.tgz","fileCount":5,"integrity":"sha512-Zsg1xgfdVTMKNPj9o4FZeYa73dFZRX856CL4LsmqPMvDr0TuIK4cH9CVWJyf0OkNmM8GmlibGX18fF0B75Rn1w==","signatures":[{"sig":"MEUCIEPk6820AzGqRJ9shFeiwSjr0nta89RlhaScb+UTB3pnAiEAtuaQGaDkLpaSY/Lw8pxLByPIe22xgxTMgE4Kp33FM7I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@4.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24596},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"9031a51addef2b065f22ba08a7ef39c23bdc2dc8","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"zachleat","email":"zachleatherman@gmail.com"},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"10.8.2","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.19.0","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","slash":"^3.0.0","maximatch":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_4.0.1_1745443196984_0.645668919000203","host":"s3://npm-registry-packages-npm-production"}},"4.0.2":{"name":"@11ty/recursive-copy","version":"4.0.2","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@4.0.2","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"6349f2e0a38c7229ff32773ba164e8e9eb2e3fc6","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.2.tgz","fileCount":5,"integrity":"sha512-174nFXxL/6KcYbLYpra+q3nDbfKxLxRTNVY1atq2M1pYYiPfHse++3IFNl8mjPFsd7y2qQjxLORzIjHMjL3NDQ==","signatures":[{"sig":"MEYCIQCWcLd/aLvOMyJkncSKmdT+ovjQagTAPB0xpfpCk/8U3AIhAOfVkaReBdr7jhhCAhvSDF5xzicyyx7J8D8/AN+i5KOh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@4.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24596},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"443e0238e268629dfb86405ab594c55377cc2987","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"zachleat","email":"zachleatherman@gmail.com"},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"10.8.2","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.19.2","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","slash":"^3.0.0","maximatch":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_4.0.2_1750102270512_0.9518658741966399","host":"s3://npm-registry-packages-npm-production"}},"4.0.3":{"name":"@11ty/recursive-copy","version":"4.0.3","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@4.0.3","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"eab0a7e2ffbd2aaf2d4999c78b53aceb49570bd8","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.3.tgz","fileCount":5,"integrity":"sha512-SX48BTLEGX8T/OsKWORsHAAeiDsbFl79Oa/0Wg/mv/d27b7trCVZs7fMHvpSgDvZz/fZqx5rDk8+nx5oyT7xBw==","signatures":[{"sig":"MEYCIQCzNbcgz5rMYALUDz2oDYQkJsKVTfa3SXJlnFHd9aMOkAIhAOA6+RMzdl87g1DtFui8aYPOcIl0Dla19r53fBMlh8NX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@4.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24596},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"dfdf90795beb7ecb36d7b5ec367c5ede415eb077","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b0ef1ed-a961-47be-9e33-b2469c76d71d"}},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"11.6.4","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.19.5","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","slash":"^3.0.0","maximatch":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_4.0.3_1764709762713_0.303466757884872","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@11ty/recursive-copy","version":"5.0.0","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@5.0.0","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"86dd0d0e48c77bb3ec66b7cfec576d381eb2a4bb","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-5.0.0.tgz","fileCount":7,"integrity":"sha512-ifW4b1SHo8O23HnTtkp00RaTCfNmp36qCXp8J7nPHPyd/E7o2OsmSoAp0+oIX92VaFIhC5ip/ioFgns54HyAbg==","signatures":[{"sig":"MEQCIC8fVtunQgszN5tNWyEaEo84MJyJP5d1yVsluIUr9QuXAiAjJTRz4fcbPHN2YCnT1cx37Ao8e2n+ntA6ke54pqnaqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":26380},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"25593420863d9be2bdacb89c9d58be864aea9881","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b0ef1ed-a961-47be-9e33-b2469c76d71d"}},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"11.7.0","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.19.6","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","minimatch":"^10.1.1"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_5.0.0_1765480533888_0.9703246144143436","host":"s3://npm-registry-packages-npm-production"}},"4.0.4":{"name":"@11ty/recursive-copy","version":"4.0.4","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","_id":"@11ty/recursive-copy@4.0.4","maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"contributors":[{"url":"https://zachleat.com/","name":"Zach Leatherman","email":"zachleatherman@gmail.com"}],"homepage":"https://github.com/11ty/recursive-copy","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"dist":{"shasum":"1655eaf0846a0b803fbe061cf9288c4a804b4219","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.4.tgz","fileCount":6,"integrity":"sha512-oI7m8pa7/IAU/3lqRU9vjBbs20iKFo7x+1K9kT3aVira6scc1X9MjBdgLCHzLJeJ7iB6wydioA+kr9/qPnvmlQ==","signatures":[{"sig":"MEYCIQDNFC3NxtPwk/FtVStrls4DrMHJ/ABdsWc5866Y2R7DKwIhAPXHVhtKmi2HxhNG7vCNLGyGsFe3pKSdcMJiRe1CnhG+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@4.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":26136},"main":"index.js","types":"index.d.ts","engines":{"node":">=18"},"gitHead":"bc98663bad82ac33300d10fdbeaa2ca28baaf206","scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b0ef1ed-a961-47be-9e33-b2469c76d71d"}},"repository":{"url":"git+https://github.com/11ty/recursive-copy.git","type":"git"},"_npmVersion":"11.11.1","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","directories":{"lib":"lib","test":"test"},"_nodeVersion":"20.20.1","dependencies":{"junk":"^3.1.0","errno":"^1.0.0","slash":"^3.0.0","minimatch":"^3.1.5"},"_hasShrinkwrap":false,"devDependencies":{"tsd":"0.31.2","chai":"^3.5.0","mocha":"^2.5.3","eslint":"^2.13.1","rewire":"^2.5.2","through2":"^2.0.5","@types/node":"^14.18.63","read-dir-files":"^0.1.1","if-node-version":"^1.1.1","chai-as-promised":"^5.3.0"},"_npmOperationalInternal":{"tmp":"tmp/recursive-copy_4.0.4_1773853269258_0.12839419846444855","host":"s3://npm-registry-packages-npm-production"}},"5.0.2":{"name":"@11ty/recursive-copy","version":"5.0.2","description":"A fork of `recursive-copy`: Simple, flexible file copy utility","engines":{"node":">=20"},"main":"index.js","types":"index.d.ts","directories":{"lib":"lib","test":"test"},"scripts":{"test":"npm run test:lint && npm run test:mocha && if-node-version '>=10' npm run test:typings","test:lint":"if-node-version '>=4' eslint index.js test","test:mocha":"mocha --reporter spec","test:typings":"tsd && echo 'TypeScript definitions are valid'","prepublishOnly":"npm run test"},"repository":{"type":"git","url":"git+https://github.com/11ty/recursive-copy.git"},"keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"contributors":[{"name":"Zach Leatherman","email":"zachleatherman@gmail.com","url":"https://zachleat.com/"}],"license":"ISC","bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"homepage":"https://github.com/11ty/recursive-copy","dependencies":{"errno":"^1.0.0","junk":"^3.1.0","minimatch":"^10.2.4"},"devDependencies":{"@types/node":"^14.18.63","chai":"^3.5.0","chai-as-promised":"^5.3.0","eslint":"^2.13.1","if-node-version":"^1.1.1","mocha":"^2.5.3","read-dir-files":"^0.1.1","rewire":"^2.5.2","through2":"^2.0.5","tsd":"0.31.2"},"gitHead":"6dcb937700625fc5b095d27a7c1e3994f936ee5d","_id":"@11ty/recursive-copy@5.0.2","_nodeVersion":"20.20.1","_npmVersion":"11.11.1","dist":{"integrity":"sha512-3fzosXvQEyGl7vVXkJ+8ixlhu+BP0Gw9bGKtPuP8JPYJEfEgSc8w86pxjgMq/WNfAs0vPQWOO4lFdAZ7DEbN9g==","shasum":"2854b5759545d9e602ffce81623a91d12a79acec","tarball":"https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-5.0.2.tgz","fileCount":7,"unpackedSize":26405,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@11ty%2frecursive-copy@5.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIG92JmKqVPHsmTih3A0lIJVr+5BZa1OdSJrikgFLdJTaAiAcj+315OnWp5dlos5NkbcqSYjaYRgpDSd5o1IdUn/ZKA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b0ef1ed-a961-47be-9e33-b2469c76d71d"}},"maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/recursive-copy_5.0.2_1773854311811_0.9046948013516929"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-11T15:57:34.252Z","modified":"2026-03-18T17:18:32.286Z","3.0.0":"2024-07-11T15:57:34.490Z","3.0.1":"2024-12-06T17:29:30.405Z","4.0.0":"2025-03-04T20:07:01.958Z","4.0.1":"2025-04-23T21:19:57.155Z","4.0.2":"2025-06-16T19:31:10.706Z","4.0.3":"2025-12-02T21:09:22.906Z","5.0.0":"2025-12-11T19:15:34.047Z","4.0.4":"2026-03-18T17:01:09.440Z","5.0.2":"2026-03-18T17:18:31.987Z"},"bugs":{"url":"https://github.com/11ty/recursive-copy/issues"},"author":{"name":"Tim Kendrick","email":"timkendrick@gmail.com"},"license":"ISC","homepage":"https://github.com/11ty/recursive-copy","keywords":["copy","recursive","file","directory","folder","symlink","fs","rename","filter","transform","glob","regex","regexp"],"repository":{"type":"git","url":"git+https://github.com/11ty/recursive-copy.git"},"description":"A fork of `recursive-copy`: Simple, flexible file copy utility","contributors":[{"name":"Zach Leatherman","email":"zachleatherman@gmail.com","url":"https://zachleat.com/"}],"maintainers":[{"name":"zachleat","email":"zachleatherman@gmail.com"},{"name":"fortawesome-admin","email":"admin@fortawesome.com"}],"readme":"# `@11ty/recursive-copy`\n\nA temporary fork of [`timkendrick/recursive-copy`](https://github.com/timkendrick/recursive-copy) to satisfy https://github.com/11ty/eleventy/issues/3299 as Eleventy slowly [moves to use Node native API `fs.cp`](https://github.com/11ty/eleventy/issues/3360).\n\n- v5.x requires Node 20+\n- v4.x requires Node 18+\n- v3.x requires Node 0.10+\n- v2.x requires Node 0.10+\n\n> Simple, flexible file copy utility\n\n## Features\n\n- Recursively copy whole directory hierarchies\n- Choose which files are copied by passing a filter function, regular expression or glob\n- Rename files dynamically, including changing the output path\n- Transform file contents using streams\n- Choose whether to overwrite existing files\n- Choose whether to copy system files\n- Filters out [junk](https://www.npmjs.com/package/junk) files by default\n- Emits start, finish and error events for each file that is processed\n- Optional promise-based interface\n\n## Examples\n\n#### Node-style callback interface\n\n```javascript\nvar copy = require('@11ty/recursive-copy');\n\ncopy('src', 'dest', function(error, results) {\n\tif (error) {\n\t\tconsole.error('Copy failed: ' + error);\n\t} else {\n\t\tconsole.info('Copied ' + results.length + ' files');\n\t}\n});\n```\n\n#### Promise interface\n\n```javascript\nvar copy = require('@11ty/recursive-copy');\n\ncopy('src', 'dest')\n\t.then(function(results) {\n\t\tconsole.info('Copied ' + results.length + ' files');\n\t})\n\t.catch(function(error) {\n\t\tconsole.error('Copy failed: ' + error);\n\t});\n```\n\n#### ES2015+ usage\n\n```javascript\nimport copy from '@11ty/recursive-copy';\n\ntry {\n\tconst results = await copy('src', 'dest');\n\tconsole.info('Copied ' + results.length + ' files');\n} catch (error) {\n\tconsole.error('Copy failed: ' + error);\n}\n```\n\n#### Advanced options\n\n```javascript\nvar copy = require('@11ty/recursive-copy');\n\nvar path = require('path');\nvar through = require('through2');\n\nvar options = {\n\toverwrite: true,\n\texpand: true,\n\tdot: true,\n\tjunk: true,\n\tfilter: [\n\t\t'**/*',\n\t\t'!.htpasswd'\n\t],\n\trename: function(filePath) {\n\t\treturn filePath + '.orig';\n\t},\n\ttransform: function(src, dest, stats) {\n\t\tif (path.extname(src) !== '.txt') { return null; }\n\t\treturn through(function(chunk, enc, done)  {\n\t\t\tvar output = chunk.toString().toUpperCase();\n\t\t\tdone(null, output);\n\t\t});\n\t}\n};\n\ncopy('src', 'dest', options)\n\t.on(copy.events.COPY_FILE_START, function(copyOperation) {\n\t\tconsole.info('Copying file ' + copyOperation.src + '...');\n\t})\n\t.on(copy.events.COPY_FILE_COMPLETE, function(copyOperation) {\n\t\tconsole.info('Copied to ' + copyOperation.dest);\n\t})\n\t.on(copy.events.ERROR, function(error, copyOperation) {\n\t\tconsole.error('Unable to copy ' + copyOperation.dest);\n\t})\n\t.then(function(results) {\n\t\tconsole.info(results.length + ' file(s) copied');\n\t})\n\t.catch(function(error) {\n\t\treturn console.error('Copy failed: ' + error);\n\t});\n```\n\n\n## Usage\n\n### `copy(src, dest, [options], [callback])`\n\nRecursively copy files and folders from `src` to `dest`\n\n#### Arguments:\n\n| Name | Type | Required | Default | Description |\n| ---- | ---- | -------- | ------- | ----------- |\n| `src` | `string` | Yes | N/A | Source file/folder path |\n| `dest` | `string` | Yes | N/A | Destination file/folder path |\n| `options.overwrite` | `boolean` | No | `false` | Whether to overwrite destination files |\n| `options.expand` | `boolean` | No | `false` | Whether to expand symbolic links |\n| `options.dot` | `boolean` | No | `false` | Whether to copy files beginning with a `.` |\n| `options.junk` | `boolean` | No | `false` | Whether to copy OS junk files (e.g. `.DS_Store`, `Thumbs.db`) |\n| `options.filter` | `function`, `RegExp`, `string`, `array` | No | `null` | Filter function / regular expression / glob that determines which files to copy (uses [maximatch](https://www.npmjs.com/package/maximatch)) |\n| `options.rename` | `function` | No | `null` | Function that maps source paths to destination paths |\n| `options.transform` | `function` | No | `null` | Function that returns a transform stream used to modify file contents |\n| `options.results` | `boolean` | No | `true` | Whether to return an array of copy results |\n| `options.concurrency` | `number` | No | `255` | Maximum number of simultaneous copy operations |\n| `options.debug` | `boolean` | No | `false` | Whether to log debug information |\n| `callback` | `function` | No | `null` | Callback, invoked on success/failure |\n\n\n#### Returns:\n\n`Promise<Array>` Promise, fulfilled with array of copy results:\n\n```json\n[\n\t{\n\t\t\"src\": \"/path/to/src\",\n\t\t\"dest\": \"/path/to/dest\",\n\t\t\"stats\": <Stats>\n\t},\n\t{\n\t\t\"src\": \"/path/to/src/file.txt\",\n\t\t\"dest\": \"/path/to/dest/file.txt\",\n\t\t\"stats\": <Stats>\n\t},\n\t{\n\t\t\"src\": \"/path/to/src/subfolder\",\n\t\t\"dest\": \"/path/to/dest/subfolder\",\n\t\t\"stats\": <Stats>\n\t},\n\t{\n\t\t\"src\": \"/path/to/src/subfolder/nested.txt\",\n\t\t\"dest\": \"/path/to/dest/subfolder/nested.txt\",\n\t\t\"stats\": <Stats>\n\t}\n]\n```\n\n## Events\n\nThe value returned by the `copy` function implements the `EventEmitter` interface, and emits the following events:\n\n| Event | Handler signature |\n| ----- | ----------------- |\n| `copy.events.ERROR` | `function(error, ErrorInfo)` |\n| `copy.events.COMPLETE` | `function(Array<CopyOperation>)` |\n| `copy.events.CREATE_DIRECTORY_START` | `function(CopyOperation)` |\n| `copy.events.CREATE_DIRECTORY_ERROR` | `function(error, CopyOperation)` |\n| `copy.events.CREATE_DIRECTORY_COMPLETE` | `function(CopyOperation)` |\n| `copy.events.CREATE_SYMLINK_START` | `function(CopyOperation)` |\n| `copy.events.CREATE_SYMLINK_ERROR` | `function(error, CopyOperation)` |\n| `copy.events.CREATE_SYMLINK_COMPLETE` | `function(CopyOperation)` |\n| `copy.events.COPY_FILE_START` | `function(CopyOperation)` |\n| `copy.events.COPY_FILE_ERROR` | `function(error, CopyOperation)` |\n| `copy.events.COPY_FILE_COMPLETE` | `function(CopyOperation)` |\n\n...where the types referred to in the handler signature are as follows:\n\n### `ErrorInfo`\n\n| Property | Type | Description |\n| -------- | ---- | ----------- |\n| `src` | `string` | Source path of the file/folder/symlink that failed to copy |\n| `dest` | `string` | Destination path of the file/folder/symlink that failed to copy |\n\n### `CopyOperation`\n\n| Property | Type | Description |\n| -------- | ---- | ----------- |\n| `src` | `string` | Source path of the relevant file/folder/symlink |\n| `dest` | `string` | Destination path of the relevant file/folder/symlink |\n| `stats ` | `fs.Stats` | Stats for the relevant file/folder/symlink |\n","readmeFilename":"README.md"}