diff options
author | Nevena Bojovic <nenabojov@gmail.com> | 2022-03-01 22:05:25 +0100 |
---|---|---|
committer | Nevena Bojovic <nenabojov@gmail.com> | 2022-03-01 22:05:25 +0100 |
commit | 6555fb80fdd8f6a5d201efadec3189d1244830a0 (patch) | |
tree | c1aa1c5aedc634ad1ea7fad4847884d559b51290 /sandbox/testAppNevena/Front/node_modules/infer-owner | |
parent | 7d3640f824f46490b47bd95f1c5a16644f712068 (diff) |
Izbrisala bin, obj i node-modules.
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/infer-owner')
4 files changed, 0 insertions, 153 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/infer-owner/LICENSE b/sandbox/testAppNevena/Front/node_modules/infer-owner/LICENSE deleted file mode 100644 index 20a47625..00000000 --- a/sandbox/testAppNevena/Front/node_modules/infer-owner/LICENSE +++ /dev/null @@ -1,15 +0,0 @@ -The ISC License - -Copyright (c) npm, Inc. and Contributors - -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/infer-owner/README.md b/sandbox/testAppNevena/Front/node_modules/infer-owner/README.md deleted file mode 100644 index 146caf7b..00000000 --- a/sandbox/testAppNevena/Front/node_modules/infer-owner/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# infer-owner - -Infer the owner of a path based on the owner of its nearest existing parent - -## USAGE - -```js -const inferOwner = require('infer-owner') - -inferOwner('/some/cache/folder/file').then(owner => { - // owner is {uid, gid} that should be attached to - // the /some/cache/folder/file, based on ownership - // of /some/cache/folder, /some/cache, /some, or /, - // whichever is the first to exist -}) - -// same, but not async -const owner = inferOwner.sync('/some/cache/folder/file') - -// results are cached! to reset the cache (eg, to change -// permissions for whatever reason), do this: -inferOwner.clearCache() -``` - -This module endeavors to be as performant as possible. Parallel requests -for ownership of the same path will only stat the directories one time. - -## API - -* `inferOwner(path) -> Promise<{ uid, gid }>` - - If the path exists, return its uid and gid. If it does not, look to - its parent, then its grandparent, and so on. - -* `inferOwner(path) -> { uid, gid }` - - Sync form of `inferOwner(path)`. - -* `inferOwner.clearCache()` - - Delete all cached ownership information and in-flight tracking. diff --git a/sandbox/testAppNevena/Front/node_modules/infer-owner/index.js b/sandbox/testAppNevena/Front/node_modules/infer-owner/index.js deleted file mode 100644 index a7bddcbd..00000000 --- a/sandbox/testAppNevena/Front/node_modules/infer-owner/index.js +++ /dev/null @@ -1,71 +0,0 @@ -const cache = new Map() -const fs = require('fs') -const { dirname, resolve } = require('path') - - -const lstat = path => new Promise((res, rej) => - fs.lstat(path, (er, st) => er ? rej(er) : res(st))) - -const inferOwner = path => { - path = resolve(path) - if (cache.has(path)) - return Promise.resolve(cache.get(path)) - - const statThen = st => { - const { uid, gid } = st - cache.set(path, { uid, gid }) - return { uid, gid } - } - const parent = dirname(path) - const parentTrap = parent === path ? null : er => { - return inferOwner(parent).then((owner) => { - cache.set(path, owner) - return owner - }) - } - return lstat(path).then(statThen, parentTrap) -} - -const inferOwnerSync = path => { - path = resolve(path) - if (cache.has(path)) - return cache.get(path) - - const parent = dirname(path) - - // avoid obscuring call site by re-throwing - // "catch" the error by returning from a finally, - // only if we're not at the root, and the parent call works. - let threw = true - try { - const st = fs.lstatSync(path) - threw = false - const { uid, gid } = st - cache.set(path, { uid, gid }) - return { uid, gid } - } finally { - if (threw && parent !== path) { - const owner = inferOwnerSync(parent) - cache.set(path, owner) - return owner // eslint-disable-line no-unsafe-finally - } - } -} - -const inflight = new Map() -module.exports = path => { - path = resolve(path) - if (inflight.has(path)) - return Promise.resolve(inflight.get(path)) - const p = inferOwner(path).then(owner => { - inflight.delete(path) - return owner - }) - inflight.set(path, p) - return p -} -module.exports.sync = inferOwnerSync -module.exports.clearCache = () => { - cache.clear() - inflight.clear() -} diff --git a/sandbox/testAppNevena/Front/node_modules/infer-owner/package.json b/sandbox/testAppNevena/Front/node_modules/infer-owner/package.json deleted file mode 100644 index c4b2b6e6..00000000 --- a/sandbox/testAppNevena/Front/node_modules/infer-owner/package.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "infer-owner", - "version": "1.0.4", - "description": "Infer the owner of a path based on the owner of its nearest existing parent", - "author": "Isaac Z. Schlueter <i@izs.me> (https://izs.me)", - "license": "ISC", - "scripts": { - "test": "tap -J test/*.js --100", - "snap": "TAP_SNAPSHOT=1 tap -J test/*.js --100", - "preversion": "npm test", - "postversion": "npm publish", - "postpublish": "git push origin --follow-tags" - }, - "devDependencies": { - "mutate-fs": "^2.1.1", - "tap": "^12.4.2" - }, - "main": "index.js", - "repository": "https://github.com/npm/infer-owner", - "publishConfig": { - "access": "public" - }, - "files": [ - "index.js" - ] -} |