gitextract_ch38kmlm/ ├── .github/ │ ├── issue_template.md │ └── workflows/ │ └── ci.yml ├── .gitignore ├── .npmrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── docs/ │ ├── copy-sync.md │ ├── copy.md │ ├── emptyDir-sync.md │ ├── emptyDir.md │ ├── ensureDir-sync.md │ ├── ensureDir.md │ ├── ensureFile-sync.md │ ├── ensureFile.md │ ├── ensureLink-sync.md │ ├── ensureLink.md │ ├── ensureSymlink-sync.md │ ├── ensureSymlink.md │ ├── fs-read-write-writev.md │ ├── move-sync.md │ ├── move.md │ ├── outputFile-sync.md │ ├── outputFile.md │ ├── outputJson-sync.md │ ├── outputJson.md │ ├── pathExists-sync.md │ ├── pathExists.md │ ├── readJson-sync.md │ ├── readJson.md │ ├── remove-sync.md │ ├── remove.md │ ├── writeJson-sync.md │ └── writeJson.md ├── lib/ │ ├── __tests__/ │ │ └── promise.test.js │ ├── copy/ │ │ ├── __tests__/ │ │ │ ├── copy-broken-symlink.test.js │ │ │ ├── copy-case-insensitive-paths.test.js │ │ │ ├── copy-dev-null.test.js │ │ │ ├── copy-gh-89.test.js │ │ │ ├── copy-permissions.test.js │ │ │ ├── copy-preserve-timestamp.test.js │ │ │ ├── copy-prevent-copying-identical.test.js │ │ │ ├── copy-prevent-copying-into-itself.test.js │ │ │ ├── copy-readonly-dir.test.js │ │ │ ├── copy-symlink-same-target.test.js │ │ │ ├── copy-sync-broken-symlink.test.js │ │ │ ├── copy-sync-case-insensitive-paths.test.js │ │ │ ├── copy-sync-dir.test.js │ │ │ ├── copy-sync-file.test.js │ │ │ ├── copy-sync-preserve-timestamp.test.js │ │ │ ├── copy-sync-prevent-copying-identical.test.js │ │ │ ├── copy-sync-prevent-copying-into-itself.test.js │ │ │ ├── copy-sync-readonly-dir.test.js │ │ │ ├── copy-sync-symlink-same-target.test.js │ │ │ ├── copy-sync-symlink.test.js │ │ │ ├── copy.test.js │ │ │ └── ncp/ │ │ │ ├── README.md │ │ │ ├── broken-symlink.test.js │ │ │ ├── fixtures/ │ │ │ │ ├── modified-files/ │ │ │ │ │ ├── out/ │ │ │ │ │ │ └── a │ │ │ │ │ └── src/ │ │ │ │ │ └── a │ │ │ │ └── regular-fixtures/ │ │ │ │ ├── out/ │ │ │ │ │ ├── a │ │ │ │ │ ├── b │ │ │ │ │ ├── c │ │ │ │ │ ├── d │ │ │ │ │ ├── e │ │ │ │ │ ├── f │ │ │ │ │ └── sub/ │ │ │ │ │ ├── a │ │ │ │ │ └── b │ │ │ │ └── src/ │ │ │ │ ├── a │ │ │ │ ├── b │ │ │ │ ├── c │ │ │ │ ├── d │ │ │ │ ├── e │ │ │ │ ├── f │ │ │ │ └── sub/ │ │ │ │ ├── a │ │ │ │ └── b │ │ │ ├── ncp-error-perm.test.js │ │ │ ├── ncp.test.js │ │ │ └── symlink.test.js │ │ ├── copy-sync.js │ │ ├── copy.js │ │ └── index.js │ ├── empty/ │ │ ├── __tests__/ │ │ │ ├── empty-dir-sync.test.js │ │ │ └── empty-dir.test.js │ │ └── index.js │ ├── ensure/ │ │ ├── __tests__/ │ │ │ ├── create.test.js │ │ │ ├── ensure.test.js │ │ │ ├── link.test.js │ │ │ ├── symlink-paths.test.js │ │ │ ├── symlink-type.test.js │ │ │ └── symlink.test.js │ │ ├── file.js │ │ ├── index.js │ │ ├── link.js │ │ ├── symlink-paths.js │ │ ├── symlink-type.js │ │ └── symlink.js │ ├── esm.mjs │ ├── fs/ │ │ ├── __tests__/ │ │ │ ├── copyFile.test.js │ │ │ ├── fs-integration.test.js │ │ │ ├── multi-param.test.js │ │ │ ├── mz.test.js │ │ │ ├── realpath.test.js │ │ │ └── rm.test.js │ │ └── index.js │ ├── index.js │ ├── json/ │ │ ├── __tests__/ │ │ │ ├── jsonfile-integration.test.js │ │ │ ├── output-json-sync.test.js │ │ │ ├── output-json.test.js │ │ │ ├── promise-support.test.js │ │ │ └── read.test.js │ │ ├── index.js │ │ ├── jsonfile.js │ │ ├── output-json-sync.js │ │ └── output-json.js │ ├── mkdirs/ │ │ ├── __tests__/ │ │ │ ├── chmod.test.js │ │ │ ├── clobber.test.js │ │ │ ├── issue-209.test.js │ │ │ ├── issue-93.test.js │ │ │ ├── mkdir.test.js │ │ │ ├── mkdirp.test.js │ │ │ ├── opts-undef.test.js │ │ │ ├── perm.test.js │ │ │ ├── perm_sync.test.js │ │ │ ├── race.test.js │ │ │ ├── rel.test.js │ │ │ ├── root.test.js │ │ │ └── sync.test.js │ │ ├── index.js │ │ ├── make-dir.js │ │ └── utils.js │ ├── move/ │ │ ├── __tests__/ │ │ │ ├── cross-device-utils.js │ │ │ ├── move-case-insensitive-paths.test.js │ │ │ ├── move-preserve-timestamp.test.js │ │ │ ├── move-prevent-moving-identical.test.js │ │ │ ├── move-prevent-moving-into-itself.test.js │ │ │ ├── move-sync-case-insensitive-paths.test.js │ │ │ ├── move-sync-preserve-timestamp.test.js │ │ │ ├── move-sync-prevent-moving-identical.test.js │ │ │ ├── move-sync-prevent-moving-into-itself.test.js │ │ │ ├── move-sync.test.js │ │ │ └── move.test.js │ │ ├── index.js │ │ ├── move-sync.js │ │ └── move.js │ ├── output-file/ │ │ ├── __tests__/ │ │ │ └── output.test.js │ │ └── index.js │ ├── path-exists/ │ │ ├── __tests__/ │ │ │ ├── path-exists-sync.test.js │ │ │ └── path-exists.test.js │ │ └── index.js │ ├── remove/ │ │ ├── __tests__/ │ │ │ ├── remove-dir.test.js │ │ │ ├── remove-file.test.js │ │ │ ├── remove-sync-dir.test.js │ │ │ ├── remove-sync-file.test.js │ │ │ └── remove.test.js │ │ └── index.js │ └── util/ │ ├── __tests__/ │ │ ├── stat.test.js │ │ └── utimes.test.js │ ├── async.js │ ├── stat.js │ └── utimes.js ├── package.json ├── test/ │ └── readme.md ├── test.js └── test.mjs