aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js
diff options
context:
space:
mode:
authorNevena Bojovic <nenabojov@gmail.com>2022-03-01 22:05:25 +0100
committerNevena Bojovic <nenabojov@gmail.com>2022-03-01 22:05:25 +0100
commit6555fb80fdd8f6a5d201efadec3189d1244830a0 (patch)
treec1aa1c5aedc634ad1ea7fad4847884d559b51290 /sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js
parent7d3640f824f46490b47bd95f1c5a16644f712068 (diff)
Izbrisala bin, obj i node-modules.
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js162
1 files changed, 0 insertions, 162 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js b/sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js
deleted file mode 100644
index 95d1888c..00000000
--- a/sandbox/testAppNevena/Front/node_modules/@npmcli/move-file/index.js
+++ /dev/null
@@ -1,162 +0,0 @@
-const { dirname, join, resolve, relative, isAbsolute } = require('path')
-const rimraf_ = require('rimraf')
-const { promisify } = require('util')
-const {
- access: access_,
- accessSync,
- copyFile: copyFile_,
- copyFileSync,
- unlink: unlink_,
- unlinkSync,
- readdir: readdir_,
- readdirSync,
- rename: rename_,
- renameSync,
- stat: stat_,
- statSync,
- lstat: lstat_,
- lstatSync,
- symlink: symlink_,
- symlinkSync,
- readlink: readlink_,
- readlinkSync
-} = require('fs')
-
-const access = promisify(access_)
-const copyFile = promisify(copyFile_)
-const unlink = promisify(unlink_)
-const readdir = promisify(readdir_)
-const rename = promisify(rename_)
-const stat = promisify(stat_)
-const lstat = promisify(lstat_)
-const symlink = promisify(symlink_)
-const readlink = promisify(readlink_)
-const rimraf = promisify(rimraf_)
-const rimrafSync = rimraf_.sync
-
-const mkdirp = require('mkdirp')
-
-const pathExists = async path => {
- try {
- await access(path)
- return true
- } catch (er) {
- return er.code !== 'ENOENT'
- }
-}
-
-const pathExistsSync = path => {
- try {
- accessSync(path)
- return true
- } catch (er) {
- return er.code !== 'ENOENT'
- }
-}
-
-const moveFile = async (source, destination, options = {}, root = true, symlinks = []) => {
- if (!source || !destination) {
- throw new TypeError('`source` and `destination` file required')
- }
-
- options = {
- overwrite: true,
- ...options
- }
-
- if (!options.overwrite && await pathExists(destination)) {
- throw new Error(`The destination file exists: ${destination}`)
- }
-
- await mkdirp(dirname(destination))
-
- try {
- await rename(source, destination)
- } catch (error) {
- if (error.code === 'EXDEV' || error.code === 'EPERM') {
- const sourceStat = await lstat(source)
- if (sourceStat.isDirectory()) {
- const files = await readdir(source)
- await Promise.all(files.map((file) => moveFile(join(source, file), join(destination, file), options, false, symlinks)))
- } else if (sourceStat.isSymbolicLink()) {
- symlinks.push({ source, destination })
- } else {
- await copyFile(source, destination)
- }
- } else {
- throw error
- }
- }
-
- if (root) {
- await Promise.all(symlinks.map(async ({ source, destination }) => {
- let target = await readlink(source)
- // junction symlinks in windows will be absolute paths, so we need to make sure they point to the destination
- if (isAbsolute(target))
- target = resolve(destination, relative(source, target))
- // try to determine what the actual file is so we can create the correct type of symlink in windows
- let targetStat
- try {
- targetStat = await stat(resolve(dirname(source), target))
- } catch (err) {}
- await symlink(target, destination, targetStat && targetStat.isDirectory() ? 'junction' : 'file')
- }))
- await rimraf(source)
- }
-}
-
-const moveFileSync = (source, destination, options = {}, root = true, symlinks = []) => {
- if (!source || !destination) {
- throw new TypeError('`source` and `destination` file required')
- }
-
- options = {
- overwrite: true,
- ...options
- }
-
- if (!options.overwrite && pathExistsSync(destination)) {
- throw new Error(`The destination file exists: ${destination}`)
- }
-
- mkdirp.sync(dirname(destination))
-
- try {
- renameSync(source, destination)
- } catch (error) {
- if (error.code === 'EXDEV' || error.code === 'EPERM') {
- const sourceStat = lstatSync(source)
- if (sourceStat.isDirectory()) {
- const files = readdirSync(source)
- for (const file of files) {
- moveFileSync(join(source, file), join(destination, file), options, false, symlinks)
- }
- } else if (sourceStat.isSymbolicLink()) {
- symlinks.push({ source, destination })
- } else {
- copyFileSync(source, destination)
- }
- } else {
- throw error
- }
- }
-
- if (root) {
- for (const { source, destination } of symlinks) {
- let target = readlinkSync(source)
- // junction symlinks in windows will be absolute paths, so we need to make sure they point to the destination
- if (isAbsolute(target))
- target = resolve(destination, relative(source, target))
- // try to determine what the actual file is so we can create the correct type of symlink in windows
- let targetStat
- try {
- targetStat = statSync(resolve(dirname(source), target))
- } catch (err) {}
- symlinkSync(target, destination, targetStat && targetStat.isDirectory() ? 'junction' : 'file')
- }
- rimrafSync(source)
- }
-}
-
-module.exports = moveFile
-module.exports.sync = moveFileSync