summaryrefslogtreecommitdiff
path: root/node_modules/fs-extra/lib/ensure
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:10:59 +0800
committerlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:41:44 +0800
commitfc87c009806dcc98867f6b58efe29b042aa01dee (patch)
tree8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/fs-extra/lib/ensure
parent3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff)
node: updatemain
Diffstat (limited to 'node_modules/fs-extra/lib/ensure')
-rw-r--r--node_modules/fs-extra/lib/ensure/file.js66
-rw-r--r--node_modules/fs-extra/lib/ensure/index.js23
-rw-r--r--node_modules/fs-extra/lib/ensure/link.js64
-rw-r--r--node_modules/fs-extra/lib/ensure/symlink-paths.js101
-rw-r--r--node_modules/fs-extra/lib/ensure/symlink-type.js34
-rw-r--r--node_modules/fs-extra/lib/ensure/symlink.js67
6 files changed, 0 insertions, 355 deletions
diff --git a/node_modules/fs-extra/lib/ensure/file.js b/node_modules/fs-extra/lib/ensure/file.js
deleted file mode 100644
index a55c2d96..00000000
--- a/node_modules/fs-extra/lib/ensure/file.js
+++ /dev/null
@@ -1,66 +0,0 @@
-'use strict'
-
-const u = require('universalify').fromPromise
-const path = require('path')
-const fs = require('../fs')
-const mkdir = require('../mkdirs')
-
-async function createFile (file) {
- let stats
- try {
- stats = await fs.stat(file)
- } catch { }
- if (stats && stats.isFile()) return
-
- const dir = path.dirname(file)
-
- let dirStats = null
- try {
- dirStats = await fs.stat(dir)
- } catch (err) {
- // if the directory doesn't exist, make it
- if (err.code === 'ENOENT') {
- await mkdir.mkdirs(dir)
- await fs.writeFile(file, '')
- return
- } else {
- throw err
- }
- }
-
- if (dirStats.isDirectory()) {
- await fs.writeFile(file, '')
- } else {
- // parent is not a directory
- // This is just to cause an internal ENOTDIR error to be thrown
- await fs.readdir(dir)
- }
-}
-
-function createFileSync (file) {
- let stats
- try {
- stats = fs.statSync(file)
- } catch { }
- if (stats && stats.isFile()) return
-
- const dir = path.dirname(file)
- try {
- if (!fs.statSync(dir).isDirectory()) {
- // parent is not a directory
- // This is just to cause an internal ENOTDIR error to be thrown
- fs.readdirSync(dir)
- }
- } catch (err) {
- // If the stat call above failed because the directory doesn't exist, create it
- if (err && err.code === 'ENOENT') mkdir.mkdirsSync(dir)
- else throw err
- }
-
- fs.writeFileSync(file, '')
-}
-
-module.exports = {
- createFile: u(createFile),
- createFileSync
-}
diff --git a/node_modules/fs-extra/lib/ensure/index.js b/node_modules/fs-extra/lib/ensure/index.js
deleted file mode 100644
index ecbcdd0b..00000000
--- a/node_modules/fs-extra/lib/ensure/index.js
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict'
-
-const { createFile, createFileSync } = require('./file')
-const { createLink, createLinkSync } = require('./link')
-const { createSymlink, createSymlinkSync } = require('./symlink')
-
-module.exports = {
- // file
- createFile,
- createFileSync,
- ensureFile: createFile,
- ensureFileSync: createFileSync,
- // link
- createLink,
- createLinkSync,
- ensureLink: createLink,
- ensureLinkSync: createLinkSync,
- // symlink
- createSymlink,
- createSymlinkSync,
- ensureSymlink: createSymlink,
- ensureSymlinkSync: createSymlinkSync
-}
diff --git a/node_modules/fs-extra/lib/ensure/link.js b/node_modules/fs-extra/lib/ensure/link.js
deleted file mode 100644
index c3d1c694..00000000
--- a/node_modules/fs-extra/lib/ensure/link.js
+++ /dev/null
@@ -1,64 +0,0 @@
-'use strict'
-
-const u = require('universalify').fromPromise
-const path = require('path')
-const fs = require('../fs')
-const mkdir = require('../mkdirs')
-const { pathExists } = require('../path-exists')
-const { areIdentical } = require('../util/stat')
-
-async function createLink (srcpath, dstpath) {
- let dstStat
- try {
- dstStat = await fs.lstat(dstpath)
- } catch {
- // ignore error
- }
-
- let srcStat
- try {
- srcStat = await fs.lstat(srcpath)
- } catch (err) {
- err.message = err.message.replace('lstat', 'ensureLink')
- throw err
- }
-
- if (dstStat && areIdentical(srcStat, dstStat)) return
-
- const dir = path.dirname(dstpath)
-
- const dirExists = await pathExists(dir)
-
- if (!dirExists) {
- await mkdir.mkdirs(dir)
- }
-
- await fs.link(srcpath, dstpath)
-}
-
-function createLinkSync (srcpath, dstpath) {
- let dstStat
- try {
- dstStat = fs.lstatSync(dstpath)
- } catch {}
-
- try {
- const srcStat = fs.lstatSync(srcpath)
- if (dstStat && areIdentical(srcStat, dstStat)) return
- } catch (err) {
- err.message = err.message.replace('lstat', 'ensureLink')
- throw err
- }
-
- const dir = path.dirname(dstpath)
- const dirExists = fs.existsSync(dir)
- if (dirExists) return fs.linkSync(srcpath, dstpath)
- mkdir.mkdirsSync(dir)
-
- return fs.linkSync(srcpath, dstpath)
-}
-
-module.exports = {
- createLink: u(createLink),
- createLinkSync
-}
diff --git a/node_modules/fs-extra/lib/ensure/symlink-paths.js b/node_modules/fs-extra/lib/ensure/symlink-paths.js
deleted file mode 100644
index 85dda475..00000000
--- a/node_modules/fs-extra/lib/ensure/symlink-paths.js
+++ /dev/null
@@ -1,101 +0,0 @@
-'use strict'
-
-const path = require('path')
-const fs = require('../fs')
-const { pathExists } = require('../path-exists')
-
-const u = require('universalify').fromPromise
-
-/**
- * Function that returns two types of paths, one relative to symlink, and one
- * relative to the current working directory. Checks if path is absolute or
- * relative. If the path is relative, this function checks if the path is
- * relative to symlink or relative to current working directory. This is an
- * initiative to find a smarter `srcpath` to supply when building symlinks.
- * This allows you to determine which path to use out of one of three possible
- * types of source paths. The first is an absolute path. This is detected by
- * `path.isAbsolute()`. When an absolute path is provided, it is checked to
- * see if it exists. If it does it's used, if not an error is returned
- * (callback)/ thrown (sync). The other two options for `srcpath` are a
- * relative url. By default Node's `fs.symlink` works by creating a symlink
- * using `dstpath` and expects the `srcpath` to be relative to the newly
- * created symlink. If you provide a `srcpath` that does not exist on the file
- * system it results in a broken symlink. To minimize this, the function
- * checks to see if the 'relative to symlink' source file exists, and if it
- * does it will use it. If it does not, it checks if there's a file that
- * exists that is relative to the current working directory, if does its used.
- * This preserves the expectations of the original fs.symlink spec and adds
- * the ability to pass in `relative to current working direcotry` paths.
- */
-
-async function symlinkPaths (srcpath, dstpath) {
- if (path.isAbsolute(srcpath)) {
- try {
- await fs.lstat(srcpath)
- } catch (err) {
- err.message = err.message.replace('lstat', 'ensureSymlink')
- throw err
- }
-
- return {
- toCwd: srcpath,
- toDst: srcpath
- }
- }
-
- const dstdir = path.dirname(dstpath)
- const relativeToDst = path.join(dstdir, srcpath)
-
- const exists = await pathExists(relativeToDst)
- if (exists) {
- return {
- toCwd: relativeToDst,
- toDst: srcpath
- }
- }
-
- try {
- await fs.lstat(srcpath)
- } catch (err) {
- err.message = err.message.replace('lstat', 'ensureSymlink')
- throw err
- }
-
- return {
- toCwd: srcpath,
- toDst: path.relative(dstdir, srcpath)
- }
-}
-
-function symlinkPathsSync (srcpath, dstpath) {
- if (path.isAbsolute(srcpath)) {
- const exists = fs.existsSync(srcpath)
- if (!exists) throw new Error('absolute srcpath does not exist')
- return {
- toCwd: srcpath,
- toDst: srcpath
- }
- }
-
- const dstdir = path.dirname(dstpath)
- const relativeToDst = path.join(dstdir, srcpath)
- const exists = fs.existsSync(relativeToDst)
- if (exists) {
- return {
- toCwd: relativeToDst,
- toDst: srcpath
- }
- }
-
- const srcExists = fs.existsSync(srcpath)
- if (!srcExists) throw new Error('relative srcpath does not exist')
- return {
- toCwd: srcpath,
- toDst: path.relative(dstdir, srcpath)
- }
-}
-
-module.exports = {
- symlinkPaths: u(symlinkPaths),
- symlinkPathsSync
-}
diff --git a/node_modules/fs-extra/lib/ensure/symlink-type.js b/node_modules/fs-extra/lib/ensure/symlink-type.js
deleted file mode 100644
index 518558e5..00000000
--- a/node_modules/fs-extra/lib/ensure/symlink-type.js
+++ /dev/null
@@ -1,34 +0,0 @@
-'use strict'
-
-const fs = require('../fs')
-const u = require('universalify').fromPromise
-
-async function symlinkType (srcpath, type) {
- if (type) return type
-
- let stats
- try {
- stats = await fs.lstat(srcpath)
- } catch {
- return 'file'
- }
-
- return (stats && stats.isDirectory()) ? 'dir' : 'file'
-}
-
-function symlinkTypeSync (srcpath, type) {
- if (type) return type
-
- let stats
- try {
- stats = fs.lstatSync(srcpath)
- } catch {
- return 'file'
- }
- return (stats && stats.isDirectory()) ? 'dir' : 'file'
-}
-
-module.exports = {
- symlinkType: u(symlinkType),
- symlinkTypeSync
-}
diff --git a/node_modules/fs-extra/lib/ensure/symlink.js b/node_modules/fs-extra/lib/ensure/symlink.js
deleted file mode 100644
index a3d5f578..00000000
--- a/node_modules/fs-extra/lib/ensure/symlink.js
+++ /dev/null
@@ -1,67 +0,0 @@
-'use strict'
-
-const u = require('universalify').fromPromise
-const path = require('path')
-const fs = require('../fs')
-
-const { mkdirs, mkdirsSync } = require('../mkdirs')
-
-const { symlinkPaths, symlinkPathsSync } = require('./symlink-paths')
-const { symlinkType, symlinkTypeSync } = require('./symlink-type')
-
-const { pathExists } = require('../path-exists')
-
-const { areIdentical } = require('../util/stat')
-
-async function createSymlink (srcpath, dstpath, type) {
- let stats
- try {
- stats = await fs.lstat(dstpath)
- } catch { }
-
- if (stats && stats.isSymbolicLink()) {
- const [srcStat, dstStat] = await Promise.all([
- fs.stat(srcpath),
- fs.stat(dstpath)
- ])
-
- if (areIdentical(srcStat, dstStat)) return
- }
-
- const relative = await symlinkPaths(srcpath, dstpath)
- srcpath = relative.toDst
- const toType = await symlinkType(relative.toCwd, type)
- const dir = path.dirname(dstpath)
-
- if (!(await pathExists(dir))) {
- await mkdirs(dir)
- }
-
- return fs.symlink(srcpath, dstpath, toType)
-}
-
-function createSymlinkSync (srcpath, dstpath, type) {
- let stats
- try {
- stats = fs.lstatSync(dstpath)
- } catch { }
- if (stats && stats.isSymbolicLink()) {
- const srcStat = fs.statSync(srcpath)
- const dstStat = fs.statSync(dstpath)
- if (areIdentical(srcStat, dstStat)) return
- }
-
- const relative = symlinkPathsSync(srcpath, dstpath)
- srcpath = relative.toDst
- type = symlinkTypeSync(relative.toCwd, type)
- const dir = path.dirname(dstpath)
- const exists = fs.existsSync(dir)
- if (exists) return fs.symlinkSync(srcpath, dstpath, type)
- mkdirsSync(dir)
- return fs.symlinkSync(srcpath, dstpath, type)
-}
-
-module.exports = {
- createSymlink: u(createSymlink),
- createSymlinkSync
-}