aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/LICENSE15
-rw-r--r--sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/README.md109
-rw-r--r--sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/index.js237
-rw-r--r--sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/package.json37
4 files changed, 0 insertions, 398 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/LICENSE b/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/LICENSE
deleted file mode 100644
index 19cec97b..00000000
--- a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) npm, Inc.
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/README.md b/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/README.md
deleted file mode 100644
index edd23bd2..00000000
--- a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/README.md
+++ /dev/null
@@ -1,109 +0,0 @@
-# @npmcli/installed-package-contents
-
-Get the list of files installed in a package in node_modules, including
-bundled dependencies.
-
-This is useful if you want to remove a package node from the tree _without_
-removing its child nodes, for example to extract a new version of the
-dependency into place safely.
-
-It's sort of the reflection of [npm-packlist](http://npm.im/npm-packlist),
-but for listing out the _installed_ files rather than the files that _will_
-be installed. This is of course a much simpler operation, because we don't
-have to handle ignore files or package.json `files` lists.
-
-## USAGE
-
-```js
-// programmatic usage
-const pkgContents = require('@npmcli/installed-package-contents')
-
-pkgContents({ path: 'node_modules/foo', depth: 1 }).then(files => {
- // files is an array of items that need to be passed to
- // rimraf or moved out of the way to make the folder empty
- // if foo bundled dependencies, those will be included.
- // It will not traverse into child directories, because we set
- // depth:1 in the options.
- // If the folder doesn't exist, this returns an empty array.
-})
-
-pkgContents({ path: 'node_modules/foo', depth: Infinity }).then(files => {
- // setting depth:Infinity tells it to keep walking forever
- // until it hits something that isn't a directory, so we'll
- // just get the list of all files, but not their containing
- // directories.
-})
-```
-
-As a CLI:
-
-```bash
-$ installed-package-contents node_modules/bundle-some -d1
-node_modules/.bin/some
-node_modules/bundle-some/package.json
-node_modules/bundle-some/node_modules/@scope/baz
-node_modules/bundle-some/node_modules/.bin/foo
-node_modules/bundle-some/node_modules/foo
-```
-
-CLI options:
-
-```
-Usage:
- installed-package-contents <path> [-d<n> --depth=<n>]
-
-Lists the files installed for a package specified by <path>.
-
-Options:
- -d<n> --depth=<n> Provide a numeric value ("Infinity" is allowed)
- to specify how deep in the file tree to traverse.
- Default=1
- -h --help Show this usage information
-```
-
-## OPTIONS
-
-* `depth` Number, default `1`. How deep to traverse through folders to get
- contents. Typically you'd want to set this to either `1` (to get the
- surface files and folders) or `Infinity` (to get all files), but any
- other positive number is supported as well. If set to `0` or a
- negative number, returns the path provided and (if it is a package) its
- set of linked bins.
-* `path` Required. Path to the package in `node_modules` where traversal
- should begin.
-
-## RETURN VALUE
-
-A Promise that resolves to an array of fully-resolved files and folders
-matching the criteria. This includes all bundled dependencies in
-`node_modules`, and any linked executables in `node_modules/.bin` that the
-package caused to be installed.
-
-An empty or missing package folder will return an empty array. Empty
-directories _within_ package contents are listed, even if the `depth`
-argument would cause them to be traversed into.
-
-## CAVEAT
-
-If using this module to generate a list of files that should be recursively
-removed to clear away the package, note that this will leave empty
-directories behind in certain cases:
-
-- If all child packages are bundled dependencies, then the
- `node_modules` folder will remain.
-- If all child packages within a given scope were bundled dependencies,
- then the `node_modules/@scope` folder will remain.
-- If all linked bin scripts were removed, then an empty `node_modules/.bin`
- folder will remain.
-
-In the interest of speed and algorithmic complexity, this module does _not_
-do a subsequent readdir to see if it would remove all directory entries,
-though it would be easier to look at if it returned `node_modules` or
-`.bin` in that case rather than the contents. However, if the intent is to
-pass these arguments to `rimraf`, it hardly makes sense to do _two_
-`readdir` calls just so that we can have the luxury of having to make a
-third.
-
-Since the primary use case is to delete a package's contents so that they
-can be re-filled with a new version of that package, this caveat does not
-pose a problem. Empty directories are already ignored by both npm and git.
diff --git a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/index.js b/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/index.js
deleted file mode 100644
index 30427fe2..00000000
--- a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/index.js
+++ /dev/null
@@ -1,237 +0,0 @@
-// to GET CONTENTS for folder at PATH (which may be a PACKAGE):
-// - if PACKAGE, read path/package.json
-// - if bins in ../node_modules/.bin, add those to result
-// - if depth >= maxDepth, add PATH to result, and finish
-// - readdir(PATH, with file types)
-// - add all FILEs in PATH to result
-// - if PARENT:
-// - if depth < maxDepth, add GET CONTENTS of all DIRs in PATH
-// - else, add all DIRs in PATH
-// - if no parent
-// - if no bundled deps,
-// - if depth < maxDepth, add GET CONTENTS of DIRs in path except
-// node_modules
-// - else, add all DIRs in path other than node_modules
-// - if has bundled deps,
-// - get list of bundled deps
-// - add GET CONTENTS of bundled deps, PACKAGE=true, depth + 1
-
-const bundled = require('npm-bundled')
-const {promisify} = require('util')
-const fs = require('fs')
-const readFile = promisify(fs.readFile)
-const readdir = promisify(fs.readdir)
-const stat = promisify(fs.stat)
-const lstat = promisify(fs.lstat)
-const {relative, resolve, basename, dirname} = require('path')
-const normalizePackageBin = require('npm-normalize-package-bin')
-
-const readPackage = ({ path, packageJsonCache }) =>
- packageJsonCache.has(path) ? Promise.resolve(packageJsonCache.get(path))
- : readFile(path).then(json => {
- const pkg = normalizePackageBin(JSON.parse(json))
- packageJsonCache.set(path, pkg)
- return pkg
- })
- .catch(er => null)
-
-// just normalize bundle deps and bin, that's all we care about here.
-const normalized = Symbol('package data has been normalized')
-const rpj = ({ path, packageJsonCache }) =>
- readPackage({path, packageJsonCache})
- .then(pkg => {
- if (!pkg || pkg[normalized])
- return pkg
- if (pkg.bundledDependencies && !pkg.bundleDependencies) {
- pkg.bundleDependencies = pkg.bundledDependencies
- delete pkg.bundledDependencies
- }
- const bd = pkg.bundleDependencies
- if (bd === true) {
- pkg.bundleDependencies = [
- ...Object.keys(pkg.dependencies || {}),
- ...Object.keys(pkg.optionalDependencies || {}),
- ]
- }
- if (typeof bd === 'object' && !Array.isArray(bd)) {
- pkg.bundleDependencies = Object.keys(bd)
- }
- pkg[normalized] = true
- return pkg
- })
-
-
-const pkgContents = async ({
- path,
- depth,
- currentDepth = 0,
- pkg = null,
- result = null,
- packageJsonCache = null,
-}) => {
- if (!result)
- result = new Set()
-
- if (!packageJsonCache)
- packageJsonCache = new Map()
-
- if (pkg === true) {
- return rpj({ path: path + '/package.json', packageJsonCache })
- .then(pkg => pkgContents({
- path,
- depth,
- currentDepth,
- pkg,
- result,
- packageJsonCache,
- }))
- }
-
- if (pkg) {
- // add all bins to result if they exist
- if (pkg.bin) {
- const dir = dirname(path)
- const base = basename(path)
- const scope = basename(dir)
- const nm = /^@.+/.test(scope) ? dirname(dir) : dir
-
- const binFiles = []
- Object.keys(pkg.bin).forEach(b => {
- const base = resolve(nm, '.bin', b)
- binFiles.push(base, base + '.cmd', base + '.ps1')
- })
-
- const bins = await Promise.all(
- binFiles.map(b => stat(b).then(() => b).catch((er) => null))
- )
- bins.filter(b => b).forEach(b => result.add(b))
- }
- }
-
- if (currentDepth >= depth) {
- result.add(path)
- return result
- }
-
- // we'll need bundle list later, so get that now in parallel
- const [dirEntries, bundleDeps] = await Promise.all([
- readdir(path, { withFileTypes: true }),
- currentDepth === 0 && pkg && pkg.bundleDependencies
- ? bundled({ path, packageJsonCache }) : null,
- ]).catch(() => [])
-
- // not a thing, probably a missing folder
- if (!dirEntries)
- return result
-
- // empty folder, just add the folder itself to the result
- if (!dirEntries.length && !bundleDeps && currentDepth !== 0) {
- result.add(path)
- return result
- }
-
- const recursePromises = []
-
- // if we didn't get withFileTypes support, tack that on
- if (typeof dirEntries[0] === 'string') {
- // use a map so we can return a promise, but we mutate dirEntries in place
- // this is much slower than getting the entries from the readdir call,
- // but polyfills support for node versions before 10.10
- await Promise.all(dirEntries.map(async (name, index) => {
- const p = resolve(path, name)
- const st = await lstat(p)
- dirEntries[index] = Object.assign(st, {name})
- }))
- }
-
- for (const entry of dirEntries) {
- const p = resolve(path, entry.name)
- if (entry.isDirectory() === false) {
- result.add(p)
- continue
- }
-
- if (currentDepth !== 0 || entry.name !== 'node_modules') {
- if (currentDepth < depth - 1) {
- recursePromises.push(pkgContents({
- path: p,
- packageJsonCache,
- depth,
- currentDepth: currentDepth + 1,
- result,
- }))
- } else {
- result.add(p)
- }
- continue
- }
- }
-
- if (bundleDeps) {
- // bundle deps are all folders
- // we always recurse to get pkg bins, but if currentDepth is too high,
- // it'll return early before walking their contents.
- recursePromises.push(...bundleDeps.map(dep => {
- const p = resolve(path, 'node_modules', dep)
- return pkgContents({
- path: p,
- packageJsonCache,
- pkg: true,
- depth,
- currentDepth: currentDepth + 1,
- result,
- })
- }))
- }
-
- if (recursePromises.length)
- await Promise.all(recursePromises)
-
- return result
-}
-
-module.exports = ({path, depth = 1, packageJsonCache}) => pkgContents({
- path: resolve(path),
- depth,
- pkg: true,
- packageJsonCache,
-}).then(results => [...results])
-
-
-if (require.main === module) {
- const options = { path: null, depth: 1 }
- const usage = `Usage:
- installed-package-contents <path> [-d<n> --depth=<n>]
-
-Lists the files installed for a package specified by <path>.
-
-Options:
- -d<n> --depth=<n> Provide a numeric value ("Infinity" is allowed)
- to specify how deep in the file tree to traverse.
- Default=1
- -h --help Show this usage information`
-
- process.argv.slice(2).forEach(arg => {
- let match
- if ((match = arg.match(/^--depth=([0-9]+|Infinity)/)) ||
- (match = arg.match(/^-d([0-9]+|Infinity)/)))
- options.depth = +match[1]
- else if (arg === '-h' || arg === '--help') {
- console.log(usage)
- process.exit(0)
- } else
- options.path = arg
- })
- if (!options.path) {
- console.error('ERROR: no path provided')
- console.error(usage)
- process.exit(1)
- }
- const cwd = process.cwd()
- module.exports(options)
- .then(list => list.sort().forEach(p => console.log(relative(cwd, p))))
- .catch(/* istanbul ignore next - pretty unusual */ er => {
- console.error(er)
- process.exit(1)
- })
-}
diff --git a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/package.json b/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/package.json
deleted file mode 100644
index 13916308..00000000
--- a/sandbox/testAppNevena/Front/node_modules/@npmcli/installed-package-contents/package.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "name": "@npmcli/installed-package-contents",
- "version": "1.0.7",
- "description": "Get the list of files installed in a package in node_modules, including bundled dependencies",
- "author": "Isaac Z. Schlueter <i@izs.me> (https://izs.me)",
- "main": "index.js",
- "bin": {
- "installed-package-contents": "index.js"
- },
- "license": "ISC",
- "scripts": {
- "test": "tap",
- "snap": "tap",
- "preversion": "npm test",
- "postversion": "npm publish",
- "postpublish": "git push origin --follow-tags"
- },
- "tap": {
- "check-coverage": true,
- "color": true
- },
- "devDependencies": {
- "require-inject": "^1.4.4",
- "tap": "^14.11.0"
- },
- "dependencies": {
- "npm-bundled": "^1.1.1",
- "npm-normalize-package-bin": "^1.0.1"
- },
- "repository": "git+https://github.com/npm/installed-package-contents",
- "files": [
- "index.js"
- ],
- "engines": {
- "node": ">= 10"
- }
-}