flow: so much

This commit is contained in:
cha0s 2020-12-06 06:27:26 -06:00
parent 9fae1224d0
commit 0588afa741
44 changed files with 1711 additions and 41362 deletions

View File

@ -3,6 +3,7 @@
"private": true, "private": true,
"scripts": { "scripts": {
"build": "lerna run build", "build": "lerna run build",
"clean": "lerna exec rm yarn.lock",
"forcedev": "lerna run dev && lerna run forcepub", "forcedev": "lerna run dev && lerna run forcepub",
"lint": "lerna run lint", "lint": "lerna run lint",
"test": "lerna run test", "test": "lerna run test",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,9 @@ const {Latus} = require('@latus/core');
return; return;
} }
const latus = new Latus(window.$$latus); const latus = new Latus(window.$$latus);
await Promise.all(latus.invokeFlat('@latus/http/client/up')); await latus.invokeSequential('@latus/http/client/up');
// eslint-disable-next-line no-console // eslint-disable-next-line no-console
console.log('Latus up!\n'); console.log('Latus up!\n');
})(); })();
export default {};

View File

@ -14,6 +14,9 @@ export default {
configs.client = require('./build/.neutrinorc'); configs.client = require('./build/.neutrinorc');
}, },
'@latus/core/up': (latus) => createHttpServer(latus), '@latus/core/up': (latus) => createHttpServer(latus),
'@latus/http/plugins': (req, {config: {'@latus/http': {'client.up': up}}}) => ({
'@latus/http/client': {up},
}),
'@latus/repl/context': (latus) => ({ '@latus/repl/context': (latus) => ({
httpServer: latus.config['%http'], httpServer: latus.config['%http'],
}), }),

View File

@ -22,14 +22,29 @@ const common = (latus, req) => {
neutrino.config neutrino.config
.entry('latus') .entry('latus')
.add(`${__dirname}/client/latus`); .add(`${__dirname}/client/latus`);
const {config: {'@latus/http': {plugins}}} = latus; const config = latus.invokeReduce('@latus/http/plugins', undefined, undefined, req);
const defaults = Object.keys(latus.config)
.map((plugin) => {
try {
const client = `${plugin}/client`;
// eslint-disable-next-line no-eval
eval('require.resolve')(client);
return {
[client]: {},
};
}
catch (error) {
return {};
}
})
.reduce((r, o) => ({...r, ...o}), {});
neutrino.config neutrino.config
.plugin('WebpackPlugin') .plugin('WebpackPlugin')
.use(WebpackPlugin, [ .use(WebpackPlugin, [
plugins.reduce( {
(r, plugin) => ({...r, ...latus.invokePlugin('@latus/http/plugins', plugin, req)}), ...defaults,
{}, ...config,
), },
]); ]);
}, },
(neutrino) => { (neutrino) => {

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@ const splitConfig = require('../../config/split-config');
const pkg = require('./package.json'); const pkg = require('./package.json');
const clientMains = [ const clientMains = [
'entry', 'client',
]; ];
module.exports = splitConfig(pkg, clientMains); module.exports = splitConfig(pkg, clientMains);

View File

@ -15,8 +15,8 @@
"files": [ "files": [
"index.js", "index.js",
"index.js.map", "index.js.map",
"entry.js", "client.js",
"entry.js.map" "client.js.map"
], ],
"dependencies": { "dependencies": {
"@neutrinojs/react": "^9.4.0", "@neutrinojs/react": "^9.4.0",

View File

@ -0,0 +1,20 @@
import React from 'react';
import {render} from 'react-dom';
import LatusContext from './context';
export {LatusContext};
export default {
hooks: {
'@latus/http/client/up': (latus) => {
const Components = latus.invoke('@latus/react/components');
const children = Object.entries(Components)
.map(([key, Component]) => React.createElement(Component, {key}));
return render(
React.createElement(LatusContext.Provider, {value: latus}, children),
window.document.getElementById('root'),
);
},
},
};

View File

@ -0,0 +1,3 @@
import {createContext} from 'react';
export default createContext(undefined);

View File

@ -1,17 +0,0 @@
import React from 'react';
import {render} from 'react-dom';
export default {
hooks: {
'@latus/http/client/up': (latus) => {
const Components = latus.invoke('@latus/react/components');
const heated = React.createElement(
React.Fragment,
{},
Object.entries(Components)
.map(([key, Component]) => React.createElement(Component, {key})),
);
return render(heated, window.document.getElementById('root'));
},
},
};

View File

@ -22,7 +22,6 @@ export default {
}), }),
'@latus/http/build': () => middleware, '@latus/http/build': () => middleware,
'@latus/http/plugins': (req, {config: {'@latus/react': {entry}}}) => ({ '@latus/http/plugins': (req, {config: {'@latus/react': {entry}}}) => ({
'@latus/react/entry': {},
[entry]: {}, [entry]: {},
}), }),
}, },

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -16,7 +16,9 @@
"client.js", "client.js",
"client.js.map", "client.js.map",
"index.js", "index.js",
"index.js.map" "index.js.map",
"packets.js",
"packets.js.map"
], ],
"dependencies": { "dependencies": {
"@latus/core": "^1.0.0", "@latus/core": "^1.0.0",

View File

@ -1,9 +1,13 @@
import gatherPackets from '../packet/gather';
import SocketClient from './socket'; import SocketClient from './socket';
export default { export default {
hooks: { hooks: {
'@latus/http/client/up': (latus) => { '@latus/http/client/up': (latus) => {
gatherPackets(latus);
const socket = new SocketClient(latus); const socket = new SocketClient(latus);
// eslint-disable-next-line no-param-reassign
latus.config['%socket'] = socket;
socket.connect(); socket.connect();
}, },
}, },

View File

@ -31,9 +31,6 @@ export default class SocketClient extends decorate(Class) {
}; };
this.latus = latus; this.latus = latus;
this.socket = null; this.socket = null;
const Packets = latus.invokeReduce('@latus/socket/packets');
// eslint-disable-next-line no-param-reassign
latus.config['%packets'] = latus.invokeComposed('@latus/socket/packets.decorate', Packets);
} }
connect(address) { connect(address) {

View File

@ -1,41 +1,41 @@
import {createSocketServer} from './lifecycle'; import {createSocketServer} from './lifecycle';
import LatusPacket from './packet'; import gatherPackets from './packet/gather';
const badPacketsCheck = (Packets, type) => { export {default as Packet, ValidationError} from './packet';
const badPackets = Object.fromEntries(
Object.entries(Packets).filter(([, Packet]) => !(Packet instanceof LatusPacket)),
);
if (badPackets.length > 0) {
const badKeys = Object.keys(badPackets);
throw new Error([
`Implementations of ${type}`,
"need to return a map of subclasses derived from '@latus/socket/packet'. The following",
'packets were not:',
`'${badKeys.join("', '")}'`,
].join(' '));
}
};
export default { export default {
hooks: { hooks: {
'@latus/core/config': () => ({ '@latus/core/config': () => ({
connection: [], authenticate: [],
}), connect: [],
'@latus/http/plugins': () => ({
'@latus/socket/client': {},
}), }),
'@latus/http/server/up': async (httpServer, latus) => { '@latus/http/server/up': async (httpServer, latus) => {
const Packets = latus.invokeReduce('@latus/socket/packets'); gatherPackets(latus);
badPacketsCheck(Packets, '@latus/socket/packets');
const composed = latus.invokeComposed('@latus/socket/packets.decorate', Packets);
badPacketsCheck(composed, '@latus/socket/packets.decorate');
// eslint-disable-next-line no-param-reassign
latus.config['%packets'] = composed;
createSocketServer(httpServer, latus); createSocketServer(httpServer, latus);
}, },
'@latus/repl/context': (latus) => ({ '@latus/repl/context': (latus) => ({
Packets: latus.config['%packets'], Packets: latus.config['%packets'],
sockets: latus.config['%sockets'], sockets: latus.config['%sockets'],
}), }),
'@latus/socket/connect': (socket) => {
socket.on('packet', async (packet, fn) => {
const Packet = packet.constructor;
try {
await Packet.validate(packet, socket);
fn(undefined, await Packet.respond(packet, socket));
}
catch (error) {
if (error.payload) {
fn(error.payload);
return;
}
if (error instanceof Error) {
fn({code: 500});
throw error;
}
fn(error);
}
});
},
}, },
}; };

View File

@ -0,0 +1,16 @@
import LatusPacket from './packet';
export default (Packets, type) => {
const badPackets = Object.fromEntries(
Object.entries(Packets).filter(([, Packet]) => !(Packet instanceof LatusPacket)),
);
if (badPackets.length > 0) {
const badKeys = Object.keys(badPackets);
throw new Error([
`Implementations of ${type}`,
"need to return a map of subclasses derived from '@latus/socket/packet'. The following",
'packets were not:',
`'${badKeys.join("', '")}'`,
].join(' '));
}
};

View File

@ -0,0 +1,22 @@
import badPacketsCheck from './bad-packets-check';
export default (latus) => {
const Packets = latus.invokeReduce('@latus/socket/packets');
badPacketsCheck(Packets, '@latus/socket/packets');
const composed = latus.invokeComposed('@latus/socket/packets.decorate', Packets);
badPacketsCheck(composed, '@latus/socket/packets.decorate');
let uid = 1;
// eslint-disable-next-line no-param-reassign
latus.config['%packets'] = Object.fromEntries(
Object.entries(composed).map(([name, Packet]) => [
name,
class IdPacket extends Packet {
static id = uid++;
static name = name;
},
]),
);
};

View File

@ -1 +1,2 @@
export {default} from './packet'; export {default} from './packet';
export {default as ValidationError} from './validation-error';

View File

@ -9,14 +9,13 @@ export default class Packet {
static get builder() { static get builder() {
if (!this._builder) { if (!this._builder) {
const {schema} = this; this._builder = schemapack.build({
if (!schema._id) { _id: 'uint8',
throw new Error([ id: 'uint32',
`No packet id found in '${this.name}.schema'. This is usually due to forgetting to`, nsp: 'string',
'inherit from Packet.schema within your packet subclass schema definition.', type: 'uint8',
].join(' ')); data: this.data || {},
} });
this._builder = schemapack.build(schema);
} }
return this._builder; return this._builder;
} }
@ -38,17 +37,20 @@ export default class Packet {
}); });
} }
static get schema() { static respond(packet, socket) {
return { if (packet.respond) {
_id: 'uint16', packet.respond(socket);
id: 'uint32', }
nsp: 'string',
type: 'uint8',
};
} }
static unpack(packet) { static unpack(packet) {
return this.builder.decode(packet); return this.builder.decode(packet);
} }
static validate(packet, socket) {
if (packet.validate) {
packet.validate(socket);
}
}
} }

View File

@ -41,7 +41,7 @@ const Encoder = (latus) => class Encoder {
// eslint-disable-next-line class-methods-use-this // eslint-disable-next-line class-methods-use-this
pack(packet) { pack(packet) {
const packetId = packet.data[0]; const packetId = packet.data[0];
const {default: Packet} = fromId(latus, packetId); const Packet = fromId(latus, packetId);
return deflate(Packet.pack(packet)); return deflate(Packet.pack(packet));
} }
@ -69,7 +69,7 @@ const Decoder = (latus) => class Decoder extends decorate(class {}) {
const packet = inflate(Buffer.from(binary)); const packet = inflate(Buffer.from(binary));
const view = new Uint8Array(packet); const view = new Uint8Array(packet);
const packetId = view[0]; const packetId = view[0];
const {default: Packet} = fromId(latus, packetId); const Packet = fromId(latus, packetId);
const unpacked = Packet.unpack(packet); const unpacked = Packet.unpack(packet);
const {data} = unpacked; const {data} = unpacked;
this.emit('decoded', { this.emit('decoded', {

View File

@ -0,0 +1,9 @@
export default class ValidationError extends Error {
constructor(...args) {
const [payload, ...after] = args;
super(...after);
this.payload = payload;
}
}

View File

@ -0,0 +1 @@
export {default as Packet, ValidationError} from './packet';

View File

@ -14,9 +14,9 @@ export default class ServerSocket extends decorate(Class) {
constructor(socket, latus) { constructor(socket, latus) {
super(); super();
this.socket = socket; this.socket = socket;
const Packets = all(latus); const Packets = Object.entries(all(latus));
for (let i = 0; i < Packets.length; i++) { for (let i = 0; i < Packets.length; i++) {
const Packet = Packets[i]; const Packet = Packets[i][1];
const {id} = Packet; const {id} = Packet;
debug('Registering packet %s(id: %s)', Packet.name, id); debug('Registering packet %s(id: %s)', Packet.name, id);
this.socket.on(id, (data, fn) => { this.socket.on(id, (data, fn) => {

File diff suppressed because it is too large Load Diff

View File

@ -21,11 +21,14 @@
"models.js.map", "models.js.map",
"passport.js", "passport.js",
"passport.js.map", "passport.js.map",
"passport/client.js",
"passport/client.js.map",
"session.js", "session.js",
"session.js.map" "session.js.map"
], ],
"dependencies": { "dependencies": {
"@latus/db": "^1.0.0", "@latus/db": "^1.0.0",
"@latus/socket": "^1.0.0",
"bcrypt": "^5.0.0", "bcrypt": "^5.0.0",
"debug": "4.3.1", "debug": "4.3.1",
"express": "^4.17.1", "express": "^4.17.1",

View File

@ -0,0 +1,200 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define("@latus/user", [], factory);
else if(typeof exports === 'object')
exports["@latus/user"] = factory();
else
root["@latus/user"] = factory();
})(global, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 4);
/******/ })
/************************************************************************/
/******/ ({
/***/ "./src/packets/index.js":
/*!******************************!*\
!*** ./src/packets/index.js ***!
\******************************/
/*! exports provided: Logout */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _logout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./logout */ "./src/packets/logout.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Logout", function() { return _logout__WEBPACK_IMPORTED_MODULE_0__["default"]; });
// eslint-disable-next-line import/prefer-default-export
/***/ }),
/***/ "./src/packets/logout.js":
/*!*******************************!*\
!*** ./src/packets/logout.js ***!
\*******************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _latus_socket_packets__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @latus/socket/packets */ "@latus/socket/packets");
/* harmony import */ var _latus_socket_packets__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_latus_socket_packets__WEBPACK_IMPORTED_MODULE_0__);
/* harmony default export */ __webpack_exports__["default"] = (() => class Logout extends _latus_socket_packets__WEBPACK_IMPORTED_MODULE_0__["Packet"] {
static respond(packet, _ref) {
var {
req
} = _ref;
req.logout();
return new Promise((r, e) => req.session.save(error => error ? e(error) : r()));
}
static validate(packet, _ref2) {
var {
req
} = _ref2;
if (!req.user) {
throw new _latus_socket_packets__WEBPACK_IMPORTED_MODULE_0__["ValidationError"]({
code: 400,
reason: 'anonymous'
});
}
}
});
/***/ }),
/***/ "./src/passport/client.js":
/*!********************************!*\
!*** ./src/passport/client.js ***!
\********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _packets__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../packets */ "./src/packets/index.js");
/* harmony default export */ __webpack_exports__["default"] = ({
hooks: {
'@latus/socket/packets': latus => ({
Logout: Object(_packets__WEBPACK_IMPORTED_MODULE_0__["Logout"])(latus)
})
}
});
/***/ }),
/***/ 4:
/*!***********************************!*\
!*** multi ./src/passport/client ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(/*! /sync/src/code/latus/packages/user/src/passport/client */"./src/passport/client.js");
/***/ }),
/***/ "@latus/socket/packets":
/*!****************************************!*\
!*** external "@latus/socket/packets" ***!
\****************************************/
/*! no static exports found */
/***/ (function(module, exports) {
module.exports = require("@latus/socket/packets");
/***/ })
/******/ });
});
//# sourceMappingURL=client.js.map

File diff suppressed because one or more lines are too long

View File

@ -1,32 +1,14 @@
import {randomBytes} from 'crypto'; import {randomBytes} from 'crypto';
import {ModelMap, Types} from '@latus/db'; import {ModelMap} from '@latus/db';
import bcrypt from 'bcrypt';
import passport from 'passport'; import passport from 'passport';
import LocalStrategy from 'passport-local'; import LocalStrategy from 'passport-local';
const LocalUser = (User) => class LocalUser extends User { import UserLocal from './models';
static saltRounds = 10; const {
SIDE,
static get attributes() { } = process.env;
return {
...super.attributes,
email: Types.STRING,
hash: Types.STRING,
};
}
async addHashedPassword(plaintext) {
this.hash = await bcrypt.hash(plaintext, this.constructor.saltRounds);
return this;
}
validatePassword(plaintext) {
return bcrypt.compare(plaintext, this.hash);
}
};
export default { export default {
hooks: { hooks: {
@ -47,7 +29,7 @@ export default {
}, },
'@latus/db/models.decorate': (Models) => ({ '@latus/db/models.decorate': (Models) => ({
...Models, ...Models,
User: LocalUser(Models.User), User: UserLocal(Models.User),
}), }),
'@latus/repl/commands': (latus) => { '@latus/repl/commands': (latus) => {
const {User} = ModelMap(latus); const {User} = ModelMap(latus);
@ -70,5 +52,14 @@ export default {
}, },
}; };
}, },
// '@latus/socket/packets': (latus) => ({
// LoginLocal: (
// 'server' === SIDE
// // eslint-disable-next-line global-require
// ? require('./packets/login-local.server')
// // eslint-disable-next-line global-require
// : require('./packets/login-local')
// ).default(latus),
// }),
}, },
}; };

View File

@ -0,0 +1,25 @@
import {Types} from '@latus/db';
import bcrypt from 'bcrypt';
export default (User) => class UserLocal extends User {
static saltRounds = 10;
static get attributes() {
return {
...super.attributes,
email: Types.STRING,
hash: Types.STRING,
};
}
async addHashedPassword(plaintext) {
this.hash = await bcrypt.hash(plaintext, this.constructor.saltRounds);
return this;
}
validatePassword(plaintext) {
return bcrypt.compare(plaintext, this.hash);
}
};

View File

@ -0,0 +1,2 @@
// eslint-disable-next-line import/prefer-default-export
export {default as Logout} from './logout';

View File

@ -0,0 +1,17 @@
import {Packet} from '@latus/socket';
export default () => class LoginLocal extends Packet {
static get data() {
return {
password: 'string',
username: 'string',
};
}
static limit = {
points: 3,
duration: 15,
};
};

View File

@ -0,0 +1,38 @@
import {ValidationError} from '@latus/socket';
import passport from 'passport';
import LoginLocal from './login-local';
export default () => class LoginLocalServer extends LoginLocal {
respond({req}) {
const {password, username} = this.data;
// eslint-disable-next-line no-param-reassign
req.query = {
...req.query,
password,
username,
};
return new Promise((r, e) => passport.authenticate('local', (error, user) => {
if (error) {
e(error);
return;
}
if (!user) {
e(new ValidationError({
code: 403,
reason: 'invalid',
}));
return;
}
req.logIn(user, (error) => {
if (error) {
e(error);
return;
}
r();
});
})(req, null, () => {}));
}
};

View File

@ -0,0 +1,16 @@
import {Packet, ValidationError} from '@latus/socket/packets';
export default () => class Logout extends Packet {
static respond(packet, {req}) {
req.logout();
return new Promise((r, e) => req.session.save((error) => (error ? e(error) : r())));
}
static validate(packet, {req}) {
if (!req.user) {
throw new ValidationError({code: 400, reason: 'anonymous'});
}
}
};

View File

@ -0,0 +1,9 @@
import {Logout} from '../packets';
export default {
hooks: {
'@latus/socket/packets': (latus) => ({
Logout: Logout(latus),
}),
},
};

View File

@ -3,6 +3,8 @@ import D from 'debug';
import passport from 'passport'; import passport from 'passport';
import LogOps from 'passport/lib/http/request'; import LogOps from 'passport/lib/http/request';
import {Logout} from '../packets';
const debug = D('@latus/user/passport'); const debug = D('@latus/user/passport');
export default { export default {
@ -45,5 +47,8 @@ export default {
}); });
}); });
}, },
'@latus/socket/packets': (latus) => ({
Logout: Logout(latus),
}),
}, },
}; };

File diff suppressed because it is too large Load Diff

View File

@ -4,18 +4,20 @@
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
"build": "webpack --mode production", "build": "webpack --mode production",
"dev": "webpack --mode development",
"forcebuild": "rm yarn.lock && yarn && yarn run build", "forcebuild": "rm yarn.lock && yarn && yarn run build",
"forcelatus": "pkgs=$(find node_modules/@latus -maxdepth 1 -mindepth 1 -printf '@latus/%f '); yarn remove $pkgs; yarn add $pkgs && yarn run build", "forcelatus": "pkgs=$(find node_modules/@latus -maxdepth 1 -mindepth 1 -printf '@latus/%f '); yarn remove $pkgs; yarn add $pkgs",
"forcerun": "yarn run forcelatus && yarn run devrun", "forcedev": "yarn run forcelatus && yarn run dev && yarn run devrun",
"devrun": "DEBUG=* HTTP_HOST=0.0.0.0 HTTP_PORT=32340 NODE_ENV=development node build/index.js", "devrun": "DEBUG=* HTTP_HOST=0.0.0.0 HTTP_PORT=32340 NODE_ENV=development node build/index.js",
"lint": "eslint --cache --format codeframe --ext mjs,jsx,js src", "lint": "eslint --cache --format codeframe --ext mjs,jsx,js src",
"repl": "rlwrap -C qmp socat STDIO UNIX:$(ls /tmp/latus-*.sock | tail -n 1)", "repl": "rlwrap -C qmp socat STDIO UNIX:$(ls /tmp/latus-*.sock | tail -n 1)",
"test": "NODE_PRESERVE_SYMLINKS=1 mocha --watch src", "test": "mocha --watch src",
"watch": "NODE_PRESERVE_SYMLINKS=1 webpack --watch --mode development" "watch": "webpack --watch --mode development"
}, },
"dependencies": { "dependencies": {
"@latus/core": "^1.0.0", "@latus/core": "^1.0.0",
"@latus/db": "^1.0.0", "@latus/db": "^1.0.0",
"@latus/governor": "^1.0.0",
"@latus/http": "^1.0.0", "@latus/http": "^1.0.0",
"@latus/react": "^1.0.0", "@latus/react": "^1.0.0",
"@latus/redis": "^1.0.0", "@latus/redis": "^1.0.0",

View File

@ -913,17 +913,17 @@
"@latus/core@1.0.0", "@latus/core@^1.0.0": "@latus/core@1.0.0", "@latus/core@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#c2d842fe69ba361563b8317838d1f77bb18dfa5f" resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#d549ba1169ac744101943403f2f97484b8860877"
integrity sha512-KFchzfh2lOEgAey5mViHN6vk/kOMol4wSO7ytQ2azUovFDtNaNhHLmV09jSTyLJJG5sOZ/j5Q4eaYRkpZBn0eQ== integrity sha512-yXwmiXCxzkNVIx0XbDJ9b3eNZe+IU/jnL9XDeNvK90EHY4V1JFaYmYOBG0NUfi4TODNHaZKlWnJbAiEFCk7dbw==
dependencies: dependencies:
debug "4.3.1" debug "4.3.1"
js-yaml "3.14.0" js-yaml "3.14.0"
webpack-virtual-modules "0.3.2" webpack-virtual-modules "0.3.2"
"@latus/db@1.0.0", "@latus/db@^1.0.0": "@latus/db@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fdb/-/db-1.0.0.tgz#4742873172fe947fe94d9bc7b66f2570cc33a48a" resolved "https://npm.i12e.cha0s.io/@latus%2fdb/-/db-1.0.0.tgz#265817c7d5f909811100eaa9ee6f7d7231d82ce7"
integrity sha512-nEZsCVlqVcXLURsF9ga8EduBwwzku1UQT+oizIM3bo6jUl0MuOvNBQ0B8m4u7Dv4BOnkM+hcdyl9spVgCfS2Hg== integrity sha512-GGxzCGgEARL8nkoI1MTfEn+Y7qXggvbbdKMZpffTVa5H4IkKooJ/cY0ywL3yAovn97zIyyxOTXvT0hgf0EUPbg==
dependencies: dependencies:
"@latus/core" "^1.0.0" "@latus/core" "^1.0.0"
debug "4.3.1" debug "4.3.1"
@ -931,10 +931,20 @@
mysql2 "^2.2.5" mysql2 "^2.2.5"
sequelize "^6.3.5" sequelize "^6.3.5"
"@latus/http@1.0.0", "@latus/http@^1.0.0": "@latus/governor@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#180f5e704fff6918c6a0362c3bc5dea517d04d41" resolved "https://npm.i12e.cha0s.io/@latus%2fgovernor/-/governor-1.0.0.tgz#6dbcc13f95af91c46c3b3ad44e66f9d0eb5f5a63"
integrity sha512-IwQVg8LsBakAnsUhS7tcmQldfLqTcCr50X3ZjZ77Qho5h/IuF3vB+srQxd9SFmfnvD8zyzDJzGBnDNRs7Jj6rg== integrity sha512-cJ0nw9fMfzAV8kGRg4Vj3gNP8x/27+BcPjAfI1i6izh16ZrqDWqSfh0F29hIG/oMh8sYCXuM5ocUlrWHjNK2KA==
dependencies:
"@latus/redis" "^1.0.0"
"@latus/socket" "^1.0.0"
debug "4.3.1"
rate-limiter-flexible "^2.1.13"
"@latus/http@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#e85b7671d5068adf225bc2bed4f57d6660a0b18d"
integrity sha512-W/PG64P35k2YVeIbfrY/sPTRLrm0EPwKK7mKA+JX1/+if+zOn2nOhcjmS9t5kcK33f/Wljv1N0f6sZTY3lw/nA==
dependencies: dependencies:
"@latus/core" "1.0.0" "@latus/core" "1.0.0"
"@neutrinojs/web" "^9.1.0" "@neutrinojs/web" "^9.1.0"
@ -946,10 +956,10 @@
webpack-dev-middleware "^4.0.2" webpack-dev-middleware "^4.0.2"
webpack-hot-middleware "^2.25.0" webpack-hot-middleware "^2.25.0"
"@latus/react@1.0.0": "@latus/react@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2freact/-/react-1.0.0.tgz#42d77f5fff221419a2341f332c1d1e2c901fcd94" resolved "https://npm.i12e.cha0s.io/@latus%2freact/-/react-1.0.0.tgz#04c282317d362c48bebe454a777f8eb29fc11be4"
integrity sha512-0KzY/MwPVMuYY3fBILWiMdor2eJeTuLMXpSIqqKXv25lCyRCNzxNcRJ8ipH1oAGsZth6nhr84/z3hGnkxFOjFw== integrity sha512-LSBbtrsCuZM0idC9ZU7lRo+6Z/L3KF7XhucnGBYA3gFY0cOn6Jb4kfgRTjp0VveZdSYDyaKuJH0RNtDiYNOs+A==
dependencies: dependencies:
"@neutrinojs/react" "^9.4.0" "@neutrinojs/react" "^9.4.0"
debug "4.3.1" debug "4.3.1"
@ -957,10 +967,10 @@
react-dom "^17.0.1" react-dom "^17.0.1"
react-hot-loader "^4.13.0" react-hot-loader "^4.13.0"
"@latus/redis@1.0.0": "@latus/redis@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fredis/-/redis-1.0.0.tgz#1a749fb3e9ac2da44a2a0926c15e72de548429c1" resolved "https://npm.i12e.cha0s.io/@latus%2fredis/-/redis-1.0.0.tgz#c55fc0df24a3db90853e84de92bb9fafe9a8b318"
integrity sha512-qElakdbB0unX8U6kiMbs1VCgJngPlJNh+V1KConlupHMJsTxl+ck2FyiUMDdVPffCscHnneFudWgCYYVFeXqAQ== integrity sha512-0qVpeEWdQFOGb+LhLCHEimF68Mb2zScyoWXiP/HXPBtKGzlAgzR7sJyGXsFmfW48rQI0+C58fHjb6mObM8P1Zg==
dependencies: dependencies:
connect-redis "^5.0.0" connect-redis "^5.0.0"
debug "4.3.1" debug "4.3.1"
@ -969,31 +979,33 @@
redis "^3.0.2" redis "^3.0.2"
socket.io-redis "^6.0.1" socket.io-redis "^6.0.1"
"@latus/repl@1.0.0": "@latus/repl@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2frepl/-/repl-1.0.0.tgz#12bee7bbfec08b6e5625671fb691def4ed7ec553" resolved "https://npm.i12e.cha0s.io/@latus%2frepl/-/repl-1.0.0.tgz#244497633be5fb90fb7ae0d496a7c1f21cf05c97"
integrity sha512-pvrpipjYPrCycwkz5ufjetDAshPxbpvHC+m1YUQM6ayLBYHFsuN/vszM2bMyAD4srR++Iz9z6wl+iRf7rXyzMA== integrity sha512-PuUsG0eL/+zha2Rswh0rM1KwdhpYSkt/ikFWHDaTl5cvOkDE7PXZRrOTmBj7q5xwLt2q4EH9gIbxhUf5Yw1k7g==
dependencies: dependencies:
debug "4.3.1" debug "4.3.1"
"@latus/socket@1.0.0": "@latus/socket@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fsocket/-/socket-1.0.0.tgz#46b764c3bfd9d1198c17a0f4e603cd7312c78500" resolved "https://npm.i12e.cha0s.io/@latus%2fsocket/-/socket-1.0.0.tgz#f91b432a143b301adc2b4353434ee08b70b54c41"
integrity sha512-2Iyqh+uEJuc9eYNAW19CmGdqhJ8McW5pWpcEOhne3XObU4DCZw69E2z5ONxSSadZBt9FvnvfO4LJXl27Pb/2Og== integrity sha512-J+cy/vpwD5p9ieoBpwbQwlNF1IhsdA8ta8p6cbuMcU97GCIWNHaRy0kZ4Q8izZq41vdu5CEMVQHWS7ZaxnZYFQ==
dependencies: dependencies:
"@latus/core" "^1.0.0" "@latus/core" "^1.0.0"
"@latus/http" "^1.0.0" "@latus/http" "^1.0.0"
buffer "^6.0.3" buffer "^6.0.3"
debug "4.3.1" debug "4.3.1"
schemapack "^1.4.2"
socket.io "2.3.0" socket.io "2.3.0"
socket.io-client "2.3.0" socket.io-client "2.3.0"
"@latus/user@^1.0.0": "@latus/user@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fuser/-/user-1.0.0.tgz#24048fbd3ad09178893acdde4a875a4083bde704" resolved "https://npm.i12e.cha0s.io/@latus%2fuser/-/user-1.0.0.tgz#e9e42052f91dfbfa2d3b58b12f104a811a5bfb1a"
integrity sha512-uE4z8Sp0I65orXGHJ7FBMnxmAY96K390b2YCAaAg8mCFX869afRM1g0TTxrGLWenGLfMPw6YTXB1ix8ccu/QXw== integrity sha512-3YWRIpi5CTUQZpzzM9NhaoA5tsgvQ3MJpFgfUw0r3IdesXJF2RRG8Bw3pthApA681Pyr8X7RY6kxq6lto2EV1A==
dependencies: dependencies:
"@latus/db" "^1.0.0" "@latus/db" "^1.0.0"
"@latus/socket" "^1.0.0"
bcrypt "^5.0.0" bcrypt "^5.0.0"
debug "4.3.1" debug "4.3.1"
express "^4.17.1" express "^4.17.1"
@ -1937,7 +1949,7 @@ browserify-zlib@^0.2.0:
dependencies: dependencies:
pako "~1.0.5" pako "~1.0.5"
browserslist@^4.14.5, browserslist@^4.14.7: browserslist@^4.14.5, browserslist@^4.15.0:
version "4.15.0" version "4.15.0"
resolved "https://npm.i12e.cha0s.io/browserslist/-/browserslist-4.15.0.tgz#3d48bbca6a3f378e86102ffd017d9a03f122bdb0" resolved "https://npm.i12e.cha0s.io/browserslist/-/browserslist-4.15.0.tgz#3d48bbca6a3f378e86102ffd017d9a03f122bdb0"
integrity sha512-IJ1iysdMkGmjjYeRlDU8PQejVwxvVO5QOfXH7ylW31GO6LwNRSmm/SgRXtNsEXqMLl2e+2H5eEJ7sfynF8TCaQ== integrity sha512-IJ1iysdMkGmjjYeRlDU8PQejVwxvVO5QOfXH7ylW31GO6LwNRSmm/SgRXtNsEXqMLl2e+2H5eEJ7sfynF8TCaQ==
@ -2392,11 +2404,11 @@ copy-descriptor@^0.1.0:
integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
core-js-compat@^3.7.0: core-js-compat@^3.7.0:
version "3.8.0" version "3.8.1"
resolved "https://npm.i12e.cha0s.io/core-js-compat/-/core-js-compat-3.8.0.tgz#3248c6826f4006793bd637db608bca6e4cd688b1" resolved "https://npm.i12e.cha0s.io/core-js-compat/-/core-js-compat-3.8.1.tgz#8d1ddd341d660ba6194cbe0ce60f4c794c87a36e"
integrity sha512-o9QKelQSxQMYWHXc/Gc4L8bx/4F7TTraE5rhuN8I7mKBt5dBIUpXpIR3omv70ebr8ST5R3PqbDQr+ZI3+Tt1FQ== integrity sha512-a16TLmy9NVD1rkjUGbwuyWkiDoN0FDpAwrfLONvHFQx0D9k7J9y0srwMT8QP/Z6HE3MIFaVynEeYwZwPX1o5RQ==
dependencies: dependencies:
browserslist "^4.14.7" browserslist "^4.15.0"
semver "7.0.0" semver "7.0.0"
core-js@^2.4.0: core-js@^2.4.0:
@ -5815,6 +5827,11 @@ range-parser@^1.2.1, range-parser@~1.2.1:
resolved "https://npm.i12e.cha0s.io/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" resolved "https://npm.i12e.cha0s.io/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
rate-limiter-flexible@^2.1.13:
version "2.1.13"
resolved "https://npm.i12e.cha0s.io/rate-limiter-flexible/-/rate-limiter-flexible-2.1.13.tgz#2fcbb786921518beb8aba44b44fe04a7c141db2b"
integrity sha512-EDzvV/ee/rCBKNL5Jw0Rr0rjneT/L4zLGgVS9xB6ShfVMkV5iviWKr+2tjzgBg5kd9by5F08C9DfXfH6v/kz3w==
raw-body@2.4.0: raw-body@2.4.0:
version "2.4.0" version "2.4.0"
resolved "https://npm.i12e.cha0s.io/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" resolved "https://npm.i12e.cha0s.io/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332"
@ -5868,7 +5885,7 @@ react-lifecycles-compat@^3.0.4:
resolved "https://npm.i12e.cha0s.io/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" resolved "https://npm.i12e.cha0s.io/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
react@17.0.1, react@^17.0.1: react@^17.0.1:
version "17.0.1" version "17.0.1"
resolved "https://npm.i12e.cha0s.io/react/-/react-17.0.1.tgz#6e0600416bd57574e3f86d92edba3d9008726127" resolved "https://npm.i12e.cha0s.io/react/-/react-17.0.1.tgz#6e0600416bd57574e3f86d92edba3d9008726127"
integrity sha512-lG9c9UuMHdcAexXtigOZLX8exLWkW0Ku29qPRU8uhF2R9BN96dLCt0psvzPLlHc5OWkgymP3qwTRgbnw5BKx3w== integrity sha512-lG9c9UuMHdcAexXtigOZLX8exLWkW0Ku29qPRU8uhF2R9BN96dLCt0psvzPLlHc5OWkgymP3qwTRgbnw5BKx3w==
@ -6249,6 +6266,11 @@ schema-utils@^3.0.0:
ajv "^6.12.5" ajv "^6.12.5"
ajv-keywords "^3.5.2" ajv-keywords "^3.5.2"
schemapack@^1.4.2:
version "1.4.2"
resolved "https://npm.i12e.cha0s.io/schemapack/-/schemapack-1.4.2.tgz#8b582a55e128e345854ce3fb380371c58264f349"
integrity sha1-i1gqVeEo40WFTOP7OANxxYJk80k=
"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1:
version "5.7.1" version "5.7.1"
resolved "https://npm.i12e.cha0s.io/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" resolved "https://npm.i12e.cha0s.io/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"

240
yarn.lock
View File

@ -826,10 +826,10 @@
lodash "^4.17.19" lodash "^4.17.19"
to-fast-properties "^2.0.0" to-fast-properties "^2.0.0"
"@eslint/eslintrc@^0.2.1": "@eslint/eslintrc@^0.2.2":
version "0.2.1" version "0.2.2"
resolved "https://npm.i12e.cha0s.io/@eslint%2feslintrc/-/eslintrc-0.2.1.tgz#f72069c330461a06684d119384435e12a5d76e3c" resolved "https://npm.i12e.cha0s.io/@eslint%2feslintrc/-/eslintrc-0.2.2.tgz#d01fc791e2fc33e88a29d6f3dc7e93d0cd784b76"
integrity sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA== integrity sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==
dependencies: dependencies:
ajv "^6.12.4" ajv "^6.12.4"
debug "^4.1.1" debug "^4.1.1"
@ -1680,21 +1680,26 @@
integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==
"@octokit/auth-token@^2.4.0": "@octokit/auth-token@^2.4.0":
version "2.4.3" version "2.4.4"
resolved "https://npm.i12e.cha0s.io/@octokit%2fauth-token/-/auth-token-2.4.3.tgz#b868b5f2366533a7e62933eaa1181a8924228cc4" resolved "https://npm.i12e.cha0s.io/@octokit%2fauth-token/-/auth-token-2.4.4.tgz#ee31c69b01d0378c12fd3ffe406030f3d94d3b56"
integrity sha512-fdGoOQ3kQJh+hrilc0Plg50xSfaCKOeYN9t6dpJKXN9BxhhfquL0OzoQXg3spLYymL5rm29uPeI3KEXRaZQ9zg== integrity sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q==
dependencies: dependencies:
"@octokit/types" "^5.0.0" "@octokit/types" "^6.0.0"
"@octokit/endpoint@^6.0.1": "@octokit/endpoint@^6.0.1":
version "6.0.9" version "6.0.10"
resolved "https://npm.i12e.cha0s.io/@octokit%2fendpoint/-/endpoint-6.0.9.tgz#c6a772e024202b1bd19ab69f90e0536a2598b13e" resolved "https://npm.i12e.cha0s.io/@octokit%2fendpoint/-/endpoint-6.0.10.tgz#741ce1fa2f4fb77ce8ebe0c6eaf5ce63f565f8e8"
integrity sha512-3VPLbcCuqji4IFTclNUtGdp9v7g+nspWdiCUbK3+iPMjJCZ6LEhn1ts626bWLOn0GiDb6j+uqGvPpqLnY7pBgw== integrity sha512-9+Xef8nT7OKZglfkOMm7IL6VwxXUQyR7DUSU0LH/F7VNqs8vyd7es5pTfz9E7DwUIx7R3pGscxu1EBhYljyu7Q==
dependencies: dependencies:
"@octokit/types" "^5.0.0" "@octokit/types" "^6.0.0"
is-plain-object "^5.0.0" is-plain-object "^5.0.0"
universal-user-agent "^6.0.0" universal-user-agent "^6.0.0"
"@octokit/openapi-types@^2.0.0":
version "2.0.0"
resolved "https://npm.i12e.cha0s.io/@octokit%2fopenapi-types/-/openapi-types-2.0.0.tgz#6d8f8ad9db3b75a39115f5def2654df8bed39f28"
integrity sha512-J4bfM7lf8oZvEAdpS71oTvC1ofKxfEZgU5vKVwzZKi4QPiL82udjpseJwxPid9Pu2FNmyRQOX4iEj6W1iOSnPw==
"@octokit/plugin-enterprise-rest@^6.0.1": "@octokit/plugin-enterprise-rest@^6.0.1":
version "6.0.1" version "6.0.1"
resolved "https://npm.i12e.cha0s.io/@octokit%2fplugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" resolved "https://npm.i12e.cha0s.io/@octokit%2fplugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437"
@ -1730,22 +1735,22 @@
once "^1.4.0" once "^1.4.0"
"@octokit/request-error@^2.0.0": "@octokit/request-error@^2.0.0":
version "2.0.3" version "2.0.4"
resolved "https://npm.i12e.cha0s.io/@octokit%2frequest-error/-/request-error-2.0.3.tgz#b51b200052bf483f6fa56c9e7e3aa51ead36ecd8" resolved "https://npm.i12e.cha0s.io/@octokit%2frequest-error/-/request-error-2.0.4.tgz#07dd5c0521d2ee975201274c472a127917741262"
integrity sha512-GgD5z8Btm301i2zfvJLk/mkhvGCdjQ7wT8xF9ov5noQY8WbKZDH9cOBqXzoeKd1mLr1xH2FwbtGso135zGBgTA== integrity sha512-LjkSiTbsxIErBiRh5wSZvpZqT4t0/c9+4dOe0PII+6jXR+oj/h66s7E4a/MghV7iT8W9ffoQ5Skoxzs96+gBPA==
dependencies: dependencies:
"@octokit/types" "^5.0.1" "@octokit/types" "^6.0.0"
deprecation "^2.0.0" deprecation "^2.0.0"
once "^1.4.0" once "^1.4.0"
"@octokit/request@^5.2.0": "@octokit/request@^5.2.0":
version "5.4.10" version "5.4.12"
resolved "https://npm.i12e.cha0s.io/@octokit%2frequest/-/request-5.4.10.tgz#402d2c53768bde12b99348329ba4129746aebb9c" resolved "https://npm.i12e.cha0s.io/@octokit%2frequest/-/request-5.4.12.tgz#b04826fa934670c56b135a81447be2c1723a2ffc"
integrity sha512-egA49HkqEORVGDZGav1mh+VD+7uLgOxtn5oODj6guJk0HCy+YBSYapFkSLFgeYj3Fr18ZULKGURkjyhkAChylw== integrity sha512-MvWYdxengUWTGFpfpefBBpVmmEYfkwMoxonIB3sUGp5rhdgwjXL1ejo6JbgzG/QD9B/NYt/9cJX1pxXeSIUCkg==
dependencies: dependencies:
"@octokit/endpoint" "^6.0.1" "@octokit/endpoint" "^6.0.1"
"@octokit/request-error" "^2.0.0" "@octokit/request-error" "^2.0.0"
"@octokit/types" "^5.0.0" "@octokit/types" "^6.0.3"
deprecation "^2.0.0" deprecation "^2.0.0"
is-plain-object "^5.0.0" is-plain-object "^5.0.0"
node-fetch "^2.6.1" node-fetch "^2.6.1"
@ -1781,11 +1786,12 @@
dependencies: dependencies:
"@types/node" ">= 8" "@types/node" ">= 8"
"@octokit/types@^5.0.0", "@octokit/types@^5.0.1": "@octokit/types@^6.0.0", "@octokit/types@^6.0.3":
version "5.5.0" version "6.1.1"
resolved "https://npm.i12e.cha0s.io/@octokit%2ftypes/-/types-5.5.0.tgz#e5f06e8db21246ca102aa28444cdb13ae17a139b" resolved "https://npm.i12e.cha0s.io/@octokit%2ftypes/-/types-6.1.1.tgz#bc88b3eb5f447b025a2a1a8177a72db216e8d4ca"
integrity sha512-UZ1pErDue6bZNjYOotCNveTXArOMZQFG6hKJfOnGnulVCMcVVi7YIIuuR4WfBhjo7zgpmzn/BkPDnUXtNx+PcQ== integrity sha512-btm3D6S7VkRrgyYF31etUtVY/eQ1KzrNRqhFt25KSe2mKlXuLXJilglRC6eDA2P6ou94BUnk/Kz5MPEolXgoiw==
dependencies: dependencies:
"@octokit/openapi-types" "^2.0.0"
"@types/node" ">= 8" "@types/node" ">= 8"
"@types/anymatch@*": "@types/anymatch@*":
@ -1849,9 +1855,9 @@
source-map "^0.6.1" source-map "^0.6.1"
"@types/webpack-sources@*": "@types/webpack-sources@*":
version "2.0.0" version "2.1.0"
resolved "https://npm.i12e.cha0s.io/@types%2fwebpack-sources/-/webpack-sources-2.0.0.tgz#08216ab9be2be2e1499beaebc4d469cec81e82a7" resolved "https://npm.i12e.cha0s.io/@types%2fwebpack-sources/-/webpack-sources-2.1.0.tgz#8882b0bd62d1e0ce62f183d0d01b72e6e82e8c10"
integrity sha512-a5kPx98CNFRKQ+wqawroFunvFqv7GHm/3KOI52NY9xWADgc8smu4R6prt4EU/M4QfVjvgBkMqU4fBhw3QfMVkg== integrity sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg==
dependencies: dependencies:
"@types/node" "*" "@types/node" "*"
"@types/source-list-map" "*" "@types/source-list-map" "*"
@ -2051,7 +2057,7 @@ abbrev@1:
resolved "https://npm.i12e.cha0s.io/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" resolved "https://npm.i12e.cha0s.io/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
acorn-jsx@^5.2.0: acorn-jsx@^5.3.1:
version "5.3.1" version "5.3.1"
resolved "https://npm.i12e.cha0s.io/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" resolved "https://npm.i12e.cha0s.io/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b"
integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==
@ -2565,16 +2571,16 @@ browserify-zlib@^0.2.0:
dependencies: dependencies:
pako "~1.0.5" pako "~1.0.5"
browserslist@^4.14.5, browserslist@^4.14.7: browserslist@^4.14.5, browserslist@^4.15.0:
version "4.14.7" version "4.15.0"
resolved "https://npm.i12e.cha0s.io/browserslist/-/browserslist-4.14.7.tgz#c071c1b3622c1c2e790799a37bb09473a4351cb6" resolved "https://npm.i12e.cha0s.io/browserslist/-/browserslist-4.15.0.tgz#3d48bbca6a3f378e86102ffd017d9a03f122bdb0"
integrity sha512-BSVRLCeG3Xt/j/1cCGj1019Wbty0H+Yvu2AOuZSuoaUWn3RatbL33Cxk+Q4jRMRAbOm0p7SLravLjpnT6s0vzQ== integrity sha512-IJ1iysdMkGmjjYeRlDU8PQejVwxvVO5QOfXH7ylW31GO6LwNRSmm/SgRXtNsEXqMLl2e+2H5eEJ7sfynF8TCaQ==
dependencies: dependencies:
caniuse-lite "^1.0.30001157" caniuse-lite "^1.0.30001164"
colorette "^1.2.1" colorette "^1.2.1"
electron-to-chromium "^1.3.591" electron-to-chromium "^1.3.612"
escalade "^3.1.1" escalade "^3.1.1"
node-releases "^1.1.66" node-releases "^1.1.67"
btoa-lite@^1.0.0: btoa-lite@^1.0.0:
version "1.0.0" version "1.0.0"
@ -2739,10 +2745,10 @@ camelcase@^6.0.0:
resolved "https://npm.i12e.cha0s.io/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" resolved "https://npm.i12e.cha0s.io/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809"
integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==
caniuse-lite@^1.0.30001157: caniuse-lite@^1.0.30001164:
version "1.0.30001161" version "1.0.30001165"
resolved "https://npm.i12e.cha0s.io/caniuse-lite/-/caniuse-lite-1.0.30001161.tgz#64f7ffe79ee780b8c92843ff34feb36cea4651e0" resolved "https://npm.i12e.cha0s.io/caniuse-lite/-/caniuse-lite-1.0.30001165.tgz#32955490d2f60290bb186bb754f2981917fa744f"
integrity sha512-JharrCDxOqPLBULF9/SPa6yMcBRTjZARJ6sc3cuKrPfyIk64JN6kuMINWqA99Xc8uElMFcROliwtz0n9pYej+g== integrity sha512-8cEsSMwXfx7lWSUMA2s08z9dIgsnR5NAqjXP23stdsU3AUWkCr/rr4s4OFtHXn5XXr6+7kam3QFVoYyXNPdJPA==
caseless@~0.12.0: caseless@~0.12.0:
version "0.12.0" version "0.12.0"
@ -3146,11 +3152,11 @@ copy-descriptor@^0.1.0:
integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
core-js-compat@^3.7.0: core-js-compat@^3.7.0:
version "3.8.0" version "3.8.1"
resolved "https://npm.i12e.cha0s.io/core-js-compat/-/core-js-compat-3.8.0.tgz#3248c6826f4006793bd637db608bca6e4cd688b1" resolved "https://npm.i12e.cha0s.io/core-js-compat/-/core-js-compat-3.8.1.tgz#8d1ddd341d660ba6194cbe0ce60f4c794c87a36e"
integrity sha512-o9QKelQSxQMYWHXc/Gc4L8bx/4F7TTraE5rhuN8I7mKBt5dBIUpXpIR3omv70ebr8ST5R3PqbDQr+ZI3+Tt1FQ== integrity sha512-a16TLmy9NVD1rkjUGbwuyWkiDoN0FDpAwrfLONvHFQx0D9k7J9y0srwMT8QP/Z6HE3MIFaVynEeYwZwPX1o5RQ==
dependencies: dependencies:
browserslist "^4.14.7" browserslist "^4.15.0"
semver "7.0.0" semver "7.0.0"
core-util-is@1.0.2, core-util-is@~1.0.0: core-util-is@1.0.2, core-util-is@~1.0.0:
@ -3525,10 +3531,10 @@ ecc-jsbn@~0.1.1:
jsbn "~0.1.0" jsbn "~0.1.0"
safer-buffer "^2.1.0" safer-buffer "^2.1.0"
electron-to-chromium@^1.3.591: electron-to-chromium@^1.3.612:
version "1.3.608" version "1.3.616"
resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.608.tgz#e1f962beeaa008698fb89b7e5387535251610eb4" resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.616.tgz#de63d1c79bb8eb61168774df0c11c9e1af69f9e8"
integrity sha512-dZsqCe7WgOcFse1QxIrm3eR+ebF13f0HfzM5QW9WtP1XVsQVrl/6R3DjexfVdupfwaS6znEDcP0NTBlJii7sOA== integrity sha512-CI8L38UN2BEnqXw3/oRIQTmde0LiSeqWSRlPA42ZTYgJQ8fYenzAM2Z3ni+jtILTcrs5aiXZCGJ96Pm+3/yGyQ==
elliptic@^6.5.3: elliptic@^6.5.3:
version "6.5.3" version "6.5.3"
@ -3621,23 +3627,6 @@ error-ex@^1.2.0, error-ex@^1.3.1:
dependencies: dependencies:
is-arrayish "^0.2.1" is-arrayish "^0.2.1"
es-abstract@^1.17.0-next.1:
version "1.17.7"
resolved "https://npm.i12e.cha0s.io/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.1: es-abstract@^1.18.0-next.1:
version "1.18.0-next.1" version "1.18.0-next.1"
resolved "https://npm.i12e.cha0s.io/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68" resolved "https://npm.i12e.cha0s.io/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
@ -3809,12 +3798,12 @@ eslint-visitor-keys@^2.0.0:
integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==
eslint@^7: eslint@^7:
version "7.14.0" version "7.15.0"
resolved "https://npm.i12e.cha0s.io/eslint/-/eslint-7.14.0.tgz#2d2cac1d28174c510a97b377f122a5507958e344" resolved "https://npm.i12e.cha0s.io/eslint/-/eslint-7.15.0.tgz#eb155fb8ed0865fcf5d903f76be2e5b6cd7e0bc7"
integrity sha512-5YubdnPXrlrYAFCKybPuHIAH++PINe1pmKNc5wQRB9HSbqIK1ywAnntE3Wwua4giKu0bjligf1gLF6qxMGOYRA== integrity sha512-Vr64xFDT8w30wFll643e7cGrIkPEU50yIiI36OdSIDoSGguIeaLzBo0vpGvzo9RECUqq7htURfwEtKqwytkqzA==
dependencies: dependencies:
"@babel/code-frame" "^7.0.0" "@babel/code-frame" "^7.0.0"
"@eslint/eslintrc" "^0.2.1" "@eslint/eslintrc" "^0.2.2"
ajv "^6.10.0" ajv "^6.10.0"
chalk "^4.0.0" chalk "^4.0.0"
cross-spawn "^7.0.2" cross-spawn "^7.0.2"
@ -3824,10 +3813,10 @@ eslint@^7:
eslint-scope "^5.1.1" eslint-scope "^5.1.1"
eslint-utils "^2.1.0" eslint-utils "^2.1.0"
eslint-visitor-keys "^2.0.0" eslint-visitor-keys "^2.0.0"
espree "^7.3.0" espree "^7.3.1"
esquery "^1.2.0" esquery "^1.2.0"
esutils "^2.0.2" esutils "^2.0.2"
file-entry-cache "^5.0.1" file-entry-cache "^6.0.0"
functional-red-black-tree "^1.0.1" functional-red-black-tree "^1.0.1"
glob-parent "^5.0.0" glob-parent "^5.0.0"
globals "^12.1.0" globals "^12.1.0"
@ -3851,13 +3840,13 @@ eslint@^7:
text-table "^0.2.0" text-table "^0.2.0"
v8-compile-cache "^2.0.3" v8-compile-cache "^2.0.3"
espree@^7.3.0: espree@^7.3.0, espree@^7.3.1:
version "7.3.0" version "7.3.1"
resolved "https://npm.i12e.cha0s.io/espree/-/espree-7.3.0.tgz#dc30437cf67947cf576121ebd780f15eeac72348" resolved "https://npm.i12e.cha0s.io/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6"
integrity sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw== integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==
dependencies: dependencies:
acorn "^7.4.0" acorn "^7.4.0"
acorn-jsx "^5.2.0" acorn-jsx "^5.3.1"
eslint-visitor-keys "^1.3.0" eslint-visitor-keys "^1.3.0"
esprima@^4.0.0: esprima@^4.0.0:
@ -4037,12 +4026,12 @@ figures@^2.0.0:
dependencies: dependencies:
escape-string-regexp "^1.0.5" escape-string-regexp "^1.0.5"
file-entry-cache@^5.0.1: file-entry-cache@^6.0.0:
version "5.0.1" version "6.0.0"
resolved "https://npm.i12e.cha0s.io/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" resolved "https://npm.i12e.cha0s.io/file-entry-cache/-/file-entry-cache-6.0.0.tgz#7921a89c391c6d93efec2169ac6bf300c527ea0a"
integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== integrity sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==
dependencies: dependencies:
flat-cache "^2.0.1" flat-cache "^3.0.4"
file-uri-to-path@1.0.0: file-uri-to-path@1.0.0:
version "1.0.0" version "1.0.0"
@ -4137,24 +4126,23 @@ findup-sync@^3.0.0:
micromatch "^3.0.4" micromatch "^3.0.4"
resolve-dir "^1.0.1" resolve-dir "^1.0.1"
flat-cache@^2.0.1: flat-cache@^3.0.4:
version "2.0.1" version "3.0.4"
resolved "https://npm.i12e.cha0s.io/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" resolved "https://npm.i12e.cha0s.io/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
dependencies: dependencies:
flatted "^2.0.0" flatted "^3.1.0"
rimraf "2.6.3" rimraf "^3.0.2"
write "1.0.3"
flat@^5.0.2: flat@^5.0.2:
version "5.0.2" version "5.0.2"
resolved "https://npm.i12e.cha0s.io/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" resolved "https://npm.i12e.cha0s.io/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
flatted@^2.0.0: flatted@^3.1.0:
version "2.0.2" version "3.1.0"
resolved "https://npm.i12e.cha0s.io/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" resolved "https://npm.i12e.cha0s.io/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067"
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== integrity sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==
flush-write-stream@^1.0.0: flush-write-stream@^1.0.0:
version "1.1.1" version "1.1.1"
@ -4985,9 +4973,9 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1:
is-extglob "^2.1.1" is-extglob "^2.1.1"
is-negative-zero@^2.0.0: is-negative-zero@^2.0.0:
version "2.0.0" version "2.0.1"
resolved "https://npm.i12e.cha0s.io/is-negative-zero/-/is-negative-zero-2.0.0.tgz#9553b121b0fac28869da9ed459e20c7543788461" resolved "https://npm.i12e.cha0s.io/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24"
integrity sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE= integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==
is-number@^3.0.0: is-number@^3.0.0:
version "3.0.0" version "3.0.0"
@ -5985,7 +5973,7 @@ node-modules-regexp@^1.0.0:
resolved "https://npm.i12e.cha0s.io/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" resolved "https://npm.i12e.cha0s.io/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
node-releases@^1.1.66: node-releases@^1.1.67:
version "1.1.67" version "1.1.67"
resolved "https://npm.i12e.cha0s.io/node-releases/-/node-releases-1.1.67.tgz#28ebfcccd0baa6aad8e8d4d8fe4cbc49ae239c12" resolved "https://npm.i12e.cha0s.io/node-releases/-/node-releases-1.1.67.tgz#28ebfcccd0baa6aad8e8d4d8fe4cbc49ae239c12"
integrity sha512-V5QF9noGFl3EymEwUYzO+3NTDpGfQB4ve6Qfnzf3UNydMhjQRVPR1DZTuvWiLzaFJYw2fmDwAfnRNEVb64hSIg== integrity sha512-V5QF9noGFl3EymEwUYzO+3NTDpGfQB4ve6Qfnzf3UNydMhjQRVPR1DZTuvWiLzaFJYw2fmDwAfnRNEVb64hSIg==
@ -6136,9 +6124,9 @@ object-hash@^2.0.3:
integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg== integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==
object-inspect@^1.8.0: object-inspect@^1.8.0:
version "1.8.0" version "1.9.0"
resolved "https://npm.i12e.cha0s.io/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" resolved "https://npm.i12e.cha0s.io/object-inspect/-/object-inspect-1.9.0.tgz#c90521d74e1127b67266ded3394ad6116986533a"
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==
object-keys@^1.0.12, object-keys@^1.1.1: object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1" version "1.1.1"
@ -6173,12 +6161,13 @@ object.entries@^1.1.2:
has "^1.0.3" has "^1.0.3"
object.getownpropertydescriptors@^2.0.3: object.getownpropertydescriptors@^2.0.3:
version "2.1.0" version "2.1.1"
resolved "https://npm.i12e.cha0s.io/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" resolved "https://npm.i12e.cha0s.io/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz#0dfda8d108074d9c563e80490c883b6661091544"
integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== integrity sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng==
dependencies: dependencies:
call-bind "^1.0.0"
define-properties "^1.1.3" define-properties "^1.1.3"
es-abstract "^1.17.0-next.1" es-abstract "^1.18.0-next.1"
object.omit@^3.0.0: object.omit@^3.0.0:
version "3.0.0" version "3.0.0"
@ -7131,13 +7120,6 @@ retry@^0.10.0:
resolved "https://npm.i12e.cha0s.io/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" resolved "https://npm.i12e.cha0s.io/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4"
integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=
rimraf@2.6.3:
version "2.6.3"
resolved "https://npm.i12e.cha0s.io/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
dependencies:
glob "^7.1.3"
rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3:
version "2.7.1" version "2.7.1"
resolved "https://npm.i12e.cha0s.io/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" resolved "https://npm.i12e.cha0s.io/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
@ -7145,6 +7127,13 @@ rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3:
dependencies: dependencies:
glob "^7.1.3" glob "^7.1.3"
rimraf@^3.0.2:
version "3.0.2"
resolved "https://npm.i12e.cha0s.io/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
dependencies:
glob "^7.1.3"
ripemd160@^2.0.0, ripemd160@^2.0.1: ripemd160@^2.0.0, ripemd160@^2.0.1:
version "2.0.2" version "2.0.2"
resolved "https://npm.i12e.cha0s.io/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" resolved "https://npm.i12e.cha0s.io/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
@ -7228,9 +7217,11 @@ semver@^6.0.0, semver@^6.2.0:
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
semver@^7.2.1, semver@^7.3.2: semver@^7.2.1, semver@^7.3.2:
version "7.3.2" version "7.3.4"
resolved "https://npm.i12e.cha0s.io/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" resolved "https://npm.i12e.cha0s.io/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97"
integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==
dependencies:
lru-cache "^6.0.0"
serialize-javascript@5.0.1: serialize-javascript@5.0.1:
version "5.0.1" version "5.0.1"
@ -7453,9 +7444,9 @@ spdx-expression-parse@^3.0.0:
spdx-license-ids "^3.0.0" spdx-license-ids "^3.0.0"
spdx-license-ids@^3.0.0: spdx-license-ids@^3.0.0:
version "3.0.6" version "3.0.7"
resolved "https://npm.i12e.cha0s.io/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz#c80757383c28abf7296744998cbc106ae8b854ce" resolved "https://npm.i12e.cha0s.io/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65"
integrity sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw== integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==
split-string@^3.0.1, split-string@^3.0.2: split-string@^3.0.1, split-string@^3.0.2:
version "3.1.0" version "3.1.0"
@ -7987,9 +7978,9 @@ typedarray@^0.0.6:
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
uglify-js@^3.1.4: uglify-js@^3.1.4:
version "3.12.0" version "3.12.1"
resolved "https://npm.i12e.cha0s.io/uglify-js/-/uglify-js-3.12.0.tgz#b943f129275c41d435eb54b643bbffee71dccf57" resolved "https://npm.i12e.cha0s.io/uglify-js/-/uglify-js-3.12.1.tgz#78307f539f7b9ca5557babb186ea78ad30cc0375"
integrity sha512-8lBMSkFZuAK7gGF8LswsXmir8eX8d2AAMOnxSDWjKBx/fBR6MypQjs78m6ML9zQVp1/hD4TBdfeMZMC7nW1TAA== integrity sha512-o8lHP20KjIiQe5b/67Rh68xEGRrc2SRsCuuoYclXXoC74AfSRGblU1HKzJWH3HxPZ+Ort85fWHpSX7KwBUC9CQ==
uid-number@0.0.6: uid-number@0.0.6:
version "0.0.6" version "0.0.6"
@ -8384,22 +8375,15 @@ write-pkg@^3.1.0:
sort-keys "^2.0.0" sort-keys "^2.0.0"
write-json-file "^2.2.0" write-json-file "^2.2.0"
write@1.0.3:
version "1.0.3"
resolved "https://npm.i12e.cha0s.io/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"
integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==
dependencies:
mkdirp "^0.5.1"
xtend@^4.0.0, xtend@~4.0.1: xtend@^4.0.0, xtend@~4.0.1:
version "4.0.2" version "4.0.2"
resolved "https://npm.i12e.cha0s.io/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" resolved "https://npm.i12e.cha0s.io/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
y18n@^4.0.0: y18n@^4.0.0:
version "4.0.0" version "4.0.1"
resolved "https://npm.i12e.cha0s.io/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" resolved "https://npm.i12e.cha0s.io/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4"
integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==
yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
version "3.1.1" version "3.1.1"