aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md
diff options
context:
space:
mode:
authorNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
committerNevena Bojovic <nenabojov@gmail.com>2022-03-01 20:05:50 +0100
commit291803c31f829fe0d32bb3207bc11def95a7408c (patch)
treec7d43107d79291b19d8c9eceefbe91c9f9a52acf /sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md
parent1fa69862057db4db53cfda5be9c24b4228ef63f7 (diff)
Urađena test aplikacija. Povezan front i back.
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md79
1 files changed, 79 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md b/sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md
new file mode 100644
index 00000000..5ab6adbe
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/read-package-json-fast/README.md
@@ -0,0 +1,79 @@
+# read-package-json-fast
+
+Like [`read-package-json`](http://npm.im/read-package-json), but faster and
+more accepting of "missing" data.
+
+This is only suitable for reading package.json files in a node_modules
+tree, since it doesn't do the various cleanups, normalization, and warnings
+that are beneficial at the root level in a package being published.
+
+## USAGE
+
+```js
+const rpj = require('read-package-json-fast')
+
+// typical promisey type API
+rpj('/path/to/package.json')
+ .then(data => ...)
+ .catch(er => ...)
+
+// or just normalize a package manifest
+const normalized = rpj.normalize(packageJsonObject)
+```
+
+Errors raised from parsing will use
+[`json-parse-even-better-errors`](http://npm.im/json-parse-even-better-errors),
+so they'll be of type `JSONParseError` and have a `code: 'EJSONPARSE'`
+property. Errors will also always have a `path` member referring to the
+path originally passed into the function.
+
+## Indentation
+
+To preserve indentation when the file is saved back to disk, use
+`data[Symbol.for('indent')]` as the third argument to `JSON.stringify`, and
+if you want to preserve windows `\r\n` newlines, replace the `\n` chars in
+the string with `data[Symbol.for('newline')]`.
+
+For example:
+
+```js
+const data = await readPackageJsonFast('./package.json')
+const indent = Symbol.for('indent')
+const newline = Symbol.for('newline')
+// .. do some stuff to the data ..
+const string = JSON.stringify(data, null, data[indent]) + '\n'
+const eolFixed = data[newline] === '\n' ? string
+ : string.replace(/\n/g, data[newline])
+await writeFile('./package.json', eolFixed)
+```
+
+Indentation is determined by looking at the whitespace between the initial
+`{` and the first `"` that follows it. If you have lots of weird
+inconsistent indentation, then it won't track that or give you any way to
+preserve it. Whether this is a bug or a feature is debatable ;)
+
+## WHAT THIS MODULE DOES
+
+- Parse JSON
+- Normalize `bundledDependencies`/`bundleDependencies` naming to just
+ `bundleDependencies` (without the extra `d`)
+- Handle `true`, `false`, or object values passed to `bundleDependencies`
+- Normalize `funding: <string>` to `funding: { url: <string> }`
+- Remove any `scripts` members that are not a string value.
+- Normalize a string `bin` member to `{ [name]: bin }`.
+- Fold `optionalDependencies` into `dependencies`.
+- Set the `_id` property if name and version are set. (This is
+ load-bearing in a few places within the npm CLI.)
+
+## WHAT THIS MODULE DOES NOT DO
+
+- Warn about invalid/missing name, version, repository, etc.
+- Extract a description from the `README.md` file, or attach the readme to
+ the parsed data object.
+- Read the `HEAD` value out of the `.git` folder.
+- Warn about potentially typo'ed scripts (eg, `tset` instead of `test`)
+- Check to make sure that all the files in the `files` field exist and are
+ valid files.
+- Fix bundleDependencies that are not listed in `dependencies`.
+- Fix `dependencies` fields that are not strictly objects of string values.
+- Anything involving the `directories` field (ie, bins, mans, and so on).