forked from public/fvtt-cthulhu-eternal
Initial import with skill sheet working
This commit is contained in:
21
node_modules/v8flags/LICENSE
generated
vendored
Normal file
21
node_modules/v8flags/LICENSE
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2014-2018, 2021 Tyler Kellen <tyler@sleekcode.net>, Blaine Bublitz <blaine.bublitz@gmail.com>, and Eric Schoffstall <yo@contra.io>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
61
node_modules/v8flags/README.md
generated
vendored
Normal file
61
node_modules/v8flags/README.md
generated
vendored
Normal file
@ -0,0 +1,61 @@
|
||||
<p align="center">
|
||||
<a href="http://gulpjs.com">
|
||||
<img height="257" width="114" src="https://raw.githubusercontent.com/gulpjs/artwork/master/gulp-2x.png">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
# v8flags
|
||||
|
||||
[![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Build Status][ci-image]][ci-url] [![Coveralls Status][coveralls-image]][coveralls-url]
|
||||
|
||||
Get available v8 and Node.js flags.
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
const v8flags = require('v8flags');
|
||||
|
||||
v8flags(function (err, results) {
|
||||
console.log(results);
|
||||
// [ '--use_strict',
|
||||
// '--es5_readonly',
|
||||
// '--es52_globals',
|
||||
// '--harmony_typeof',
|
||||
// '--harmony_scoping',
|
||||
// '--harmony_modules',
|
||||
// '--harmony_proxies',
|
||||
// '--harmony_collections',
|
||||
// '--harmony',
|
||||
// ...
|
||||
});
|
||||
```
|
||||
|
||||
## API
|
||||
|
||||
### `v8flags(cb)`
|
||||
|
||||
Finds the available flags and calls the passed callback with any errors and an array of flag results.
|
||||
|
||||
### `v8flags.configfile`
|
||||
|
||||
The name of the cache file for flags.
|
||||
|
||||
### `v8flags.configPath`
|
||||
|
||||
The filepath location of the `configfile` above.
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
||||
<!-- prettier-ignore-start -->
|
||||
[downloads-image]: https://img.shields.io/npm/dm/v8flags.svg?style=flat-square
|
||||
[npm-url]: https://www.npmjs.com/package/v8flags
|
||||
[npm-image]: https://img.shields.io/npm/v/v8flags.svg?style=flat-square
|
||||
|
||||
[ci-url]: https://github.com/gulpjs/v8flags/actions?query=workflow:dev
|
||||
[ci-image]: https://img.shields.io/github/actions/workflow/status/gulpjs/v8flags/dev.yml?branch=master&style=flat-square
|
||||
|
||||
[coveralls-url]: https://coveralls.io/r/gulpjs/v8flags
|
||||
[coveralls-image]: https://img.shields.io/coveralls/gulpjs/v8flags/master.svg?style=flat-square
|
||||
<!-- prettier-ignore-end -->
|
37
node_modules/v8flags/config-path.js
generated
vendored
Normal file
37
node_modules/v8flags/config-path.js
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
var os = require('os');
|
||||
var path = require('path');
|
||||
var userHome = os.homedir();
|
||||
|
||||
var env = process.env;
|
||||
var name = 'js-v8flags';
|
||||
|
||||
function macos() {
|
||||
var library = path.join(userHome, 'Library');
|
||||
return path.join(library, 'Caches', name);
|
||||
}
|
||||
|
||||
function windows() {
|
||||
var appData = env.LOCALAPPDATA || path.join(userHome, 'AppData', 'Local');
|
||||
return path.join(appData, name);
|
||||
}
|
||||
|
||||
// https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
||||
function linux() {
|
||||
return path.join(env.XDG_CACHE_HOME || path.join(userHome, '.cache'), name);
|
||||
}
|
||||
|
||||
module.exports = function (platform) {
|
||||
if (!userHome) {
|
||||
return os.tmpdir();
|
||||
}
|
||||
|
||||
if (platform === 'darwin') {
|
||||
return macos();
|
||||
}
|
||||
|
||||
if (platform === 'win32') {
|
||||
return windows();
|
||||
}
|
||||
|
||||
return linux();
|
||||
};
|
162
node_modules/v8flags/index.js
generated
vendored
Normal file
162
node_modules/v8flags/index.js
generated
vendored
Normal file
@ -0,0 +1,162 @@
|
||||
// this entire module is depressing. i should have spent my time learning
|
||||
// how to patch v8 so that these options would just be available on the
|
||||
// process object.
|
||||
|
||||
var os = require('os');
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var crypto = require('crypto');
|
||||
var execFile = require('child_process').execFile;
|
||||
var configPath = require('./config-path.js')(process.platform);
|
||||
var env = process.env;
|
||||
var user = env.LOGNAME || env.USER || env.LNAME || env.USERNAME || '';
|
||||
var exclusions = ['--help', '--completion-bash'];
|
||||
|
||||
// This number must be incremented whenever the generated cache file changes.
|
||||
var CACHE_VERSION = 3;
|
||||
|
||||
var configfile =
|
||||
'.v8flags-' +
|
||||
CACHE_VERSION +
|
||||
'-' +
|
||||
process.versions.v8 +
|
||||
'.' +
|
||||
crypto.createHash('sha256').update(user).digest('hex') +
|
||||
'.json';
|
||||
|
||||
var failureMessage = [
|
||||
'Unable to cache a config file for v8flags to your home directory',
|
||||
'or a temporary folder. To fix this problem, please correct your',
|
||||
'environment by setting HOME=/path/to/home or TEMP=/path/to/temp.',
|
||||
'NOTE: the user running this must be able to access provided path.',
|
||||
'If all else fails, please open an issue here:',
|
||||
'http://github.com/gulpjs/v8flags',
|
||||
].join('\n');
|
||||
|
||||
function fail(err) {
|
||||
err.message += '\n\n' + failureMessage;
|
||||
return err;
|
||||
}
|
||||
|
||||
function openConfig(cb) {
|
||||
fs.mkdir(configPath, function () {
|
||||
tryOpenConfig(path.join(configPath, configfile), function (err, fd) {
|
||||
if (err) {
|
||||
return tryOpenConfig(path.join(os.tmpdir(), configfile), cb);
|
||||
}
|
||||
return cb(null, fd);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function tryOpenConfig(configpath, cb) {
|
||||
try {
|
||||
// if the config file is valid, it should be json and therefore
|
||||
// node should be able to require it directly. if this doesn't
|
||||
// throw, we're done!
|
||||
var content = require(configpath);
|
||||
process.nextTick(function () {
|
||||
cb(null, content);
|
||||
});
|
||||
} catch (e) {
|
||||
// if requiring the config file failed, maybe it doesn't exist, or
|
||||
// perhaps it has become corrupted. instead of calling back with the
|
||||
// content of the file, call back with a file descriptor that we can
|
||||
// write the cached data to
|
||||
fs.open(configpath, 'w+', function (err, fd) {
|
||||
if (err) {
|
||||
return cb(err);
|
||||
}
|
||||
return cb(null, fd);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function normalizeFlagName(flag) {
|
||||
return flag.trim();
|
||||
}
|
||||
|
||||
// i can't wait for the day this whole module is obsolete because these
|
||||
// options are available on the process object. this executes node with
|
||||
// `--v8-options` and parses the result, returning an array of command
|
||||
// line flags.
|
||||
function getFlags(cb) {
|
||||
var flags = Array.from(process.allowedNodeEnvironmentFlags);
|
||||
|
||||
execFile(process.execPath, ['--v8-options'], function (execErr, result) {
|
||||
if (execErr) {
|
||||
cb(execErr);
|
||||
return;
|
||||
}
|
||||
|
||||
var index = result.indexOf('\nOptions:');
|
||||
if (index >= 0) {
|
||||
result = result.slice(index);
|
||||
var regexp = /^\s\s--[\w-]+/gm;
|
||||
var matchedFlags = result.match(regexp);
|
||||
if (matchedFlags) {
|
||||
flags = flags.concat(
|
||||
matchedFlags.map(normalizeFlagName).filter(function (name) {
|
||||
return exclusions.indexOf(name) === -1;
|
||||
})
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
cb(null, flags);
|
||||
});
|
||||
}
|
||||
|
||||
// write some json to a file descriptor. if this fails, call back
|
||||
// with both the error and the data that was meant to be written.
|
||||
function writeConfig(fd, flags, cb) {
|
||||
var json = JSON.stringify(flags);
|
||||
var buf = Buffer.from(json);
|
||||
return fs.write(fd, buf, 0, buf.length, 0, function (writeErr) {
|
||||
fs.close(fd, function (closeErr) {
|
||||
var err = writeErr || closeErr;
|
||||
if (err) {
|
||||
return cb(fail(err), flags);
|
||||
}
|
||||
return cb(null, flags);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = function (cb) {
|
||||
// bail early if this is not node
|
||||
var isElectron = process.versions && process.versions.electron;
|
||||
if (isElectron) {
|
||||
return process.nextTick(function () {
|
||||
cb(null, []);
|
||||
});
|
||||
}
|
||||
|
||||
// attempt to open/read cache file
|
||||
openConfig(function (openErr, result) {
|
||||
if (!openErr && typeof result !== 'number') {
|
||||
return cb(null, result);
|
||||
}
|
||||
// if the result is not an array, we need to go fetch
|
||||
// the flags by invoking node with `--v8-options`
|
||||
getFlags(function (flagsErr, flags) {
|
||||
// if there was an error fetching the flags, bail immediately
|
||||
if (flagsErr) {
|
||||
return cb(flagsErr);
|
||||
}
|
||||
// if there was a problem opening the config file for writing
|
||||
// throw an error but include the flags anyway so that users
|
||||
// can continue to execute (at the expense of having to fetch
|
||||
// flags on every run until they fix the underyling problem).
|
||||
if (openErr) {
|
||||
return cb(fail(openErr), flags);
|
||||
}
|
||||
// write the config file to disk so subsequent runs can read
|
||||
// flags out of a cache file.
|
||||
return writeConfig(result, flags, cb);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.configfile = configfile;
|
||||
module.exports.configPath = configPath;
|
53
node_modules/v8flags/package.json
generated
vendored
Normal file
53
node_modules/v8flags/package.json
generated
vendored
Normal file
@ -0,0 +1,53 @@
|
||||
{
|
||||
"name": "v8flags",
|
||||
"version": "4.0.1",
|
||||
"description": "Get available v8 and Node.js flags.",
|
||||
"author": "Gulp Team <team@gulpjs.com> (https://gulpjs.com/)",
|
||||
"contributors": [
|
||||
"Tyler Kellen <tyler@sleekcode.net>",
|
||||
"Blaine Bublitz <blaine.bublitz@gmail.com>",
|
||||
"Nicolò Ribaudo <nicolo.ribaudo@gmail.com>",
|
||||
"Selwyn <talk@selwyn.cc>",
|
||||
"Leo Zhang <leo@leozhang.me>"
|
||||
],
|
||||
"repository": "gulpjs/v8flags",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 10.13.0"
|
||||
},
|
||||
"main": "index.js",
|
||||
"files": [
|
||||
"index.js",
|
||||
"config-path.js",
|
||||
"LICENSE"
|
||||
],
|
||||
"scripts": {
|
||||
"lint": "eslint .",
|
||||
"pretest": "npm run lint",
|
||||
"test": "nyc mocha --async-only"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"async": "^3.2.2",
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-config-gulp": "^5.0.1",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"expect": "^27.3.1",
|
||||
"mocha": "^8.4.0",
|
||||
"nyc": "^15.1.0",
|
||||
"proxyquire": "^2.1.3"
|
||||
},
|
||||
"nyc": {
|
||||
"reporter": [
|
||||
"lcov",
|
||||
"text-summary"
|
||||
]
|
||||
},
|
||||
"prettier": {
|
||||
"singleQuote": true
|
||||
},
|
||||
"keywords": [
|
||||
"v8 flags",
|
||||
"harmony flags"
|
||||
]
|
||||
}
|
Reference in New Issue
Block a user