parent
fc043e972e
commit
dc5cc06965
@ -0,0 +1 @@ |
||||
## Replicate `find` |
@ -0,0 +1,355 @@ |
||||
{ |
||||
"name": "03-replicate-ls", |
||||
"version": "1.0.0", |
||||
"lockfileVersion": 2, |
||||
"requires": true, |
||||
"packages": { |
||||
"": { |
||||
"name": "03-replicate-ls", |
||||
"version": "1.0.0", |
||||
"license": "BSD", |
||||
"dependencies": { |
||||
"fast-glob": "^3.2.11" |
||||
} |
||||
}, |
||||
"node_modules/@nodelib/fs.scandir": { |
||||
"version": "2.1.5", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", |
||||
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", |
||||
"dependencies": { |
||||
"@nodelib/fs.stat": "2.0.5", |
||||
"run-parallel": "^1.1.9" |
||||
}, |
||||
"engines": { |
||||
"node": ">= 8" |
||||
} |
||||
}, |
||||
"node_modules/@nodelib/fs.stat": { |
||||
"version": "2.0.5", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", |
||||
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", |
||||
"engines": { |
||||
"node": ">= 8" |
||||
} |
||||
}, |
||||
"node_modules/@nodelib/fs.walk": { |
||||
"version": "1.2.8", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", |
||||
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", |
||||
"dependencies": { |
||||
"@nodelib/fs.scandir": "2.1.5", |
||||
"fastq": "^1.6.0" |
||||
}, |
||||
"engines": { |
||||
"node": ">= 8" |
||||
} |
||||
}, |
||||
"node_modules/braces": { |
||||
"version": "3.0.2", |
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", |
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", |
||||
"dependencies": { |
||||
"fill-range": "^7.0.1" |
||||
}, |
||||
"engines": { |
||||
"node": ">=8" |
||||
} |
||||
}, |
||||
"node_modules/fast-glob": { |
||||
"version": "3.2.11", |
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", |
||||
"integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", |
||||
"dependencies": { |
||||
"@nodelib/fs.stat": "^2.0.2", |
||||
"@nodelib/fs.walk": "^1.2.3", |
||||
"glob-parent": "^5.1.2", |
||||
"merge2": "^1.3.0", |
||||
"micromatch": "^4.0.4" |
||||
}, |
||||
"engines": { |
||||
"node": ">=8.6.0" |
||||
} |
||||
}, |
||||
"node_modules/fastq": { |
||||
"version": "1.13.0", |
||||
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", |
||||
"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", |
||||
"dependencies": { |
||||
"reusify": "^1.0.4" |
||||
} |
||||
}, |
||||
"node_modules/fill-range": { |
||||
"version": "7.0.1", |
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", |
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", |
||||
"dependencies": { |
||||
"to-regex-range": "^5.0.1" |
||||
}, |
||||
"engines": { |
||||
"node": ">=8" |
||||
} |
||||
}, |
||||
"node_modules/glob-parent": { |
||||
"version": "5.1.2", |
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", |
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", |
||||
"dependencies": { |
||||
"is-glob": "^4.0.1" |
||||
}, |
||||
"engines": { |
||||
"node": ">= 6" |
||||
} |
||||
}, |
||||
"node_modules/is-extglob": { |
||||
"version": "2.1.1", |
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", |
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", |
||||
"engines": { |
||||
"node": ">=0.10.0" |
||||
} |
||||
}, |
||||
"node_modules/is-glob": { |
||||
"version": "4.0.3", |
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", |
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", |
||||
"dependencies": { |
||||
"is-extglob": "^2.1.1" |
||||
}, |
||||
"engines": { |
||||
"node": ">=0.10.0" |
||||
} |
||||
}, |
||||
"node_modules/is-number": { |
||||
"version": "7.0.0", |
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", |
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", |
||||
"engines": { |
||||
"node": ">=0.12.0" |
||||
} |
||||
}, |
||||
"node_modules/merge2": { |
||||
"version": "1.4.1", |
||||
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", |
||||
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", |
||||
"engines": { |
||||
"node": ">= 8" |
||||
} |
||||
}, |
||||
"node_modules/micromatch": { |
||||
"version": "4.0.5", |
||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", |
||||
"integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", |
||||
"dependencies": { |
||||
"braces": "^3.0.2", |
||||
"picomatch": "^2.3.1" |
||||
}, |
||||
"engines": { |
||||
"node": ">=8.6" |
||||
} |
||||
}, |
||||
"node_modules/picomatch": { |
||||
"version": "2.3.1", |
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", |
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", |
||||
"engines": { |
||||
"node": ">=8.6" |
||||
}, |
||||
"funding": { |
||||
"url": "https://github.com/sponsors/jonschlinkert" |
||||
} |
||||
}, |
||||
"node_modules/queue-microtask": { |
||||
"version": "1.2.3", |
||||
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", |
||||
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", |
||||
"funding": [ |
||||
{ |
||||
"type": "github", |
||||
"url": "https://github.com/sponsors/feross" |
||||
}, |
||||
{ |
||||
"type": "patreon", |
||||
"url": "https://www.patreon.com/feross" |
||||
}, |
||||
{ |
||||
"type": "consulting", |
||||
"url": "https://feross.org/support" |
||||
} |
||||
] |
||||
}, |
||||
"node_modules/reusify": { |
||||
"version": "1.0.4", |
||||
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", |
||||
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", |
||||
"engines": { |
||||
"iojs": ">=1.0.0", |
||||
"node": ">=0.10.0" |
||||
} |
||||
}, |
||||
"node_modules/run-parallel": { |
||||
"version": "1.2.0", |
||||
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", |
||||
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", |
||||
"funding": [ |
||||
{ |
||||
"type": "github", |
||||
"url": "https://github.com/sponsors/feross" |
||||
}, |
||||
{ |
||||
"type": "patreon", |
||||
"url": "https://www.patreon.com/feross" |
||||
}, |
||||
{ |
||||
"type": "consulting", |
||||
"url": "https://feross.org/support" |
||||
} |
||||
], |
||||
"dependencies": { |
||||
"queue-microtask": "^1.2.2" |
||||
} |
||||
}, |
||||
"node_modules/to-regex-range": { |
||||
"version": "5.0.1", |
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", |
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", |
||||
"dependencies": { |
||||
"is-number": "^7.0.0" |
||||
}, |
||||
"engines": { |
||||
"node": ">=8.0" |
||||
} |
||||
} |
||||
}, |
||||
"dependencies": { |
||||
"@nodelib/fs.scandir": { |
||||
"version": "2.1.5", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", |
||||
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", |
||||
"requires": { |
||||
"@nodelib/fs.stat": "2.0.5", |
||||
"run-parallel": "^1.1.9" |
||||
} |
||||
}, |
||||
"@nodelib/fs.stat": { |
||||
"version": "2.0.5", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", |
||||
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" |
||||
}, |
||||
"@nodelib/fs.walk": { |
||||
"version": "1.2.8", |
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", |
||||
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", |
||||
"requires": { |
||||
"@nodelib/fs.scandir": "2.1.5", |
||||
"fastq": "^1.6.0" |
||||
} |
||||
}, |
||||
"braces": { |
||||
"version": "3.0.2", |
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", |
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", |
||||
"requires": { |
||||
"fill-range": "^7.0.1" |
||||
} |
||||
}, |
||||
"fast-glob": { |
||||
"version": "3.2.11", |
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", |
||||
"integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", |
||||
"requires": { |
||||
"@nodelib/fs.stat": "^2.0.2", |
||||
"@nodelib/fs.walk": "^1.2.3", |
||||
"glob-parent": "^5.1.2", |
||||
"merge2": "^1.3.0", |
||||
"micromatch": "^4.0.4" |
||||
} |
||||
}, |
||||
"fastq": { |
||||
"version": "1.13.0", |
||||
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", |
||||
"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", |
||||
"requires": { |
||||
"reusify": "^1.0.4" |
||||
} |
||||
}, |
||||
"fill-range": { |
||||
"version": "7.0.1", |
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", |
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", |
||||
"requires": { |
||||
"to-regex-range": "^5.0.1" |
||||
} |
||||
}, |
||||
"glob-parent": { |
||||
"version": "5.1.2", |
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", |
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", |
||||
"requires": { |
||||
"is-glob": "^4.0.1" |
||||
} |
||||
}, |
||||
"is-extglob": { |
||||
"version": "2.1.1", |
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", |
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" |
||||
}, |
||||
"is-glob": { |
||||
"version": "4.0.3", |
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", |
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", |
||||
"requires": { |
||||
"is-extglob": "^2.1.1" |
||||
} |
||||
}, |
||||
"is-number": { |
||||
"version": "7.0.0", |
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", |
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" |
||||
}, |
||||
"merge2": { |
||||
"version": "1.4.1", |
||||
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", |
||||
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" |
||||
}, |
||||
"micromatch": { |
||||
"version": "4.0.5", |
||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", |
||||
"integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", |
||||
"requires": { |
||||
"braces": "^3.0.2", |
||||
"picomatch": "^2.3.1" |
||||
} |
||||
}, |
||||
"picomatch": { |
||||
"version": "2.3.1", |
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", |
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" |
||||
}, |
||||
"queue-microtask": { |
||||
"version": "1.2.3", |
||||
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", |
||||
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" |
||||
}, |
||||
"reusify": { |
||||
"version": "1.0.4", |
||||
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", |
||||
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" |
||||
}, |
||||
"run-parallel": { |
||||
"version": "1.2.0", |
||||
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", |
||||
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", |
||||
"requires": { |
||||
"queue-microtask": "^1.2.2" |
||||
} |
||||
}, |
||||
"to-regex-range": { |
||||
"version": "5.0.1", |
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", |
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", |
||||
"requires": { |
||||
"is-number": "^7.0.0" |
||||
} |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,15 @@ |
||||
{ |
||||
"name": "03-replicate-ls", |
||||
"version": "1.0.0", |
||||
"type": "module", |
||||
"description": "", |
||||
"main": "step1.js", |
||||
"scripts": { |
||||
"test": "echo \"Error: no test specified\" && exit 1" |
||||
}, |
||||
"author": "", |
||||
"license": "BSD", |
||||
"dependencies": { |
||||
"fast-glob": "^3.2.11" |
||||
} |
||||
} |
@ -0,0 +1,21 @@ |
||||
import path from "path"; |
||||
import glob from "fast-glob"; |
||||
import { program } from "commander"; |
||||
|
||||
program |
||||
.name("ls") |
||||
.description("ls replica") |
||||
.option("-l"); |
||||
|
||||
program.parse(); |
||||
|
||||
const options = program.opts(); |
||||
|
||||
|
||||
if(program.args.length > 0) { |
||||
const results = glob.sync(program.args[0]); |
||||
|
||||
for(let result of results) { |
||||
console.log(result); |
||||
} |
||||
} |
Loading…
Reference in new issue