diff --git a/bin/server.js b/bin/server.js index 1ca2a2b..fda85c6 100644 --- a/bin/server.js +++ b/bin/server.js @@ -8,31 +8,26 @@ */ // npm libraries -const Koa = require('koa') -const bodyParser = require('koa-bodyparser') -const convert = require('koa-convert') -const logger = require('koa-logger') -const mongoose = require('mongoose') -const session = require('koa-generic-session') -const passport = require('koa-passport') -const mount = require('koa-mount') -const serve = require('koa-static') -const cors = require('kcors') +import Koa from 'koa' + +import bodyParser from 'koa-bodyparser' +import convert from 'koa-convert' +import logger from 'koa-logger' +import mongoose from 'mongoose' +import session from 'koa-generic-session' +import passport from 'koa-passport' +import mount from 'koa-mount' +import serve from 'koa-static' +import cors from 'kcors' // Local libraries -const config = require('../config') // this first. -const AdminLib = require('../src/adapters/admin') -// const adminLib = new AdminLib() +import config from '../config/index.js' // this first. -// const WebHookLib = require('../src/adapters/webhook') -// const webhookLib = new WebHookLib() - -// const JSONRPC = require('../src/rpc') -// const rpc = new JSONRPC() - -const errorMiddleware = require('../src/controllers/rest-api/middleware/error') -// const { wlogger } = require('../src/adapters/wlogger') -const Controllers = require('../src/controllers') +import AdminLib from '../src/adapters/admin.js' +import errorMiddleware from '../src/controllers/rest-api/middleware/error.js' +// import wlogger from '../src/adapters/wlogger.js' +import Controllers from '../src/controllers/index.js' +import { applyPassportMods } from '../config/passport.js' class Server { constructor () { @@ -81,7 +76,8 @@ class Server { app.use(mount('/logs', serve(`${process.cwd()}/config/logs`))) // User Authentication - require('../config/passport') + // require('../config/passport') + applyPassportMods(passport) app.use(passport.initialize()) app.use(passport.session()) @@ -161,4 +157,4 @@ class Server { } } -module.exports = Server +export default Server diff --git a/config/env/common.js b/config/env/common.js index 2063f4d..342f46f 100644 --- a/config/env/common.js +++ b/config/env/common.js @@ -5,15 +5,22 @@ /* eslint no-unneeded-ternary:0 */ +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' + // Get the version from the package.json file. -const pkgInfo = require('../../package.json') +import { readFileSync } from 'fs' +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) +const pkgInfo = JSON.parse(readFileSync(`${__dirname.toString()}/../../package.json`)) + const version = pkgInfo.version const ipfsCoordName = process.env.COORD_NAME ? process.env.COORD_NAME : 'ipfs-torlist-service-generic' -module.exports = { +export default { // Configure TCP port. port: process.env.PORT || 5700, diff --git a/config/env/development.js b/config/env/development.js index 9c03e11..c1b2aed 100644 --- a/config/env/development.js +++ b/config/env/development.js @@ -4,7 +4,7 @@ specified. */ -module.exports = { +export default { session: 'secret-boilerplate-token', token: 'secret-jwt-token', database: 'mongodb://localhost:27017/bch-swap-service-dev', diff --git a/config/env/production.js b/config/env/production.js index ddbe88e..6344ab9 100644 --- a/config/env/production.js +++ b/config/env/production.js @@ -7,7 +7,7 @@ so as not to conflict with the default host port of 27017 for MongoDB. */ -module.exports = { +export default { session: 'secret-boilerplate-token', token: 'secret-jwt-token', // database: 'mongodb://172.17.0.1:5555/ipfs-service-prod', diff --git a/config/env/test.js b/config/env/test.js index 0fe804b..dfe0e6c 100644 --- a/config/env/test.js +++ b/config/env/test.js @@ -4,7 +4,7 @@ This is the environment run by the test suite. */ -module.exports = { +export default { session: 'secret-boilerplate-token', token: 'secret-jwt-token', database: 'mongodb://localhost:27017/bch-swap-service-test', diff --git a/config/index.js b/config/index.js index 02a4ab7..8dd01e9 100644 --- a/config/index.js +++ b/config/index.js @@ -1,6 +1,21 @@ -const common = require('./env/common') +import common from './env/common.js' + +import development from './env/development.js' +import production from './env/production.js' +import test from './env/test.js' const env = process.env.BCH_DEX || 'development' -const config = require(`./env/${env}`) +console.log(`Loading config for this environment: ${env}`) -module.exports = Object.assign({}, common, config) +let config = development +if (env === 'test') { + config = test +} else if (env === 'prod') { + config = production +} + +// const importStr = `./env/${env}.js` +// console.log('importStr: ', importStr) +// import config from importStr + +export default Object.assign({}, common, config) diff --git a/config/passport.js b/config/passport.js index 1c07784..f28c540 100644 --- a/config/passport.js +++ b/config/passport.js @@ -1,30 +1,6 @@ -const passport = require('koa-passport') -const User = require('../src/adapters/localdb/models/users') -const Strategy = require('passport-local') - -passport.serializeUser((user, done) => { - done(null, user.id) -}) - -passport.deserializeUser(async (id, done) => { - try { - const user = await User.findById(id, '-password') - done(null, user) - } catch (err) { - done(err) - } -}) - -passport.use( - 'local', - new Strategy( - { - usernameField: 'email', - passwordField: 'password' - }, - passportCallback - ) -) +// import passport from 'koa-passport'; +import User from '../src/adapters/localdb/models/users.js' +import Strategy from 'passport-local' async function passportCallback (email, password, done) { try { @@ -49,5 +25,35 @@ async function passportCallback (email, password, done) { } } +function applyPassportMods (passport) { + passport.serializeUser((user, done) => { + done(null, user.id) + }) + + passport.deserializeUser(async (id, done) => { + try { + const user = await User.findById(id, '-password') + done(null, user) + } catch (err) { + done(err) + } + }) + + passport.use( + 'local', + new Strategy( + { + usernameField: 'email', + passwordField: 'password' + }, + passportCallback + ) + ) + + return true +} + // For testing -module.exports = { passport, passportCallback } +// export default { passport, passportCallback }; +// export default applyPassportMods +export { applyPassportMods, passportCallback } diff --git a/index.js b/index.js index 3788713..350d91e 100644 --- a/index.js +++ b/index.js @@ -1,4 +1,4 @@ -const Server = require('./bin/server.js') +import Server from './bin/server.js' const server = new Server() server.startServer() diff --git a/package-lock.json b/package-lock.json index 31db52d..aea59f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,15 +9,13 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@psf/bch-js": "6.4.5", "axios": "0.27.2", "bch-message-lib": "2.2.1", "bcryptjs": "2.4.3", "bitcoincashjs-lib": "3.3.3", "glob": "7.1.6", - "ipfs": "0.62.3", - "ipfs-coord": "8.0.5", - "ipfs-http-client": "55.0.0", + "ipfs-coord-esm": "9.1.3", + "ipfs-http-client": "58.0.0", "jsonrpc-lite": "2.2.0", "jsonwebtoken": "8.5.1", "jwt-bch-lib": "1.3.0", @@ -35,7 +33,7 @@ "libp2p": "^0.36.2", "line-reader": "0.4.0", "minimal-slp-wallet": "5.1.0", - "mongoose": "5.13.13", + "mongoose": "5.13.14", "node-fetch": "npm:@achingbrain/node-fetch@2.6.7", "nodemailer": "6.7.5", "p2wdb": "2.2.3", @@ -47,33 +45,17 @@ "devDependencies": { "apidoc": "0.51.1", "bch-token-sweep": "2.1.2", + "c8": "7.12.0", "chai": "4.3.0", "coveralls": "2.11.4", "husky": "4.3.8", "mocha": "10.0.0", - "nyc": "15.1.0", "semantic-release": "19.0.3", "sinon": "9.2.4", "standard": "17.0.0", "uuid": "8.3.2" } }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@assemblyscript/loader": { - "version": "0.9.4", - "license": "Apache-2.0" - }, "node_modules/@babel/code-frame": { "version": "7.18.6", "dev": true, @@ -85,184 +67,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.18.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-validator-identifier": { "version": "7.18.6", "dev": true, @@ -271,27 +75,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/highlight": { "version": "7.18.6", "dev": true, @@ -369,89 +152,11 @@ "node": ">=4" } }, - "node_modules/@babel/parser": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.18.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-function-name": "^7.18.6", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/types": { - "version": "7.18.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@chainsafe/libp2p-noise": { - "version": "5.0.3", - "license": "MIT", - "dependencies": { - "@stablelib/chacha20poly1305": "^1.0.1", - "@stablelib/hkdf": "^1.0.1", - "@stablelib/sha256": "^1.0.1", - "@stablelib/x25519": "^1.0.1", - "bl": "^5.0.0", - "debug": "^4.3.1", - "it-buffer": "^0.1.3", - "it-length-prefixed": "^5.0.3", - "it-pair": "^1.0.0", - "it-pb-rpc": "^0.2.0", - "it-pipe": "^1.1.0", - "peer-id": "^0.16.0", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - } + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true }, "node_modules/@chris.troutner/bip32-utils": { "version": "1.0.5", @@ -549,301 +254,10 @@ "license": "BSD-3-Clause", "peer": true }, - "node_modules/@grpc/grpc-js": { - "version": "1.6.7", - "license": "Apache-2.0", - "dependencies": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - }, - "engines": { - "node": "^8.13.0 || >=10.10.0" - } - }, - "node_modules/@grpc/grpc-js/node_modules/@types/node": { - "version": "18.0.0", - "license": "MIT" - }, - "node_modules/@grpc/proto-loader": { - "version": "0.6.13", - "license": "Apache-2.0", - "dependencies": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.11.3", - "yargs": "^16.2.0" - }, - "bin": { - "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@hapi/accept": { - "version": "5.0.2", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/ammo": { - "version": "5.0.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/b64": { - "version": "5.0.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/boom": { - "version": "9.1.4", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/bounce": { - "version": "2.0.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/bourne": { - "version": "2.1.0", - "license": "BSD-3-Clause" - }, - "node_modules/@hapi/call": { - "version": "8.0.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/catbox": { - "version": "11.1.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/podium": "4.x.x", - "@hapi/validate": "1.x.x" - } - }, - "node_modules/@hapi/catbox-memory": { - "version": "5.0.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/content": { - "version": "5.0.2", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x" - } - }, - "node_modules/@hapi/cryptiles": { - "version": "5.1.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@hapi/file": { - "version": "2.0.0", - "license": "BSD-3-Clause" - }, - "node_modules/@hapi/hapi": { - "version": "20.2.2", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/accept": "^5.0.1", - "@hapi/ammo": "^5.0.1", - "@hapi/boom": "^9.1.0", - "@hapi/bounce": "^2.0.0", - "@hapi/call": "^8.0.0", - "@hapi/catbox": "^11.1.1", - "@hapi/catbox-memory": "^5.0.0", - "@hapi/heavy": "^7.0.1", - "@hapi/hoek": "^9.0.4", - "@hapi/mimos": "^6.0.0", - "@hapi/podium": "^4.1.1", - "@hapi/shot": "^5.0.5", - "@hapi/somever": "^3.0.0", - "@hapi/statehood": "^7.0.4", - "@hapi/subtext": "^7.0.3", - "@hapi/teamwork": "^5.1.1", - "@hapi/topo": "^5.0.0", - "@hapi/validate": "^1.1.1" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@hapi/heavy": { - "version": "7.0.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/validate": "1.x.x" - } - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "license": "BSD-3-Clause" - }, - "node_modules/@hapi/iron": { - "version": "6.0.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/b64": "5.x.x", - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/cryptiles": "5.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/mimos": { - "version": "6.0.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x", - "mime-db": "1.x.x" - } - }, - "node_modules/@hapi/nigel": { - "version": "4.0.2", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.4", - "@hapi/vise": "^4.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@hapi/pez": { - "version": "5.0.3", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/b64": "5.x.x", - "@hapi/boom": "9.x.x", - "@hapi/content": "^5.0.2", - "@hapi/hoek": "9.x.x", - "@hapi/nigel": "4.x.x" - } - }, - "node_modules/@hapi/podium": { - "version": "4.1.3", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x", - "@hapi/teamwork": "5.x.x", - "@hapi/validate": "1.x.x" - } - }, - "node_modules/@hapi/shot": { - "version": "5.0.5", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x", - "@hapi/validate": "1.x.x" - } - }, - "node_modules/@hapi/somever": { - "version": "3.0.1", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/bounce": "2.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/statehood": { - "version": "7.0.4", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/bounce": "2.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/cryptiles": "5.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/iron": "6.x.x", - "@hapi/validate": "1.x.x" - } - }, - "node_modules/@hapi/subtext": { - "version": "7.0.4", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/content": "^5.0.2", - "@hapi/file": "2.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/pez": "^5.0.1", - "@hapi/wreck": "17.x.x" - } - }, - "node_modules/@hapi/teamwork": { - "version": "5.1.1", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@hapi/validate": { - "version": "1.1.3", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0" - } - }, - "node_modules/@hapi/vise": { - "version": "4.0.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/wreck": { - "version": "17.2.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/hoek": "9.x.x" - } - }, "node_modules/@humanwhocodes/config-array": { "version": "0.10.4", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", - "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", @@ -855,9 +269,8 @@ }, "node_modules/@humanwhocodes/gitignore-to-minimatch": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", - "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", "dev": true, + "license": "Apache-2.0", "funding": { "type": "github", "url": "https://github.com/sponsors/nzakas" @@ -865,9 +278,8 @@ }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=12.22" }, @@ -878,19 +290,8 @@ }, "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@ipld/car": { - "version": "4.1.3", - "license": "(Apache-2.0 AND MIT)", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "cborg": "^1.9.0", - "multiformats": "^9.5.4", - "varint": "^6.0.0" - } + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/@ipld/dag-cbor": { "version": "7.0.2", @@ -915,130 +316,6 @@ "multiformats": "^9.5.4" } }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/sprintf-js": { - "version": "1.0.3", - "dev": true, - "license": "BSD-3-Clause" - }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "dev": true, @@ -1047,18 +324,6 @@ "node": ">=8" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@jridgewell/resolve-uri": { "version": "3.0.8", "license": "MIT", @@ -1109,30 +374,412 @@ "version": "2.0.4", "license": "MIT" }, - "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.9", - "license": "BSD-3-Clause", + "node_modules/@libp2p/interface-connection": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@libp2p/interface-connection/-/interface-connection-3.0.2.tgz", + "integrity": "sha512-38R2GQ6BCOtwMi5uWU5MLr+xfEpRmVK9gqOp7jNx+6T7TVn8ji4725XLXNfpzprbOrzZkqf2iER84s8+yX4pMA==", "dependencies": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" + "@libp2p/interface-peer-id": "^1.0.0", + "@libp2p/interfaces": "^3.0.0", + "@multiformats/multiaddr": "^11.0.0", + "it-stream-types": "^1.0.4", + "uint8arraylist": "^2.1.1" }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" } }, - "node_modules/@multiformats/murmur3": { - "version": "1.1.3", - "license": "(Apache-2.0 AND MIT)", + "node_modules/@libp2p/interface-connection/node_modules/@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", "dependencies": { - "multiformats": "^9.5.4", - "murmurhash3js-revisited": "^3.0.0" + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-connection/node_modules/dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "dependencies": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-connection/node_modules/ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@libp2p/interface-connection/node_modules/is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "dependencies": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@libp2p/interface-connection/node_modules/native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "peerDependencies": { + "undici": "*" + } + }, + "node_modules/@libp2p/interface-keychain": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interface-keychain/-/interface-keychain-1.0.3.tgz", + "integrity": "sha512-JCqe43LNwfgkZgT9bzUlrvaLzJmgIbY1MtsTxdJD/D9I7YyknTSGR3YII9BG0kRzex568/yiqlKxkYboxfh+BQ==", + "dependencies": { + "multiformats": "^9.6.3" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-peer-id": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@libp2p/interface-peer-id/-/interface-peer-id-1.0.4.tgz", + "integrity": "sha512-VRnE0MqmS1kN43hyKCEdkhz0gciuDML7hpL3p8zDm0LnveNMLJsR+/VSUaugCi/muOzLaLk26WffKWbMYfnGfA==", + "dependencies": { + "multiformats": "^9.6.3" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-peer-info": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interface-peer-info/-/interface-peer-info-1.0.3.tgz", + "integrity": "sha512-QKybxfp/NmDGDMkgf/CTt4fU03ajZnldHr9TYg5wMkJrnVaaHbhDTYBg5YWt+iOH1mgR89/dpKv/Na0ZE5sPIA==", + "dependencies": { + "@libp2p/interface-peer-id": "^1.0.0", + "@multiformats/multiaddr": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-peer-info/node_modules/@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "dependencies": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-peer-info/node_modules/dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "dependencies": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-peer-info/node_modules/ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@libp2p/interface-peer-info/node_modules/is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "dependencies": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@libp2p/interface-peer-info/node_modules/native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "peerDependencies": { + "undici": "*" + } + }, + "node_modules/@libp2p/interface-pubsub": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@libp2p/interface-pubsub/-/interface-pubsub-2.1.0.tgz", + "integrity": "sha512-X+SIqzfeCO8ZDGrFTzH9EMwMf8ojW5nk20rxv3h1sCXEdfvyJCARZ51r9UlwJcnucnHqvFChfkbubAkrr3R4Cw==", + "dependencies": { + "@libp2p/interface-connection": "^3.0.0", + "@libp2p/interface-peer-id": "^1.0.0", + "@libp2p/interfaces": "^3.0.0", + "it-pushable": "^3.0.0", + "uint8arraylist": "^2.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/interface-pubsub/node_modules/it-pushable": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/it-pushable/-/it-pushable-3.1.0.tgz", + "integrity": "sha512-sEAdT86u6aIWvLkH4hlOmgvHpRyUOUG22HD365H+Dh67zYpaPdILmT4Om7Wjdb+m/SjEB81z3nYCoIrgVYpOFA==" + }, + "node_modules/@libp2p/interfaces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.0.3.tgz", + "integrity": "sha512-8IIxw7TKpaYTtVfZN3jePLlm/E/VzqPpqerN+jhA+1s86akRSeyxVBYi3W9SWDSf0oIauHJSDE8KNxLceAfeag==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-Mtj7ImjRYbaANuT53QRqc7ooBYpWieLo7KbqYYGas5O2AWQeOu/zyGBMM35WbWIo7sMuhCas9XBPJdFOR7A05w==", + "dependencies": { + "@libp2p/interface-peer-id": "^1.0.2", + "debug": "^4.3.3", + "interface-datastore": "^7.0.0", + "multiformats": "^9.6.3" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/logger/node_modules/interface-datastore": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-7.0.0.tgz", + "integrity": "sha512-q9OveOhexQ3Fx8h4YbuR4mZtUHwvlOynKnIwTm6x8oBTWfIyAKtlYtrOYdlHfqQztbYpdzRFcapopNJBMx36NQ==", + "dependencies": { + "interface-store": "^3.0.0", + "nanoid": "^3.0.2", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/logger/node_modules/interface-store": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-3.0.0.tgz", + "integrity": "sha512-IBJn3hE6hYutwdDcStR76mcwfV98vZc49LkEN9ANHHpsxcm6YbGMJxowO2G3FITU4U5ZH4KJPlHOT6Oe2vzTWA==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@libp2p/peer-id": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-1.1.15.tgz", + "integrity": "sha512-Y33JLEfsLmLUjuC2nhQ2lBXP6PIsR892gSsNy4Vd7oILkuRhjPouIojP9BbME0m9bhVbAws+Zh9NBKtp7UH7wA==", + "dependencies": { + "@libp2p/interface-peer-id": "^1.0.0", + "err-code": "^3.0.1", + "multiformats": "^9.6.3", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-10.5.0.tgz", + "integrity": "sha512-u4qHMyv25iAqCb9twJROoN1M8UDm8bureOCIzwz03fVhwJzV6DpgH1eFz9UAzDn7CpSShQ9SLS5MiC4hJjTfig==", + "dependencies": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr-to-uri": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.2.tgz", + "integrity": "sha512-vrWmfFadmix5Ab9l//oRQdQ7O3J5bGJpJRMSm21bHlQB0XV4xtNU6vMZBVXeu3Su79LgflEp37cjTFE3yKf3Hw==", + "dependencies": { + "@multiformats/multiaddr": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr-to-uri/node_modules/@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "dependencies": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr-to-uri/node_modules/dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "dependencies": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr-to-uri/node_modules/ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@multiformats/multiaddr-to-uri/node_modules/is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "dependencies": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@multiformats/multiaddr-to-uri/node_modules/native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "peerDependencies": { + "undici": "*" + } + }, + "node_modules/@multiformats/multiaddr/node_modules/dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "dependencies": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@multiformats/multiaddr/node_modules/ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@multiformats/multiaddr/node_modules/is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "dependencies": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@multiformats/multiaddr/node_modules/native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "peerDependencies": { + "undici": "*" } }, "node_modules/@noble/ed25519": { @@ -1353,8 +1000,7 @@ }, "node_modules/@psf/bch-js": { "version": "6.4.5", - "resolved": "https://registry.npmjs.org/@psf/bch-js/-/bch-js-6.4.5.tgz", - "integrity": "sha512-sH72zbJJI5oe9EUMczFQb0jCaNQb8rc3/86E6xXKl3325HCwBqE80BX7JFvZ97Qv1gGxwp/3WROp59v6Dz2NKA==", + "license": "MIT", "dependencies": { "@chris.troutner/bip32-utils": "1.0.5", "@psf/bip21": "2.0.1", @@ -1607,21 +1253,6 @@ "semantic-release": ">=18.0.0-beta.1" } }, - "node_modules/@sideway/address": { - "version": "4.1.4", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.0", - "license": "BSD-3-Clause" - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "license": "BSD-3-Clause" - }, "node_modules/@sindresorhus/is": { "version": "0.14.0", "license": "MIT", @@ -1660,120 +1291,6 @@ "dev": true, "license": "(Unlicense OR Apache-2.0)" }, - "node_modules/@socket.io/component-emitter": { - "version": "3.1.0", - "license": "MIT" - }, - "node_modules/@stablelib/aead": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/binary": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/int": "^1.0.1" - } - }, - "node_modules/@stablelib/bytes": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/chacha": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/chacha20poly1305": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/aead": "^1.0.1", - "@stablelib/binary": "^1.0.1", - "@stablelib/chacha": "^1.0.1", - "@stablelib/constant-time": "^1.0.1", - "@stablelib/poly1305": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/constant-time": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/hash": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/hkdf": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/hash": "^1.0.1", - "@stablelib/hmac": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/hmac": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/int": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/keyagreement": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/bytes": "^1.0.1" - } - }, - "node_modules/@stablelib/poly1305": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/random": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/sha256": { - "version": "1.0.1", - "license": "MIT", - "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "node_modules/@stablelib/wipe": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/@stablelib/x25519": { - "version": "1.0.2", - "license": "MIT", - "dependencies": { - "@stablelib/keyagreement": "^1.0.1", - "@stablelib/random": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, "node_modules/@szmarczak/http-timer": { "version": "1.1.2", "license": "MIT", @@ -1784,10 +1301,6 @@ "node": ">=6" } }, - "node_modules/@tokenizer/token": { - "version": "0.3.0", - "license": "MIT" - }, "node_modules/@tootallnate/once": { "version": "2.0.0", "dev": true, @@ -1803,13 +1316,6 @@ "@types/node": "*" } }, - "node_modules/@types/debug": { - "version": "4.1.7", - "license": "MIT", - "dependencies": { - "@types/ms": "*" - } - }, "node_modules/@types/eslint": { "version": "8.4.3", "license": "MIT", @@ -1830,6 +1336,12 @@ "version": "0.0.51", "license": "MIT" }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.11", "license": "MIT" @@ -1860,10 +1372,6 @@ "@types/node": "*" } }, - "node_modules/@types/ms": { - "version": "0.7.31", - "license": "MIT" - }, "node_modules/@types/node": { "version": "11.11.6", "license": "MIT" @@ -2049,16 +1557,6 @@ "version": "1.1.1", "license": "ISC" }, - "node_modules/abort-controller": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/abortable-iterator": { "version": "3.0.2", "license": "MIT", @@ -2066,25 +1564,6 @@ "get-iterator": "^1.0.2" } }, - "node_modules/abstract-leveldown": { - "version": "7.2.0", - "license": "MIT", - "dependencies": { - "buffer": "^6.0.3", - "catering": "^2.0.0", - "is-buffer": "^2.0.5", - "level-concat-iterator": "^3.0.0", - "level-supports": "^2.0.1", - "queue-microtask": "^1.2.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/abstract-logging": { - "version": "2.0.1", - "license": "MIT" - }, "node_modules/accepts": { "version": "1.3.8", "license": "MIT", @@ -2122,6 +1601,7 @@ }, "node_modules/agent-base": { "version": "6.0.2", + "dev": true, "license": "MIT", "dependencies": { "debug": "4" @@ -2306,37 +1786,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/append-transform": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "default-require-extensions": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "license": "ISC" - }, - "node_modules/archy": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/are-we-there-yet": { - "version": "2.0.0", - "license": "ISC", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/argparse": { "version": "0.1.16", "dev": true, @@ -2346,83 +1795,6 @@ "underscore.string": "~2.4.0" } }, - "node_modules/args": { - "version": "5.0.3", - "license": "MIT", - "dependencies": { - "camelcase": "5.0.0", - "chalk": "2.4.2", - "leven": "2.1.0", - "mri": "1.1.4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/args/node_modules/ansi-styles": { - "version": "3.2.1", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/args/node_modules/camelcase": { - "version": "5.0.0", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/args/node_modules/chalk": { - "version": "2.4.2", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/args/node_modules/color-convert": { - "version": "1.9.3", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/args/node_modules/color-name": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/args/node_modules/escape-string-regexp": { - "version": "1.0.5", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/args/node_modules/has-flag": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/args/node_modules/supports-color": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/argv-formatter": { "version": "1.0.0", "dev": true, @@ -2451,16 +1823,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-shuffle": { - "version": "2.0.0", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/array-union": { "version": "2.1.0", "dev": true, @@ -2504,9 +1866,8 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz", - "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2569,13 +1930,6 @@ "version": "0.4.0", "license": "MIT" }, - "node_modules/atomic-sleep": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/available-typed-arrays": { "version": "1.0.5", "license": "MIT", @@ -2644,8 +1998,7 @@ }, "node_modules/bch-consumer": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/bch-consumer/-/bch-consumer-1.3.1.tgz", - "integrity": "sha512-8ZoyFp4pLJFAOzM482K22sVL2FpuxhkYRtZuLLsMH9L442mRABjsAP7fTh91W5er40r8RGN/CSKi2TMyUmrY1Q==", + "license": "MIT", "dependencies": { "@psf/bch-js": "6.4.5", "apidoc": "0.51.0", @@ -2654,8 +2007,7 @@ }, "node_modules/bch-consumer/node_modules/apidoc": { "version": "0.51.0", - "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.51.0.tgz", - "integrity": "sha512-3P4srhm6NA+kE/YRM4qL5jESElpQQJL+Z8n7hyr4uC+1DSwGzmE6adXPVxuT/hpDyShrqmRlHk8hf40RSqEsNw==", + "license": "MIT", "os": [ "darwin", "freebsd", @@ -2696,16 +2048,14 @@ }, "node_modules/bch-consumer/node_modules/axios": { "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.7" } }, "node_modules/bch-consumer/node_modules/glob": { "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -2797,8 +2147,7 @@ }, "node_modules/bch-message-lib": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/bch-message-lib/-/bch-message-lib-2.2.1.tgz", - "integrity": "sha512-1hWLC0v0jdPWVdxxhLNpREoW91PZGy69PxxOs4wZmlZo00bHm7OPGhmaugh7ilMw+ouLn59vY//lSX2rOn65Kw==", + "license": "MIT", "peerDependencies": { "minimal-slp-wallet": ">= 4" } @@ -2884,11 +2233,6 @@ "file-uri-to-path": "1.0.0" } }, - "node_modules/bintrees": { - "version": "1.0.2", - "license": "MIT", - "optional": true - }, "node_modules/bip-schnorr": { "version": "0.3.0", "license": "MIT", @@ -2989,33 +2333,6 @@ "browser-readablestream-to-it": "^1.0.3" } }, - "node_modules/blockstore-core": { - "version": "1.0.5", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-store": "^2.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.4", - "it-filter": "^1.0.2", - "it-take": "^1.0.1", - "multiformats": "^9.4.7" - } - }, - "node_modules/blockstore-datastore-adapter": { - "version": "2.0.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "blockstore-core": "^1.0.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "it-drain": "^1.0.1", - "it-pushable": "^1.4.2", - "multiformats": "^9.1.0" - } - }, "node_modules/bluebird": { "version": "3.5.1", "license": "MIT" @@ -3201,14 +2518,6 @@ "ieee754": "^1.2.1" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "license": "MIT", - "optional": true, - "engines": { - "node": "*" - } - }, "node_modules/buffer-equal-constant-time": { "version": "1.0.1", "license": "BSD-3-Clause" @@ -3230,17 +2539,12 @@ }, "node_modules/builtins": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.0.0" } }, - "node_modules/byteman": { - "version": "1.3.5", - "license": "MIT" - }, "node_modules/bytes": { "version": "3.1.2", "license": "MIT", @@ -3248,6 +2552,111 @@ "node": ">= 0.8" } }, + "node_modules/c8": { + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", + "integrity": "sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.3", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^9.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9" + }, + "bin": { + "c8": "bin/c8.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/c8/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/c8/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/cache-content-type": { "version": "1.0.1", "license": "MIT", @@ -3295,20 +2704,6 @@ "node": ">=8" } }, - "node_modules/caching-transform": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/call-bind": { "version": "1.0.2", "license": "MIT", @@ -3328,14 +2723,6 @@ "node": ">=6" } }, - "node_modules/camel-case": { - "version": "4.1.2", - "license": "MIT", - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "node_modules/camelcase": { "version": "5.3.1", "dev": true, @@ -3374,15 +2761,6 @@ ], "license": "CC-BY-4.0" }, - "node_modules/capital-case": { - "version": "1.0.4", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" - } - }, "node_modules/cardinal": { "version": "2.1.1", "dev": true, @@ -3406,13 +2784,6 @@ "big-integer": "^1.6.34" } }, - "node_modules/catering": { - "version": "2.1.1", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/cborg": { "version": "1.9.4", "license": "Apache-2.0", @@ -3450,24 +2821,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/change-case": { - "version": "4.1.2", - "license": "MIT", - "dependencies": { - "camel-case": "^4.1.2", - "capital-case": "^1.0.4", - "constant-case": "^3.0.4", - "dot-case": "^3.0.4", - "header-case": "^2.0.4", - "no-case": "^3.0.4", - "param-case": "^3.0.4", - "pascal-case": "^3.1.2", - "path-case": "^3.0.4", - "sentence-case": "^3.0.4", - "snake-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/check-error": { "version": "1.0.2", "dev": true, @@ -3501,13 +2854,6 @@ "fsevents": "~2.3.2" } }, - "node_modules/chownr": { - "version": "2.0.0", - "license": "ISC", - "engines": { - "node": ">=10" - } - }, "node_modules/chrome-trace-event": { "version": "1.0.3", "license": "MIT", @@ -3564,6 +2910,7 @@ }, "node_modules/cliui": { "version": "7.0.4", + "dev": true, "license": "ISC", "dependencies": { "string-width": "^4.2.0", @@ -3593,6 +2940,20 @@ "node": ">=0.10.0" } }, + "node_modules/clone-regexp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-3.0.0.tgz", + "integrity": "sha512-ujdnoq2Kxb8s3ItNBtnYeXdm07FcU0u8ARAT1lQ2YdMwQC+cdiXX8KoqMVuglztILivceTtp4ivqGSmEmhBUJw==", + "dependencies": { + "is-regexp": "^3.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/clone-response": { "version": "1.0.2", "license": "MIT", @@ -3633,18 +2994,6 @@ "type-is": "^1.6.16" } }, - "node_modules/code-point-at": { - "version": "1.1.0", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/coercer": { - "version": "1.1.2", - "license": "ISC" - }, "node_modules/color": { "version": "3.2.1", "license": "MIT", @@ -3675,13 +3024,6 @@ "simple-swizzle": "^0.2.2" } }, - "node_modules/color-support": { - "version": "1.1.3", - "license": "ISC", - "bin": { - "color-support": "bin.js" - } - }, "node_modules/color/node_modules/color-convert": { "version": "1.9.3", "license": "MIT", @@ -3722,11 +3064,6 @@ "node": ">= 12" } }, - "node_modules/commondir": { - "version": "1.0.1", - "dev": true, - "license": "MIT" - }, "node_modules/compare-func": { "version": "2.0.0", "dev": true, @@ -3745,42 +3082,6 @@ "version": "0.0.1", "license": "MIT" }, - "node_modules/concat-stream": { - "version": "1.6.2", - "engines": [ - "node >= 0.8" - ], - "license": "MIT", - "optional": true, - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", - "optional": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", - "optional": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/configstore": { "version": "5.0.1", "license": "BSD-2-Clause", @@ -3796,19 +3097,6 @@ "node": ">=8" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "license": "ISC" - }, - "node_modules/constant-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case": "^2.0.2" - } - }, "node_modules/content-disposition": { "version": "0.5.4", "license": "MIT", @@ -3949,6 +3237,17 @@ "readable-stream": "3" } }, + "node_modules/convert-hrtime": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/convert-hrtime/-/convert-hrtime-5.0.0.tgz", + "integrity": "sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/convert-source-map": { "version": "1.8.0", "dev": true, @@ -4077,22 +3376,6 @@ "node": ">= 0.4" } }, - "node_modules/dag-jose": { - "version": "1.0.0", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-cbor": "^6.0.3", - "multiformats": "^9.0.2" - } - }, - "node_modules/dag-jose/node_modules/@ipld/dag-cbor": { - "version": "6.0.15", - "license": "(Apache-2.0 AND MIT)", - "dependencies": { - "cborg": "^1.5.4", - "multiformats": "^9.5.4" - } - }, "node_modules/dashdash": { "version": "1.14.1", "license": "MIT", @@ -4131,62 +3414,6 @@ "npm": ">=7.0.0" } }, - "node_modules/datastore-fs": { - "version": "7.0.0", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "datastore-core": "^7.0.0", - "fast-write-atomic": "^0.2.0", - "interface-datastore": "^6.0.2", - "it-glob": "^1.0.1", - "it-map": "^1.0.5", - "it-parallel-batch": "^1.0.9", - "mkdirp": "^1.0.4" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/datastore-level": { - "version": "8.0.0", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "datastore-core": "^7.0.0", - "interface-datastore": "^6.0.2", - "it-filter": "^1.0.2", - "it-map": "^1.0.5", - "it-sort": "^1.0.0", - "it-take": "^1.0.1", - "level": "^7.0.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/datastore-pubsub": { - "version": "2.0.0", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "datastore-core": "^7.0.0", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-datastore": "^6.0.2", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/dateformat": { - "version": "4.6.3", - "license": "MIT", - "engines": { - "node": "*" - } - }, "node_modules/debug": { "version": "4.3.4", "license": "MIT", @@ -4277,32 +3504,10 @@ "node": ">= 10" } }, - "node_modules/default-require-extensions": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "strip-bom": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/defer-to-connect": { "version": "1.1.3", "license": "MIT" }, - "node_modules/deferred-leveldown": { - "version": "7.0.0", - "license": "MIT", - "dependencies": { - "abstract-leveldown": "^7.2.0", - "inherits": "^2.0.3" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/define-properties": { "version": "1.1.4", "license": "MIT", @@ -4380,13 +3585,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/detect-libc": { - "version": "2.0.1", - "license": "Apache-2.0", - "engines": { - "node": ">=8" - } - }, "node_modules/diff": { "version": "5.0.0", "dev": true, @@ -4410,10 +3608,6 @@ "node": ">=8" } }, - "node_modules/dlv": { - "version": "1.1.3", - "license": "MIT" - }, "node_modules/dns-over-http-resolver": { "version": "1.2.3", "license": "MIT", @@ -4454,22 +3648,6 @@ "node": ">=6.0.0" } }, - "node_modules/domexception": { - "version": "1.0.1", - "license": "MIT", - "optional": true, - "dependencies": { - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/dot-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/dot-prop": { "version": "5.3.0", "license": "MIT", @@ -4605,171 +3783,6 @@ "version": "1.1.1", "license": "MIT" }, - "node_modules/ejs": { - "version": "3.1.8", - "license": "Apache-2.0", - "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron": { - "version": "1.8.8", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@types/node": "^8.0.24", - "electron-download": "^3.0.1", - "extract-zip": "^1.0.3" - }, - "bin": { - "electron": "cli.js" - } - }, - "node_modules/electron-download": { - "version": "3.3.0", - "license": "BSD-3-Clause", - "optional": true, - "dependencies": { - "debug": "^2.2.0", - "fs-extra": "^0.30.0", - "home-path": "^1.0.1", - "minimist": "^1.2.0", - "nugget": "^2.0.0", - "path-exists": "^2.1.0", - "rc": "^1.1.2", - "semver": "^5.3.0", - "sumchecker": "^1.2.0" - }, - "bin": { - "electron-download": "build/cli.js" - } - }, - "node_modules/electron-download/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/electron-download/node_modules/fs-extra": { - "version": "0.30.0", - "license": "MIT", - "optional": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "node_modules/electron-download/node_modules/jsonfile": { - "version": "2.4.0", - "license": "MIT", - "optional": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/electron-download/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "optional": true - }, - "node_modules/electron-download/node_modules/rimraf": { - "version": "2.7.1", - "license": "ISC", - "optional": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/electron-download/node_modules/semver": { - "version": "5.7.1", - "license": "ISC", - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/electron-eval": { - "version": "0.9.10", - "license": "MIT", - "optional": true, - "dependencies": { - "cross-spawn": "^5.1.0", - "electron": "^1.6.11", - "ndjson": "^1.5.0" - }, - "optionalDependencies": { - "headless": "https://github.com/paulkernfeld/node-headless/tarball/master" - } - }, - "node_modules/electron-eval/node_modules/cross-spawn": { - "version": "5.1.0", - "license": "MIT", - "optional": true, - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/electron-eval/node_modules/lru-cache": { - "version": "4.1.5", - "license": "ISC", - "optional": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/electron-eval/node_modules/shebang-command": { - "version": "1.2.0", - "license": "MIT", - "optional": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron-eval/node_modules/shebang-regex": { - "version": "1.0.0", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron-eval/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "optional": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/electron-eval/node_modules/yallist": { - "version": "2.1.2", - "license": "ISC", - "optional": true - }, "node_modules/electron-fetch": { "version": "1.7.4", "license": "MIT", @@ -4784,38 +3797,6 @@ "version": "1.4.174", "license": "ISC" }, - "node_modules/electron-webrtc": { - "version": "0.3.0", - "license": "MIT", - "optional": true, - "dependencies": { - "debug": "^2.2.0", - "electron-eval": "^0.9.0", - "get-browser-rtc": "^1.0.2", - "hat": "^0.0.3" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/electron-webrtc/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/electron-webrtc/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "optional": true - }, - "node_modules/electron/node_modules/@types/node": { - "version": "8.10.66", - "license": "MIT", - "optional": true - }, "node_modules/elliptic": { "version": "6.5.4", "license": "MIT", @@ -4871,19 +3852,6 @@ "iconv-lite": "^0.6.2" } }, - "node_modules/encoding-down": { - "version": "7.1.0", - "license": "MIT", - "dependencies": { - "abstract-leveldown": "^7.2.0", - "inherits": "^2.0.3", - "level-codec": "^10.0.0", - "level-errors": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/end-of-stream": { "version": "1.4.4", "license": "MIT", @@ -4891,43 +3859,6 @@ "once": "^1.4.0" } }, - "node_modules/engine.io-client": { - "version": "6.2.2", - "license": "MIT", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3", - "xmlhttprequest-ssl": "~2.0.0" - } - }, - "node_modules/engine.io-client/node_modules/ws": { - "version": "8.2.3", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.4", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/enhanced-resolve": { "version": "5.10.0", "license": "MIT", @@ -5076,16 +4007,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es6-error": { - "version": "4.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/es6-promise": { - "version": "4.2.8", - "license": "MIT", - "optional": true - }, "node_modules/es6-promisify": { "version": "7.0.0", "license": "MIT", @@ -5330,9 +4251,8 @@ }, "node_modules/eslint-plugin-n": { "version": "15.2.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.5.tgz", - "integrity": "sha512-8+BYsqiyZfpu6NXmdLOXVUfk8IocpCjpd8nMRRH0A9ulrcemhb2VI9RSJMEy5udx++A/YcVPD11zT8hpFq368g==", "dev": true, + "license": "MIT", "dependencies": { "builtins": "^5.0.1", "eslint-plugin-es": "^4.1.0", @@ -5355,9 +4275,8 @@ }, "node_modules/eslint-plugin-n/node_modules/eslint-plugin-es": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", "dev": true, + "license": "MIT", "dependencies": { "eslint-utils": "^2.0.0", "regexpp": "^3.0.0" @@ -5374,9 +4293,8 @@ }, "node_modules/eslint-plugin-n/node_modules/eslint-plugin-es/node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -5389,18 +4307,16 @@ }, "node_modules/eslint-plugin-n/node_modules/eslint-plugin-es/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/eslint-plugin-n/node_modules/eslint-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^2.0.0" }, @@ -5416,18 +4332,16 @@ }, "node_modules/eslint-plugin-n/node_modules/ignore": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/eslint-plugin-react": { "version": "7.31.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz", - "integrity": "sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.5", "array.prototype.flatmap": "^1.3.0", @@ -5453,9 +4367,8 @@ }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -5465,18 +4378,16 @@ }, "node_modules/eslint-plugin-react/node_modules/estraverse": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/eslint-plugin-react/node_modules/resolve": { "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.9.0", "path-parse": "^1.0.7", @@ -5491,9 +4402,8 @@ }, "node_modules/eslint-plugin-react/node_modules/semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } @@ -5667,17 +4577,6 @@ "node": ">=0.10.0" } }, - "node_modules/event-iterator": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/eventemitter3": { "version": "4.0.7", "license": "MIT" @@ -5736,44 +4635,6 @@ "version": "3.0.2", "license": "MIT" }, - "node_modules/extract-zip": { - "version": "1.7.0", - "license": "BSD-2-Clause", - "optional": true, - "dependencies": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - } - }, - "node_modules/extract-zip/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/extract-zip/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", - "optional": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/extract-zip/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "optional": true - }, "node_modules/extsprintf": { "version": "1.3.0", "engines": [ @@ -5813,21 +4674,6 @@ "dev": true, "license": "MIT" }, - "node_modules/fast-redact": { - "version": "3.1.1", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "license": "MIT" - }, - "node_modules/fast-write-atomic": { - "version": "0.2.1", - "license": "MIT" - }, "node_modules/fastest-levenshtein": { "version": "1.0.12", "license": "MIT" @@ -5840,14 +4686,6 @@ "reusify": "^1.0.4" } }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "license": "MIT", - "optional": true, - "dependencies": { - "pend": "~1.2.0" - } - }, "node_modules/fecha": { "version": "4.2.3", "license": "MIT" @@ -5892,56 +4730,10 @@ "moment": "^2.11.2" } }, - "node_modules/file-type": { - "version": "16.5.3", - "license": "MIT", - "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" - } - }, "node_modules/file-uri-to-path": { "version": "1.0.0", "license": "MIT" }, - "node_modules/filelist": { - "version": "1.0.4", - "license": "Apache-2.0", - "dependencies": { - "minimatch": "^5.0.1" - } - }, - "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.0", - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/filesize": { - "version": "8.0.7", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/fill-range": { "version": "7.0.1", "license": "MIT", @@ -5952,97 +4744,6 @@ "node": ">=8" } }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-cache-dir/node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/p-locate": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/find-cache-dir/node_modules/path-exists": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/pkg-dir": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/find-up": { "version": "2.1.0", "dev": true, @@ -6088,10 +4789,6 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/flatstr": { - "version": "1.0.12", - "license": "MIT" - }, "node_modules/flatted": { "version": "3.2.6", "dev": true, @@ -6101,10 +4798,6 @@ "version": "1.1.0", "license": "MIT" }, - "node_modules/fnv1a": { - "version": "1.1.1", - "license": "MIT" - }, "node_modules/follow-redirects": { "version": "1.15.1", "funding": [ @@ -6161,13 +4854,6 @@ "node": ">= 6" } }, - "node_modules/formidable": { - "version": "1.2.6", - "license": "MIT", - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" - } - }, "node_modules/fresh": { "version": "0.5.2", "license": "MIT", @@ -6237,16 +4923,6 @@ "node": ">=12" } }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "license": "ISC" @@ -6255,6 +4931,17 @@ "version": "1.1.1", "license": "MIT" }, + "node_modules/function-timeout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/function-timeout/-/function-timeout-0.1.1.tgz", + "integrity": "sha512-0NVVC0TaP7dSTvn1yMiy6d6Q8gifzbvQafO46RtLG/kHJUBNd+pVRGOBoK44wNBvtSPUJRfdVvkFdD3p0xvyZg==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/function.prototype.name": { "version": "1.1.5", "license": "MIT", @@ -6283,28 +4970,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gar": { - "version": "1.0.4", - "license": "MIT" - }, - "node_modules/gauge": { - "version": "3.0.2", - "license": "ISC", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/generic-pool": { "version": "3.8.2", "license": "MIT", @@ -6312,36 +4977,14 @@ "node": ">= 4" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-browser-rtc": { - "version": "1.1.0", - "license": "MIT" - }, "node_modules/get-caller-file": { "version": "2.0.5", + "dev": true, "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/get-folder-size": { - "version": "2.0.1", - "license": "MIT", - "dependencies": { - "gar": "^1.0.4", - "tiny-each-async": "2.0.3" - }, - "bin": { - "get-folder-size": "bin/get-folder-size" - } - }, "node_modules/get-func-name": { "version": "2.0.0", "dev": true, @@ -6375,9 +5018,8 @@ }, "node_modules/get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -6581,21 +5223,8 @@ }, "node_modules/grapheme-splitter": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "node_modules/hamt-sharding": { - "version": "2.0.1", - "license": "MIT", - "dependencies": { - "sparse-array": "^1.3.1", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=10.0.0", - "npm": ">=6.0.0" - } + "dev": true, + "license": "MIT" }, "node_modules/handlebars": { "version": "4.7.7", @@ -6616,16 +5245,6 @@ "uglify-js": "^3.1.4" } }, - "node_modules/hapi-pino": { - "version": "8.5.0", - "license": "MIT", - "dependencies": { - "@hapi/hoek": "^9.0.0", - "abstract-logging": "^2.0.0", - "pino": "^6.0.0", - "pino-pretty": "^4.0.0" - } - }, "node_modules/har-schema": { "version": "2.0.0", "license": "ISC", @@ -6720,10 +5339,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "license": "ISC" - }, "node_modules/has-yarn": { "version": "2.1.0", "license": "MIT", @@ -6769,30 +5384,10 @@ "minimalistic-assert": "^1.0.1" } }, - "node_modules/hasha": { - "version": "5.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/hashlru": { "version": "2.3.0", "license": "MIT" }, - "node_modules/hat": { - "version": "0.0.3", - "license": "MIT/X11", - "optional": true - }, "node_modules/hawk": { "version": "1.1.1", "dev": true, @@ -6815,24 +5410,6 @@ "he": "bin/he" } }, - "node_modules/header-case": { - "version": "2.0.4", - "license": "MIT", - "dependencies": { - "capital-case": "^1.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/headless": { - "version": "1.1.0", - "resolved": "https://github.com/paulkernfeld/node-headless/tarball/master", - "integrity": "sha512-Y+OAUntNS8dvU9cX0NHuTegMu7sDbd9KbPHF/pe9YO64UvuSE14AEKmMqzRqywQx83a3Y23inqC6iDvAd6PIYA==", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.6" - } - }, "node_modules/hmac-drbg": { "version": "1.0.1", "license": "MIT", @@ -6850,11 +5427,6 @@ "node": ">=0.8.0" } }, - "node_modules/home-path": { - "version": "1.0.7", - "license": "MIT", - "optional": true - }, "node_modules/hook-std": { "version": "2.0.0", "dev": true, @@ -6944,6 +5516,7 @@ }, "node_modules/https-proxy-agent": { "version": "5.0.1", + "dev": true, "license": "MIT", "dependencies": { "agent-base": "6", @@ -7195,14 +5768,6 @@ "version": "1.3.8", "license": "ISC" }, - "node_modules/interface-blockstore": { - "version": "2.0.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "interface-store": "^2.0.2", - "multiformats": "^9.0.4" - } - }, "node_modules/interface-datastore": { "version": "6.1.1", "license": "MIT", @@ -7275,621 +5840,277 @@ "node": ">= 10" } }, - "node_modules/ipfs": { - "version": "0.62.3", - "license": "(Apache-2.0 OR MIT)", + "node_modules/ipfs-coord-esm": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/ipfs-coord-esm/-/ipfs-coord-esm-9.1.3.tgz", + "integrity": "sha512-p/Gol69pU/KnfGX21gGirngLkOTvrcuZgRo5te0TAeaRID0nm8hpacCF0KB8HKLfbEIRMvZ0tO0TEM1XE/XHmQ==", "dependencies": { - "debug": "^4.1.1", - "ipfs-cli": "^0.12.3", - "ipfs-core": "^0.14.3", - "semver": "^7.3.2", - "update-notifier": "^5.0.0" - }, - "bin": { - "jsipfs": "src/cli.js" - }, - "engines": { - "node": ">=15.0.0", - "npm": ">=6.0.0" - } - }, - "node_modules/ipfs-bitswap": { - "version": "10.0.2", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "@vascosantos/moving-average": "^1.1.0", - "any-signal": "^3.0.0", - "blockstore-core": "^1.0.2", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "it-length-prefixed": "^5.0.2", - "it-pipe": "^1.1.0", - "just-debounce-it": "^1.1.0", - "libp2p-interfaces": "^4.0.0", - "multiaddr": "^10.0.0", - "multiformats": "^9.0.4", - "protobufjs": "^6.10.2", - "readable-stream": "^3.6.0", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0", - "varint-decoder": "^1.0.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/ipfs-cli": { - "version": "0.12.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "byteman": "^1.3.5", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "execa": "^5.0.0", - "get-folder-size": "^2.0.1", - "ipfs-core": "^0.14.3", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-daemon": "^0.12.3", - "ipfs-http-client": "^56.0.3", - "ipfs-repo": "^14.0.1", - "ipfs-utils": "^9.0.6", - "it-all": "^1.0.4", - "it-concat": "^2.0.0", - "it-first": "^1.0.4", - "it-glob": "^1.0.0", - "it-map": "^1.0.5", - "it-merge": "^1.0.3", - "it-pipe": "^1.1.0", - "it-split": "^1.0.0", - "it-tar": "^4.0.0", - "jsondiffpatch": "^0.4.1", - "libp2p-crypto": "^0.21.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "pretty-bytes": "^5.4.1", - "progress": "^2.0.3", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0", - "yargs": "^16.0.3" - } - }, - "node_modules/ipfs-cli/node_modules/ipfs-http-client": { - "version": "56.0.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "dag-jose": "^1.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-utils": "^9.0.6", - "it-first": "^1.0.6", - "it-last": "^1.0.4", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=15.0.0", - "npm": ">=3.0.0" - } - }, - "node_modules/ipfs-coord": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/ipfs-coord/-/ipfs-coord-8.0.5.tgz", - "integrity": "sha512-V4pqR+MU290ZxFRE+Rx/7JuxR7LsOFBLuL0av3eVU5ZQWqeF/Zi9vh52zCqpp1IBCXi4QXNZGlysvm16xFDXww==", - "dependencies": { - "axios": "0.21.4", "bch-encrypt-lib": "2.0.0", - "uuid": "8.3.2" + "uuid": "9.0.0" }, "peerDependencies": { - "ipfs": ">= 0.58.6", - "ipfs-http-client": ">= 55.0.0" + "ipfs-http-client": ">= 58.0.0" } }, - "node_modules/ipfs-coord/node_modules/axios": { - "version": "0.21.4", - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/ipfs-core": { - "version": "0.14.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@chainsafe/libp2p-noise": "^5.0.0", - "@ipld/car": "^4.1.0", - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "@multiformats/murmur3": "^1.1.1", - "any-signal": "^3.0.0", - "array-shuffle": "^2.0.0", - "blockstore-core": "^1.0.2", - "blockstore-datastore-adapter": "^2.0.2", - "dag-jose": "^1.0.0", - "datastore-core": "^7.0.0", - "datastore-pubsub": "^2.0.0", - "debug": "^4.1.1", - "dlv": "^1.1.3", - "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "hashlru": "^2.3.0", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "ipfs-bitswap": "^10.0.1", - "ipfs-core-config": "^0.3.3", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-http-client": "^56.0.3", - "ipfs-repo": "^14.0.1", - "ipfs-unixfs": "^6.0.3", - "ipfs-unixfs-exporter": "^7.0.3", - "ipfs-unixfs-importer": "^9.0.3", - "ipfs-utils": "^9.0.6", - "ipns": "^0.16.0", - "is-domain-name": "^1.0.1", - "is-ipfs": "^6.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-filter": "^1.0.2", - "it-first": "^1.0.4", - "it-last": "^1.0.4", - "it-map": "^1.0.4", - "it-merge": "^1.0.2", - "it-parallel": "^2.0.1", - "it-peekable": "^1.0.2", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "it-tar": "^4.0.0", - "it-to-buffer": "^2.0.0", - "just-safe-set": "^2.2.1", - "libp2p": "^0.36.2", - "libp2p-bootstrap": "^0.14.0", - "libp2p-crypto": "^0.21.1", - "libp2p-delegated-content-routing": "^0.11.1", - "libp2p-delegated-peer-routing": "^0.11.0", - "libp2p-record": "^0.10.3", - "mafmt": "^10.0.0", - "merge-options": "^3.0.4", - "mortice": "^2.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "pako": "^1.0.2", - "parse-duration": "^1.0.0", - "peer-id": "^0.16.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0" - } - }, - "node_modules/ipfs-core-config": { - "version": "0.3.3", - "license": "MIT", - "dependencies": { - "@chainsafe/libp2p-noise": "^5.0.1", - "blockstore-datastore-adapter": "^2.0.2", - "datastore-core": "^7.0.0", - "datastore-fs": "^7.0.0", - "datastore-level": "^8.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "hashlru": "^2.3.0", - "interface-datastore": "^6.0.2", - "ipfs-repo": "^14.0.1", - "ipfs-utils": "^9.0.6", - "ipns": "^0.16.0", - "is-ipfs": "^6.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-foreach": "^0.1.1", - "libp2p-floodsub": "^0.29.0", - "libp2p-gossipsub": "0.13.0", - "libp2p-kad-dht": "^0.28.5", - "libp2p-mdns": "^0.18.0", - "libp2p-mplex": "^0.10.2", - "libp2p-tcp": "^0.17.1", - "libp2p-webrtc-star": "^0.25.0", - "libp2p-websockets": "^0.16.2", - "p-queue": "^6.6.1", - "uint8arrays": "^3.0.0" - } - }, - "node_modules/ipfs-core-types": { - "version": "0.10.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-pb": "^2.1.3", - "interface-datastore": "^6.0.2", - "ipfs-unixfs": "^6.0.3", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1" - } - }, - "node_modules/ipfs-core-utils": { - "version": "0.14.3", - "license": "MIT", - "dependencies": { - "any-signal": "^3.0.0", - "blob-to-it": "^1.0.1", - "browser-readablestream-to-it": "^1.0.1", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-unixfs": "^6.0.3", - "ipfs-utils": "^9.0.6", - "it-all": "^1.0.4", - "it-map": "^1.0.4", - "it-peekable": "^1.0.2", - "it-to-stream": "^1.0.0", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "nanoid": "^3.1.23", - "parse-duration": "^1.0.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0" - } - }, - "node_modules/ipfs-core/node_modules/ipfs-http-client": { - "version": "56.0.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "dag-jose": "^1.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-utils": "^9.0.6", - "it-first": "^1.0.6", - "it-last": "^1.0.4", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=15.0.0", - "npm": ">=3.0.0" - } - }, - "node_modules/ipfs-daemon": { - "version": "0.12.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5", - "debug": "^4.1.1", - "ipfs-core": "^0.14.3", - "ipfs-core-types": "^0.10.3", - "ipfs-grpc-server": "^0.8.4", - "ipfs-http-gateway": "^0.9.3", - "ipfs-http-server": "^0.11.3", - "ipfs-utils": "^9.0.6", - "just-safe-set": "^2.2.1", - "libp2p": "^0.36.2", - "libp2p-webrtc-star": "^0.25.0" - }, - "optionalDependencies": { - "electron-webrtc": "^0.3.0", - "prom-client": "^14.0.1", - "wrtc": "^0.4.6" - } - }, - "node_modules/ipfs-grpc-protocol": { - "version": "0.5.5", - "license": "(Apache-2.0 OR MIT)" - }, - "node_modules/ipfs-grpc-server": { - "version": "0.8.4", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@grpc/grpc-js": "^1.1.8", - "change-case": "^4.1.1", - "coercer": "^1.1.2", - "debug": "^4.1.1", - "ipfs-core-types": "^0.10.3", - "ipfs-grpc-protocol": "^0.5.5", - "it-first": "^1.0.4", - "it-map": "^1.0.4", - "it-peekable": "^1.0.2", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "multiaddr": "^10.0.0", - "nanoid": "^3.1.23", - "protobufjs": "^6.10.2", - "ws": "^7.3.1" + "node_modules/ipfs-coord-esm/node_modules/uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", + "bin": { + "uuid": "dist/bin/uuid" } }, "node_modules/ipfs-http-client": { - "version": "55.0.0", - "license": "(Apache-2.0 OR MIT)", + "version": "58.0.0", + "resolved": "https://registry.npmjs.org/ipfs-http-client/-/ipfs-http-client-58.0.0.tgz", + "integrity": "sha512-8HD6wRb+czi6NW8P4n4H84mMefATHf/yWIBFal/DDqriFstrjim0BE5w7lfw7cFoueoH26kq4f70lbF95/ElKA==", "dependencies": { "@ipld/dag-cbor": "^7.0.0", "@ipld/dag-json": "^8.0.1", "@ipld/dag-pb": "^2.1.3", - "abort-controller": "^3.0.0", - "any-signal": "^2.1.2", - "debug": "^4.1.1", + "@libp2p/logger": "^2.0.0", + "@libp2p/peer-id": "^1.1.10", + "@multiformats/multiaddr": "^10.4.0", + "any-signal": "^3.0.0", + "dag-jose": "^2.0.1", "err-code": "^3.0.1", - "ipfs-core-types": "^0.9.0", - "ipfs-core-utils": "^0.13.0", - "ipfs-utils": "^9.0.2", + "ipfs-core-types": "^0.12.0", + "ipfs-core-utils": "^0.16.0", + "ipfs-utils": "^9.0.6", "it-first": "^1.0.6", "it-last": "^1.0.4", "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.13", - "native-abort-controller": "^1.0.3", + "multiformats": "^9.5.1", "parse-duration": "^1.0.0", "stream-to-it": "^0.2.2", "uint8arrays": "^3.0.0" }, "engines": { - "node": ">=14.0.0", - "npm": ">=3.0.0" + "node": ">=16.0.0", + "npm": ">=7.0.0" } }, - "node_modules/ipfs-http-client/node_modules/any-signal": { - "version": "2.1.2", - "license": "MIT", + "node_modules/ipfs-http-client/node_modules/@types/node": { + "version": "18.7.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.23.tgz", + "integrity": "sha512-DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg==" + }, + "node_modules/ipfs-http-client/node_modules/dag-jose": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/dag-jose/-/dag-jose-2.0.1.tgz", + "integrity": "sha512-1jCSAWOJ7oHl4A3xGQEERCl2IqqFZJYp4qnmzBbh2vifQx0ZGTtSxDR68MStjLjADvaqYgWI7a73wre5GFqVrA==", "dependencies": { - "abort-controller": "^3.0.0", - "native-abort-controller": "^1.0.3" + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^9.6.4" + } + }, + "node_modules/ipfs-http-client/node_modules/dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "dependencies": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/ipfs-http-client/node_modules/interface-datastore": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-7.0.0.tgz", + "integrity": "sha512-q9OveOhexQ3Fx8h4YbuR4mZtUHwvlOynKnIwTm6x8oBTWfIyAKtlYtrOYdlHfqQztbYpdzRFcapopNJBMx36NQ==", + "dependencies": { + "interface-store": "^3.0.0", + "nanoid": "^3.0.2", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/ipfs-http-client/node_modules/interface-store": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-3.0.0.tgz", + "integrity": "sha512-IBJn3hE6hYutwdDcStR76mcwfV98vZc49LkEN9ANHHpsxcm6YbGMJxowO2G3FITU4U5ZH4KJPlHOT6Oe2vzTWA==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/ipfs-http-client/node_modules/ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/ipfs-http-client/node_modules/ipfs-core-types": { - "version": "0.9.0", - "license": "(Apache-2.0 OR MIT)", + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/ipfs-core-types/-/ipfs-core-types-0.12.1.tgz", + "integrity": "sha512-MMCNlHN960kZ4Pxh85xmAGPzVkO2iVAdPQqHkxf/3179m6MwrMpaBdU8QGbjccRef4QKou2bIptKdweanvjmig==", "dependencies": { - "interface-datastore": "^6.0.2", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.13" + "@ipld/dag-pb": "^2.1.3", + "@libp2p/interface-keychain": "^1.0.3", + "@libp2p/interface-peer-id": "^1.0.4", + "@libp2p/interface-peer-info": "^1.0.2", + "@libp2p/interface-pubsub": "^2.0.0", + "@multiformats/multiaddr": "^11.0.0", + "@types/node": "^18.0.0", + "interface-datastore": "^7.0.0", + "ipfs-unixfs": "^7.0.0", + "multiformats": "^9.5.1" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/ipfs-http-client/node_modules/ipfs-core-types/node_modules/@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "dependencies": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" } }, "node_modules/ipfs-http-client/node_modules/ipfs-core-utils": { - "version": "0.13.0", - "license": "MIT", + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/ipfs-core-utils/-/ipfs-core-utils-0.16.1.tgz", + "integrity": "sha512-nRrOntMtjc6CoeAopIPyDRpwqwSJeMBYY5uq/TiS0V2MbBbD6kTtmsqdgjwXaQLQXdRyvy6/ohxP/btT4Xrg9Q==", "dependencies": { - "any-signal": "^2.1.2", + "@libp2p/logger": "^2.0.0", + "@multiformats/multiaddr": "^11.0.0", + "@multiformats/multiaddr-to-uri": "^9.0.1", + "any-signal": "^3.0.0", "blob-to-it": "^1.0.1", "browser-readablestream-to-it": "^1.0.1", - "debug": "^4.1.1", "err-code": "^3.0.1", - "ipfs-core-types": "^0.9.0", - "ipfs-unixfs": "^6.0.3", - "ipfs-utils": "^9.0.2", + "ipfs-core-types": "^0.12.1", + "ipfs-unixfs": "^7.0.0", + "ipfs-utils": "^9.0.6", "it-all": "^1.0.4", - "it-map": "^1.0.4", + "it-map": "^1.0.6", "it-peekable": "^1.0.2", "it-to-stream": "^1.0.0", "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.4.13", - "nanoid": "^3.1.23", - "parse-duration": "^1.0.0", - "timeout-abort-controller": "^2.0.0", - "uint8arrays": "^3.0.0" - } - }, - "node_modules/ipfs-http-client/node_modules/timeout-abort-controller": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "native-abort-controller": "^1.0.4", - "retimer": "^3.0.0" - } - }, - "node_modules/ipfs-http-gateway": { - "version": "0.9.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@hapi/ammo": "^5.0.1", - "@hapi/boom": "^9.1.0", - "@hapi/hapi": "^20.0.0", - "debug": "^4.1.1", - "hapi-pino": "^8.3.0", - "ipfs-core-types": "^0.10.3", - "ipfs-http-response": "^2.0.3", - "is-ipfs": "^6.0.1", - "it-last": "^1.0.4", - "it-to-stream": "^1.0.0", - "joi": "^17.2.1", - "multiformats": "^9.5.1", - "uint8arrays": "^3.0.0", - "uri-to-multiaddr": "^6.0.0" - } - }, - "node_modules/ipfs-http-response": { - "version": "2.0.3", - "license": "MIT", - "dependencies": { - "debug": "^4.3.1", - "ejs": "^3.1.6", - "file-type": "^16.0.0", - "filesize": "^8.0.0", - "it-buffer": "^0.1.1", - "it-concat": "^2.0.0", - "it-reader": "^3.0.0", - "it-to-stream": "^1.0.0", - "mime-types": "^2.1.30", - "p-try-each": "^1.0.1" - } - }, - "node_modules/ipfs-http-server": { - "version": "0.11.3", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@hapi/boom": "^9.1.0", - "@hapi/content": "^5.0.2", - "@hapi/hapi": "^20.0.0", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "debug": "^4.1.1", - "dlv": "^1.1.3", - "err-code": "^3.0.1", - "hapi-pino": "^8.3.0", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-http-gateway": "^0.9.3", - "ipfs-unixfs": "^6.0.3", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-filter": "^1.0.2", - "it-first": "^1.0.4", - "it-last": "^1.0.4", - "it-map": "^1.0.4", - "it-merge": "^1.0.2", - "it-multipart": "^2.0.0", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "it-reduce": "^1.0.5", - "joi": "^17.2.1", - "just-safe-set": "^2.2.1", - "multiaddr": "^10.0.0", "multiformats": "^9.5.1", + "nanoid": "^4.0.0", "parse-duration": "^1.0.0", - "stream-to-it": "^0.2.2", "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0", - "uri-to-multiaddr": "^6.0.0" - }, - "optionalDependencies": { - "prom-client": "^14.0.1" - } - }, - "node_modules/ipfs-repo": { - "version": "14.0.1", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "@ipld/dag-pb": "^2.1.0", - "bytes": "^3.1.0", - "cborg": "^1.3.4", - "datastore-core": "^7.0.0", - "debug": "^4.1.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "ipfs-repo-migrations": "^12.0.1", - "it-drain": "^1.0.1", - "it-filter": "^1.0.2", - "it-first": "^1.0.2", - "it-map": "^1.0.5", - "it-merge": "^1.0.2", - "it-parallel-batch": "^1.0.9", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.0", - "just-safe-get": "^2.0.0", - "just-safe-set": "^2.1.0", - "merge-options": "^3.0.4", - "mortice": "^2.0.1", - "multiformats": "^9.0.4", - "p-queue": "^6.0.0", - "proper-lockfile": "^4.0.0", - "sort-keys": "^4.2.0", "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" } }, - "node_modules/ipfs-repo-migrations": { - "version": "12.0.1", - "license": "(Apache-2.0 OR MIT)", + "node_modules/ipfs-http-client/node_modules/ipfs-core-utils/node_modules/@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", "dependencies": { - "@ipld/dag-pb": "^2.0.0", - "cborg": "^1.3.1", - "datastore-core": "^7.0.0", - "debug": "^4.1.0", - "fnv1a": "^1.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "it-length": "^1.0.1", - "multiaddr": "^10.0.1", - "multiformats": "^9.0.0", - "protobufjs": "^6.10.2", + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", "uint8arrays": "^3.0.0", "varint": "^6.0.0" - } - }, - "node_modules/ipfs-unixfs": { - "version": "6.0.9", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "err-code": "^3.0.1", - "protobufjs": "^6.10.2" }, "engines": { "node": ">=16.0.0", "npm": ">=7.0.0" } }, - "node_modules/ipfs-unixfs-exporter": { - "version": "7.0.11", - "license": "Apache-2.0 OR MIT", + "node_modules/ipfs-http-client/node_modules/ipfs-core-utils/node_modules/nanoid": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.0.tgz", + "integrity": "sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^14 || ^16 || >=18" + } + }, + "node_modules/ipfs-http-client/node_modules/ipfs-unixfs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ipfs-unixfs/-/ipfs-unixfs-7.0.0.tgz", + "integrity": "sha512-qm3pj3jQE/WCQGIWypyXWtDjDfzQTxFMMaT57sNJ+EQlYEJryKeGQEBTubhhX+tva7ntqt+N/FD15RkDjWlh9w==", "dependencies": { - "@ipld/dag-cbor": "^7.0.2", - "@ipld/dag-pb": "^2.0.2", - "@multiformats/murmur3": "^1.0.3", "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "interface-blockstore": "^2.0.3", - "ipfs-unixfs": "^6.0.0", - "it-last": "^1.0.5", - "multiformats": "^9.4.2", - "uint8arrays": "^3.0.0" + "protobufjs": "^7.0.0" }, "engines": { "node": ">=16.0.0", "npm": ">=7.0.0" } }, - "node_modules/ipfs-unixfs-importer": { - "version": "9.0.10", - "license": "Apache-2.0 OR MIT", + "node_modules/ipfs-http-client/node_modules/is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", "dependencies": { - "@ipld/dag-pb": "^2.0.2", - "@multiformats/murmur3": "^1.0.3", - "bl": "^5.0.0", - "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "interface-blockstore": "^2.0.3", - "ipfs-unixfs": "^6.0.0", - "it-all": "^1.0.5", - "it-batch": "^1.0.8", - "it-first": "^1.0.6", - "it-parallel-batch": "^1.0.9", - "merge-options": "^3.0.4", - "multiformats": "^9.4.2", - "rabin-wasm": "^0.1.4", - "uint8arrays": "^3.0.0" + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" }, "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ipfs-http-client/node_modules/long": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.0.tgz", + "integrity": "sha512-9RTUNjK60eJbx3uz+TEGF7fUr29ZDxR5QzXcyDpeSfeH28S9ycINflOgOlppit5U+4kNTe83KQnMEerw7GmE8w==" + }, + "node_modules/ipfs-http-client/node_modules/native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "peerDependencies": { + "undici": "*" + } + }, + "node_modules/ipfs-http-client/node_modules/protobufjs": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.1.2.tgz", + "integrity": "sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==", + "hasInstallScript": true, + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" } }, "node_modules/ipfs-utils": { @@ -7912,23 +6133,6 @@ "stream-to-it": "^0.2.2" } }, - "node_modules/ipns": { - "version": "0.16.0", - "license": "MIT", - "dependencies": { - "cborg": "^1.3.3", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-datastore": "^6.0.2", - "libp2p-crypto": "^0.21.0", - "long": "^4.0.0", - "multiformats": "^9.4.5", - "peer-id": "^0.16.0", - "protobufjs": "^6.10.2", - "timestamp-nano": "^1.0.0", - "uint8arrays": "^3.0.0" - } - }, "node_modules/is-arguments": { "version": "1.1.1", "license": "MIT", @@ -7989,27 +6193,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/is-callable": { "version": "1.2.4", "license": "MIT", @@ -8032,8 +6215,7 @@ }, "node_modules/is-core-module": { "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "license": "MIT", "dependencies": { "has": "^1.0.3" }, @@ -8054,10 +6236,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-domain-name": { - "version": "1.0.1", - "license": "ISC" - }, "node_modules/is-electron": { "version": "2.2.1", "license": "MIT" @@ -8123,21 +6301,6 @@ "node": ">=8" } }, - "node_modules/is-ipfs": { - "version": "6.0.2", - "license": "MIT", - "dependencies": { - "iso-url": "^1.1.3", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiformats": "^9.0.0", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=14.0.0", - "npm": ">=6.0.0" - } - }, "node_modules/is-loopback-addr": { "version": "1.0.1", "license": "MIT" @@ -8240,6 +6403,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-regexp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-3.1.0.tgz", + "integrity": "sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-set": { "version": "2.0.2", "license": "MIT", @@ -8364,14 +6538,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-windows": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-yarn-global": { "version": "0.3.0", "license": "MIT" @@ -8384,14 +6550,6 @@ "version": "2.0.0", "license": "ISC" }, - "node_modules/iso-constants": { - "version": "0.1.2", - "hasInstallScript": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, "node_modules/iso-random-stream": { "version": "2.0.2", "license": "MIT", @@ -8444,66 +6602,6 @@ "node": ">=8" } }, - "node_modules/istanbul-lib-hook": { - "version": "3.0.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "append-transform": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-processinfo": { - "version": "2.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.3", - "istanbul-lib-coverage": "^3.2.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/p-map": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-report": { "version": "3.0.0", "dev": true, @@ -8517,19 +6615,6 @@ "node": ">=8" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/istanbul-reports": { "version": "3.1.4", "dev": true, @@ -8546,10 +6631,6 @@ "version": "1.0.6", "license": "ISC" }, - "node_modules/it-batch": { - "version": "1.0.9", - "license": "ISC" - }, "node_modules/it-buffer": { "version": "0.1.3", "license": "MPL-2.0", @@ -8558,13 +6639,6 @@ "buffer": "^6.0.3" } }, - "node_modules/it-concat": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "bl": "^5.0.0" - } - }, "node_modules/it-drain": { "version": "1.0.5", "license": "ISC" @@ -8602,10 +6676,6 @@ "version": "1.0.6", "license": "ISC" }, - "node_modules/it-length": { - "version": "1.0.4", - "license": "ISC" - }, "node_modules/it-length-prefixed": { "version": "5.0.3", "license": "MIT", @@ -8626,43 +6696,6 @@ "it-pushable": "^1.4.0" } }, - "node_modules/it-multipart": { - "version": "2.0.2", - "license": "ISC", - "dependencies": { - "formidable": "^1.2.2", - "it-pushable": "^1.4.2" - } - }, - "node_modules/it-pair": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "get-iterator": "^1.0.2" - } - }, - "node_modules/it-parallel": { - "version": "2.0.1", - "license": "ISC", - "dependencies": { - "p-defer": "^3.0.0" - } - }, - "node_modules/it-parallel-batch": { - "version": "1.0.10", - "license": "ISC", - "dependencies": { - "it-batch": "^1.0.9" - } - }, - "node_modules/it-pb-rpc": { - "version": "0.2.0", - "license": "MPL-2.0", - "dependencies": { - "it-handshake": "^2.0.0", - "it-length-prefixed": "^5.0.3" - } - }, "node_modules/it-peekable": { "version": "1.0.3", "license": "ISC" @@ -8685,10 +6718,6 @@ "bl": "^5.0.0" } }, - "node_modules/it-reduce": { - "version": "1.0.6", - "license": "ISC" - }, "node_modules/it-sort": { "version": "1.0.1", "license": "ISC", @@ -8696,36 +6725,15 @@ "it-all": "^1.0.6" } }, - "node_modules/it-split": { - "version": "1.0.2", - "license": "ISC", - "dependencies": { - "bl": "^5.0.0" - } + "node_modules/it-stream-types": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/it-stream-types/-/it-stream-types-1.0.4.tgz", + "integrity": "sha512-0F3CqTIcIHwtnmIgqd03a7sw8BegAmE32N2w7anIGdALea4oAN4ltqPgDMZ7zn4XPLZifXEZlBXSzgg64L1Ebw==" }, "node_modules/it-take": { "version": "1.0.2", "license": "ISC" }, - "node_modules/it-tar": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "bl": "^5.0.0", - "buffer": "^6.0.3", - "iso-constants": "^0.1.2", - "it-concat": "^2.0.0", - "it-reader": "^3.0.0", - "p-defer": "^3.0.0" - } - }, - "node_modules/it-to-buffer": { - "version": "2.0.2", - "license": "ISC", - "dependencies": { - "uint8arrays": "^3.0.0" - } - }, "node_modules/it-to-stream": { "version": "1.0.0", "license": "MIT", @@ -8738,32 +6746,6 @@ "readable-stream": "^3.6.0" } }, - "node_modules/it-ws": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "buffer": "^6.0.3", - "event-iterator": "^2.0.0", - "iso-url": "^1.1.2", - "ws": "^7.3.1" - } - }, - "node_modules/jake": { - "version": "10.8.5", - "license": "Apache-2.0", - "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.1", - "minimatch": "^3.0.4" - }, - "bin": { - "jake": "bin/cli.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/java-properties": { "version": "1.0.2", "dev": true, @@ -8797,23 +6779,6 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jmespath": { - "version": "0.15.0", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/joi": { - "version": "17.6.0", - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.0", - "@sideway/pinpoint": "^2.0.0" - } - }, "node_modules/joycon": { "version": "3.1.1", "license": "MIT", @@ -8857,17 +6822,6 @@ "version": "1.1.0", "license": "MIT" }, - "node_modules/jsesc": { - "version": "2.5.2", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/json-buffer": { "version": "3.0.0", "license": "MIT" @@ -8908,77 +6862,6 @@ "node": ">=6" } }, - "node_modules/jsondiffpatch": { - "version": "0.4.1", - "license": "MIT", - "dependencies": { - "chalk": "^2.3.0", - "diff-match-patch": "^1.0.0" - }, - "bin": { - "jsondiffpatch": "bin/jsondiffpatch" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/jsondiffpatch/node_modules/ansi-styles": { - "version": "3.2.1", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jsondiffpatch/node_modules/chalk": { - "version": "2.4.2", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jsondiffpatch/node_modules/color-convert": { - "version": "1.9.3", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/jsondiffpatch/node_modules/color-name": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/jsondiffpatch/node_modules/escape-string-regexp": { - "version": "1.0.5", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/jsondiffpatch/node_modules/has-flag": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/jsondiffpatch/node_modules/supports-color": { - "version": "5.5.0", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/jsonfile": { "version": "6.1.0", "license": "MIT", @@ -9065,9 +6948,8 @@ }, "node_modules/jsx-ast-utils": { "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.5", "object.assign": "^4.1.3" @@ -9076,23 +6958,11 @@ "node": ">=4.0" } }, - "node_modules/just-debounce-it": { - "version": "1.5.0", - "license": "MIT" - }, "node_modules/just-extend": { "version": "4.2.1", "dev": true, "license": "MIT" }, - "node_modules/just-safe-get": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/just-safe-set": { - "version": "2.2.3", - "license": "MIT" - }, "node_modules/jwa": { "version": "1.4.1", "license": "MIT", @@ -9124,20 +6994,6 @@ "follow-redirects": "^1.14.0" } }, - "node_modules/k-bucket": { - "version": "5.1.0", - "license": "MIT", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/k-bucket/node_modules/randombytes": { - "version": "2.1.0", - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, "node_modules/kareem": { "version": "2.3.2", "license": "Apache-2.0" @@ -9186,14 +7042,6 @@ "node": ">=0.10.0" } }, - "node_modules/klaw": { - "version": "1.3.1", - "license": "MIT", - "optional": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" - } - }, "node_modules/klaw-sync": { "version": "6.0.0", "license": "MIT", @@ -9477,124 +7325,6 @@ "version": "0.0.6", "dev": true }, - "node_modules/level": { - "version": "7.0.1", - "license": "MIT", - "dependencies": { - "level-js": "^6.1.0", - "level-packager": "^6.0.1", - "leveldown": "^6.1.0" - }, - "engines": { - "node": ">=10.12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/level" - } - }, - "node_modules/level-codec": { - "version": "10.0.0", - "license": "MIT", - "dependencies": { - "buffer": "^6.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/level-concat-iterator": { - "version": "3.1.0", - "license": "MIT", - "dependencies": { - "catering": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/level-errors": { - "version": "3.0.1", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/level-iterator-stream": { - "version": "5.0.0", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/level-js": { - "version": "6.1.0", - "license": "MIT", - "dependencies": { - "abstract-leveldown": "^7.2.0", - "buffer": "^6.0.3", - "inherits": "^2.0.3", - "ltgt": "^2.1.2", - "run-parallel-limit": "^1.1.0" - } - }, - "node_modules/level-packager": { - "version": "6.0.1", - "license": "MIT", - "dependencies": { - "encoding-down": "^7.1.0", - "levelup": "^5.1.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/level-supports": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/leveldown": { - "version": "6.1.1", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "abstract-leveldown": "^7.2.0", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/levelup": { - "version": "5.1.1", - "license": "MIT", - "dependencies": { - "catering": "^2.0.0", - "deferred-leveldown": "^7.0.0", - "level-errors": "^3.0.1", - "level-iterator-stream": "^5.0.0", - "level-supports": "^2.0.1", - "queue-microtask": "^1.2.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/leven": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/levn": { "version": "0.4.1", "dev": true, @@ -9670,19 +7400,6 @@ "node": ">=15.0.0" } }, - "node_modules/libp2p-bootstrap": { - "version": "0.14.0", - "license": "MIT", - "dependencies": { - "debug": "^4.3.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "peer-id": "^0.16.0" - }, - "engines": { - "node": ">=15.0.0" - } - }, "node_modules/libp2p-crypto": { "version": "0.21.2", "license": "MIT", @@ -9700,58 +7417,6 @@ "node": ">=12.0.0" } }, - "node_modules/libp2p-delegated-content-routing": { - "version": "0.11.2", - "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "it-drain": "^1.0.3", - "multiaddr": "^10.0.0", - "p-defer": "^3.0.0", - "p-queue": "^6.2.1", - "peer-id": "^0.16.0" - } - }, - "node_modules/libp2p-delegated-peer-routing": { - "version": "0.11.1", - "license": "MIT", - "dependencies": { - "debug": "^4.3.1", - "multiformats": "^9.0.2", - "p-defer": "^3.0.0", - "p-queue": "^6.3.0", - "peer-id": "^0.16.0" - } - }, - "node_modules/libp2p-floodsub": { - "version": "0.29.1", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "debug": "^4.2.0", - "libp2p-interfaces": "^4.0.5", - "time-cache": "^0.3.0", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/libp2p-gossipsub": { - "version": "0.13.0", - "license": "Apache-2.0", - "dependencies": { - "@types/debug": "^4.1.7", - "debug": "^4.3.1", - "denque": "^1.5.0", - "err-code": "^3.0.1", - "it-pipe": "^1.1.0", - "libp2p-interfaces": "^4.0.4", - "peer-id": "^0.16.0", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - } - }, "node_modules/libp2p-interfaces": { "version": "4.0.6", "license": "MIT", @@ -9771,101 +7436,6 @@ "uint8arrays": "^3.0.0" } }, - "node_modules/libp2p-kad-dht": { - "version": "0.28.6", - "license": "Apache-2.0 OR MIT", - "dependencies": { - "any-signal": "^3.0.0", - "datastore-core": "^7.0.0", - "debug": "^4.3.1", - "err-code": "^3.0.0", - "hashlru": "^2.3.0", - "interface-datastore": "^6.0.2", - "it-all": "^1.0.5", - "it-drain": "^1.0.4", - "it-first": "^1.0.4", - "it-length": "^1.0.3", - "it-length-prefixed": "^5.0.2", - "it-map": "^1.0.5", - "it-merge": "^1.0.3", - "it-parallel": "^2.0.1", - "it-pipe": "^1.1.0", - "it-take": "^1.0.2", - "k-bucket": "^5.1.0", - "libp2p-crypto": "^0.21.0", - "libp2p-interfaces": "^4.0.0", - "libp2p-record": "^0.10.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.5", - "p-defer": "^3.0.0", - "p-map": "^4.0.0", - "p-queue": "^6.6.2", - "peer-id": "^0.16.0", - "private-ip": "^2.3.3", - "protobufjs": "^6.10.2", - "streaming-iterables": "^6.0.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/libp2p-mdns": { - "version": "0.18.0", - "license": "MIT", - "dependencies": { - "debug": "^4.3.1", - "multiaddr": "^10.0.0", - "multicast-dns": "^7.2.0", - "peer-id": "^0.16.0" - } - }, - "node_modules/libp2p-mplex": { - "version": "0.10.7", - "license": "MIT", - "dependencies": { - "abortable-iterator": "^3.0.2", - "bl": "^5.0.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.1", - "varint": "^6.0.0" - } - }, - "node_modules/libp2p-record": { - "version": "0.10.6", - "license": "MIT", - "dependencies": { - "err-code": "^3.0.1", - "multiformats": "^9.4.5", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/libp2p-tcp": { - "version": "0.17.2", - "license": "MIT", - "dependencies": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "libp2p-utils": "^0.4.0", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "stream-to-it": "^0.2.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/libp2p-utils": { "version": "0.4.1", "license": "MIT", @@ -9879,74 +7449,6 @@ "private-ip": "^2.1.1" } }, - "node_modules/libp2p-webrtc-peer": { - "version": "10.0.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "debug": "^4.0.1", - "err-code": "^2.0.3", - "get-browser-rtc": "^1.0.0", - "queue-microtask": "^1.1.0", - "randombytes": "^2.0.3", - "readable-stream": "^3.4.0" - } - }, - "node_modules/libp2p-webrtc-peer/node_modules/err-code": { - "version": "2.0.3", - "license": "MIT" - }, - "node_modules/libp2p-webrtc-star": { - "version": "0.25.0", - "license": "(Apache-2.0 OR MIT)", - "dependencies": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "ipfs-utils": "^9.0.1", - "it-pipe": "^1.1.0", - "libp2p-utils": "^0.4.0", - "libp2p-webrtc-peer": "^10.0.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "p-defer": "^3.0.0", - "peer-id": "^0.16.0", - "socket.io-client": "^4.1.2", - "stream-to-it": "^0.2.2" - } - }, - "node_modules/libp2p-websockets": { - "version": "0.16.2", - "license": "MIT", - "dependencies": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "ipfs-utils": "^9.0.1", - "it-ws": "^4.0.0", - "libp2p-utils": "^0.4.0", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "p-defer": "^3.0.0", - "p-timeout": "^4.1.0" - } - }, "node_modules/libp2p/node_modules/bignumber.js": { "version": "9.0.2", "license": "MIT", @@ -10047,10 +7549,6 @@ "version": "4.17.21", "license": "MIT" }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "license": "MIT" - }, "node_modules/lodash.capitalize": { "version": "4.2.1", "dev": true, @@ -10061,11 +7559,6 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.flattendeep": { - "version": "4.4.0", - "dev": true, - "license": "MIT" - }, "node_modules/lodash.get": { "version": "4.4.2", "dev": true, @@ -10102,15 +7595,10 @@ }, "node_modules/lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lodash.once": { - "version": "4.1.1", + "dev": true, "license": "MIT" }, - "node_modules/lodash.throttle": { + "node_modules/lodash.once": { "version": "4.1.1", "license": "MIT" }, @@ -10164,9 +7652,8 @@ }, "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, + "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -10174,13 +7661,6 @@ "loose-envify": "cli.js" } }, - "node_modules/lower-case": { - "version": "2.0.2", - "license": "MIT", - "dependencies": { - "tslib": "^2.0.3" - } - }, "node_modules/lowercase-keys": { "version": "1.0.1", "license": "MIT", @@ -10198,10 +7678,6 @@ "node": ">=10" } }, - "node_modules/ltgt": { - "version": "2.2.1", - "license": "MIT" - }, "node_modules/mafmt": { "version": "10.0.0", "license": "MIT", @@ -10456,8 +7932,7 @@ }, "node_modules/minimal-slp-wallet": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimal-slp-wallet/-/minimal-slp-wallet-5.1.0.tgz", - "integrity": "sha512-ZOzvWKowVN32KUC9AGIIM8wLzG/fycmoat28aNfEy2mDrHonmQeyrRcLXv1B1cLYS/Gbe5q0kaRalQmgpyPf7A==", + "license": "MIT", "dependencies": { "@psf/bch-js": "6.4.5", "apidoc": "0.51.0", @@ -10568,37 +8043,6 @@ "node": ">=0.10.0" } }, - "node_modules/minipass": { - "version": "3.3.4", - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "license": "MIT", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/mocha": { "version": "10.0.0", "dev": true, @@ -10908,8 +8352,9 @@ } }, "node_modules/mongoose": { - "version": "5.13.13", - "license": "MIT", + "version": "5.13.14", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.13.14.tgz", + "integrity": "sha512-j+BlQjjxgZg0iWn42kLeZTB91OejcxWpY2Z50bsZTiKJ7HHcEtcY21Godw496GMkBqJMTzmW7G/kZ04mW+Cb7Q==", "dependencies": { "@types/bson": "1.x || 4.0.x", "@types/mongodb": "^3.5.27", @@ -11001,13 +8446,6 @@ "version": "2.0.0", "license": "MIT" }, - "node_modules/mri": { - "version": "1.1.4", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/ms": { "version": "2.1.2", "license": "MIT" @@ -11024,24 +8462,6 @@ "varint": "^6.0.0" } }, - "node_modules/multiaddr-to-uri": { - "version": "8.0.0", - "license": "MIT", - "dependencies": { - "multiaddr": "^10.0.0" - } - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "license": "MIT", - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, "node_modules/multiformats": { "version": "9.7.0", "license": "(Apache-2.0 AND MIT)" @@ -11063,13 +8483,6 @@ "uint8arrays": "^3.0.0" } }, - "node_modules/murmurhash3js-revisited": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/mutable-proxy": { "version": "1.0.0", "license": "MIT", @@ -11092,10 +8505,6 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/napi-macros": { - "version": "2.0.0", - "license": "MIT" - }, "node_modules/nat-api": { "version": "0.3.1", "license": "MIT", @@ -11228,13 +8637,6 @@ "uuid": "bin/uuid" } }, - "node_modules/native-abort-controller": { - "version": "1.0.4", - "license": "MIT", - "peerDependencies": { - "abort-controller": "*" - } - }, "node_modules/native-fetch": { "version": "3.0.0", "license": "MIT", @@ -11247,20 +8649,6 @@ "dev": true, "license": "MIT" }, - "node_modules/ndjson": { - "version": "1.5.0", - "license": "BSD-3-Clause", - "optional": true, - "dependencies": { - "json-stringify-safe": "^5.0.1", - "minimist": "^1.2.0", - "split2": "^2.1.0", - "through2": "^2.0.3" - }, - "bin": { - "ndjson": "cli.js" - } - }, "node_modules/negotiator": { "version": "0.6.3", "license": "MIT", @@ -11309,14 +8697,6 @@ "isarray": "0.0.1" } }, - "node_modules/no-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "node_modules/node-addon-api": { "version": "2.0.2", "license": "MIT" @@ -11332,8 +8712,6 @@ "node_modules/node-fetch": { "name": "@achingbrain/node-fetch", "version": "2.6.7", - "resolved": "https://registry.npmjs.org/@achingbrain/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-iTASGs+HTFK5E4ZqcMsHmeJ4zodyq8L38lZV33jwqcBJYoUt3HjN4+ot+O9/0b+ke8ddE7UgOtVuZN/OkV19/g==", "license": "MIT", "engines": { "node": "4.x || >=6.0.0" @@ -11355,17 +8733,6 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-preload": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "process-on-spawn": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/node-releases": { "version": "2.0.5", "license": "MIT" @@ -11442,19 +8809,6 @@ "node": ">=4" } }, - "node_modules/nopt": { - "version": "5.0.0", - "license": "ISC", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/normalize-package-data": { "version": "3.0.3", "dev": true, @@ -13934,374 +11288,6 @@ "inBundle": true, "license": "ISC" }, - "node_modules/npmlog": { - "version": "5.0.1", - "license": "ISC", - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "node_modules/nugget": { - "version": "2.0.2", - "license": "BSD", - "optional": true, - "dependencies": { - "debug": "^2.1.3", - "minimist": "^1.1.0", - "pretty-bytes": "^4.0.2", - "progress-stream": "^1.1.0", - "request": "^2.45.0", - "single-line-log": "^1.1.2", - "throttleit": "0.0.2" - }, - "bin": { - "nugget": "bin.js" - } - }, - "node_modules/nugget/node_modules/assert-plus": { - "version": "1.0.0", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/nugget/node_modules/aws-sign2": { - "version": "0.7.0", - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": "*" - } - }, - "node_modules/nugget/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/nugget/node_modules/forever-agent": { - "version": "0.6.1", - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": "*" - } - }, - "node_modules/nugget/node_modules/form-data": { - "version": "2.3.3", - "license": "MIT", - "optional": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/nugget/node_modules/http-signature": { - "version": "1.2.0", - "license": "MIT", - "optional": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "node_modules/nugget/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "optional": true - }, - "node_modules/nugget/node_modules/oauth-sign": { - "version": "0.9.0", - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": "*" - } - }, - "node_modules/nugget/node_modules/pretty-bytes": { - "version": "4.0.2", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/nugget/node_modules/qs": { - "version": "6.5.3", - "license": "BSD-3-Clause", - "optional": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/nugget/node_modules/request": { - "version": "2.88.2", - "license": "Apache-2.0", - "optional": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/nugget/node_modules/tough-cookie": { - "version": "2.5.0", - "license": "BSD-3-Clause", - "optional": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/nugget/node_modules/tunnel-agent": { - "version": "0.6.0", - "license": "Apache-2.0", - "optional": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/nugget/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "optional": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/number-is-nan": { - "version": "1.0.1", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nyc": { - "version": "15.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "bin": { - "nyc": "bin/nyc.js" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/nyc/node_modules/cliui": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/nyc/node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nyc/node_modules/p-locate": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-map": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/nyc/node_modules/path-exists": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/wrap-ansi": { - "version": "6.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/y18n": { - "version": "4.0.3", - "dev": true, - "license": "ISC" - }, - "node_modules/nyc/node_modules/yargs": { - "version": "15.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "18.1.3", - "dev": true, - "license": "ISC", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/oauth-sign": { "version": "0.3.0", "dev": true, @@ -14312,6 +11298,7 @@ }, "node_modules/object-assign": { "version": "4.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -14354,8 +11341,7 @@ }, "node_modules/object.assign": { "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", @@ -14371,9 +11357,8 @@ }, "node_modules/object.entries": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", - "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -14385,9 +11370,8 @@ }, "node_modules/object.fromentries": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", - "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -14402,9 +11386,8 @@ }, "node_modules/object.hasown": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz", - "integrity": "sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==", "dev": true, + "license": "MIT", "dependencies": { "define-properties": "^1.1.4", "es-abstract": "^1.19.5" @@ -14609,6 +11592,7 @@ }, "node_modules/p-map": { "version": "4.0.0", + "dev": true, "license": "MIT", "dependencies": { "aggregate-error": "^3.0.0" @@ -14718,13 +11702,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-timeout": { - "version": "4.1.0", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, "node_modules/p-try": { "version": "1.0.0", "dev": true, @@ -14733,14 +11710,9 @@ "node": ">=4" } }, - "node_modules/p-try-each": { - "version": "1.0.1", - "license": "MIT" - }, "node_modules/p2wdb": { "version": "2.2.3", - "resolved": "https://registry.npmjs.org/p2wdb/-/p2wdb-2.2.3.tgz", - "integrity": "sha512-eZQaE3iVudOJV6Iji/fBO20tYhs23EmtcxLZbXK7ZjY+c0NysBzhS0mGCkEUWrU/qBthjIEZ2O5detuAHsmHCw==", + "license": "MIT", "dependencies": { "apidoc": "0.52.0", "axios": "0.24.0" @@ -14748,8 +11720,7 @@ }, "node_modules/p2wdb/node_modules/apidoc": { "version": "0.52.0", - "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.52.0.tgz", - "integrity": "sha512-k0gaMI7LWxaqKt2D+twC6XpI8X5SHkJalfo8TmF72d2TSNABquqB8LyIrVYzLcadcHuLMRFDaDibOK271gD67w==", + "license": "MIT", "os": [ "darwin", "freebsd", @@ -14788,16 +11759,14 @@ }, "node_modules/p2wdb/node_modules/axios": { "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.4" } }, "node_modules/p2wdb/node_modules/glob": { "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -14813,20 +11782,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/package-hash": { - "version": "4.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/package-json": { "version": "6.5.0", "license": "MIT", @@ -14847,18 +11802,6 @@ "semver": "bin/semver.js" } }, - "node_modules/pako": { - "version": "1.0.11", - "license": "(MIT AND Zlib)" - }, - "node_modules/param-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/parent-module": { "version": "1.0.1", "dev": true, @@ -14898,14 +11841,6 @@ "node": ">= 0.8" } }, - "node_modules/pascal-case": { - "version": "3.1.2", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/passport": { "version": "0.4.1", "license": "MIT", @@ -14936,25 +11871,6 @@ "version": "1.0.0", "license": "MIT" }, - "node_modules/path-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/path-exists": { - "version": "2.1.0", - "license": "MIT", - "optional": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/path-is-absolute": { "version": "1.0.1", "license": "MIT", @@ -15010,17 +11926,6 @@ "node": ">=0.12" } }, - "node_modules/peek-readable": { - "version": "4.1.0", - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, "node_modules/peer-id": { "version": "0.16.0", "license": "MIT", @@ -15035,11 +11940,6 @@ "node": ">=15.0.0" } }, - "node_modules/pend": { - "version": "1.2.0", - "license": "MIT", - "optional": true - }, "node_modules/performance-now": { "version": "2.1.0", "license": "MIT" @@ -15066,80 +11966,6 @@ "node": ">=4" } }, - "node_modules/pinkie": { - "version": "2.0.4", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "license": "MIT", - "optional": true, - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pino": { - "version": "6.14.0", - "license": "MIT", - "dependencies": { - "fast-redact": "^3.0.0", - "fast-safe-stringify": "^2.0.8", - "flatstr": "^1.0.12", - "pino-std-serializers": "^3.1.0", - "process-warning": "^1.0.0", - "quick-format-unescaped": "^4.0.3", - "sonic-boom": "^1.0.2" - }, - "bin": { - "pino": "bin.js" - } - }, - "node_modules/pino-pretty": { - "version": "4.8.0", - "license": "MIT", - "dependencies": { - "@hapi/bourne": "^2.0.0", - "args": "^5.0.1", - "chalk": "^4.0.0", - "dateformat": "^4.5.1", - "fast-safe-stringify": "^2.0.7", - "jmespath": "^0.15.0", - "joycon": "^2.2.5", - "pump": "^3.0.0", - "readable-stream": "^3.6.0", - "rfdc": "^1.3.0", - "split2": "^3.1.1", - "strip-json-comments": "^3.1.1" - }, - "bin": { - "pino-pretty": "bin.js" - } - }, - "node_modules/pino-pretty/node_modules/joycon": { - "version": "2.2.5", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pino-pretty/node_modules/split2": { - "version": "3.2.2", - "license": "ISC", - "dependencies": { - "readable-stream": "^3.0.0" - } - }, - "node_modules/pino-std-serializers": { - "version": "3.2.0", - "license": "MIT" - }, "node_modules/pkg-conf": { "version": "2.1.0", "dev": true, @@ -15251,16 +12077,6 @@ "node": ">=4" } }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/prismjs": { "version": "1.28.0", "license": "MIT", @@ -15282,124 +12098,29 @@ "version": "2.0.1", "license": "MIT" }, - "node_modules/process-on-spawn": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "fromentries": "^1.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/process-warning": { - "version": "1.0.0", - "license": "MIT" - }, "node_modules/progress": { "version": "2.0.3", + "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.4.0" } }, - "node_modules/progress-stream": { - "version": "1.2.0", - "license": "BSD-2-Clause", - "optional": true, - "dependencies": { - "speedometer": "~0.1.2", - "through2": "~0.2.3" - } - }, - "node_modules/progress-stream/node_modules/isarray": { - "version": "0.0.1", - "license": "MIT", - "optional": true - }, - "node_modules/progress-stream/node_modules/object-keys": { - "version": "0.4.0", - "license": "MIT", - "optional": true - }, - "node_modules/progress-stream/node_modules/readable-stream": { - "version": "1.1.14", - "license": "MIT", - "optional": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/progress-stream/node_modules/string_decoder": { - "version": "0.10.31", - "license": "MIT", - "optional": true - }, - "node_modules/progress-stream/node_modules/through2": { - "version": "0.2.3", - "license": "MIT", - "optional": true, - "dependencies": { - "readable-stream": "~1.1.9", - "xtend": "~2.1.1" - } - }, - "node_modules/progress-stream/node_modules/xtend": { - "version": "2.1.2", - "optional": true, - "dependencies": { - "object-keys": "~0.4.0" - }, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/prom-client": { - "version": "14.0.1", - "license": "Apache-2.0", - "optional": true, - "dependencies": { - "tdigest": "^0.1.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/promise-timeout": { "version": "1.3.0", "license": "MIT" }, "node_modules/prop-types": { "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dev": true, + "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" } }, - "node_modules/proper-lockfile": { - "version": "4.1.2", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" - } - }, - "node_modules/proper-lockfile/node_modules/retry": { - "version": "0.12.0", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, "node_modules/protobufjs": { "version": "6.11.3", "hasInstallScript": true, @@ -15428,11 +12149,6 @@ "version": "18.0.0", "license": "MIT" }, - "node_modules/pseudomap": { - "version": "1.0.2", - "license": "ISC", - "optional": true - }, "node_modules/psl": { "version": "1.8.0", "license": "MIT" @@ -15516,6 +12232,7 @@ }, "node_modules/queue-microtask": { "version": "1.2.3", + "dev": true, "funding": [ { "type": "github", @@ -15532,10 +12249,6 @@ ], "license": "MIT" }, - "node_modules/quick-format-unescaped": { - "version": "4.0.4", - "license": "MIT" - }, "node_modules/quick-lru": { "version": "4.0.1", "dev": true, @@ -15544,21 +12257,6 @@ "node": ">=8" } }, - "node_modules/rabin-wasm": { - "version": "0.1.5", - "license": "MIT", - "dependencies": { - "@assemblyscript/loader": "^0.9.4", - "bl": "^5.0.0", - "debug": "^4.3.1", - "minimist": "^1.2.5", - "node-fetch": "^2.6.1", - "readable-stream": "^3.6.0" - }, - "bin": { - "rabin-wasm": "cli/bin.js" - } - }, "node_modules/random-bytes": { "version": "1.0.0", "license": "MIT", @@ -15639,9 +12337,8 @@ }, "node_modules/react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/react-native-fetch-api": { "version": "2.0.0", @@ -15788,20 +12485,6 @@ "node": ">= 6" } }, - "node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "license": "MIT", - "dependencies": { - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, "node_modules/readdirp": { "version": "3.6.0", "license": "MIT", @@ -15926,17 +12609,6 @@ "node": ">=8" } }, - "node_modules/release-zalgo": { - "version": "1.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "es6-error": "^4.0.1" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/request": { "version": "2.40.0", "dev": true, @@ -16026,6 +12698,7 @@ }, "node_modules/require-directory": { "version": "2.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -16040,11 +12713,6 @@ "node": ">=0.10.0" } }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, "node_modules/requires-port": { "version": "1.0.0", "license": "MIT" @@ -16169,12 +12837,9 @@ "node": ">=0.10.0" } }, - "node_modules/rfdc": { - "version": "1.3.0", - "license": "MIT" - }, "node_modules/rimraf": { "version": "3.0.2", + "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -16216,27 +12881,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/run-parallel-limit": { - "version": "1.1.0", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, "node_modules/safe-buffer": { "version": "5.1.2", "license": "MIT" @@ -16421,15 +13065,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sentence-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" - } - }, "node_modules/sequelize": { "version": "5.22.5", "license": "MIT", @@ -16482,10 +13117,6 @@ "safe-buffer": "^5.1.0" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "license": "ISC" - }, "node_modules/set-delayed-interval": { "version": "1.0.0", "license": "MIT" @@ -16655,57 +13286,6 @@ "version": "0.3.2", "license": "MIT" }, - "node_modules/single-line-log": { - "version": "1.1.2", - "license": "MIT", - "optional": true, - "dependencies": { - "string-width": "^1.0.1" - } - }, - "node_modules/single-line-log/node_modules/ansi-regex": { - "version": "2.1.1", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/single-line-log/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "license": "MIT", - "optional": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/single-line-log/node_modules/string-width": { - "version": "1.0.2", - "license": "MIT", - "optional": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/single-line-log/node_modules/strip-ansi": { - "version": "3.0.1", - "license": "MIT", - "optional": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/sinon": { "version": "9.2.4", "dev": true, @@ -16774,14 +13354,6 @@ "bignumber.js": "^9.0.0" } }, - "node_modules/snake-case": { - "version": "3.0.4", - "license": "MIT", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/sntp": { "version": "0.2.4", "dev": true, @@ -16793,51 +13365,6 @@ "node": ">=0.8.0" } }, - "node_modules/socket.io-client": { - "version": "4.5.1", - "license": "MIT", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.2", - "engine.io-client": "~6.2.1", - "socket.io-parser": "~4.2.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-parser": { - "version": "4.2.1", - "license": "MIT", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sonic-boom": { - "version": "1.4.1", - "license": "MIT", - "dependencies": { - "atomic-sleep": "^1.0.0", - "flatstr": "^1.0.12" - } - }, - "node_modules/sort-keys": { - "version": "4.2.0", - "license": "MIT", - "dependencies": { - "is-plain-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/source-list-map": { "version": "2.0.1", "license": "MIT" @@ -16857,10 +13384,6 @@ "source-map": "^0.6.0" } }, - "node_modules/sparse-array": { - "version": "1.3.2", - "license": "ISC" - }, "node_modules/sparse-bitfield": { "version": "3.0.3", "license": "MIT", @@ -16874,22 +13397,6 @@ "dev": true, "license": "MIT" }, - "node_modules/spawn-wrap": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/spdx-correct": { "version": "3.1.1", "dev": true, @@ -16918,10 +13425,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/speedometer": { - "version": "0.1.4", - "optional": true - }, "node_modules/split": { "version": "1.0.1", "dev": true, @@ -16933,14 +13436,6 @@ "node": "*" } }, - "node_modules/split2": { - "version": "2.2.0", - "license": "ISC", - "optional": true, - "dependencies": { - "through2": "^2.0.2" - } - }, "node_modules/sprintf-js": { "version": "1.1.2", "license": "BSD-3-Clause" @@ -16995,8 +13490,6 @@ }, "node_modules/standard": { "version": "17.0.0", - "resolved": "https://registry.npmjs.org/standard/-/standard-17.0.0.tgz", - "integrity": "sha512-GlCM9nzbLUkr+TYR5I2WQoIah4wHA2lMauqbyPLV/oI5gJxqhHzhjl9EG2N0lr/nRqI3KCbCvm/W3smxvLaChA==", "dev": true, "funding": [ { @@ -17012,6 +13505,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "eslint": "^8.13.0", "eslint-config-standard": "17.0.0", @@ -17031,8 +13525,6 @@ }, "node_modules/standard-engine": { "version": "15.0.0", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-15.0.0.tgz", - "integrity": "sha512-4xwUhJNo1g/L2cleysUqUv7/btn7GEbYJvmgKrQ2vd/8pkTmN8cpqAZg+BT8Z1hNeEH787iWUdOpL8fmApLtxA==", "dev": true, "funding": [ { @@ -17048,6 +13540,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "get-stdin": "^8.0.0", "minimist": "^1.2.6", @@ -17060,9 +13553,8 @@ }, "node_modules/standard-engine/node_modules/find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^3.0.0" }, @@ -17072,9 +13564,8 @@ }, "node_modules/standard-engine/node_modules/load-json-file": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", @@ -17088,9 +13579,8 @@ }, "node_modules/standard-engine/node_modules/locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" @@ -17101,9 +13591,8 @@ }, "node_modules/standard-engine/node_modules/p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -17116,9 +13605,8 @@ }, "node_modules/standard-engine/node_modules/p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.0.0" }, @@ -17128,18 +13616,16 @@ }, "node_modules/standard-engine/node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/standard-engine/node_modules/parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, + "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -17150,27 +13636,24 @@ }, "node_modules/standard-engine/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/standard-engine/node_modules/pify": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/standard-engine/node_modules/pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^3.0.0", "load-json-file": "^5.2.0" @@ -17181,27 +13664,24 @@ }, "node_modules/standard-engine/node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/standard-engine/node_modules/type-fest": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=6" } }, "node_modules/standard/node_modules/@eslint/eslintrc": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz", - "integrity": "sha512-OhSY22oQQdw3zgPOOwdoj01l/Dzl1Z+xyUP33tkSN+aqyEhymJCcPHyXt+ylW8FSe0TfRC2VG+ROQOapD0aZSQ==", "dev": true, + "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -17222,9 +13702,8 @@ }, "node_modules/standard/node_modules/acorn": { "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -17234,15 +13713,13 @@ }, "node_modules/standard/node_modules/argparse": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true + "dev": true, + "license": "Python-2.0" }, "node_modules/standard/node_modules/eslint": { "version": "8.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.23.0.tgz", - "integrity": "sha512-pBG/XOn0MsJcKcTRLr27S5HpzQo4kLr+HjLQIyK4EiCsijDl/TB+h5uEuJU6bQ8Edvwz1XWOjpaP2qgnXGpTcA==", "dev": true, + "license": "MIT", "dependencies": { "@eslint/eslintrc": "^1.3.1", "@humanwhocodes/config-array": "^0.10.4", @@ -17296,8 +13773,6 @@ }, "node_modules/standard/node_modules/eslint-config-standard": { "version": "17.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz", - "integrity": "sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg==", "dev": true, "funding": [ { @@ -17313,6 +13788,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peerDependencies": { "eslint": "^8.0.1", "eslint-plugin-import": "^2.25.2", @@ -17322,8 +13798,6 @@ }, "node_modules/standard/node_modules/eslint-config-standard-jsx": { "version": "11.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-11.0.0.tgz", - "integrity": "sha512-+1EV/R0JxEK1L0NGolAr8Iktm3Rgotx3BKwgaX+eAuSX8D952LULKtjgZD3F+e6SvibONnhLwoTi9DPxN5LvvQ==", "dev": true, "funding": [ { @@ -17339,6 +13813,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peerDependencies": { "eslint": "^8.8.0", "eslint-plugin-react": "^7.28.0" @@ -17346,9 +13821,8 @@ }, "node_modules/standard/node_modules/eslint-plugin-promise": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.0.1.tgz", - "integrity": "sha512-uM4Tgo5u3UWQiroOyDEsYcVMOo7re3zmno0IZmB5auxoaQNIceAbXEkSt8RNrKtaYehARHG06pYK6K1JhtP0Zw==", "dev": true, + "license": "ISC", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -17358,9 +13832,8 @@ }, "node_modules/standard/node_modules/eslint-scope": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" @@ -17371,9 +13844,8 @@ }, "node_modules/standard/node_modules/eslint-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^2.0.0" }, @@ -17389,18 +13861,16 @@ }, "node_modules/standard/node_modules/eslint/node_modules/eslint-visitor-keys": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/standard/node_modules/espree": { "version": "9.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", - "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", @@ -17415,27 +13885,24 @@ }, "node_modules/standard/node_modules/espree/node_modules/eslint-visitor-keys": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/standard/node_modules/estraverse": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/standard/node_modules/find-up": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -17449,9 +13916,8 @@ }, "node_modules/standard/node_modules/glob-parent": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.3" }, @@ -17461,9 +13927,8 @@ }, "node_modules/standard/node_modules/globals": { "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.20.2" }, @@ -17476,18 +13941,16 @@ }, "node_modules/standard/node_modules/ignore": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/standard/node_modules/js-yaml": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -17497,9 +13960,8 @@ }, "node_modules/standard/node_modules/locate-path": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -17512,9 +13974,8 @@ }, "node_modules/standard/node_modules/p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -17527,9 +13988,8 @@ }, "node_modules/standard/node_modules/p-locate": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -17542,18 +14002,16 @@ }, "node_modules/standard/node_modules/path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/standard/node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -17652,9 +14110,8 @@ }, "node_modules/string.prototype.matchall": { "version": "4.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", - "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -17724,14 +14181,6 @@ "node": ">=8" } }, - "node_modules/strip-bom": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/strip-final-newline": { "version": "2.0.0", "license": "MIT", @@ -17752,6 +14201,7 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -17760,21 +14210,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strtok3": { - "version": "6.3.0", - "license": "MIT", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, "node_modules/style-loader": { "version": "3.3.1", "license": "MIT", @@ -17789,28 +14224,22 @@ "webpack": "^5.0.0" } }, - "node_modules/sumchecker": { - "version": "1.3.1", - "license": "Apache-2.0", - "optional": true, + "node_modules/super-regex": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/super-regex/-/super-regex-0.2.0.tgz", + "integrity": "sha512-WZzIx3rC1CvbMDloLsVw0lkZVKJWbrkJ0k1ghKFmcnPrW1+jWbgTkTEWVtD9lMdmI4jZEz40+naBxl1dCUhXXw==", "dependencies": { - "debug": "^2.2.0", - "es6-promise": "^4.0.5" + "clone-regexp": "^3.0.0", + "function-timeout": "^0.1.0", + "time-span": "^5.1.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sumchecker/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/sumchecker/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "optional": true - }, "node_modules/supports-color": { "version": "7.2.0", "license": "MIT", @@ -17979,29 +14408,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tar": { - "version": "6.1.11", - "license": "ISC", - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/tdigest": { - "version": "0.1.2", - "license": "MIT", - "optional": true, - "dependencies": { - "bintrees": "1.0.2" - } - }, "node_modules/temp-dir": { "version": "2.0.0", "dev": true, @@ -18131,18 +14537,13 @@ "dev": true, "license": "MIT" }, - "node_modules/throttleit": { - "version": "0.0.2", - "license": "MIT", - "optional": true - }, "node_modules/through": { "version": "2.3.8", "license": "MIT" }, "node_modules/through2": { "version": "2.0.5", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "readable-stream": "~2.3.6", @@ -18151,7 +14552,7 @@ }, "node_modules/through2/node_modules/readable-stream": { "version": "2.3.7", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", @@ -18165,21 +14566,24 @@ }, "node_modules/through2/node_modules/string_decoder": { "version": "1.1.1", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" } }, - "node_modules/thunky": { - "version": "1.1.0", - "license": "MIT" - }, - "node_modules/time-cache": { - "version": "0.3.0", - "license": "MIT", + "node_modules/time-span": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/time-span/-/time-span-5.1.0.tgz", + "integrity": "sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==", "dependencies": { - "lodash.throttle": "^4.1.1" + "convert-hrtime": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/timeout-abort-controller": { @@ -18189,25 +14593,6 @@ "retimer": "^3.0.0" } }, - "node_modules/timestamp-nano": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/tiny-each-async": { - "version": "2.0.3", - "license": "MIT" - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/to-readable-stream": { "version": "1.0.0", "license": "MIT", @@ -18232,21 +14617,6 @@ "node": ">=0.6" } }, - "node_modules/token-types": { - "version": "4.2.0", - "license": "MIT", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, "node_modules/toposort-class": { "version": "1.0.1", "license": "MIT" @@ -18348,10 +14718,6 @@ "node": ">=4" } }, - "node_modules/tslib": { - "version": "2.4.0", - "license": "0BSD" - }, "node_modules/tsscmp": { "version": "1.0.6", "license": "MIT", @@ -18410,11 +14776,6 @@ "node": ">= 0.6" } }, - "node_modules/typedarray": { - "version": "0.0.6", - "license": "MIT", - "optional": true - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "license": "MIT", @@ -18451,9 +14812,22 @@ "node": ">= 0.8" } }, + "node_modules/uint8arraylist": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/uint8arraylist/-/uint8arraylist-2.3.2.tgz", + "integrity": "sha512-4ybc/jixmtGhUrebJ0bzB95TjEbskWxBKBRrAozw7P6WcAcZdPMYSLdDuNoEEGo/Cwe+0TNic9CXzWUWzy1quw==", + "dependencies": { + "uint8arrays": "^3.1.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, "node_modules/uint8arrays": { - "version": "3.0.0", - "license": "MIT", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.0.tgz", + "integrity": "sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==", "dependencies": { "multiformats": "^9.4.2" } @@ -18486,6 +14860,15 @@ "node": "*" } }, + "node_modules/undici": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.10.0.tgz", + "integrity": "sha512-c8HsD3IbwmjjbLvoZuRI26TZic+TSEe8FPMLLOkN1AfYRhdjnKBU6yL+IwcSCbdZiX4e5t0lfMDLDCqj4Sq70g==", + "peer": true, + "engines": { + "node": ">=12.18" + } + }, "node_modules/unique-string": { "version": "2.0.0", "license": "MIT", @@ -18569,20 +14952,6 @@ "url": "https://github.com/yeoman/update-notifier?sponsor=1" } }, - "node_modules/upper-case": { - "version": "2.0.2", - "license": "MIT", - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/upper-case-first": { - "version": "2.0.2", - "license": "MIT", - "dependencies": { - "tslib": "^2.0.3" - } - }, "node_modules/uri-js": { "version": "4.4.1", "license": "BSD-2-Clause", @@ -18590,17 +14959,6 @@ "punycode": "^2.1.0" } }, - "node_modules/uri-to-multiaddr": { - "version": "6.0.0", - "license": "MIT", - "dependencies": { - "is-ip": "^3.1.0", - "multiaddr": "^10.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/url-join": { "version": "4.0.1", "dev": true, @@ -18645,6 +15003,20 @@ "license": "MIT", "peer": true }, + "node_modules/v8-to-istanbul": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz", + "integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, "node_modules/validate-npm-package-license": { "version": "3.0.4", "dev": true, @@ -18665,21 +15037,6 @@ "version": "6.0.0", "license": "MIT" }, - "node_modules/varint-decoder": { - "version": "1.0.0", - "license": "MIT", - "dependencies": { - "varint": "^5.0.0" - }, - "engines": { - "node": ">=4.0.0", - "npm": ">=3.0.0" - } - }, - "node_modules/varint-decoder/node_modules/varint": { - "version": "5.0.2", - "license": "MIT" - }, "node_modules/varuint-bitcoin": { "version": "1.1.2", "license": "MIT", @@ -18728,11 +15085,6 @@ "node": ">=10.13.0" } }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "license": "BSD-2-Clause", - "optional": true - }, "node_modules/webpack": { "version": "5.73.0", "license": "MIT", @@ -18927,11 +15279,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/which-module": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, "node_modules/which-pm-runs": { "version": "1.1.0", "dev": true, @@ -18958,13 +15305,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "license": "ISC", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/widest-line": { "version": "3.1.0", "license": "MIT", @@ -19085,43 +15425,6 @@ "typedarray-to-buffer": "^3.1.5" } }, - "node_modules/wrtc": { - "version": "0.4.7", - "bundleDependencies": [ - "node-pre-gyp" - ], - "hasInstallScript": true, - "license": "BSD-2-Clause", - "optional": true, - "dependencies": { - "node-pre-gyp": "^0.13.0" - }, - "engines": { - "node": "^8.11.2 || >=10.0.0" - }, - "optionalDependencies": { - "domexception": "^1.0.1" - } - }, - "node_modules/ws": { - "version": "7.5.8", - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/xdg-basedir": { "version": "4.0.0", "license": "MIT", @@ -19135,19 +15438,13 @@ "sax": ">=0.1.1" } }, - "node_modules/xmlhttprequest-ssl": { - "version": "2.0.0", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/xsalsa20": { "version": "1.2.0", "license": "MIT" }, "node_modules/xtend": { "version": "4.0.2", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=0.4" @@ -19155,6 +15452,7 @@ }, "node_modules/y18n": { "version": "5.0.8", + "dev": true, "license": "ISC", "engines": { "node": ">=10" @@ -19174,6 +15472,7 @@ }, "node_modules/yargs": { "version": "16.2.0", + "dev": true, "license": "MIT", "dependencies": { "cliui": "^7.0.2", @@ -19190,6 +15489,7 @@ }, "node_modules/yargs-parser": { "version": "20.2.4", + "dev": true, "license": "ISC", "engines": { "node": ">=10" @@ -19231,15 +15531,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yauzl": { - "version": "2.10.0", - "license": "MIT", - "optional": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, "node_modules/ylru": { "version": "1.3.2", "license": "MIT", @@ -19260,17 +15551,6 @@ } }, "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@assemblyscript/loader": { - "version": "0.9.4" - }, "@babel/code-frame": { "version": "7.18.6", "dev": true, @@ -19278,144 +15558,10 @@ "@babel/highlight": "^7.18.6" } }, - "@babel/compat-data": { - "version": "7.18.6", - "dev": true - }, - "@babel/core": { - "version": "7.18.6", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.18.7", - "dev": true, - "requires": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.6", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, "@babel/helper-validator-identifier": { "version": "7.18.6", "dev": true }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "dev": true - }, - "@babel/helpers": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, "@babel/highlight": { "version": "7.18.6", "dev": true, @@ -19469,68 +15615,12 @@ } } }, - "@babel/parser": { - "version": "7.18.6", + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "@babel/template": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/traverse": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-function-name": "^7.18.6", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "globals": { - "version": "11.12.0", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.18.7", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - } - }, - "@chainsafe/libp2p-noise": { - "version": "5.0.3", - "requires": { - "@stablelib/chacha20poly1305": "^1.0.1", - "@stablelib/hkdf": "^1.0.1", - "@stablelib/sha256": "^1.0.1", - "@stablelib/x25519": "^1.0.1", - "bl": "^5.0.0", - "debug": "^4.3.1", - "it-buffer": "^0.1.3", - "it-length-prefixed": "^5.0.3", - "it-pair": "^1.0.0", - "it-pb-rpc": "^0.2.0", - "it-pipe": "^1.1.0", - "peer-id": "^0.16.0", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - } - }, "@chris.troutner/bip32-utils": { "version": "1.0.5", "requires": { @@ -19598,249 +15688,8 @@ } } }, - "@grpc/grpc-js": { - "version": "1.6.7", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - }, - "dependencies": { - "@types/node": { - "version": "18.0.0" - } - } - }, - "@grpc/proto-loader": { - "version": "0.6.13", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.11.3", - "yargs": "^16.2.0" - } - }, - "@hapi/accept": { - "version": "5.0.2", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/ammo": { - "version": "5.0.1", - "requires": { - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/b64": { - "version": "5.0.0", - "requires": { - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/boom": { - "version": "9.1.4", - "requires": { - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/bounce": { - "version": "2.0.0", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/bourne": { - "version": "2.1.0" - }, - "@hapi/call": { - "version": "8.0.1", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/catbox": { - "version": "11.1.1", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/podium": "4.x.x", - "@hapi/validate": "1.x.x" - } - }, - "@hapi/catbox-memory": { - "version": "5.0.1", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/content": { - "version": "5.0.2", - "requires": { - "@hapi/boom": "9.x.x" - } - }, - "@hapi/cryptiles": { - "version": "5.1.0", - "requires": { - "@hapi/boom": "9.x.x" - } - }, - "@hapi/file": { - "version": "2.0.0" - }, - "@hapi/hapi": { - "version": "20.2.2", - "requires": { - "@hapi/accept": "^5.0.1", - "@hapi/ammo": "^5.0.1", - "@hapi/boom": "^9.1.0", - "@hapi/bounce": "^2.0.0", - "@hapi/call": "^8.0.0", - "@hapi/catbox": "^11.1.1", - "@hapi/catbox-memory": "^5.0.0", - "@hapi/heavy": "^7.0.1", - "@hapi/hoek": "^9.0.4", - "@hapi/mimos": "^6.0.0", - "@hapi/podium": "^4.1.1", - "@hapi/shot": "^5.0.5", - "@hapi/somever": "^3.0.0", - "@hapi/statehood": "^7.0.4", - "@hapi/subtext": "^7.0.3", - "@hapi/teamwork": "^5.1.1", - "@hapi/topo": "^5.0.0", - "@hapi/validate": "^1.1.1" - } - }, - "@hapi/heavy": { - "version": "7.0.1", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/validate": "1.x.x" - } - }, - "@hapi/hoek": { - "version": "9.3.0" - }, - "@hapi/iron": { - "version": "6.0.0", - "requires": { - "@hapi/b64": "5.x.x", - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/cryptiles": "5.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/mimos": { - "version": "6.0.0", - "requires": { - "@hapi/hoek": "9.x.x", - "mime-db": "1.x.x" - } - }, - "@hapi/nigel": { - "version": "4.0.2", - "requires": { - "@hapi/hoek": "^9.0.4", - "@hapi/vise": "^4.0.0" - } - }, - "@hapi/pez": { - "version": "5.0.3", - "requires": { - "@hapi/b64": "5.x.x", - "@hapi/boom": "9.x.x", - "@hapi/content": "^5.0.2", - "@hapi/hoek": "9.x.x", - "@hapi/nigel": "4.x.x" - } - }, - "@hapi/podium": { - "version": "4.1.3", - "requires": { - "@hapi/hoek": "9.x.x", - "@hapi/teamwork": "5.x.x", - "@hapi/validate": "1.x.x" - } - }, - "@hapi/shot": { - "version": "5.0.5", - "requires": { - "@hapi/hoek": "9.x.x", - "@hapi/validate": "1.x.x" - } - }, - "@hapi/somever": { - "version": "3.0.1", - "requires": { - "@hapi/bounce": "2.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/statehood": { - "version": "7.0.4", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/bounce": "2.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/cryptiles": "5.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/iron": "6.x.x", - "@hapi/validate": "1.x.x" - } - }, - "@hapi/subtext": { - "version": "7.0.4", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/content": "^5.0.2", - "@hapi/file": "2.x.x", - "@hapi/hoek": "9.x.x", - "@hapi/pez": "^5.0.1", - "@hapi/wreck": "17.x.x" - } - }, - "@hapi/teamwork": { - "version": "5.1.1" - }, - "@hapi/topo": { - "version": "5.1.0", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@hapi/validate": { - "version": "1.1.3", - "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0" - } - }, - "@hapi/vise": { - "version": "4.0.0", - "requires": { - "@hapi/hoek": "9.x.x" - } - }, - "@hapi/wreck": { - "version": "17.2.0", - "requires": { - "@hapi/boom": "9.x.x", - "@hapi/bourne": "2.x.x", - "@hapi/hoek": "9.x.x" - } - }, "@humanwhocodes/config-array": { "version": "0.10.4", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", - "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -19850,31 +15699,16 @@ }, "@humanwhocodes/gitignore-to-minimatch": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", - "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", "dev": true }, "@humanwhocodes/module-importer": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true }, "@humanwhocodes/object-schema": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, - "@ipld/car": { - "version": "4.1.3", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "cborg": "^1.9.0", - "multiformats": "^9.5.4", - "varint": "^6.0.0" - } - }, "@ipld/dag-cbor": { "version": "7.0.2", "requires": { @@ -19895,95 +15729,10 @@ "multiformats": "^9.5.4" } }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "esprima": { - "version": "4.0.1", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "dev": true - } - } - }, "@istanbuljs/schema": { "version": "0.1.3", "dev": true }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, "@jridgewell/resolve-uri": { "version": "3.0.8" }, @@ -20020,25 +15769,292 @@ "@leichtgewicht/ip-codec": { "version": "2.0.4" }, - "@mapbox/node-pre-gyp": { - "version": "1.0.9", + "@libp2p/interface-connection": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@libp2p/interface-connection/-/interface-connection-3.0.2.tgz", + "integrity": "sha512-38R2GQ6BCOtwMi5uWU5MLr+xfEpRmVK9gqOp7jNx+6T7TVn8ji4725XLXNfpzprbOrzZkqf2iER84s8+yX4pMA==", "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" + "@libp2p/interface-peer-id": "^1.0.0", + "@libp2p/interfaces": "^3.0.0", + "@multiformats/multiaddr": "^11.0.0", + "it-stream-types": "^1.0.4", + "uint8arraylist": "^2.1.1" + }, + "dependencies": { + "@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "requires": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + } + }, + "ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==" + }, + "is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "requires": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + } + }, + "native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "requires": {} + } } }, - "@multiformats/murmur3": { - "version": "1.1.3", + "@libp2p/interface-keychain": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interface-keychain/-/interface-keychain-1.0.3.tgz", + "integrity": "sha512-JCqe43LNwfgkZgT9bzUlrvaLzJmgIbY1MtsTxdJD/D9I7YyknTSGR3YII9BG0kRzex568/yiqlKxkYboxfh+BQ==", "requires": { - "multiformats": "^9.5.4", - "murmurhash3js-revisited": "^3.0.0" + "multiformats": "^9.6.3" + } + }, + "@libp2p/interface-peer-id": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@libp2p/interface-peer-id/-/interface-peer-id-1.0.4.tgz", + "integrity": "sha512-VRnE0MqmS1kN43hyKCEdkhz0gciuDML7hpL3p8zDm0LnveNMLJsR+/VSUaugCi/muOzLaLk26WffKWbMYfnGfA==", + "requires": { + "multiformats": "^9.6.3" + } + }, + "@libp2p/interface-peer-info": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interface-peer-info/-/interface-peer-info-1.0.3.tgz", + "integrity": "sha512-QKybxfp/NmDGDMkgf/CTt4fU03ajZnldHr9TYg5wMkJrnVaaHbhDTYBg5YWt+iOH1mgR89/dpKv/Na0ZE5sPIA==", + "requires": { + "@libp2p/interface-peer-id": "^1.0.0", + "@multiformats/multiaddr": "^11.0.0" + }, + "dependencies": { + "@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "requires": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + } + }, + "ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==" + }, + "is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "requires": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + } + }, + "native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "requires": {} + } + } + }, + "@libp2p/interface-pubsub": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@libp2p/interface-pubsub/-/interface-pubsub-2.1.0.tgz", + "integrity": "sha512-X+SIqzfeCO8ZDGrFTzH9EMwMf8ojW5nk20rxv3h1sCXEdfvyJCARZ51r9UlwJcnucnHqvFChfkbubAkrr3R4Cw==", + "requires": { + "@libp2p/interface-connection": "^3.0.0", + "@libp2p/interface-peer-id": "^1.0.0", + "@libp2p/interfaces": "^3.0.0", + "it-pushable": "^3.0.0", + "uint8arraylist": "^2.0.0" + }, + "dependencies": { + "it-pushable": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/it-pushable/-/it-pushable-3.1.0.tgz", + "integrity": "sha512-sEAdT86u6aIWvLkH4hlOmgvHpRyUOUG22HD365H+Dh67zYpaPdILmT4Om7Wjdb+m/SjEB81z3nYCoIrgVYpOFA==" + } + } + }, + "@libp2p/interfaces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.0.3.tgz", + "integrity": "sha512-8IIxw7TKpaYTtVfZN3jePLlm/E/VzqPpqerN+jhA+1s86akRSeyxVBYi3W9SWDSf0oIauHJSDE8KNxLceAfeag==" + }, + "@libp2p/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-Mtj7ImjRYbaANuT53QRqc7ooBYpWieLo7KbqYYGas5O2AWQeOu/zyGBMM35WbWIo7sMuhCas9XBPJdFOR7A05w==", + "requires": { + "@libp2p/interface-peer-id": "^1.0.2", + "debug": "^4.3.3", + "interface-datastore": "^7.0.0", + "multiformats": "^9.6.3" + }, + "dependencies": { + "interface-datastore": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-7.0.0.tgz", + "integrity": "sha512-q9OveOhexQ3Fx8h4YbuR4mZtUHwvlOynKnIwTm6x8oBTWfIyAKtlYtrOYdlHfqQztbYpdzRFcapopNJBMx36NQ==", + "requires": { + "interface-store": "^3.0.0", + "nanoid": "^3.0.2", + "uint8arrays": "^3.0.0" + } + }, + "interface-store": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-3.0.0.tgz", + "integrity": "sha512-IBJn3hE6hYutwdDcStR76mcwfV98vZc49LkEN9ANHHpsxcm6YbGMJxowO2G3FITU4U5ZH4KJPlHOT6Oe2vzTWA==" + } + } + }, + "@libp2p/peer-id": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-1.1.15.tgz", + "integrity": "sha512-Y33JLEfsLmLUjuC2nhQ2lBXP6PIsR892gSsNy4Vd7oILkuRhjPouIojP9BbME0m9bhVbAws+Zh9NBKtp7UH7wA==", + "requires": { + "@libp2p/interface-peer-id": "^1.0.0", + "err-code": "^3.0.1", + "multiformats": "^9.6.3", + "uint8arrays": "^3.0.0" + } + }, + "@multiformats/multiaddr": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-10.5.0.tgz", + "integrity": "sha512-u4qHMyv25iAqCb9twJROoN1M8UDm8bureOCIzwz03fVhwJzV6DpgH1eFz9UAzDn7CpSShQ9SLS5MiC4hJjTfig==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "dependencies": { + "dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "requires": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + } + }, + "ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==" + }, + "is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "requires": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + } + }, + "native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "requires": {} + } + } + }, + "@multiformats/multiaddr-to-uri": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.2.tgz", + "integrity": "sha512-vrWmfFadmix5Ab9l//oRQdQ7O3J5bGJpJRMSm21bHlQB0XV4xtNU6vMZBVXeu3Su79LgflEp37cjTFE3yKf3Hw==", + "requires": { + "@multiformats/multiaddr": "^11.0.0" + }, + "dependencies": { + "@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", + "requires": { + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" + } + }, + "ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==" + }, + "is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "requires": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + } + }, + "native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "requires": {} + } } }, "@noble/ed25519": { @@ -20203,8 +16219,6 @@ }, "@psf/bch-js": { "version": "6.4.5", - "resolved": "https://registry.npmjs.org/@psf/bch-js/-/bch-js-6.4.5.tgz", - "integrity": "sha512-sH72zbJJI5oe9EUMczFQb0jCaNQb8rc3/86E6xXKl3325HCwBqE80BX7JFvZ97Qv1gGxwp/3WROp59v6Dz2NKA==", "requires": { "@chris.troutner/bip32-utils": "1.0.5", "@psf/bip21": "2.0.1", @@ -20395,18 +16409,6 @@ "read-pkg-up": "^7.0.0" } }, - "@sideway/address": { - "version": "4.1.4", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@sideway/formula": { - "version": "3.0.0" - }, - "@sideway/pinpoint": { - "version": "2.0.0" - }, "@sindresorhus/is": { "version": "0.14.0" }, @@ -20437,112 +16439,12 @@ "version": "0.7.1", "dev": true }, - "@socket.io/component-emitter": { - "version": "3.1.0" - }, - "@stablelib/aead": { - "version": "1.0.1" - }, - "@stablelib/binary": { - "version": "1.0.1", - "requires": { - "@stablelib/int": "^1.0.1" - } - }, - "@stablelib/bytes": { - "version": "1.0.1" - }, - "@stablelib/chacha": { - "version": "1.0.1", - "requires": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/chacha20poly1305": { - "version": "1.0.1", - "requires": { - "@stablelib/aead": "^1.0.1", - "@stablelib/binary": "^1.0.1", - "@stablelib/chacha": "^1.0.1", - "@stablelib/constant-time": "^1.0.1", - "@stablelib/poly1305": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/constant-time": { - "version": "1.0.1" - }, - "@stablelib/hash": { - "version": "1.0.1" - }, - "@stablelib/hkdf": { - "version": "1.0.1", - "requires": { - "@stablelib/hash": "^1.0.1", - "@stablelib/hmac": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/hmac": { - "version": "1.0.1", - "requires": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/int": { - "version": "1.0.1" - }, - "@stablelib/keyagreement": { - "version": "1.0.1", - "requires": { - "@stablelib/bytes": "^1.0.1" - } - }, - "@stablelib/poly1305": { - "version": "1.0.1", - "requires": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/random": { - "version": "1.0.1", - "requires": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/sha256": { - "version": "1.0.1", - "requires": { - "@stablelib/binary": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, - "@stablelib/wipe": { - "version": "1.0.1" - }, - "@stablelib/x25519": { - "version": "1.0.2", - "requires": { - "@stablelib/keyagreement": "^1.0.1", - "@stablelib/random": "^1.0.1", - "@stablelib/wipe": "^1.0.1" - } - }, "@szmarczak/http-timer": { "version": "1.1.2", "requires": { "defer-to-connect": "^1.0.1" } }, - "@tokenizer/token": { - "version": "0.3.0" - }, "@tootallnate/once": { "version": "2.0.0", "dev": true @@ -20553,12 +16455,6 @@ "@types/node": "*" } }, - "@types/debug": { - "version": "4.1.7", - "requires": { - "@types/ms": "*" - } - }, "@types/eslint": { "version": "8.4.3", "requires": { @@ -20576,6 +16472,12 @@ "@types/estree": { "version": "0.0.51" }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, "@types/json-schema": { "version": "7.0.11" }, @@ -20600,9 +16502,6 @@ "@types/node": "*" } }, - "@types/ms": { - "version": "0.7.31" - }, "@types/node": { "version": "11.11.6" }, @@ -20748,32 +16647,12 @@ "abbrev": { "version": "1.1.1" }, - "abort-controller": { - "version": "3.0.0", - "requires": { - "event-target-shim": "^5.0.0" - } - }, "abortable-iterator": { "version": "3.0.2", "requires": { "get-iterator": "^1.0.2" } }, - "abstract-leveldown": { - "version": "7.2.0", - "requires": { - "buffer": "^6.0.3", - "catering": "^2.0.0", - "is-buffer": "^2.0.5", - "level-concat-iterator": "^3.0.0", - "level-supports": "^2.0.1", - "queue-microtask": "^1.2.3" - } - }, - "abstract-logging": { - "version": "2.0.1" - }, "accepts": { "version": "1.3.8", "requires": { @@ -20796,6 +16675,7 @@ }, "agent-base": { "version": "6.0.2", + "dev": true, "requires": { "debug": "4" } @@ -20910,27 +16790,6 @@ } } }, - "append-transform": { - "version": "2.0.0", - "dev": true, - "requires": { - "default-require-extensions": "^3.0.0" - } - }, - "aproba": { - "version": "2.0.0" - }, - "archy": { - "version": "1.0.0", - "dev": true - }, - "are-we-there-yet": { - "version": "2.0.0", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, "argparse": { "version": "0.1.16", "dev": true, @@ -20939,55 +16798,6 @@ "underscore.string": "~2.4.0" } }, - "args": { - "version": "5.0.3", - "requires": { - "camelcase": "5.0.0", - "chalk": "2.4.2", - "leven": "2.1.0", - "mri": "1.1.4" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "requires": { - "color-convert": "^1.9.0" - } - }, - "camelcase": { - "version": "5.0.0" - }, - "chalk": { - "version": "2.4.2", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3" - }, - "escape-string-regexp": { - "version": "1.0.5" - }, - "has-flag": { - "version": "3.0.0" - }, - "supports-color": { - "version": "5.5.0", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "argv-formatter": { "version": "1.0.0", "dev": true @@ -21007,9 +16817,6 @@ "is-string": "^1.0.7" } }, - "array-shuffle": { - "version": "2.0.0" - }, "array-union": { "version": "2.1.0", "dev": true @@ -21035,8 +16842,6 @@ }, "array.prototype.flatmap": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz", - "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -21074,9 +16879,6 @@ "asynckit": { "version": "0.4.0" }, - "atomic-sleep": { - "version": "1.0.0" - }, "available-typed-arrays": { "version": "1.0.5" }, @@ -21112,8 +16914,6 @@ }, "bch-consumer": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/bch-consumer/-/bch-consumer-1.3.1.tgz", - "integrity": "sha512-8ZoyFp4pLJFAOzM482K22sVL2FpuxhkYRtZuLLsMH9L442mRABjsAP7fTh91W5er40r8RGN/CSKi2TMyUmrY1Q==", "requires": { "@psf/bch-js": "6.4.5", "apidoc": "0.51.0", @@ -21122,8 +16922,6 @@ "dependencies": { "apidoc": { "version": "0.51.0", - "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.51.0.tgz", - "integrity": "sha512-3P4srhm6NA+kE/YRM4qL5jESElpQQJL+Z8n7hyr4uC+1DSwGzmE6adXPVxuT/hpDyShrqmRlHk8hf40RSqEsNw==", "requires": { "bootstrap": "3.4.1", "commander": "^8.3.0", @@ -21151,16 +16949,12 @@ }, "axios": { "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", "requires": { "follow-redirects": "^1.14.7" } }, "glob": { "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -21227,8 +17021,6 @@ }, "bch-message-lib": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/bch-message-lib/-/bch-message-lib-2.2.1.tgz", - "integrity": "sha512-1hWLC0v0jdPWVdxxhLNpREoW91PZGy69PxxOs4wZmlZo00bHm7OPGhmaugh7ilMw+ouLn59vY//lSX2rOn65Kw==", "requires": {} }, "bch-token-sweep": { @@ -21283,10 +17075,6 @@ "file-uri-to-path": "1.0.0" } }, - "bintrees": { - "version": "1.0.2", - "optional": true - }, "bip-schnorr": { "version": "0.3.0", "requires": { @@ -21370,31 +17158,6 @@ "browser-readablestream-to-it": "^1.0.3" } }, - "blockstore-core": { - "version": "1.0.5", - "requires": { - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-store": "^2.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.4", - "it-filter": "^1.0.2", - "it-take": "^1.0.1", - "multiformats": "^9.4.7" - } - }, - "blockstore-datastore-adapter": { - "version": "2.0.3", - "requires": { - "blockstore-core": "^1.0.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "it-drain": "^1.0.1", - "it-pushable": "^1.4.2", - "multiformats": "^9.1.0" - } - }, "bluebird": { "version": "3.5.1" }, @@ -21504,10 +17267,6 @@ "ieee754": "^1.2.1" } }, - "buffer-crc32": { - "version": "0.2.13", - "optional": true - }, "buffer-equal-constant-time": { "version": "1.0.1" }, @@ -21522,19 +17281,85 @@ }, "builtins": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", "dev": true, "requires": { "semver": "^7.0.0" } }, - "byteman": { - "version": "1.3.5" - }, "bytes": { "version": "3.1.2" }, + "c8": { + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", + "integrity": "sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.3", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^9.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } + } + }, "cache-content-type": { "version": "1.0.1", "requires": { @@ -21565,16 +17390,6 @@ } } }, - "caching-transform": { - "version": "4.0.0", - "dev": true, - "requires": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - } - }, "call-bind": { "version": "1.0.2", "requires": { @@ -21586,13 +17401,6 @@ "version": "3.1.0", "dev": true }, - "camel-case": { - "version": "4.1.2", - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "camelcase": { "version": "5.3.1", "dev": true @@ -21609,14 +17417,6 @@ "caniuse-lite": { "version": "1.0.30001361" }, - "capital-case": { - "version": "1.0.4", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" - } - }, "cardinal": { "version": "2.1.1", "dev": true, @@ -21634,9 +17434,6 @@ "big-integer": "^1.6.34" } }, - "catering": { - "version": "2.1.1" - }, "cborg": { "version": "1.9.4" }, @@ -21659,23 +17456,6 @@ "supports-color": "^7.1.0" } }, - "change-case": { - "version": "4.1.2", - "requires": { - "camel-case": "^4.1.2", - "capital-case": "^1.0.4", - "constant-case": "^3.0.4", - "dot-case": "^3.0.4", - "header-case": "^2.0.4", - "no-case": "^3.0.4", - "param-case": "^3.0.4", - "pascal-case": "^3.1.2", - "path-case": "^3.0.4", - "sentence-case": "^3.0.4", - "snake-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "check-error": { "version": "1.0.2", "dev": true @@ -21693,9 +17473,6 @@ "readdirp": "~3.6.0" } }, - "chownr": { - "version": "2.0.0" - }, "chrome-trace-event": { "version": "1.0.3" }, @@ -21728,6 +17505,7 @@ }, "cliui": { "version": "7.0.4", + "dev": true, "requires": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -21750,6 +17528,14 @@ } } }, + "clone-regexp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-3.0.0.tgz", + "integrity": "sha512-ujdnoq2Kxb8s3ItNBtnYeXdm07FcU0u8ARAT1lQ2YdMwQC+cdiXX8KoqMVuglztILivceTtp4ivqGSmEmhBUJw==", + "requires": { + "is-regexp": "^3.0.0" + } + }, "clone-response": { "version": "1.0.2", "requires": { @@ -21778,13 +17564,6 @@ "type-is": "^1.6.16" } }, - "code-point-at": { - "version": "1.1.0", - "optional": true - }, - "coercer": { - "version": "1.1.2" - }, "color": { "version": "3.2.1", "requires": { @@ -21819,9 +17598,6 @@ "simple-swizzle": "^0.2.2" } }, - "color-support": { - "version": "1.1.3" - }, "colorette": { "version": "2.0.19" }, @@ -21841,10 +17617,6 @@ "commander": { "version": "8.3.0" }, - "commondir": { - "version": "1.0.1", - "dev": true - }, "compare-func": { "version": "2.0.0", "dev": true, @@ -21860,38 +17632,6 @@ "concat-map": { "version": "0.0.1" }, - "concat-stream": { - "version": "1.6.2", - "optional": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "configstore": { "version": "5.0.1", "requires": { @@ -21903,17 +17643,6 @@ "xdg-basedir": "^4.0.0" } }, - "console-control-strings": { - "version": "1.1.0" - }, - "constant-case": { - "version": "3.0.4", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case": "^2.0.2" - } - }, "content-disposition": { "version": "0.5.4", "requires": { @@ -22004,6 +17733,11 @@ } } }, + "convert-hrtime": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/convert-hrtime/-/convert-hrtime-5.0.0.tgz", + "integrity": "sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==" + }, "convert-source-map": { "version": "1.8.0", "dev": true, @@ -22096,22 +17830,6 @@ "dev": true, "optional": true }, - "dag-jose": { - "version": "1.0.0", - "requires": { - "@ipld/dag-cbor": "^6.0.3", - "multiformats": "^9.0.2" - }, - "dependencies": { - "@ipld/dag-cbor": { - "version": "6.0.15", - "requires": { - "cborg": "^1.5.4", - "multiformats": "^9.5.4" - } - } - } - }, "dashdash": { "version": "1.14.1", "requires": { @@ -22139,43 +17857,6 @@ "uint8arrays": "^3.0.0" } }, - "datastore-fs": { - "version": "7.0.0", - "requires": { - "datastore-core": "^7.0.0", - "fast-write-atomic": "^0.2.0", - "interface-datastore": "^6.0.2", - "it-glob": "^1.0.1", - "it-map": "^1.0.5", - "it-parallel-batch": "^1.0.9", - "mkdirp": "^1.0.4" - } - }, - "datastore-level": { - "version": "8.0.0", - "requires": { - "datastore-core": "^7.0.0", - "interface-datastore": "^6.0.2", - "it-filter": "^1.0.2", - "it-map": "^1.0.5", - "it-sort": "^1.0.0", - "it-take": "^1.0.1", - "level": "^7.0.0" - } - }, - "datastore-pubsub": { - "version": "2.0.0", - "requires": { - "datastore-core": "^7.0.0", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-datastore": "^6.0.2", - "uint8arrays": "^3.0.0" - } - }, - "dateformat": { - "version": "4.6.3" - }, "debug": { "version": "4.3.4", "requires": { @@ -22229,23 +17910,9 @@ "execa": "^5.0.0" } }, - "default-require-extensions": { - "version": "3.0.0", - "dev": true, - "requires": { - "strip-bom": "^4.0.0" - } - }, "defer-to-connect": { "version": "1.1.3" }, - "deferred-leveldown": { - "version": "7.0.0", - "requires": { - "abstract-leveldown": "^7.2.0", - "inherits": "^2.0.3" - } - }, "define-properties": { "version": "1.1.4", "requires": { @@ -22289,9 +17956,6 @@ "destroy": { "version": "1.2.0" }, - "detect-libc": { - "version": "2.0.1" - }, "diff": { "version": "5.0.0", "dev": true @@ -22306,9 +17970,6 @@ "path-type": "^4.0.0" } }, - "dlv": { - "version": "1.1.3" - }, "dns-over-http-resolver": { "version": "1.2.3", "requires": { @@ -22336,20 +17997,6 @@ "esutils": "^2.0.2" } }, - "domexception": { - "version": "1.0.1", - "optional": true, - "requires": { - "webidl-conversions": "^4.0.2" - } - }, - "dot-case": { - "version": "3.0.4", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "dot-prop": { "version": "5.3.0", "requires": { @@ -22464,135 +18111,6 @@ "ee-first": { "version": "1.1.1" }, - "ejs": { - "version": "3.1.8", - "requires": { - "jake": "^10.8.5" - } - }, - "electron": { - "version": "1.8.8", - "optional": true, - "requires": { - "@types/node": "^8.0.24", - "electron-download": "^3.0.1", - "extract-zip": "^1.0.3" - }, - "dependencies": { - "@types/node": { - "version": "8.10.66", - "optional": true - } - } - }, - "electron-download": { - "version": "3.3.0", - "optional": true, - "requires": { - "debug": "^2.2.0", - "fs-extra": "^0.30.0", - "home-path": "^1.0.1", - "minimist": "^1.2.0", - "nugget": "^2.0.0", - "path-exists": "^2.1.0", - "rc": "^1.1.2", - "semver": "^5.3.0", - "sumchecker": "^1.2.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "fs-extra": { - "version": "0.30.0", - "optional": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "jsonfile": { - "version": "2.4.0", - "optional": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "ms": { - "version": "2.0.0", - "optional": true - }, - "rimraf": { - "version": "2.7.1", - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "5.7.1", - "optional": true - } - } - }, - "electron-eval": { - "version": "0.9.10", - "optional": true, - "requires": { - "cross-spawn": "^5.1.0", - "electron": "^1.6.11", - "headless": "https://github.com/paulkernfeld/node-headless/tarball/master", - "ndjson": "^1.5.0" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "optional": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "lru-cache": { - "version": "4.1.5", - "optional": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "optional": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "optional": true - }, - "which": { - "version": "1.3.1", - "optional": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "yallist": { - "version": "2.1.2", - "optional": true - } - } - }, "electron-fetch": { "version": "1.7.4", "requires": { @@ -22602,29 +18120,6 @@ "electron-to-chromium": { "version": "1.4.174" }, - "electron-webrtc": { - "version": "0.3.0", - "optional": true, - "requires": { - "debug": "^2.2.0", - "electron-eval": "^0.9.0", - "get-browser-rtc": "^1.0.2", - "hat": "^0.0.3" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "optional": true - } - } - }, "elliptic": { "version": "6.5.4", "requires": { @@ -22668,40 +18163,12 @@ "iconv-lite": "^0.6.2" } }, - "encoding-down": { - "version": "7.1.0", - "requires": { - "abstract-leveldown": "^7.2.0", - "inherits": "^2.0.3", - "level-codec": "^10.0.0", - "level-errors": "^3.0.0" - } - }, "end-of-stream": { "version": "1.4.4", "requires": { "once": "^1.4.0" } }, - "engine.io-client": { - "version": "6.2.2", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3", - "xmlhttprequest-ssl": "~2.0.0" - }, - "dependencies": { - "ws": { - "version": "8.2.3", - "requires": {} - } - } - }, - "engine.io-parser": { - "version": "5.0.4" - }, "enhanced-resolve": { "version": "5.10.0", "requires": { @@ -22806,14 +18273,6 @@ "is-symbol": "^1.0.2" } }, - "es6-error": { - "version": "4.1.1", - "dev": true - }, - "es6-promise": { - "version": "4.2.8", - "optional": true - }, "es6-promisify": { "version": "7.0.0" }, @@ -23018,8 +18477,6 @@ }, "eslint-plugin-n": { "version": "15.2.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.5.tgz", - "integrity": "sha512-8+BYsqiyZfpu6NXmdLOXVUfk8IocpCjpd8nMRRH0A9ulrcemhb2VI9RSJMEy5udx++A/YcVPD11zT8hpFq368g==", "dev": true, "requires": { "builtins": "^5.0.1", @@ -23034,8 +18491,6 @@ "dependencies": { "eslint-plugin-es": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", "dev": true, "requires": { "eslint-utils": "^2.0.0", @@ -23044,8 +18499,6 @@ "dependencies": { "eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -23053,16 +18506,12 @@ }, "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "eslint-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "requires": { "eslint-visitor-keys": "^2.0.0" @@ -23070,16 +18519,12 @@ }, "ignore": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "dev": true } } }, "eslint-plugin-react": { "version": "7.31.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz", - "integrity": "sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==", "dev": true, "requires": { "array-includes": "^3.1.5", @@ -23100,8 +18545,6 @@ "dependencies": { "doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -23109,14 +18552,10 @@ }, "estraverse": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true }, "resolve": { "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", "dev": true, "requires": { "is-core-module": "^2.9.0", @@ -23126,8 +18565,6 @@ }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } @@ -23210,12 +18647,6 @@ "version": "2.0.3", "dev": true }, - "event-iterator": { - "version": "2.0.0" - }, - "event-target-shim": { - "version": "5.0.1" - }, "eventemitter3": { "version": "4.0.7" }, @@ -23250,36 +18681,6 @@ "extend": { "version": "3.0.2" }, - "extract-zip": { - "version": "1.7.0", - "optional": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "mkdirp": { - "version": "0.5.6", - "optional": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "ms": { - "version": "2.0.0", - "optional": true - } - } - }, "extsprintf": { "version": "1.3.0" }, @@ -23307,15 +18708,6 @@ "version": "2.0.6", "dev": true }, - "fast-redact": { - "version": "3.1.1" - }, - "fast-safe-stringify": { - "version": "2.1.1" - }, - "fast-write-atomic": { - "version": "0.2.1" - }, "fastest-levenshtein": { "version": "1.0.12" }, @@ -23326,13 +18718,6 @@ "reusify": "^1.0.4" } }, - "fd-slicer": { - "version": "1.1.0", - "optional": true, - "requires": { - "pend": "~1.2.0" - } - }, "fecha": { "version": "4.2.3" }, @@ -23362,101 +18747,15 @@ "moment": "^2.11.2" } }, - "file-type": { - "version": "16.5.3", - "requires": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - } - }, "file-uri-to-path": { "version": "1.0.0" }, - "filelist": { - "version": "1.0.4", - "requires": { - "minimatch": "^5.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "5.1.0", - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "filesize": { - "version": "8.0.7" - }, "fill-range": { "version": "7.0.1", "requires": { "to-regex-range": "^5.0.1" } }, - "find-cache-dir": { - "version": "3.3.2", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - } - } - }, "find-up": { "version": "2.1.0", "dev": true, @@ -23483,9 +18782,6 @@ "rimraf": "^3.0.2" } }, - "flatstr": { - "version": "1.0.12" - }, "flatted": { "version": "3.2.6", "dev": true @@ -23493,9 +18789,6 @@ "fn.name": { "version": "1.1.0" }, - "fnv1a": { - "version": "1.1.1" - }, "follow-redirects": { "version": "1.15.1" }, @@ -23525,9 +18818,6 @@ "mime-types": "^2.1.12" } }, - "formidable": { - "version": "1.2.6" - }, "fresh": { "version": "0.5.2" }, @@ -23573,18 +18863,17 @@ "universalify": "^2.0.0" } }, - "fs-minipass": { - "version": "2.1.0", - "requires": { - "minipass": "^3.0.0" - } - }, "fs.realpath": { "version": "1.0.0" }, "function-bind": { "version": "1.1.1" }, + "function-timeout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/function-timeout/-/function-timeout-0.1.1.tgz", + "integrity": "sha512-0NVVC0TaP7dSTvn1yMiy6d6Q8gifzbvQafO46RtLG/kHJUBNd+pVRGOBoK44wNBvtSPUJRfdVvkFdD3p0xvyZg==" + }, "function.prototype.name": { "version": "1.1.5", "requires": { @@ -23601,42 +18890,12 @@ "functions-have-names": { "version": "1.2.3" }, - "gar": { - "version": "1.0.4" - }, - "gauge": { - "version": "3.0.2", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, "generic-pool": { "version": "3.8.2" }, - "gensync": { - "version": "1.0.0-beta.2", - "dev": true - }, - "get-browser-rtc": { - "version": "1.1.0" - }, "get-caller-file": { - "version": "2.0.5" - }, - "get-folder-size": { - "version": "2.0.1", - "requires": { - "gar": "^1.0.4", - "tiny-each-async": "2.0.3" - } + "version": "2.0.5", + "dev": true }, "get-func-name": { "version": "2.0.0", @@ -23658,8 +18917,6 @@ }, "get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "get-stream": { @@ -23793,17 +19050,8 @@ }, "grapheme-splitter": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, - "hamt-sharding": { - "version": "2.0.1", - "requires": { - "sparse-array": "^1.3.1", - "uint8arrays": "^3.0.0" - } - }, "handlebars": { "version": "4.7.7", "requires": { @@ -23814,15 +19062,6 @@ "wordwrap": "^1.0.0" } }, - "hapi-pino": { - "version": "8.5.0", - "requires": { - "@hapi/hoek": "^9.0.0", - "abstract-logging": "^2.0.0", - "pino": "^6.0.0", - "pino-pretty": "^4.0.0" - } - }, "har-schema": { "version": "2.0.0" }, @@ -23871,9 +19110,6 @@ "has-symbols": "^1.0.2" } }, - "has-unicode": { - "version": "2.0.1" - }, "has-yarn": { "version": "2.1.0" }, @@ -23897,21 +19133,9 @@ "minimalistic-assert": "^1.0.1" } }, - "hasha": { - "version": "5.2.2", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - } - }, "hashlru": { "version": "2.3.0" }, - "hat": { - "version": "0.0.3", - "optional": true - }, "hawk": { "version": "1.1.1", "dev": true, @@ -23927,18 +19151,6 @@ "version": "1.2.0", "dev": true }, - "header-case": { - "version": "2.0.4", - "requires": { - "capital-case": "^1.0.4", - "tslib": "^2.0.3" - } - }, - "headless": { - "version": "https://github.com/paulkernfeld/node-headless/tarball/master", - "integrity": "sha512-Y+OAUntNS8dvU9cX0NHuTegMu7sDbd9KbPHF/pe9YO64UvuSE14AEKmMqzRqywQx83a3Y23inqC6iDvAd6PIYA==", - "optional": true - }, "hmac-drbg": { "version": "1.0.1", "requires": { @@ -23952,10 +19164,6 @@ "dev": true, "optional": true }, - "home-path": { - "version": "1.0.7", - "optional": true - }, "hook-std": { "version": "2.0.0", "dev": true @@ -24017,6 +19225,7 @@ }, "https-proxy-agent": { "version": "5.0.1", + "dev": true, "requires": { "agent-base": "6", "debug": "4" @@ -24147,13 +19356,6 @@ "ini": { "version": "1.3.8" }, - "interface-blockstore": { - "version": "2.0.3", - "requires": { - "interface-store": "^2.0.2", - "multiformats": "^9.0.4" - } - }, "interface-datastore": { "version": "6.1.1", "requires": { @@ -24197,562 +19399,221 @@ "ipaddr.js": { "version": "2.0.1" }, - "ipfs": { - "version": "0.62.3", + "ipfs-coord-esm": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/ipfs-coord-esm/-/ipfs-coord-esm-9.1.3.tgz", + "integrity": "sha512-p/Gol69pU/KnfGX21gGirngLkOTvrcuZgRo5te0TAeaRID0nm8hpacCF0KB8HKLfbEIRMvZ0tO0TEM1XE/XHmQ==", "requires": { - "debug": "^4.1.1", - "ipfs-cli": "^0.12.3", - "ipfs-core": "^0.14.3", - "semver": "^7.3.2", - "update-notifier": "^5.0.0" - } - }, - "ipfs-bitswap": { - "version": "10.0.2", - "requires": { - "@vascosantos/moving-average": "^1.1.0", - "any-signal": "^3.0.0", - "blockstore-core": "^1.0.2", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "it-length-prefixed": "^5.0.2", - "it-pipe": "^1.1.0", - "just-debounce-it": "^1.1.0", - "libp2p-interfaces": "^4.0.0", - "multiaddr": "^10.0.0", - "multiformats": "^9.0.4", - "protobufjs": "^6.10.2", - "readable-stream": "^3.6.0", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0", - "varint-decoder": "^1.0.0" - } - }, - "ipfs-cli": { - "version": "0.12.3", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "byteman": "^1.3.5", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "execa": "^5.0.0", - "get-folder-size": "^2.0.1", - "ipfs-core": "^0.14.3", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-daemon": "^0.12.3", - "ipfs-http-client": "^56.0.3", - "ipfs-repo": "^14.0.1", - "ipfs-utils": "^9.0.6", - "it-all": "^1.0.4", - "it-concat": "^2.0.0", - "it-first": "^1.0.4", - "it-glob": "^1.0.0", - "it-map": "^1.0.5", - "it-merge": "^1.0.3", - "it-pipe": "^1.1.0", - "it-split": "^1.0.0", - "it-tar": "^4.0.0", - "jsondiffpatch": "^0.4.1", - "libp2p-crypto": "^0.21.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "pretty-bytes": "^5.4.1", - "progress": "^2.0.3", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0", - "yargs": "^16.0.3" - }, - "dependencies": { - "ipfs-http-client": { - "version": "56.0.3", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "dag-jose": "^1.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-utils": "^9.0.6", - "it-first": "^1.0.6", - "it-last": "^1.0.4", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0" - } - } - } - }, - "ipfs-coord": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/ipfs-coord/-/ipfs-coord-8.0.5.tgz", - "integrity": "sha512-V4pqR+MU290ZxFRE+Rx/7JuxR7LsOFBLuL0av3eVU5ZQWqeF/Zi9vh52zCqpp1IBCXi4QXNZGlysvm16xFDXww==", - "requires": { - "axios": "0.21.4", "bch-encrypt-lib": "2.0.0", - "uuid": "8.3.2" + "uuid": "9.0.0" }, "dependencies": { - "axios": { - "version": "0.21.4", - "requires": { - "follow-redirects": "^1.14.0" - } + "uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==" } } }, - "ipfs-core": { - "version": "0.14.3", - "requires": { - "@chainsafe/libp2p-noise": "^5.0.0", - "@ipld/car": "^4.1.0", - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "@multiformats/murmur3": "^1.1.1", - "any-signal": "^3.0.0", - "array-shuffle": "^2.0.0", - "blockstore-core": "^1.0.2", - "blockstore-datastore-adapter": "^2.0.2", - "dag-jose": "^1.0.0", - "datastore-core": "^7.0.0", - "datastore-pubsub": "^2.0.0", - "debug": "^4.1.1", - "dlv": "^1.1.3", - "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "hashlru": "^2.3.0", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "ipfs-bitswap": "^10.0.1", - "ipfs-core-config": "^0.3.3", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-http-client": "^56.0.3", - "ipfs-repo": "^14.0.1", - "ipfs-unixfs": "^6.0.3", - "ipfs-unixfs-exporter": "^7.0.3", - "ipfs-unixfs-importer": "^9.0.3", - "ipfs-utils": "^9.0.6", - "ipns": "^0.16.0", - "is-domain-name": "^1.0.1", - "is-ipfs": "^6.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-filter": "^1.0.2", - "it-first": "^1.0.4", - "it-last": "^1.0.4", - "it-map": "^1.0.4", - "it-merge": "^1.0.2", - "it-parallel": "^2.0.1", - "it-peekable": "^1.0.2", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "it-tar": "^4.0.0", - "it-to-buffer": "^2.0.0", - "just-safe-set": "^2.2.1", - "libp2p": "^0.36.2", - "libp2p-bootstrap": "^0.14.0", - "libp2p-crypto": "^0.21.1", - "libp2p-delegated-content-routing": "^0.11.1", - "libp2p-delegated-peer-routing": "^0.11.0", - "libp2p-record": "^0.10.3", - "mafmt": "^10.0.0", - "merge-options": "^3.0.4", - "mortice": "^2.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "pako": "^1.0.2", - "parse-duration": "^1.0.0", - "peer-id": "^0.16.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0" - }, - "dependencies": { - "ipfs-http-client": { - "version": "56.0.3", - "requires": { - "@ipld/dag-cbor": "^7.0.0", - "@ipld/dag-json": "^8.0.1", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "dag-jose": "^1.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-utils": "^9.0.6", - "it-first": "^1.0.6", - "it-last": "^1.0.4", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "stream-to-it": "^0.2.2", - "uint8arrays": "^3.0.0" - } - } - } - }, - "ipfs-core-config": { - "version": "0.3.3", - "requires": { - "@chainsafe/libp2p-noise": "^5.0.1", - "blockstore-datastore-adapter": "^2.0.2", - "datastore-core": "^7.0.0", - "datastore-fs": "^7.0.0", - "datastore-level": "^8.0.0", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "hashlru": "^2.3.0", - "interface-datastore": "^6.0.2", - "ipfs-repo": "^14.0.1", - "ipfs-utils": "^9.0.6", - "ipns": "^0.16.0", - "is-ipfs": "^6.0.1", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-foreach": "^0.1.1", - "libp2p-floodsub": "^0.29.0", - "libp2p-gossipsub": "0.13.0", - "libp2p-kad-dht": "^0.28.5", - "libp2p-mdns": "^0.18.0", - "libp2p-mplex": "^0.10.2", - "libp2p-tcp": "^0.17.1", - "libp2p-webrtc-star": "^0.25.0", - "libp2p-websockets": "^0.16.2", - "p-queue": "^6.6.1", - "uint8arrays": "^3.0.0" - } - }, - "ipfs-core-types": { - "version": "0.10.3", - "requires": { - "@ipld/dag-pb": "^2.1.3", - "interface-datastore": "^6.0.2", - "ipfs-unixfs": "^6.0.3", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1" - } - }, - "ipfs-core-utils": { - "version": "0.14.3", - "requires": { - "any-signal": "^3.0.0", - "blob-to-it": "^1.0.1", - "browser-readablestream-to-it": "^1.0.1", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.10.3", - "ipfs-unixfs": "^6.0.3", - "ipfs-utils": "^9.0.6", - "it-all": "^1.0.4", - "it-map": "^1.0.4", - "it-peekable": "^1.0.2", - "it-to-stream": "^1.0.0", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.5.1", - "nanoid": "^3.1.23", - "parse-duration": "^1.0.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0" - } - }, - "ipfs-daemon": { - "version": "0.12.3", - "requires": { - "@mapbox/node-pre-gyp": "^1.0.5", - "debug": "^4.1.1", - "electron-webrtc": "^0.3.0", - "ipfs-core": "^0.14.3", - "ipfs-core-types": "^0.10.3", - "ipfs-grpc-server": "^0.8.4", - "ipfs-http-gateway": "^0.9.3", - "ipfs-http-server": "^0.11.3", - "ipfs-utils": "^9.0.6", - "just-safe-set": "^2.2.1", - "libp2p": "^0.36.2", - "libp2p-webrtc-star": "^0.25.0", - "prom-client": "^14.0.1", - "wrtc": "^0.4.6" - } - }, - "ipfs-grpc-protocol": { - "version": "0.5.5" - }, - "ipfs-grpc-server": { - "version": "0.8.4", - "requires": { - "@grpc/grpc-js": "^1.1.8", - "change-case": "^4.1.1", - "coercer": "^1.1.2", - "debug": "^4.1.1", - "ipfs-core-types": "^0.10.3", - "ipfs-grpc-protocol": "^0.5.5", - "it-first": "^1.0.4", - "it-map": "^1.0.4", - "it-peekable": "^1.0.2", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "multiaddr": "^10.0.0", - "nanoid": "^3.1.23", - "protobufjs": "^6.10.2", - "ws": "^7.3.1" - } - }, "ipfs-http-client": { - "version": "55.0.0", + "version": "58.0.0", + "resolved": "https://registry.npmjs.org/ipfs-http-client/-/ipfs-http-client-58.0.0.tgz", + "integrity": "sha512-8HD6wRb+czi6NW8P4n4H84mMefATHf/yWIBFal/DDqriFstrjim0BE5w7lfw7cFoueoH26kq4f70lbF95/ElKA==", "requires": { "@ipld/dag-cbor": "^7.0.0", "@ipld/dag-json": "^8.0.1", "@ipld/dag-pb": "^2.1.3", - "abort-controller": "^3.0.0", - "any-signal": "^2.1.2", - "debug": "^4.1.1", + "@libp2p/logger": "^2.0.0", + "@libp2p/peer-id": "^1.1.10", + "@multiformats/multiaddr": "^10.4.0", + "any-signal": "^3.0.0", + "dag-jose": "^2.0.1", "err-code": "^3.0.1", - "ipfs-core-types": "^0.9.0", - "ipfs-core-utils": "^0.13.0", - "ipfs-utils": "^9.0.2", + "ipfs-core-types": "^0.12.0", + "ipfs-core-utils": "^0.16.0", + "ipfs-utils": "^9.0.6", "it-first": "^1.0.6", "it-last": "^1.0.4", "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.13", - "native-abort-controller": "^1.0.3", + "multiformats": "^9.5.1", "parse-duration": "^1.0.0", "stream-to-it": "^0.2.2", "uint8arrays": "^3.0.0" }, "dependencies": { - "any-signal": { - "version": "2.1.2", + "@types/node": { + "version": "18.7.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.23.tgz", + "integrity": "sha512-DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg==" + }, + "dag-jose": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/dag-jose/-/dag-jose-2.0.1.tgz", + "integrity": "sha512-1jCSAWOJ7oHl4A3xGQEERCl2IqqFZJYp4qnmzBbh2vifQx0ZGTtSxDR68MStjLjADvaqYgWI7a73wre5GFqVrA==", "requires": { - "abort-controller": "^3.0.0", - "native-abort-controller": "^1.0.3" + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^9.6.4" } }, - "ipfs-core-types": { - "version": "0.9.0", + "dns-over-http-resolver": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-2.1.0.tgz", + "integrity": "sha512-eb8RGy6k54JdD7Rjw8g65y1MyA4z3m3IIYh7uazkgZuKIdFn8gYt8dydMm3op+2UshDdk9EexrXcDluKNY/CDg==", "requires": { - "interface-datastore": "^6.0.2", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.13" + "debug": "^4.3.1", + "native-fetch": "^4.0.2", + "receptacle": "^1.3.2" } }, - "ipfs-core-utils": { - "version": "0.13.0", + "interface-datastore": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-7.0.0.tgz", + "integrity": "sha512-q9OveOhexQ3Fx8h4YbuR4mZtUHwvlOynKnIwTm6x8oBTWfIyAKtlYtrOYdlHfqQztbYpdzRFcapopNJBMx36NQ==", "requires": { - "any-signal": "^2.1.2", - "blob-to-it": "^1.0.1", - "browser-readablestream-to-it": "^1.0.1", - "debug": "^4.1.1", - "err-code": "^3.0.1", - "ipfs-core-types": "^0.9.0", - "ipfs-unixfs": "^6.0.3", - "ipfs-utils": "^9.0.2", - "it-all": "^1.0.4", - "it-map": "^1.0.4", - "it-peekable": "^1.0.2", - "it-to-stream": "^1.0.0", - "merge-options": "^3.0.4", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "multiformats": "^9.4.13", - "nanoid": "^3.1.23", - "parse-duration": "^1.0.0", - "timeout-abort-controller": "^2.0.0", + "interface-store": "^3.0.0", + "nanoid": "^3.0.2", "uint8arrays": "^3.0.0" } }, - "timeout-abort-controller": { - "version": "2.0.0", + "interface-store": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-3.0.0.tgz", + "integrity": "sha512-IBJn3hE6hYutwdDcStR76mcwfV98vZc49LkEN9ANHHpsxcm6YbGMJxowO2G3FITU4U5ZH4KJPlHOT6Oe2vzTWA==" + }, + "ip-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-5.0.0.tgz", + "integrity": "sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==" + }, + "ipfs-core-types": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/ipfs-core-types/-/ipfs-core-types-0.12.1.tgz", + "integrity": "sha512-MMCNlHN960kZ4Pxh85xmAGPzVkO2iVAdPQqHkxf/3179m6MwrMpaBdU8QGbjccRef4QKou2bIptKdweanvjmig==", "requires": { - "abort-controller": "^3.0.0", - "native-abort-controller": "^1.0.4", - "retimer": "^3.0.0" + "@ipld/dag-pb": "^2.1.3", + "@libp2p/interface-keychain": "^1.0.3", + "@libp2p/interface-peer-id": "^1.0.4", + "@libp2p/interface-peer-info": "^1.0.2", + "@libp2p/interface-pubsub": "^2.0.0", + "@multiformats/multiaddr": "^11.0.0", + "@types/node": "^18.0.0", + "interface-datastore": "^7.0.0", + "ipfs-unixfs": "^7.0.0", + "multiformats": "^9.5.1" + }, + "dependencies": { + "@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + } + } + }, + "ipfs-core-utils": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/ipfs-core-utils/-/ipfs-core-utils-0.16.1.tgz", + "integrity": "sha512-nRrOntMtjc6CoeAopIPyDRpwqwSJeMBYY5uq/TiS0V2MbBbD6kTtmsqdgjwXaQLQXdRyvy6/ohxP/btT4Xrg9Q==", + "requires": { + "@libp2p/logger": "^2.0.0", + "@multiformats/multiaddr": "^11.0.0", + "@multiformats/multiaddr-to-uri": "^9.0.1", + "any-signal": "^3.0.0", + "blob-to-it": "^1.0.1", + "browser-readablestream-to-it": "^1.0.1", + "err-code": "^3.0.1", + "ipfs-core-types": "^0.12.1", + "ipfs-unixfs": "^7.0.0", + "ipfs-utils": "^9.0.6", + "it-all": "^1.0.4", + "it-map": "^1.0.6", + "it-peekable": "^1.0.2", + "it-to-stream": "^1.0.0", + "merge-options": "^3.0.4", + "multiformats": "^9.5.1", + "nanoid": "^4.0.0", + "parse-duration": "^1.0.0", + "timeout-abort-controller": "^3.0.0", + "uint8arrays": "^3.0.0" + }, + "dependencies": { + "@multiformats/multiaddr": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-11.0.3.tgz", + "integrity": "sha512-B8DOUTNTLczXztLZDjG2vlViVu/2du7dRV5cX7hww5UOwykWypN7xdmxrlwCOp1nFlx2JpCLaCwewdxFrP+8KA==", + "requires": { + "dns-over-http-resolver": "^2.1.0", + "err-code": "^3.0.1", + "is-ip": "^5.0.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "nanoid": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.0.tgz", + "integrity": "sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==" + } + } + }, + "ipfs-unixfs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ipfs-unixfs/-/ipfs-unixfs-7.0.0.tgz", + "integrity": "sha512-qm3pj3jQE/WCQGIWypyXWtDjDfzQTxFMMaT57sNJ+EQlYEJryKeGQEBTubhhX+tva7ntqt+N/FD15RkDjWlh9w==", + "requires": { + "err-code": "^3.0.1", + "protobufjs": "^7.0.0" + } + }, + "is-ip": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-5.0.0.tgz", + "integrity": "sha512-uhmKwcdWJ1nTmBdoBxdHilfJs4qdLBIvVHKRels2+UCZmfcfefuQWziadaYLpN7t/bUrJOjJHv+R1di1q7Q1HQ==", + "requires": { + "ip-regex": "^5.0.0", + "super-regex": "^0.2.0" + } + }, + "long": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.0.tgz", + "integrity": "sha512-9RTUNjK60eJbx3uz+TEGF7fUr29ZDxR5QzXcyDpeSfeH28S9ycINflOgOlppit5U+4kNTe83KQnMEerw7GmE8w==" + }, + "native-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-4.0.2.tgz", + "integrity": "sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==", + "requires": {} + }, + "protobufjs": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.1.2.tgz", + "integrity": "sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==", + "requires": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" } } } }, - "ipfs-http-gateway": { - "version": "0.9.3", - "requires": { - "@hapi/ammo": "^5.0.1", - "@hapi/boom": "^9.1.0", - "@hapi/hapi": "^20.0.0", - "debug": "^4.1.1", - "hapi-pino": "^8.3.0", - "ipfs-core-types": "^0.10.3", - "ipfs-http-response": "^2.0.3", - "is-ipfs": "^6.0.1", - "it-last": "^1.0.4", - "it-to-stream": "^1.0.0", - "joi": "^17.2.1", - "multiformats": "^9.5.1", - "uint8arrays": "^3.0.0", - "uri-to-multiaddr": "^6.0.0" - } - }, - "ipfs-http-response": { - "version": "2.0.3", - "requires": { - "debug": "^4.3.1", - "ejs": "^3.1.6", - "file-type": "^16.0.0", - "filesize": "^8.0.0", - "it-buffer": "^0.1.1", - "it-concat": "^2.0.0", - "it-reader": "^3.0.0", - "it-to-stream": "^1.0.0", - "mime-types": "^2.1.30", - "p-try-each": "^1.0.1" - } - }, - "ipfs-http-server": { - "version": "0.11.3", - "requires": { - "@hapi/boom": "^9.1.0", - "@hapi/content": "^5.0.2", - "@hapi/hapi": "^20.0.0", - "@ipld/dag-pb": "^2.1.3", - "any-signal": "^3.0.0", - "debug": "^4.1.1", - "dlv": "^1.1.3", - "err-code": "^3.0.1", - "hapi-pino": "^8.3.0", - "ipfs-core-types": "^0.10.3", - "ipfs-core-utils": "^0.14.3", - "ipfs-http-gateway": "^0.9.3", - "ipfs-unixfs": "^6.0.3", - "it-all": "^1.0.4", - "it-drain": "^1.0.3", - "it-filter": "^1.0.2", - "it-first": "^1.0.4", - "it-last": "^1.0.4", - "it-map": "^1.0.4", - "it-merge": "^1.0.2", - "it-multipart": "^2.0.0", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.2", - "it-reduce": "^1.0.5", - "joi": "^17.2.1", - "just-safe-set": "^2.2.1", - "multiaddr": "^10.0.0", - "multiformats": "^9.5.1", - "parse-duration": "^1.0.0", - "prom-client": "^14.0.1", - "stream-to-it": "^0.2.2", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0", - "uri-to-multiaddr": "^6.0.0" - } - }, - "ipfs-repo": { - "version": "14.0.1", - "requires": { - "@ipld/dag-pb": "^2.1.0", - "bytes": "^3.1.0", - "cborg": "^1.3.4", - "datastore-core": "^7.0.0", - "debug": "^4.1.0", - "err-code": "^3.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "ipfs-repo-migrations": "^12.0.1", - "it-drain": "^1.0.1", - "it-filter": "^1.0.2", - "it-first": "^1.0.2", - "it-map": "^1.0.5", - "it-merge": "^1.0.2", - "it-parallel-batch": "^1.0.9", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.0", - "just-safe-get": "^2.0.0", - "just-safe-set": "^2.1.0", - "merge-options": "^3.0.4", - "mortice": "^2.0.1", - "multiformats": "^9.0.4", - "p-queue": "^6.0.0", - "proper-lockfile": "^4.0.0", - "sort-keys": "^4.2.0", - "uint8arrays": "^3.0.0" - } - }, - "ipfs-repo-migrations": { - "version": "12.0.1", - "requires": { - "@ipld/dag-pb": "^2.0.0", - "cborg": "^1.3.1", - "datastore-core": "^7.0.0", - "debug": "^4.1.0", - "fnv1a": "^1.0.1", - "interface-blockstore": "^2.0.2", - "interface-datastore": "^6.0.2", - "it-length": "^1.0.1", - "multiaddr": "^10.0.1", - "multiformats": "^9.0.0", - "protobufjs": "^6.10.2", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0" - } - }, - "ipfs-unixfs": { - "version": "6.0.9", - "requires": { - "err-code": "^3.0.1", - "protobufjs": "^6.10.2" - } - }, - "ipfs-unixfs-exporter": { - "version": "7.0.11", - "requires": { - "@ipld/dag-cbor": "^7.0.2", - "@ipld/dag-pb": "^2.0.2", - "@multiformats/murmur3": "^1.0.3", - "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "interface-blockstore": "^2.0.3", - "ipfs-unixfs": "^6.0.0", - "it-last": "^1.0.5", - "multiformats": "^9.4.2", - "uint8arrays": "^3.0.0" - } - }, - "ipfs-unixfs-importer": { - "version": "9.0.10", - "requires": { - "@ipld/dag-pb": "^2.0.2", - "@multiformats/murmur3": "^1.0.3", - "bl": "^5.0.0", - "err-code": "^3.0.1", - "hamt-sharding": "^2.0.0", - "interface-blockstore": "^2.0.3", - "ipfs-unixfs": "^6.0.0", - "it-all": "^1.0.5", - "it-batch": "^1.0.8", - "it-first": "^1.0.6", - "it-parallel-batch": "^1.0.9", - "merge-options": "^3.0.4", - "multiformats": "^9.4.2", - "rabin-wasm": "^0.1.4", - "uint8arrays": "^3.0.0" - } - }, "ipfs-utils": { "version": "9.0.7", "requires": { @@ -24772,22 +19633,6 @@ "stream-to-it": "^0.2.2" } }, - "ipns": { - "version": "0.16.0", - "requires": { - "cborg": "^1.3.3", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "interface-datastore": "^6.0.2", - "libp2p-crypto": "^0.21.0", - "long": "^4.0.0", - "multiformats": "^9.4.5", - "peer-id": "^0.16.0", - "protobufjs": "^6.10.2", - "timestamp-nano": "^1.0.0", - "uint8arrays": "^3.0.0" - } - }, "is-arguments": { "version": "1.1.1", "requires": { @@ -24821,9 +19666,6 @@ "has-tostringtag": "^1.0.0" } }, - "is-buffer": { - "version": "2.0.5" - }, "is-callable": { "version": "1.2.4" }, @@ -24835,8 +19677,6 @@ }, "is-core-module": { "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", "requires": { "has": "^1.0.3" } @@ -24847,9 +19687,6 @@ "has-tostringtag": "^1.0.0" } }, - "is-domain-name": { - "version": "1.0.1" - }, "is-electron": { "version": "2.2.1" }, @@ -24884,16 +19721,6 @@ "ip-regex": "^4.0.0" } }, - "is-ipfs": { - "version": "6.0.2", - "requires": { - "iso-url": "^1.1.3", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiformats": "^9.0.0", - "uint8arrays": "^3.0.0" - } - }, "is-loopback-addr": { "version": "1.0.1" }, @@ -24939,6 +19766,11 @@ "has-tostringtag": "^1.0.0" } }, + "is-regexp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-3.1.0.tgz", + "integrity": "sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==" + }, "is-set": { "version": "2.0.2" }, @@ -25003,10 +19835,6 @@ "get-intrinsic": "^1.1.1" } }, - "is-windows": { - "version": "1.0.2", - "dev": true - }, "is-yarn-global": { "version": "0.3.0" }, @@ -25016,9 +19844,6 @@ "isexe": { "version": "2.0.0" }, - "iso-constants": { - "version": "0.1.2" - }, "iso-random-stream": { "version": "2.0.2", "requires": { @@ -25050,50 +19875,6 @@ "version": "3.2.0", "dev": true }, - "istanbul-lib-hook": { - "version": "3.0.0", - "dev": true, - "requires": { - "append-transform": "^2.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "dev": true - } - } - }, - "istanbul-lib-processinfo": { - "version": "2.0.3", - "dev": true, - "requires": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.3", - "istanbul-lib-coverage": "^3.2.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^8.3.2" - }, - "dependencies": { - "p-map": { - "version": "3.0.0", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - } - } - }, "istanbul-lib-report": { "version": "3.0.0", "dev": true, @@ -25103,15 +19884,6 @@ "supports-color": "^7.1.0" } }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, "istanbul-reports": { "version": "3.1.4", "dev": true, @@ -25123,9 +19895,6 @@ "it-all": { "version": "1.0.6" }, - "it-batch": { - "version": "1.0.9" - }, "it-buffer": { "version": "0.1.3", "requires": { @@ -25133,12 +19902,6 @@ "buffer": "^6.0.3" } }, - "it-concat": { - "version": "2.0.0", - "requires": { - "bl": "^5.0.0" - } - }, "it-drain": { "version": "1.0.5" }, @@ -25169,9 +19932,6 @@ "it-last": { "version": "1.0.6" }, - "it-length": { - "version": "1.0.4" - }, "it-length-prefixed": { "version": "5.0.3", "requires": { @@ -25189,38 +19949,6 @@ "it-pushable": "^1.4.0" } }, - "it-multipart": { - "version": "2.0.2", - "requires": { - "formidable": "^1.2.2", - "it-pushable": "^1.4.2" - } - }, - "it-pair": { - "version": "1.0.0", - "requires": { - "get-iterator": "^1.0.2" - } - }, - "it-parallel": { - "version": "2.0.1", - "requires": { - "p-defer": "^3.0.0" - } - }, - "it-parallel-batch": { - "version": "1.0.10", - "requires": { - "it-batch": "^1.0.9" - } - }, - "it-pb-rpc": { - "version": "0.2.0", - "requires": { - "it-handshake": "^2.0.0", - "it-length-prefixed": "^5.0.3" - } - }, "it-peekable": { "version": "1.0.3" }, @@ -25239,41 +19967,20 @@ "bl": "^5.0.0" } }, - "it-reduce": { - "version": "1.0.6" - }, "it-sort": { "version": "1.0.1", "requires": { "it-all": "^1.0.6" } }, - "it-split": { - "version": "1.0.2", - "requires": { - "bl": "^5.0.0" - } + "it-stream-types": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/it-stream-types/-/it-stream-types-1.0.4.tgz", + "integrity": "sha512-0F3CqTIcIHwtnmIgqd03a7sw8BegAmE32N2w7anIGdALea4oAN4ltqPgDMZ7zn4XPLZifXEZlBXSzgg64L1Ebw==" }, "it-take": { "version": "1.0.2" }, - "it-tar": { - "version": "4.0.0", - "requires": { - "bl": "^5.0.0", - "buffer": "^6.0.3", - "iso-constants": "^0.1.2", - "it-concat": "^2.0.0", - "it-reader": "^3.0.0", - "p-defer": "^3.0.0" - } - }, - "it-to-buffer": { - "version": "2.0.2", - "requires": { - "uint8arrays": "^3.0.0" - } - }, "it-to-stream": { "version": "1.0.0", "requires": { @@ -25285,24 +19992,6 @@ "readable-stream": "^3.6.0" } }, - "it-ws": { - "version": "4.0.0", - "requires": { - "buffer": "^6.0.3", - "event-iterator": "^2.0.0", - "iso-url": "^1.1.2", - "ws": "^7.3.1" - } - }, - "jake": { - "version": "10.8.5", - "requires": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.1", - "minimatch": "^3.0.4" - } - }, "java-properties": { "version": "1.0.2", "dev": true @@ -25323,19 +20012,6 @@ } } }, - "jmespath": { - "version": "0.15.0" - }, - "joi": { - "version": "17.6.0", - "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.0", - "@sideway/pinpoint": "^2.0.0" - } - }, "joycon": { "version": "3.1.1" }, @@ -25363,10 +20039,6 @@ "jsbn": { "version": "1.1.0" }, - "jsesc": { - "version": "2.5.2", - "dev": true - }, "json-buffer": { "version": "3.0.0" }, @@ -25393,50 +20065,6 @@ "json5": { "version": "2.2.1" }, - "jsondiffpatch": { - "version": "0.4.1", - "requires": { - "chalk": "^2.3.0", - "diff-match-patch": "^1.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3" - }, - "escape-string-regexp": { - "version": "1.0.5" - }, - "has-flag": { - "version": "3.0.0" - }, - "supports-color": { - "version": "5.5.0", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "jsonfile": { "version": "6.1.0", "requires": { @@ -25495,27 +20123,16 @@ }, "jsx-ast-utils": { "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, "requires": { "array-includes": "^3.1.5", "object.assign": "^4.1.3" } }, - "just-debounce-it": { - "version": "1.5.0" - }, "just-extend": { "version": "4.2.1", "dev": true }, - "just-safe-get": { - "version": "2.1.2" - }, - "just-safe-set": { - "version": "2.2.3" - }, "jwa": { "version": "1.4.1", "requires": { @@ -25545,20 +20162,6 @@ } } }, - "k-bucket": { - "version": "5.1.0", - "requires": { - "randombytes": "^2.1.0" - }, - "dependencies": { - "randombytes": { - "version": "2.1.0", - "requires": { - "safe-buffer": "^5.1.0" - } - } - } - }, "kareem": { "version": "2.3.2" }, @@ -25588,13 +20191,6 @@ "kind-of": { "version": "6.0.3" }, - "klaw": { - "version": "1.3.1", - "optional": true, - "requires": { - "graceful-fs": "^4.1.9" - } - }, "klaw-sync": { "version": "6.0.0", "requires": { @@ -25806,78 +20402,6 @@ "version": "0.0.6", "dev": true }, - "level": { - "version": "7.0.1", - "requires": { - "level-js": "^6.1.0", - "level-packager": "^6.0.1", - "leveldown": "^6.1.0" - } - }, - "level-codec": { - "version": "10.0.0", - "requires": { - "buffer": "^6.0.3" - } - }, - "level-concat-iterator": { - "version": "3.1.0", - "requires": { - "catering": "^2.1.0" - } - }, - "level-errors": { - "version": "3.0.1" - }, - "level-iterator-stream": { - "version": "5.0.0", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "level-js": { - "version": "6.1.0", - "requires": { - "abstract-leveldown": "^7.2.0", - "buffer": "^6.0.3", - "inherits": "^2.0.3", - "ltgt": "^2.1.2", - "run-parallel-limit": "^1.1.0" - } - }, - "level-packager": { - "version": "6.0.1", - "requires": { - "encoding-down": "^7.1.0", - "levelup": "^5.1.1" - } - }, - "level-supports": { - "version": "2.1.0" - }, - "leveldown": { - "version": "6.1.1", - "requires": { - "abstract-leveldown": "^7.2.0", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - } - }, - "levelup": { - "version": "5.1.1", - "requires": { - "catering": "^2.0.0", - "deferred-leveldown": "^7.0.0", - "level-errors": "^3.0.1", - "level-iterator-stream": "^5.0.0", - "level-supports": "^2.0.1", - "queue-microtask": "^1.2.3" - } - }, - "leven": { - "version": "2.1.0" - }, "levn": { "version": "0.4.1", "dev": true, @@ -25950,15 +20474,6 @@ } } }, - "libp2p-bootstrap": { - "version": "0.14.0", - "requires": { - "debug": "^4.3.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "peer-id": "^0.16.0" - } - }, "libp2p-crypto": { "version": "0.21.2", "requires": { @@ -25972,50 +20487,6 @@ "uint8arrays": "^3.0.0" } }, - "libp2p-delegated-content-routing": { - "version": "0.11.2", - "requires": { - "debug": "^4.1.1", - "it-drain": "^1.0.3", - "multiaddr": "^10.0.0", - "p-defer": "^3.0.0", - "p-queue": "^6.2.1", - "peer-id": "^0.16.0" - } - }, - "libp2p-delegated-peer-routing": { - "version": "0.11.1", - "requires": { - "debug": "^4.3.1", - "multiformats": "^9.0.2", - "p-defer": "^3.0.0", - "p-queue": "^6.3.0", - "peer-id": "^0.16.0" - } - }, - "libp2p-floodsub": { - "version": "0.29.1", - "requires": { - "debug": "^4.2.0", - "libp2p-interfaces": "^4.0.5", - "time-cache": "^0.3.0", - "uint8arrays": "^3.0.0" - } - }, - "libp2p-gossipsub": { - "version": "0.13.0", - "requires": { - "@types/debug": "^4.1.7", - "debug": "^4.3.1", - "denque": "^1.5.0", - "err-code": "^3.0.1", - "it-pipe": "^1.1.0", - "libp2p-interfaces": "^4.0.4", - "peer-id": "^0.16.0", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - } - }, "libp2p-interfaces": { "version": "4.0.6", "requires": { @@ -26034,86 +20505,6 @@ "uint8arrays": "^3.0.0" } }, - "libp2p-kad-dht": { - "version": "0.28.6", - "requires": { - "any-signal": "^3.0.0", - "datastore-core": "^7.0.0", - "debug": "^4.3.1", - "err-code": "^3.0.0", - "hashlru": "^2.3.0", - "interface-datastore": "^6.0.2", - "it-all": "^1.0.5", - "it-drain": "^1.0.4", - "it-first": "^1.0.4", - "it-length": "^1.0.3", - "it-length-prefixed": "^5.0.2", - "it-map": "^1.0.5", - "it-merge": "^1.0.3", - "it-parallel": "^2.0.1", - "it-pipe": "^1.1.0", - "it-take": "^1.0.2", - "k-bucket": "^5.1.0", - "libp2p-crypto": "^0.21.0", - "libp2p-interfaces": "^4.0.0", - "libp2p-record": "^0.10.4", - "multiaddr": "^10.0.0", - "multiformats": "^9.4.5", - "p-defer": "^3.0.0", - "p-map": "^4.0.0", - "p-queue": "^6.6.2", - "peer-id": "^0.16.0", - "private-ip": "^2.3.3", - "protobufjs": "^6.10.2", - "streaming-iterables": "^6.0.0", - "timeout-abort-controller": "^3.0.0", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0" - } - }, - "libp2p-mdns": { - "version": "0.18.0", - "requires": { - "debug": "^4.3.1", - "multiaddr": "^10.0.0", - "multicast-dns": "^7.2.0", - "peer-id": "^0.16.0" - } - }, - "libp2p-mplex": { - "version": "0.10.7", - "requires": { - "abortable-iterator": "^3.0.2", - "bl": "^5.0.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "it-pipe": "^1.1.0", - "it-pushable": "^1.4.1", - "varint": "^6.0.0" - } - }, - "libp2p-record": { - "version": "0.10.6", - "requires": { - "err-code": "^3.0.1", - "multiformats": "^9.4.5", - "protobufjs": "^6.11.2", - "uint8arrays": "^3.0.0" - } - }, - "libp2p-tcp": { - "version": "0.17.2", - "requires": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "libp2p-utils": "^0.4.0", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "stream-to-it": "^0.2.2" - } - }, "libp2p-utils": { "version": "0.4.1", "requires": { @@ -26126,58 +20517,6 @@ "private-ip": "^2.1.1" } }, - "libp2p-webrtc-peer": { - "version": "10.0.1", - "requires": { - "debug": "^4.0.1", - "err-code": "^2.0.3", - "get-browser-rtc": "^1.0.0", - "queue-microtask": "^1.1.0", - "randombytes": "^2.0.3", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "err-code": { - "version": "2.0.3" - } - } - }, - "libp2p-webrtc-star": { - "version": "0.25.0", - "requires": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.2.0", - "err-code": "^3.0.1", - "ipfs-utils": "^9.0.1", - "it-pipe": "^1.1.0", - "libp2p-utils": "^0.4.0", - "libp2p-webrtc-peer": "^10.0.1", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "p-defer": "^3.0.0", - "peer-id": "^0.16.0", - "socket.io-client": "^4.1.2", - "stream-to-it": "^0.2.2" - } - }, - "libp2p-websockets": { - "version": "0.16.2", - "requires": { - "abortable-iterator": "^3.0.0", - "class-is": "^1.1.0", - "debug": "^4.3.1", - "err-code": "^3.0.1", - "ipfs-utils": "^9.0.1", - "it-ws": "^4.0.0", - "libp2p-utils": "^0.4.0", - "mafmt": "^10.0.0", - "multiaddr": "^10.0.0", - "multiaddr-to-uri": "^8.0.0", - "p-defer": "^3.0.0", - "p-timeout": "^4.1.0" - } - }, "line-reader": { "version": "0.4.0" }, @@ -26243,9 +20582,6 @@ "lodash": { "version": "4.17.21" }, - "lodash.camelcase": { - "version": "4.3.0" - }, "lodash.capitalize": { "version": "4.2.1", "dev": true @@ -26254,10 +20590,6 @@ "version": "4.1.2", "dev": true }, - "lodash.flattendeep": { - "version": "4.4.0", - "dev": true - }, "lodash.get": { "version": "4.4.2", "dev": true @@ -26286,16 +20618,11 @@ }, "lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "lodash.once": { "version": "4.1.1" }, - "lodash.throttle": { - "version": "4.1.1" - }, "lodash.truncate": { "version": "4.4.2", "dev": true, @@ -26332,19 +20659,11 @@ }, "loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" } }, - "lower-case": { - "version": "2.0.2", - "requires": { - "tslib": "^2.0.3" - } - }, "lowercase-keys": { "version": "1.0.1" }, @@ -26354,9 +20673,6 @@ "yallist": "^4.0.0" } }, - "ltgt": { - "version": "2.2.1" - }, "mafmt": { "version": "10.0.0", "requires": { @@ -26508,8 +20824,6 @@ }, "minimal-slp-wallet": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimal-slp-wallet/-/minimal-slp-wallet-5.1.0.tgz", - "integrity": "sha512-ZOzvWKowVN32KUC9AGIIM8wLzG/fycmoat28aNfEy2mDrHonmQeyrRcLXv1B1cLYS/Gbe5q0kaRalQmgpyPf7A==", "requires": { "@psf/bch-js": "6.4.5", "apidoc": "0.51.0", @@ -26588,22 +20902,6 @@ } } }, - "minipass": { - "version": "3.3.4", - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4" - }, "mocha": { "version": "10.0.0", "dev": true, @@ -26792,7 +21090,9 @@ } }, "mongoose": { - "version": "5.13.13", + "version": "5.13.14", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.13.14.tgz", + "integrity": "sha512-j+BlQjjxgZg0iWn42kLeZTB91OejcxWpY2Z50bsZTiKJ7HHcEtcY21Godw496GMkBqJMTzmW7G/kZ04mW+Cb7Q==", "requires": { "@types/bson": "1.x || 4.0.x", "@types/mongodb": "^3.5.27", @@ -26852,9 +21152,6 @@ } } }, - "mri": { - "version": "1.1.4" - }, "ms": { "version": "2.1.2" }, @@ -26869,19 +21166,6 @@ "varint": "^6.0.0" } }, - "multiaddr-to-uri": { - "version": "8.0.0", - "requires": { - "multiaddr": "^10.0.0" - } - }, - "multicast-dns": { - "version": "7.2.5", - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, "multiformats": { "version": "9.7.0" }, @@ -26901,9 +21185,6 @@ "uint8arrays": "^3.0.0" } }, - "murmurhash3js-revisited": { - "version": "3.0.0" - }, "mutable-proxy": { "version": "1.0.0" }, @@ -26913,9 +21194,6 @@ "nanoid": { "version": "3.3.4" }, - "napi-macros": { - "version": "2.0.0" - }, "nat-api": { "version": "0.3.1", "requires": { @@ -27001,10 +21279,6 @@ } } }, - "native-abort-controller": { - "version": "1.0.4", - "requires": {} - }, "native-fetch": { "version": "3.0.0", "requires": {} @@ -27013,16 +21287,6 @@ "version": "1.4.0", "dev": true }, - "ndjson": { - "version": "1.5.0", - "optional": true, - "requires": { - "json-stringify-safe": "^5.0.1", - "minimist": "^1.2.0", - "split2": "^2.1.0", - "through2": "^2.0.3" - } - }, "negotiator": { "version": "0.6.3" }, @@ -27060,13 +21324,6 @@ } } }, - "no-case": { - "version": "3.0.4", - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "node-addon-api": { "version": "2.0.2" }, @@ -27078,9 +21335,7 @@ } }, "node-fetch": { - "version": "npm:@achingbrain/node-fetch@2.6.7", - "resolved": "https://registry.npmjs.org/@achingbrain/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-iTASGs+HTFK5E4ZqcMsHmeJ4zodyq8L38lZV33jwqcBJYoUt3HjN4+ot+O9/0b+ke8ddE7UgOtVuZN/OkV19/g==" + "version": "npm:@achingbrain/node-fetch@2.6.7" }, "node-forge": { "version": "1.3.1" @@ -27088,13 +21343,6 @@ "node-gyp-build": { "version": "4.4.0" }, - "node-preload": { - "version": "0.2.1", - "dev": true, - "requires": { - "process-on-spawn": "^1.0.0" - } - }, "node-releases": { "version": "2.0.5" }, @@ -27140,12 +21388,6 @@ } } }, - "nopt": { - "version": "5.0.0", - "requires": { - "abbrev": "1" - } - }, "normalize-package-data": { "version": "3.0.3", "dev": true, @@ -28869,269 +23111,14 @@ "path-key": "^3.0.0" } }, - "npmlog": { - "version": "5.0.1", - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "nugget": { - "version": "2.0.2", - "optional": true, - "requires": { - "debug": "^2.1.3", - "minimist": "^1.1.0", - "pretty-bytes": "^4.0.2", - "progress-stream": "^1.1.0", - "request": "^2.45.0", - "single-line-log": "^1.1.2", - "throttleit": "0.0.2" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "optional": true - }, - "aws-sign2": { - "version": "0.7.0", - "optional": true - }, - "debug": { - "version": "2.6.9", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "optional": true - }, - "form-data": { - "version": "2.3.3", - "optional": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "http-signature": { - "version": "1.2.0", - "optional": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ms": { - "version": "2.0.0", - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "optional": true - }, - "pretty-bytes": { - "version": "4.0.2", - "optional": true - }, - "qs": { - "version": "6.5.3", - "optional": true - }, - "request": { - "version": "2.88.2", - "optional": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "tough-cookie": { - "version": "2.5.0", - "optional": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "optional": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "uuid": { - "version": "3.4.0", - "optional": true - } - } - }, - "number-is-nan": { - "version": "1.0.1", - "optional": true - }, - "nyc": { - "version": "15.1.0", - "dev": true, - "requires": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "dependencies": { - "cliui": { - "version": "6.0.0", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "3.0.0", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, "oauth-sign": { "version": "0.3.0", "dev": true, "optional": true }, "object-assign": { - "version": "4.1.1" + "version": "4.1.1", + "dev": true }, "object-hash": { "version": "2.2.0" @@ -29151,8 +23138,6 @@ }, "object.assign": { "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", @@ -29162,8 +23147,6 @@ }, "object.entries": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", - "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -29173,8 +23156,6 @@ }, "object.fromentries": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", - "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -29184,8 +23165,6 @@ }, "object.hasown": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz", - "integrity": "sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==", "dev": true, "requires": { "define-properties": "^1.1.4", @@ -29310,6 +23289,7 @@ }, "p-map": { "version": "4.0.0", + "dev": true, "requires": { "aggregate-error": "^3.0.0" } @@ -29368,20 +23348,12 @@ "p-cancelable": "^2.0.0" } }, - "p-timeout": { - "version": "4.1.0" - }, "p-try": { "version": "1.0.0", "dev": true }, - "p-try-each": { - "version": "1.0.1" - }, "p2wdb": { "version": "2.2.3", - "resolved": "https://registry.npmjs.org/p2wdb/-/p2wdb-2.2.3.tgz", - "integrity": "sha512-eZQaE3iVudOJV6Iji/fBO20tYhs23EmtcxLZbXK7ZjY+c0NysBzhS0mGCkEUWrU/qBthjIEZ2O5detuAHsmHCw==", "requires": { "apidoc": "0.52.0", "axios": "0.24.0" @@ -29389,8 +23361,6 @@ "dependencies": { "apidoc": { "version": "0.52.0", - "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.52.0.tgz", - "integrity": "sha512-k0gaMI7LWxaqKt2D+twC6XpI8X5SHkJalfo8TmF72d2TSNABquqB8LyIrVYzLcadcHuLMRFDaDibOK271gD67w==", "requires": { "bootstrap": "3.4.1", "commander": "^8.3.0", @@ -29416,16 +23386,12 @@ }, "axios": { "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", "requires": { "follow-redirects": "^1.14.4" } }, "glob": { "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -29437,16 +23403,6 @@ } } }, - "package-hash": { - "version": "4.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, "package-json": { "version": "6.5.0", "requires": { @@ -29461,16 +23417,6 @@ } } }, - "pako": { - "version": "1.0.11" - }, - "param-case": { - "version": "3.0.4", - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "parent-module": { "version": "1.0.1", "dev": true, @@ -29494,13 +23440,6 @@ "parseurl": { "version": "1.3.3" }, - "pascal-case": { - "version": "3.1.2", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "passport": { "version": "0.4.1", "requires": { @@ -29520,20 +23459,6 @@ "passthrough-counter": { "version": "1.0.0" }, - "path-case": { - "version": "3.0.4", - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "path-exists": { - "version": "2.1.0", - "optional": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, "path-is-absolute": { "version": "1.0.1" }, @@ -29567,9 +23492,6 @@ "sha.js": "^2.4.8" } }, - "peek-readable": { - "version": "4.1.0" - }, "peer-id": { "version": "0.16.0", "requires": { @@ -29580,10 +23502,6 @@ "uint8arrays": "^3.0.0" } }, - "pend": { - "version": "1.2.0", - "optional": true - }, "performance-now": { "version": "2.1.0" }, @@ -29597,60 +23515,6 @@ "version": "3.0.0", "dev": true }, - "pinkie": { - "version": "2.0.4", - "optional": true - }, - "pinkie-promise": { - "version": "2.0.1", - "optional": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pino": { - "version": "6.14.0", - "requires": { - "fast-redact": "^3.0.0", - "fast-safe-stringify": "^2.0.8", - "flatstr": "^1.0.12", - "pino-std-serializers": "^3.1.0", - "process-warning": "^1.0.0", - "quick-format-unescaped": "^4.0.3", - "sonic-boom": "^1.0.2" - } - }, - "pino-pretty": { - "version": "4.8.0", - "requires": { - "@hapi/bourne": "^2.0.0", - "args": "^5.0.1", - "chalk": "^4.0.0", - "dateformat": "^4.5.1", - "fast-safe-stringify": "^2.0.7", - "jmespath": "^0.15.0", - "joycon": "^2.2.5", - "pump": "^3.0.0", - "readable-stream": "^3.6.0", - "rfdc": "^1.3.0", - "split2": "^3.1.1", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "joycon": { - "version": "2.2.5" - }, - "split2": { - "version": "3.2.2", - "requires": { - "readable-stream": "^3.0.0" - } - } - } - }, - "pino-std-serializers": { - "version": "3.2.0" - }, "pkg-conf": { "version": "2.1.0", "dev": true, @@ -29715,9 +23579,6 @@ "prepend-http": { "version": "2.0.0" }, - "pretty-bytes": { - "version": "5.6.0" - }, "prismjs": { "version": "1.28.0" }, @@ -29733,80 +23594,16 @@ "process-nextick-args": { "version": "2.0.1" }, - "process-on-spawn": { - "version": "1.0.0", - "dev": true, - "requires": { - "fromentries": "^1.2.0" - } - }, - "process-warning": { - "version": "1.0.0" - }, "progress": { - "version": "2.0.3" - }, - "progress-stream": { - "version": "1.2.0", - "optional": true, - "requires": { - "speedometer": "~0.1.2", - "through2": "~0.2.3" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "optional": true - }, - "object-keys": { - "version": "0.4.0", - "optional": true - }, - "readable-stream": { - "version": "1.1.14", - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "optional": true - }, - "through2": { - "version": "0.2.3", - "optional": true, - "requires": { - "readable-stream": "~1.1.9", - "xtend": "~2.1.1" - } - }, - "xtend": { - "version": "2.1.2", - "optional": true, - "requires": { - "object-keys": "~0.4.0" - } - } - } - }, - "prom-client": { - "version": "14.0.1", - "optional": true, - "requires": { - "tdigest": "^0.1.1" - } + "version": "2.0.3", + "dev": true, + "peer": true }, "promise-timeout": { "version": "1.3.0" }, "prop-types": { "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dev": true, "requires": { "loose-envify": "^1.4.0", @@ -29814,19 +23611,6 @@ "react-is": "^16.13.1" } }, - "proper-lockfile": { - "version": "4.1.2", - "requires": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" - }, - "dependencies": { - "retry": { - "version": "0.12.0" - } - } - }, "protobufjs": { "version": "6.11.3", "requires": { @@ -29850,10 +23634,6 @@ } } }, - "pseudomap": { - "version": "1.0.2", - "optional": true - }, "psl": { "version": "1.8.0" }, @@ -29904,26 +23684,13 @@ "version": "2.2.0" }, "queue-microtask": { - "version": "1.2.3" - }, - "quick-format-unescaped": { - "version": "4.0.4" + "version": "1.2.3", + "dev": true }, "quick-lru": { "version": "4.0.1", "dev": true }, - "rabin-wasm": { - "version": "0.1.5", - "requires": { - "@assemblyscript/loader": "^0.9.4", - "bl": "^5.0.0", - "debug": "^4.3.1", - "minimist": "^1.2.5", - "node-fetch": "^2.6.1", - "readable-stream": "^3.6.0" - } - }, "random-bytes": { "version": "1.0.0" }, @@ -29979,8 +23746,6 @@ }, "react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, "react-native-fetch-api": { @@ -30079,12 +23844,6 @@ "util-deprecate": "^1.0.1" } }, - "readable-web-to-node-stream": { - "version": "3.0.2", - "requires": { - "readable-stream": "^3.6.0" - } - }, "readdirp": { "version": "3.6.0", "requires": { @@ -30162,13 +23921,6 @@ "rc": "^1.2.8" } }, - "release-zalgo": { - "version": "1.0.0", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, "request": { "version": "2.40.0", "dev": true, @@ -30235,17 +23987,14 @@ "version": "1.0.6" }, "require-directory": { - "version": "2.1.1" + "version": "2.1.1", + "dev": true }, "require-from-string": { "version": "2.0.2", "dev": true, "peer": true }, - "require-main-filename": { - "version": "2.0.0", - "dev": true - }, "requires-port": { "version": "1.0.0" }, @@ -30327,11 +24076,9 @@ "version": "1.0.4", "dev": true }, - "rfdc": { - "version": "1.3.0" - }, "rimraf": { "version": "3.0.2", + "dev": true, "requires": { "glob": "^7.1.3" } @@ -30350,12 +24097,6 @@ "queue-microtask": "^1.2.2" } }, - "run-parallel-limit": { - "version": "1.1.0", - "requires": { - "queue-microtask": "^1.2.2" - } - }, "safe-buffer": { "version": "5.1.2" }, @@ -30481,14 +24222,6 @@ "version": "3.1.4", "dev": true }, - "sentence-case": { - "version": "3.0.4", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" - } - }, "sequelize": { "version": "5.22.5", "requires": { @@ -30531,9 +24264,6 @@ } } }, - "set-blocking": { - "version": "2.0.0" - }, "set-delayed-interval": { "version": "1.0.0" }, @@ -30650,42 +24380,6 @@ } } }, - "single-line-log": { - "version": "1.1.2", - "optional": true, - "requires": { - "string-width": "^1.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, "sinon": { "version": "9.2.4", "dev": true, @@ -30733,13 +24427,6 @@ "bignumber.js": "^9.0.0" } }, - "snake-case": { - "version": "3.0.4", - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "sntp": { "version": "0.2.4", "dev": true, @@ -30748,35 +24435,6 @@ "hoek": "0.9.x" } }, - "socket.io-client": { - "version": "4.5.1", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.2", - "engine.io-client": "~6.2.1", - "socket.io-parser": "~4.2.0" - } - }, - "socket.io-parser": { - "version": "4.2.1", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" - } - }, - "sonic-boom": { - "version": "1.4.1", - "requires": { - "atomic-sleep": "^1.0.0", - "flatstr": "^1.0.12" - } - }, - "sort-keys": { - "version": "4.2.0", - "requires": { - "is-plain-obj": "^2.0.0" - } - }, "source-list-map": { "version": "2.0.1" }, @@ -30790,9 +24448,6 @@ "source-map": "^0.6.0" } }, - "sparse-array": { - "version": "1.3.2" - }, "sparse-bitfield": { "version": "3.0.3", "optional": true, @@ -30804,18 +24459,6 @@ "version": "1.0.0", "dev": true }, - "spawn-wrap": { - "version": "2.0.0", - "dev": true, - "requires": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - } - }, "spdx-correct": { "version": "3.1.1", "dev": true, @@ -30840,10 +24483,6 @@ "version": "3.0.11", "dev": true }, - "speedometer": { - "version": "0.1.4", - "optional": true - }, "split": { "version": "1.0.1", "dev": true, @@ -30851,13 +24490,6 @@ "through": "2" } }, - "split2": { - "version": "2.2.0", - "optional": true, - "requires": { - "through2": "^2.0.2" - } - }, "sprintf-js": { "version": "1.1.2" }, @@ -30894,8 +24526,6 @@ }, "standard": { "version": "17.0.0", - "resolved": "https://registry.npmjs.org/standard/-/standard-17.0.0.tgz", - "integrity": "sha512-GlCM9nzbLUkr+TYR5I2WQoIah4wHA2lMauqbyPLV/oI5gJxqhHzhjl9EG2N0lr/nRqI3KCbCvm/W3smxvLaChA==", "dev": true, "requires": { "eslint": "^8.13.0", @@ -30910,8 +24540,6 @@ "dependencies": { "@eslint/eslintrc": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz", - "integrity": "sha512-OhSY22oQQdw3zgPOOwdoj01l/Dzl1Z+xyUP33tkSN+aqyEhymJCcPHyXt+ylW8FSe0TfRC2VG+ROQOapD0aZSQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -30927,20 +24555,14 @@ }, "acorn": { "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", "dev": true }, "argparse": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, "eslint": { "version": "8.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.23.0.tgz", - "integrity": "sha512-pBG/XOn0MsJcKcTRLr27S5HpzQo4kLr+HjLQIyK4EiCsijDl/TB+h5uEuJU6bQ8Edvwz1XWOjpaP2qgnXGpTcA==", "dev": true, "requires": { "@eslint/eslintrc": "^1.3.1", @@ -30986,37 +24608,27 @@ "dependencies": { "eslint-visitor-keys": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true } } }, "eslint-config-standard": { "version": "17.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz", - "integrity": "sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg==", "dev": true, "requires": {} }, "eslint-config-standard-jsx": { "version": "11.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-11.0.0.tgz", - "integrity": "sha512-+1EV/R0JxEK1L0NGolAr8Iktm3Rgotx3BKwgaX+eAuSX8D952LULKtjgZD3F+e6SvibONnhLwoTi9DPxN5LvvQ==", "dev": true, "requires": {} }, "eslint-plugin-promise": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.0.1.tgz", - "integrity": "sha512-uM4Tgo5u3UWQiroOyDEsYcVMOo7re3zmno0IZmB5auxoaQNIceAbXEkSt8RNrKtaYehARHG06pYK6K1JhtP0Zw==", "dev": true, "requires": {} }, "eslint-scope": { "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -31025,8 +24637,6 @@ }, "eslint-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "requires": { "eslint-visitor-keys": "^2.0.0" @@ -31034,8 +24644,6 @@ }, "espree": { "version": "9.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", - "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", "dev": true, "requires": { "acorn": "^8.8.0", @@ -31045,22 +24653,16 @@ "dependencies": { "eslint-visitor-keys": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true } } }, "estraverse": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true }, "find-up": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "requires": { "locate-path": "^6.0.0", @@ -31069,8 +24671,6 @@ }, "glob-parent": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "requires": { "is-glob": "^4.0.3" @@ -31078,8 +24678,6 @@ }, "globals": { "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -31087,14 +24685,10 @@ }, "ignore": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "dev": true }, "js-yaml": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "requires": { "argparse": "^2.0.1" @@ -31102,8 +24696,6 @@ }, "locate-path": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "requires": { "p-locate": "^5.0.0" @@ -31111,8 +24703,6 @@ }, "p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { "yocto-queue": "^0.1.0" @@ -31120,8 +24710,6 @@ }, "p-locate": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "requires": { "p-limit": "^3.0.2" @@ -31129,22 +24717,16 @@ }, "path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } }, "standard-engine": { "version": "15.0.0", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-15.0.0.tgz", - "integrity": "sha512-4xwUhJNo1g/L2cleysUqUv7/btn7GEbYJvmgKrQ2vd/8pkTmN8cpqAZg+BT8Z1hNeEH787iWUdOpL8fmApLtxA==", "dev": true, "requires": { "get-stdin": "^8.0.0", @@ -31155,8 +24737,6 @@ "dependencies": { "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -31164,8 +24744,6 @@ }, "load-json-file": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { "graceful-fs": "^4.1.15", @@ -31177,8 +24755,6 @@ }, "locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -31187,8 +24763,6 @@ }, "p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -31196,8 +24770,6 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -31205,14 +24777,10 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "requires": { "error-ex": "^1.3.1", @@ -31221,20 +24789,14 @@ }, "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true }, "pify": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { "find-up": "^3.0.0", @@ -31243,14 +24805,10 @@ }, "strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true }, "type-fest": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } } @@ -31318,8 +24876,6 @@ }, "string.prototype.matchall": { "version": "4.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", - "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -31367,10 +24923,6 @@ "ansi-regex": "^5.0.1" } }, - "strip-bom": { - "version": "4.0.0", - "dev": true - }, "strip-final-newline": { "version": "2.0.0" }, @@ -31382,38 +24934,21 @@ } }, "strip-json-comments": { - "version": "3.1.1" - }, - "strtok3": { - "version": "6.3.0", - "requires": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - } + "version": "3.1.1", + "dev": true }, "style-loader": { "version": "3.3.1", "requires": {} }, - "sumchecker": { - "version": "1.3.1", - "optional": true, + "super-regex": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/super-regex/-/super-regex-0.2.0.tgz", + "integrity": "sha512-WZzIx3rC1CvbMDloLsVw0lkZVKJWbrkJ0k1ghKFmcnPrW1+jWbgTkTEWVtD9lMdmI4jZEz40+naBxl1dCUhXXw==", "requires": { - "debug": "^2.2.0", - "es6-promise": "^4.0.5" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "optional": true - } + "clone-regexp": "^3.0.0", + "function-timeout": "^0.1.0", + "time-span": "^5.1.0" } }, "supports-color": { @@ -31536,24 +25071,6 @@ } } }, - "tar": { - "version": "6.1.11", - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "tdigest": { - "version": "0.1.2", - "optional": true, - "requires": { - "bintrees": "1.0.2" - } - }, "temp-dir": { "version": "2.0.0", "dev": true @@ -31622,16 +25139,12 @@ "version": "0.2.0", "dev": true }, - "throttleit": { - "version": "0.0.2", - "optional": true - }, "through": { "version": "2.3.8" }, "through2": { "version": "2.0.5", - "devOptional": true, + "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -31639,7 +25152,7 @@ "dependencies": { "readable-stream": { "version": "2.3.7", - "devOptional": true, + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -31652,20 +25165,19 @@ }, "string_decoder": { "version": "1.1.1", - "devOptional": true, + "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, - "thunky": { - "version": "1.1.0" - }, - "time-cache": { - "version": "0.3.0", + "time-span": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/time-span/-/time-span-5.1.0.tgz", + "integrity": "sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==", "requires": { - "lodash.throttle": "^4.1.1" + "convert-hrtime": "^5.0.0" } }, "timeout-abort-controller": { @@ -31674,16 +25186,6 @@ "retimer": "^3.0.0" } }, - "timestamp-nano": { - "version": "1.0.0" - }, - "tiny-each-async": { - "version": "2.0.3" - }, - "to-fast-properties": { - "version": "2.0.0", - "dev": true - }, "to-readable-stream": { "version": "1.0.0" }, @@ -31696,13 +25198,6 @@ "toidentifier": { "version": "1.0.1" }, - "token-types": { - "version": "4.2.0", - "requires": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - } - }, "toposort-class": { "version": "1.0.1" }, @@ -31777,9 +25272,6 @@ } } }, - "tslib": { - "version": "2.4.0" - }, "tsscmp": { "version": "1.0.6" }, @@ -31813,10 +25305,6 @@ "mime-types": "~2.1.24" } }, - "typedarray": { - "version": "0.0.6", - "optional": true - }, "typedarray-to-buffer": { "version": "3.1.5", "requires": { @@ -31839,8 +25327,18 @@ "random-bytes": "~1.0.0" } }, + "uint8arraylist": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/uint8arraylist/-/uint8arraylist-2.3.2.tgz", + "integrity": "sha512-4ybc/jixmtGhUrebJ0bzB95TjEbskWxBKBRrAozw7P6WcAcZdPMYSLdDuNoEEGo/Cwe+0TNic9CXzWUWzy1quw==", + "requires": { + "uint8arrays": "^3.1.0" + } + }, "uint8arrays": { - "version": "3.0.0", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.0.tgz", + "integrity": "sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==", "requires": { "multiformats": "^9.4.2" } @@ -31865,6 +25363,12 @@ "version": "2.4.0", "dev": true }, + "undici": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.10.0.tgz", + "integrity": "sha512-c8HsD3IbwmjjbLvoZuRI26TZic+TSEe8FPMLLOkN1AfYRhdjnKBU6yL+IwcSCbdZiX4e5t0lfMDLDCqj4Sq70g==", + "peer": true + }, "unique-string": { "version": "2.0.0", "requires": { @@ -31910,31 +25414,12 @@ "xdg-basedir": "^4.0.0" } }, - "upper-case": { - "version": "2.0.2", - "requires": { - "tslib": "^2.0.3" - } - }, - "upper-case-first": { - "version": "2.0.2", - "requires": { - "tslib": "^2.0.3" - } - }, "uri-js": { "version": "4.4.1", "requires": { "punycode": "^2.1.0" } }, - "uri-to-multiaddr": { - "version": "6.0.0", - "requires": { - "is-ip": "^3.1.0", - "multiaddr": "^10.0.0" - } - }, "url-join": { "version": "4.0.1", "dev": true @@ -31966,6 +25451,17 @@ "dev": true, "peer": true }, + "v8-to-istanbul": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz", + "integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + } + }, "validate-npm-package-license": { "version": "3.0.4", "dev": true, @@ -31980,17 +25476,6 @@ "varint": { "version": "6.0.0" }, - "varint-decoder": { - "version": "1.0.0", - "requires": { - "varint": "^5.0.0" - }, - "dependencies": { - "varint": { - "version": "5.0.2" - } - } - }, "varuint-bitcoin": { "version": "1.1.2", "requires": { @@ -32023,10 +25508,6 @@ "graceful-fs": "^4.1.2" } }, - "webidl-conversions": { - "version": "4.0.2", - "optional": true - }, "webpack": { "version": "5.73.0", "requires": { @@ -32135,10 +25616,6 @@ "is-weakset": "^2.0.1" } }, - "which-module": { - "version": "2.0.0", - "dev": true - }, "which-pm-runs": { "version": "1.1.0", "dev": true @@ -32154,12 +25631,6 @@ "is-typed-array": "^1.1.9" } }, - "wide-align": { - "version": "1.1.5", - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "widest-line": { "version": "3.1.0", "requires": { @@ -32243,18 +25714,6 @@ "typedarray-to-buffer": "^3.1.5" } }, - "wrtc": { - "version": "0.4.7", - "optional": true, - "requires": { - "domexception": "^1.0.1", - "node-pre-gyp": "^0.13.0" - } - }, - "ws": { - "version": "7.5.8", - "requires": {} - }, "xdg-basedir": { "version": "4.0.0" }, @@ -32264,18 +25723,16 @@ "sax": ">=0.1.1" } }, - "xmlhttprequest-ssl": { - "version": "2.0.0" - }, "xsalsa20": { "version": "1.2.0" }, "xtend": { "version": "4.0.2", - "devOptional": true + "dev": true }, "y18n": { - "version": "5.0.8" + "version": "5.0.8", + "dev": true }, "yallist": { "version": "4.0.0" @@ -32286,6 +25743,7 @@ }, "yargs": { "version": "16.2.0", + "dev": true, "requires": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -32297,7 +25755,8 @@ } }, "yargs-parser": { - "version": "20.2.4" + "version": "20.2.4", + "dev": true }, "yargs-unparser": { "version": "2.0.0", @@ -32319,14 +25778,6 @@ } } }, - "yauzl": { - "version": "2.10.0", - "optional": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, "ylru": { "version": "1.3.2" }, diff --git a/package.json b/package.json index bcb1676..d19ebdc 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "1.0.0", "description": "A DEX on BCH for trading SLP tokens.", "main": "index.js", + "type": "module", "scripts": { "start": "node index.js", "test": "npm run test:all", @@ -13,8 +14,8 @@ "test:temp": "export BCH_DEX=test && mocha --exit --timeout 15000 -g '#rate-limit' test/unit/json-rpc/", "lint": "standard --env mocha --fix", "docs": "./node_modules/.bin/apidoc -i src/ -o docs", - "coverage": "nyc report --reporter=text-lcov | coveralls", - "coverage:report": "export BCH_DEX=test && nyc --reporter=html mocha --exit --timeout 15000 --recursive test/unit/ test/e2e/automated/" + "coverage": "c8 report --reporter=text-lcov | coveralls", + "coverage:report": "export BCH_DEX=test && c8 --reporter=html mocha --exit --timeout 15000 --recursive test/unit/ test/e2e/automated/" }, "author": "Chris Troutner ", "contributors": [ @@ -27,15 +28,13 @@ }, "repository": "Permissionless-Software-Foundation/bch-dex", "dependencies": { - "@psf/bch-js": "6.4.5", "axios": "0.27.2", "bch-message-lib": "2.2.1", "bcryptjs": "2.4.3", "bitcoincashjs-lib": "3.3.3", "glob": "7.1.6", - "ipfs": "0.62.3", - "ipfs-coord": "8.0.5", - "ipfs-http-client": "55.0.0", + "ipfs-coord-esm": "9.1.3", + "ipfs-http-client": "58.0.0", "jsonrpc-lite": "2.2.0", "jsonwebtoken": "8.5.1", "jwt-bch-lib": "1.3.0", @@ -53,7 +52,7 @@ "libp2p": "^0.36.2", "line-reader": "0.4.0", "minimal-slp-wallet": "5.1.0", - "mongoose": "5.13.13", + "mongoose": "5.13.14", "node-fetch": "npm:@achingbrain/node-fetch@2.6.7", "nodemailer": "6.7.5", "p2wdb": "2.2.3", @@ -65,11 +64,11 @@ "devDependencies": { "apidoc": "0.51.1", "bch-token-sweep": "2.1.2", + "c8": "7.12.0", "chai": "4.3.0", "coveralls": "2.11.4", "husky": "4.3.8", "mocha": "10.0.0", - "nyc": "15.1.0", "semantic-release": "19.0.3", "sinon": "9.2.4", "standard": "17.0.0", diff --git a/src/adapters/admin.js b/src/adapters/admin.js index 763c665..8974b82 100644 --- a/src/adapters/admin.js +++ b/src/adapters/admin.js @@ -13,16 +13,24 @@ in the Adapter directory. */ -'use strict' -const axios = require('axios').default -const mongoose = require('mongoose') -const User = require('../adapters/localdb/models/users') -const config = require('../../config') -const JsonFiles = require('../adapters/json-files') +// Global npm libraries +import axios from 'axios' +import mongoose from 'mongoose' + +// Local libraries +import User from '../adapters/localdb/models/users.js' +import config from '../../config/index.js' +import JsonFiles from '../adapters/json-files.js' + +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) + const jsonFiles = new JsonFiles() const JSON_FILE = `system-user-${config.env}.json` -const JSON_PATH = `${__dirname.toString()}/../../config/${JSON_FILE}` +const JSON_PATH = `${__dirname.toString()}../../config/${JSON_FILE}` const LOCALHOST = `http://localhost:${config.port}` const context = {} @@ -82,6 +90,8 @@ class Admin { // applications like the Task Manager and the test scripts can access. await jsonFiles.writeJSON(context, JSON_PATH) + // console.log('context: ', context) + // console.log('JSON_PATH: ', JSON_PATH) return context } catch (err) { @@ -169,4 +179,4 @@ class Admin { } } -module.exports = Admin +export default Admin diff --git a/src/adapters/bch.js b/src/adapters/bch.js index 29cbef5..0a25651 100644 --- a/src/adapters/bch.js +++ b/src/adapters/bch.js @@ -3,9 +3,10 @@ */ // Public npm libraries -const BCHJS = require('@psf/bch-js') -const MsgLib = require('bch-message-lib') -const BchWallet = require('minimal-slp-wallet/index') +import BCHJS from '@psf/bch-js'; + +import MsgLib from 'bch-message-lib'; +import BchWallet from 'minimal-slp-wallet/index'; class Bch { constructor () { @@ -79,4 +80,4 @@ class Bch { } } -module.exports = Bch +export default Bch; diff --git a/src/adapters/contact.js b/src/adapters/contact.js index 90159ee..5a85962 100644 --- a/src/adapters/contact.js +++ b/src/adapters/contact.js @@ -3,13 +3,12 @@ */ /* eslint-disable no-useless-escape */ +import config from '../../config/index.js' +import NodeMailer from '../adapters/nodemailer.js' +import wlogger from '../adapters/wlogger.js' + process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' - -const config = require('../../config') - -const NodeMailer = require('../adapters/nodemailer') const nodemailer = new NodeMailer() -const { wlogger } = require('../adapters/wlogger') let _this @@ -60,4 +59,4 @@ class ContactLib { } } } -module.exports = ContactLib +export default ContactLib diff --git a/src/adapters/fullstack-jwt.js b/src/adapters/fullstack-jwt.js index dcd7f1e..41c3eb7 100644 --- a/src/adapters/fullstack-jwt.js +++ b/src/adapters/fullstack-jwt.js @@ -5,8 +5,9 @@ for this file. */ -const JwtLib = require('jwt-bch-lib') -const BCHJS = require('@psf/bch-js') +import JwtLib from 'jwt-bch-lib' + +import BCHJS from '@psf/bch-js' class FullStackJWT { constructor (localConfig = {}) { @@ -98,4 +99,4 @@ class FullStackJWT { } } -module.exports = FullStackJWT +export default FullStackJWT diff --git a/src/adapters/index.js b/src/adapters/index.js index de8af3b..eacdee5 100644 --- a/src/adapters/index.js +++ b/src/adapters/index.js @@ -5,23 +5,26 @@ */ // Public NPM libraries -const BCHJS = require('@psf/bch-js') +import BCHJS from '@psf/bch-js' // Load individual adapter libraries. -const IPFSAdapter = require('./ipfs') -const LocalDB = require('./localdb') -const LogsAPI = require('./logapi') -const Passport = require('./passport') -const Nodemailer = require('./nodemailer') -// const { wlogger } = require('./wlogger') -const JSONFiles = require('./json-files') -const FullStackJWT = require('./fullstack-jwt') -const BCHAdapter = require('./bch') -const WalletAdapter = require('./wallet') -const P2wdbAdapter = require('./p2wdb-adapter') -const Webhook = require('./webhook') +import IPFSAdapter from './ipfs/index.js' -const config = require('../../config') +import LocalDB from './localdb/index.js' +import LogsAPI from './logapi.js' +import Passport from './passport.js' +import Nodemailer from './nodemailer.js' + +// const { wlogger } = require('./wlogger') +import JSONFiles from './json-files.js' + +import FullStackJWT from './fullstack-jwt.js' +import config from '../../config/index.js' + +import BCHAdapter from './bch.js' +import WalletAdapter from './wallet.js' +import P2wdbAdapter from './p2wdb-adapter.js' +import Webhook from './webhook.js' class Adapters { constructor (localConfig = {}) { @@ -87,4 +90,4 @@ class Adapters { } } -module.exports = Adapters +export default Adapters diff --git a/src/adapters/ipfs/index.js b/src/adapters/ipfs/index.js index f150c3f..be27bb7 100644 --- a/src/adapters/ipfs/index.js +++ b/src/adapters/ipfs/index.js @@ -3,9 +3,10 @@ */ // Local libraries -const IpfsAdapter = require('./ipfs') -const IpfsCoordAdapter = require('./ipfs-coord') -const config = require('../../../config') +import IpfsAdapter from './ipfs.js' + +import IpfsCoordAdapter from './ipfs-coord.js' +import config from '../../../config/index.js' class IPFS { constructor (localConfig = {}) { @@ -59,4 +60,4 @@ class IPFS { } } -module.exports = IPFS +export default IPFS diff --git a/src/adapters/ipfs/ipfs-coord.js b/src/adapters/ipfs/ipfs-coord.js index 414e233..03e2d3d 100644 --- a/src/adapters/ipfs/ipfs-coord.js +++ b/src/adapters/ipfs/ipfs-coord.js @@ -5,12 +5,15 @@ */ // Global npm libraries -const IpfsCoord = require('ipfs-coord') -const BCHJS = require('@psf/bch-js') -const publicIp = require('public-ip') +import IpfsCoord from 'ipfs-coord-esm' + +// import BCHJS from '@psf/bch-js'; +import SlpWallet from 'minimal-slp-wallet/index.js' +import publicIp from 'public-ip' // Local libraries -const config = require('../../../config') +import config from '../../../config/index.js' + // const JSONRPC = require('../../controllers/json-rpc/') let _this @@ -28,7 +31,8 @@ class IpfsCoordAdapter { // Encapsulate dependencies this.IpfsCoord = IpfsCoord this.ipfsCoord = {} - this.bchjs = new BCHJS() + // this.bchjs = new BCHJS() + this.wallet = new SlpWallet() this.config = config this.publicIp = publicIp @@ -41,6 +45,9 @@ class IpfsCoordAdapter { async start () { const circuitRelayInfo = {} + // Wait for the BCH wallet to create the wallet. + await this.wallet.walletInfoPromise + // If configured as a Circuit Relay, get the public IP addresses for this node. if (this.config.isCircuitRelay) { try { @@ -61,7 +68,7 @@ class IpfsCoordAdapter { ipfs: this.ipfs, type: 'node.js', // type: 'browser', - bchjs: this.bchjs, + wallet: this.wallet, privateLog: console.log, // Default to console.log isCircuitRelay: this.config.isCircuitRelay, circuitRelayInfo, @@ -108,4 +115,4 @@ class IpfsCoordAdapter { } } -module.exports = IpfsCoordAdapter +export default IpfsCoordAdapter diff --git a/src/adapters/ipfs/ipfs.js b/src/adapters/ipfs/ipfs.js index c8506b0..e0bdb03 100644 --- a/src/adapters/ipfs/ipfs.js +++ b/src/adapters/ipfs/ipfs.js @@ -11,13 +11,14 @@ // Global npm libraries // const IPFS = require('ipfs') // const IPFS = require('@chris.troutner/ipfs') -const IPFSembedded = require('ipfs') -const IPFSexternal = require('ipfs-http-client') -const fs = require('fs') -const http = require('http') +// import IPFSembedded from 'ipfs'; + +import { create } from 'ipfs-http-client' +import fs from 'fs' +import http from 'http' // Local libraries -const config = require('../../../config') +import config from '../../../config/index.js' const IPFS_DIR = './.ipfsdata/ipfs' @@ -25,17 +26,17 @@ class IpfsAdapter { constructor (localConfig) { // Encapsulate dependencies this.config = config + this.fs = fs + this.create = create // Choose the IPFS constructor based on the config settings. - this.IPFS = IPFSembedded // default - if (this.config.isProduction) { - this.IPFS = IPFSexternal - } + // this.IPFS = IPFSembedded // default + // if (this.config.isProduction) { + // this.IPFS = IPFSexternal + // } // Properties of this class instance. this.isReady = false - - this.fs = fs } // Start an IPFS node. @@ -85,7 +86,7 @@ class IpfsAdapter { } // Create a new IPFS node. - this.ipfs = await this.IPFS.create(ipfsOptions) + this.ipfs = await this.create(ipfsOptions) // Set the 'server' profile so the node does not scan private networks. await this.ipfs.config.profiles.apply('server') @@ -137,4 +138,4 @@ class IpfsAdapter { // } } -module.exports = IpfsAdapter +export default IpfsAdapter diff --git a/src/adapters/json-files.js b/src/adapters/json-files.js index 18c1037..dc384b8 100644 --- a/src/adapters/json-files.js +++ b/src/adapters/json-files.js @@ -1,8 +1,8 @@ /* A utility file for reading and writing JSON files. */ -'use strict' -const fs = require('fs') + +import fs from 'fs' let _this @@ -75,4 +75,4 @@ class JsonFiles { } } -module.exports = JsonFiles +export default JsonFiles diff --git a/src/adapters/localdb/index.js b/src/adapters/localdb/index.js index 2a4fc18..b06d2fe 100644 --- a/src/adapters/localdb/index.js +++ b/src/adapters/localdb/index.js @@ -3,10 +3,10 @@ */ // Load Mongoose models. -const Users = require('./models/users') -const Entries = require('./models/entry') -const Order = require('./models/order') -const Offer = require('./models/offer') +import Users from './models/users.js' +import Entries from './models/entry.js' +import Order from './models/order.js' +import Offer from './models/offer.js' class LocalDB { constructor () { @@ -18,4 +18,4 @@ class LocalDB { } } -module.exports = LocalDB +export default LocalDB diff --git a/src/adapters/localdb/models/entry.js b/src/adapters/localdb/models/entry.js index 0db1355..b475057 100644 --- a/src/adapters/localdb/models/entry.js +++ b/src/adapters/localdb/models/entry.js @@ -1,4 +1,4 @@ -const mongoose = require('mongoose') +import mongoose from 'mongoose'; const Entry = new mongoose.Schema({ entry: { type: String }, @@ -10,4 +10,4 @@ const Entry = new mongoose.Schema({ merit: { type: Number } }) -module.exports = mongoose.model('entry', Entry) +export default mongoose.model('entry', Entry); diff --git a/src/adapters/localdb/models/offer.js b/src/adapters/localdb/models/offer.js index 0879f7b..6cf43e0 100644 --- a/src/adapters/localdb/models/offer.js +++ b/src/adapters/localdb/models/offer.js @@ -1,4 +1,4 @@ -const mongoose = require('mongoose') +import mongoose from 'mongoose'; const Offer = new mongoose.Schema({ @@ -38,4 +38,4 @@ const Offer = new mongoose.Schema({ }) -module.exports = mongoose.model('offer', Offer) +export default mongoose.model('offer', Offer); diff --git a/src/adapters/localdb/models/order.js b/src/adapters/localdb/models/order.js index 31b47fa..b3b4bd7 100644 --- a/src/adapters/localdb/models/order.js +++ b/src/adapters/localdb/models/order.js @@ -6,7 +6,7 @@ See the dev-docs/specification.md for details on each property. */ -const mongoose = require('mongoose') +import mongoose from 'mongoose'; const Order = new mongoose.Schema({ // Token data @@ -40,4 +40,4 @@ const Order = new mongoose.Schema({ messageClass: { type: Number } }) -module.exports = mongoose.model('order', Order) +export default mongoose.model('order', Order); diff --git a/src/adapters/localdb/models/users.js b/src/adapters/localdb/models/users.js index 869e303..8ed2e13 100644 --- a/src/adapters/localdb/models/users.js +++ b/src/adapters/localdb/models/users.js @@ -1,7 +1,10 @@ -const mongoose = require('mongoose') -const bcrypt = require('bcryptjs') -const config = require('../../../../config') -const jwt = require('jsonwebtoken') +// Global npm libraries +import mongoose from 'mongoose' +import bcrypt from 'bcryptjs' +import jwt from 'jsonwebtoken' + +// Local libraries +import config from '../../../../config/index.js' const User = new mongoose.Schema({ type: { type: String, default: 'user' }, @@ -51,4 +54,4 @@ User.methods.generateToken = function generateToken () { } // export default mongoose.model('user', User) -module.exports = mongoose.model('user', User) +export default mongoose.model('user', User) diff --git a/src/adapters/localdb/order-pagination.js b/src/adapters/localdb/order-pagination.js index 6665cb8..d8143f7 100644 --- a/src/adapters/localdb/order-pagination.js +++ b/src/adapters/localdb/order-pagination.js @@ -3,7 +3,7 @@ orders from the datatabase. */ -const Order = require('./models/order') +import Order from './models/order'; // let _this @@ -39,4 +39,4 @@ class OrderPagination { } } -module.exports = OrderPagination +export default OrderPagination; diff --git a/src/adapters/logapi.js b/src/adapters/logapi.js index 8ec4c7a..eb24b12 100644 --- a/src/adapters/logapi.js +++ b/src/adapters/logapi.js @@ -1,9 +1,14 @@ -const lineReader = require('line-reader') -const fs = require('fs') +import lineReader from 'line-reader' +import fs from 'fs' -const config = require('../../config') +import config from '../../config/index.js' + +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' let _this +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) class LogsApi { constructor () { @@ -169,4 +174,4 @@ class LogsApi { } } -module.exports = LogsApi +export default LogsApi diff --git a/src/adapters/nodemailer.js b/src/adapters/nodemailer.js index f89ed93..2404756 100644 --- a/src/adapters/nodemailer.js +++ b/src/adapters/nodemailer.js @@ -3,11 +3,10 @@ */ 'use strict' -const nodemailer = require('nodemailer') +import nodemailer from 'nodemailer' -const config = require('../../config') - -const { wlogger } = require('./wlogger') +import config from '../../config/index.js' +import wlogger from './wlogger.js' let _this @@ -150,4 +149,4 @@ class NodeMailer { } } -module.exports = NodeMailer +export default NodeMailer diff --git a/src/adapters/p2wdb-adapter.js b/src/adapters/p2wdb-adapter.js index 70d8a99..156df9a 100644 --- a/src/adapters/p2wdb-adapter.js +++ b/src/adapters/p2wdb-adapter.js @@ -3,11 +3,12 @@ */ // Public npm libraries. -const axios = require('axios') -const { Write, Read } = require('p2wdb/index') +import axios from 'axios'; + +import { Write, Read } from 'p2wdb/index'; // Local libraries -const config = require('../../config') +import config from '../../config'; class P2wdbAdapter { constructor (localConfig = {}) { @@ -111,4 +112,4 @@ class P2wdbAdapter { } } -module.exports = P2wdbAdapter +export default P2wdbAdapter; diff --git a/src/adapters/passport.js b/src/adapters/passport.js index 791587f..903816a 100644 --- a/src/adapters/passport.js +++ b/src/adapters/passport.js @@ -2,7 +2,7 @@ koa-passport is an authorization library used for different authentication schemes. */ -const passport = require('koa-passport') +import passport from 'koa-passport' let _this class Passport { @@ -32,4 +32,4 @@ class Passport { } } -module.exports = Passport +export default Passport diff --git a/src/adapters/wallet.js b/src/adapters/wallet.js index b1482df..b44b52e 100644 --- a/src/adapters/wallet.js +++ b/src/adapters/wallet.js @@ -3,12 +3,14 @@ */ // Public npm libraries -const BchWallet = require('minimal-slp-wallet/index') -const bitcoinJs = require('bitcoincashjs-lib') +import BchWallet from 'minimal-slp-wallet/index'; + +import bitcoinJs from 'bitcoincashjs-lib'; // Local libraries -const JsonFiles = require('./json-files') -const config = require('../../config') +import JsonFiles from './json-files'; + +import config from '../../config'; const WALLET_FILE = `${__dirname.toString()}/../../wallet.json` // const PROOF_OF_BURN_QTY = 0.01 @@ -503,4 +505,4 @@ class WalletAdapter { } } -module.exports = WalletAdapter +export default WalletAdapter; diff --git a/src/adapters/webhook.js b/src/adapters/webhook.js index 98e3581..cb85522 100644 --- a/src/adapters/webhook.js +++ b/src/adapters/webhook.js @@ -2,8 +2,9 @@ The (Clean Architecture) Adapter for manageing a webhook connection to P2WDB. */ -const config = require('../../config') -const axios = require('axios') +import config from '../../config'; + +import axios from 'axios'; let _this @@ -101,4 +102,4 @@ function sleep (ms) { return new Promise(resolve => setTimeout(resolve, ms)) } -module.exports = WebHook +export default WebHook; diff --git a/src/adapters/wlogger.js b/src/adapters/wlogger.js index 5a48309..5d518ae 100644 --- a/src/adapters/wlogger.js +++ b/src/adapters/wlogger.js @@ -6,10 +6,17 @@ 'use strict' -const winston = require('winston') -require('winston-daily-rotate-file') +// Global npm libraries +import winston from 'winston' +import 'winston-daily-rotate-file' -const config = require('../../config') +// Local libraries +import config from '../../config/index.js' + +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) class Wlogger { constructor (localConfig = {}) { @@ -70,4 +77,5 @@ logger.outputToConsole() const wlogger = logger.wlogger -module.exports = { wlogger, Wlogger } +export { wlogger as default, Wlogger } +// export default wlogger diff --git a/src/controllers/index.js b/src/controllers/index.js index 47d35bc..a316cf1 100644 --- a/src/controllers/index.js +++ b/src/controllers/index.js @@ -6,12 +6,21 @@ // Public npm libraries. -// Local libraries -const Adapters = require('../adapters') -const JSONRPC = require('./json-rpc') -const UseCases = require('../use-cases') -const RESTControllers = require('./rest-api') -const TimerControllers = require('./timer-controllers') +// Load the Clean Architecture Adapters library +import Adapters from '../adapters/index.js' + +// Load the JSON RPC Controller. +import JSONRPC from './json-rpc/index.js' + +// Load the Clean Architecture Use Case libraries. +import UseCases from '../use-cases/index.js' + +// const useCases = new UseCases({ adapters }) + +// Load the REST API Controllers. +import RESTControllers from './rest-api/index.js' + +import TimerControllers from './timer-controllers.js' class Controllers { constructor (localConfig = {}) { @@ -63,4 +72,4 @@ class Controllers { } } -module.exports = Controllers +export default Controllers diff --git a/src/controllers/json-rpc/about/index.js b/src/controllers/json-rpc/about/index.js index c3923d3..48d1cbd 100644 --- a/src/controllers/json-rpc/about/index.js +++ b/src/controllers/json-rpc/about/index.js @@ -6,10 +6,10 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') +import jsonrpc from 'jsonrpc-lite' // Local libraries -const config = require('../../../../config') +import config from '../../../../config/index.js' class AboutRPC { constructor (localConfig) { @@ -48,4 +48,4 @@ class AboutRPC { } } -module.exports = AboutRPC +export default AboutRPC diff --git a/src/controllers/json-rpc/auth/index.js b/src/controllers/json-rpc/auth/index.js index 8f651a5..1e40cdf 100644 --- a/src/controllers/json-rpc/auth/index.js +++ b/src/controllers/json-rpc/auth/index.js @@ -3,13 +3,14 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') +import jsonrpc from 'jsonrpc-lite' // Local libraries // const AuthLib = require('../../lib/auth') // const UserLib = require('../../../use-cases/user') -const { wlogger } = require('../../../adapters/wlogger') -const RateLimit = require('../rate-limit') +import wlogger from '../../../adapters/wlogger.js' + +import RateLimit from '../rate-limit.js' class AuthRPC { constructor (localConfig = {}) { @@ -173,4 +174,4 @@ class AuthRPC { } } -module.exports = AuthRPC +export default AuthRPC diff --git a/src/controllers/json-rpc/index.js b/src/controllers/json-rpc/index.js index ba90db0..cd997f7 100644 --- a/src/controllers/json-rpc/index.js +++ b/src/controllers/json-rpc/index.js @@ -3,13 +3,14 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') +import jsonrpc from 'jsonrpc-lite' // Local support libraries -const { wlogger } = require('../../adapters/wlogger') -const UserController = require('./users') -const AuthController = require('./auth') -const AboutController = require('./about') +import wlogger from '../../adapters/wlogger.js' + +import UserController from './users/index.js' +import AuthController from './auth/index.js' +import AboutController from './about/index.js' let _this @@ -190,4 +191,4 @@ class JSONRPC { } } -module.exports = JSONRPC +export default JSONRPC diff --git a/src/controllers/json-rpc/rate-limit.js b/src/controllers/json-rpc/rate-limit.js index 3f284d3..7a5619b 100644 --- a/src/controllers/json-rpc/rate-limit.js +++ b/src/controllers/json-rpc/rate-limit.js @@ -4,7 +4,7 @@ /* eslint no-useless-catch: 0 */ // Local libraries -const RateLimitLib = require('koa2-ratelimit').RateLimit +import { RateLimit as RateLimitLib } from 'koa2-ratelimit' class RateLimit { constructor (options) { @@ -80,4 +80,4 @@ class RateLimit { } } -module.exports = RateLimit +export default RateLimit diff --git a/src/controllers/json-rpc/users/index.js b/src/controllers/json-rpc/users/index.js index bfadedc..55f6247 100644 --- a/src/controllers/json-rpc/users/index.js +++ b/src/controllers/json-rpc/users/index.js @@ -3,12 +3,13 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') +import jsonrpc from 'jsonrpc-lite' // Local libraries // const UserLib = require('../../../use-cases/user') -const Validators = require('../validators') -const RateLimit = require('../rate-limit') +import Validators from '../validators.js' + +import RateLimit from '../rate-limit.js' class UserRPC { constructor (localConfig = {}) { @@ -533,4 +534,4 @@ class UserRPC { // TODO create deleteUser() } -module.exports = UserRPC +export default UserRPC diff --git a/src/controllers/json-rpc/validators.js b/src/controllers/json-rpc/validators.js index 50cd251..32e662c 100644 --- a/src/controllers/json-rpc/validators.js +++ b/src/controllers/json-rpc/validators.js @@ -4,10 +4,11 @@ /* eslint no-useless-catch: 0 */ // Public npm libraries -const jwt = require('jsonwebtoken') +import jwt from 'jsonwebtoken' // Local libraries -const config = require('../../../config') +import config from '../../../config/index.js' + // const UserModel = require('../../adapters/localdb/models/users') class Validators { @@ -93,4 +94,4 @@ class Validators { } } -module.exports = Validators +export default Validators diff --git a/src/controllers/rest-api/auth/controller.js b/src/controllers/rest-api/auth/controller.js index a542b79..c468417 100644 --- a/src/controllers/rest-api/auth/controller.js +++ b/src/controllers/rest-api/auth/controller.js @@ -1,4 +1,4 @@ -const Passport = require('../../../adapters/passport') +import Passport from '../../../adapters/passport.js' const passport = new Passport() let _this @@ -96,4 +96,4 @@ class AuthRESTController { } } -module.exports = AuthRESTController +export default AuthRESTController diff --git a/src/controllers/rest-api/auth/index.js b/src/controllers/rest-api/auth/index.js index 71da067..9fbe35a 100644 --- a/src/controllers/rest-api/auth/index.js +++ b/src/controllers/rest-api/auth/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router' // Local libraries. -const AuthRESTController = require('./controller') +import AuthRESTController from './controller.js' class AuthRouter { constructor (localConfig = {}) { @@ -48,4 +48,4 @@ class AuthRouter { } } -module.exports = AuthRouter +export default AuthRouter diff --git a/src/controllers/rest-api/contact/controller.js b/src/controllers/rest-api/contact/controller.js index db0e3ac..09b372a 100644 --- a/src/controllers/rest-api/contact/controller.js +++ b/src/controllers/rest-api/contact/controller.js @@ -3,9 +3,9 @@ */ /* eslint-disable no-useless-escape */ -process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' +import ContactLib from '../../../adapters/contact.js' -const ContactLib = require('../../../adapters/contact') +process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' const contactLib = new ContactLib() let _this @@ -74,4 +74,4 @@ class ContactController { } } } -module.exports = ContactController +export default ContactController diff --git a/src/controllers/rest-api/contact/index.js b/src/controllers/rest-api/contact/index.js index c36daae..f412316 100644 --- a/src/controllers/rest-api/contact/index.js +++ b/src/controllers/rest-api/contact/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router' // Local libraries. -const ContactRESTControllerLib = require('./controller') +import ContactRESTControllerLib from './controller.js' class ContactRouter { constructor (localConfig = {}) { @@ -53,4 +53,4 @@ class ContactRouter { } } -module.exports = ContactRouter +export default ContactRouter diff --git a/src/controllers/rest-api/entry/controller.js b/src/controllers/rest-api/entry/controller.js index 7749422..939f8a2 100644 --- a/src/controllers/rest-api/entry/controller.js +++ b/src/controllers/rest-api/entry/controller.js @@ -64,4 +64,4 @@ class EntryRESTControllerLib { } } -module.exports = EntryRESTControllerLib +export default EntryRESTControllerLib; diff --git a/src/controllers/rest-api/entry/index.js b/src/controllers/rest-api/entry/index.js index 486c537..14c0631 100644 --- a/src/controllers/rest-api/entry/index.js +++ b/src/controllers/rest-api/entry/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router'; // Local libraries. -const EntryRESTControllerLib = require('./controller') +import EntryRESTControllerLib from './controller'; let _this @@ -57,4 +57,4 @@ class UserRouter { } } -module.exports = UserRouter +export default UserRouter; diff --git a/src/controllers/rest-api/index.js b/src/controllers/rest-api/index.js index a5d5849..0599c78 100644 --- a/src/controllers/rest-api/index.js +++ b/src/controllers/rest-api/index.js @@ -6,15 +6,15 @@ // Public npm libraries. -// Load the REST API Controllers. -const AuthRESTController = require('./auth') -const UserRouter = require('./users') -const ContactRESTController = require('./contact') -const LogsRESTController = require('./logs') -const EntryRouter = require('./entry') -const OfferRouter = require('./offer') -const OrderRouter = require('./order') -const P2WDBRouter = require('./p2wdb') +// Local libraries +import AuthRESTController from './auth/index.js' +import UserRouter from './users/index.js' +import ContactRESTController from './contact/index.js' +import LogsRESTController from './logs/index.js' +import EntryRouter from './entry.js' +import OfferRouter from './offer.js' +import OrderRouter from './order.js' +import P2WDBRouter from './p2wdb.js' class RESTControllers { constructor (localConfig = {}) { @@ -72,4 +72,4 @@ class RESTControllers { } } -module.exports = RESTControllers +export default RESTControllers diff --git a/src/controllers/rest-api/logs/controller.js b/src/controllers/rest-api/logs/controller.js index c8a2398..e289860 100644 --- a/src/controllers/rest-api/logs/controller.js +++ b/src/controllers/rest-api/logs/controller.js @@ -1,4 +1,4 @@ -const LogsApiLib = require('../../../adapters/logapi') +import LogsApiLib from '../../../adapters/logapi.js' const logsApiLib = new LogsApiLib() let _this @@ -62,4 +62,4 @@ class LogsApi { } } -module.exports = LogsApi +export default LogsApi diff --git a/src/controllers/rest-api/logs/index.js b/src/controllers/rest-api/logs/index.js index 334ca67..a4c6037 100644 --- a/src/controllers/rest-api/logs/index.js +++ b/src/controllers/rest-api/logs/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router' // Local libraries. -const LogsRESTControllerLib = require('./controller') +import LogsRESTControllerLib from './controller.js' class LogsRouter { constructor (localConfig = {}) { @@ -52,4 +52,4 @@ class LogsRouter { } } -module.exports = LogsRouter +export default LogsRouter diff --git a/src/controllers/rest-api/middleware/error.js b/src/controllers/rest-api/middleware/error.js index cf8bca3..d1a44b2 100644 --- a/src/controllers/rest-api/middleware/error.js +++ b/src/controllers/rest-api/middleware/error.js @@ -1,4 +1,4 @@ -module.exports = function errorMiddleware () { +export default function errorMiddleware () { return async (ctx, next) => { try { await next() @@ -8,4 +8,4 @@ module.exports = function errorMiddleware () { ctx.app.emit('error', err, ctx) } } -} +}; diff --git a/src/controllers/rest-api/middleware/validators.js b/src/controllers/rest-api/middleware/validators.js index c370a0e..8c3a88c 100644 --- a/src/controllers/rest-api/middleware/validators.js +++ b/src/controllers/rest-api/middleware/validators.js @@ -1,11 +1,24 @@ /* REST API validator middleware. + + These are a series of functions that ensure the user making a REST API + matches a user in the database (or not). In can do fine-grain user control + such as telling the difference between an admin, a normal user, and an + anonymous user. + + This middleware is used to gatekeep access to different REST API resources. + + CT 9/17/22: + This library was lightly refactored to make it work with the new unit tests. + This not and the commented code below can be deleted once it is verified that + this refactor did not result in any breaking changes. */ -const User = require('../../../adapters/localdb/models/users') -const config = require('../../../../config') -const jwt = require('jsonwebtoken') -const { wlogger } = require('../../../adapters/wlogger') +import User from '../../../adapters/localdb/models/users.js' + +import config from '../../../../config/index.js' +import jwt from 'jsonwebtoken' +import wlogger from '../../../adapters/wlogger.js' let _this @@ -20,12 +33,10 @@ class Validators { async ensureUser (ctx, next) { try { - // console.log(`getToken: ${typeof (getToken)}`) const token = _this.getToken(ctx) if (!token) { - // console.log(`Err: Token not provided.`) - ctx.throw(401) + throw new Error('Token could not be retrieved from header') } let decoded = null @@ -34,20 +45,23 @@ class Validators { // console.log(`config: ${JSON.stringify(config, null, 2)}`) decoded = _this.jwt.verify(token, config.token) } catch (err) { - // console.log(`Err: Token could not be decoded: ${err}`) - ctx.throw(401) + throw new Error('Could not verify JWT') } ctx.state.user = await _this.User.findById(decoded.id, '-password') + if (!ctx.state.user) { - // console.log(`Err: Could not find user.`) - ctx.throw(401) + // console.log('Err: Could not find user.') + throw new Error('Could not find user') } // return next() return true } catch (error) { - ctx.throw(401) + // console.log('Ensure user error: ', error) + // console.log('ctx: ', ctx) + ctx.status = 401 + ctx.throw(401, error.message) } } @@ -60,7 +74,8 @@ class Validators { if (!token) { // console.log(`Err: Token not provided.`) - ctx.throw(401) + // ctx.throw(401) + throw new Error('Token could not be retrieved from header') } let decoded = null @@ -70,22 +85,26 @@ class Validators { decoded = _this.jwt.verify(token, config.token) } catch (err) { // console.log(`Err: Token could not be decoded: ${err}`) - ctx.throw(401) + // ctx.throw(401) + throw new Error('Could not verify JWT') } ctx.state.user = await _this.User.findById(decoded.id, '-password') if (!ctx.state.user) { // console.log(`Err: Could not find user.`) - ctx.throw(401) + // ctx.throw(401) + throw new Error('Could not find user') } if (ctx.state.user.type !== 'admin') { - ctx.throw(401, 'not admin') + // ctx.throw(401, 'not admin') + throw new Error('User is not an admin') } // return next() return true } catch (error) { + ctx.status = 401 ctx.throw(401, error.message) } } @@ -101,7 +120,8 @@ class Validators { if (!token) { // console.log(`Err: Token not provided.`) - ctx.throw(401) + // ctx.throw(401) + throw new Error('Token could not be retrieved from header') } // The user ID targeted in this API call. @@ -114,14 +134,16 @@ class Validators { // console.log(`config: ${JSON.stringify(config, null, 2)}`) decoded = _this.jwt.verify(token, config.token) } catch (err) { - // console.log(`Err: Token could not be decoded: ${err}`) - ctx.throw(401) + console.log(`Err: Token could not be decoded: ${err}`) + // ctx.throw(401) + throw new Error('Could not verify JWT') } ctx.state.user = await _this.User.findById(decoded.id, '-password') if (!ctx.state.user) { // console.log(`Err: Could not find user.`) - ctx.throw(401) + // ctx.throw(401) + throw new Error('Could not find user') } // console.log('ctx.state.user: ', ctx.state.user) @@ -135,7 +157,8 @@ class Validators { // If they don't match, then the calling user better be an admin. if (ctx.state.user.type !== 'admin') { - ctx.throw(401, 'not admin') + // ctx.throw(401, 'not admin') + throw new Error('User is not an admin') } else { wlogger.verbose("It's ok. The user is an admin.") } @@ -144,6 +167,8 @@ class Validators { // return next() return true } catch (error) { + // console.log('Error in ensureTargetUserOrAdmin(): ', error) + ctx.status = 401 ctx.throw(401, error.message) } } @@ -166,4 +191,4 @@ class Validators { } } -module.exports = Validators +export default Validators diff --git a/src/controllers/rest-api/offer/controller.js b/src/controllers/rest-api/offer/controller.js index e6a9611..3a542f8 100644 --- a/src/controllers/rest-api/offer/controller.js +++ b/src/controllers/rest-api/offer/controller.js @@ -2,7 +2,7 @@ REST API Controller library for the /offer route */ -const { wlogger } = require('../../../adapters/wlogger') +import { wlogger } from '../../../adapters/wlogger'; let _this @@ -128,4 +128,4 @@ class OfferRESTControllerLib { } } -module.exports = OfferRESTControllerLib +export default OfferRESTControllerLib; diff --git a/src/controllers/rest-api/offer/index.js b/src/controllers/rest-api/offer/index.js index da3123c..c94bbf4 100644 --- a/src/controllers/rest-api/offer/index.js +++ b/src/controllers/rest-api/offer/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router'; // Local libraries. -const OfferRESTControllerLib = require('./controller') +import OfferRESTControllerLib from './controller'; let _this @@ -61,4 +61,4 @@ class OfferRouter { } } -module.exports = OfferRouter +export default OfferRouter; diff --git a/src/controllers/rest-api/order/controller.js b/src/controllers/rest-api/order/controller.js index 61b0b02..bc5e7df 100644 --- a/src/controllers/rest-api/order/controller.js +++ b/src/controllers/rest-api/order/controller.js @@ -65,4 +65,4 @@ class OrderRESTControllerLib { } } -module.exports = OrderRESTControllerLib +export default OrderRESTControllerLib; diff --git a/src/controllers/rest-api/order/index.js b/src/controllers/rest-api/order/index.js index 29af97f..f0d4e23 100644 --- a/src/controllers/rest-api/order/index.js +++ b/src/controllers/rest-api/order/index.js @@ -3,10 +3,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router'; // Local libraries. -const OrderRESTControllerLib = require('./controller') +import OrderRESTControllerLib from './controller'; let _this @@ -57,4 +57,4 @@ class OrderRouter { } } -module.exports = OrderRouter +export default OrderRouter; diff --git a/src/controllers/rest-api/p2wdb/controller.js b/src/controllers/rest-api/p2wdb/controller.js index c532f2a..96412b0 100644 --- a/src/controllers/rest-api/p2wdb/controller.js +++ b/src/controllers/rest-api/p2wdb/controller.js @@ -101,4 +101,4 @@ class P2WDBRESTControllerLib { } } -module.exports = P2WDBRESTControllerLib +export default P2WDBRESTControllerLib; diff --git a/src/controllers/rest-api/p2wdb/index.js b/src/controllers/rest-api/p2wdb/index.js index a105404..5ae5f27 100644 --- a/src/controllers/rest-api/p2wdb/index.js +++ b/src/controllers/rest-api/p2wdb/index.js @@ -5,10 +5,10 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router'; // Local libraries. -const P2WDBRESTControllerLib = require('./controller') +import P2WDBRESTControllerLib from './controller'; let _this @@ -59,4 +59,4 @@ class P2WDBRouter { } } -module.exports = P2WDBRouter +export default P2WDBRouter; diff --git a/src/controllers/rest-api/users/controller.js b/src/controllers/rest-api/users/controller.js index 01ab82b..8c2548d 100644 --- a/src/controllers/rest-api/users/controller.js +++ b/src/controllers/rest-api/users/controller.js @@ -2,7 +2,7 @@ REST API Controller library for the /user route */ -const { wlogger } = require('../../../adapters/wlogger') +import wlogger from '../../../adapters/wlogger.js' let _this @@ -36,7 +36,7 @@ class UserRESTControllerLib { * @apiGroup REST Users * * @apiExample Example usage: - * curl -H "Content-Type: application/json" -X POST -d '{ "user": { "email": "email@format.com", "name": "my name", "password": "secretpasas" } }' localhost:5001/users + * curl -H "Content-Type: application/json" -X POST -d '{ "user": { "email": "email@format.com", "name": "my name", "password": "secretpasas" } }' localhost:5010/users * * @apiParam {Object} user User object (required) * @apiParam {String} user.email Email @@ -136,7 +136,7 @@ class UserRESTControllerLib { * @apiGroup REST Users * * @apiExample Example usage: - * curl -H "Content-Type: application/json" -X GET localhost:5000/users/56bd1da600a526986cf65c80 + * curl -H "Content-Type: application/json" -X GET localhost:5010/users/56bd1da600a526986cf65c80 * * @apiSuccess {Object} users User object * @apiSuccess {ObjectId} users._id User id @@ -281,4 +281,4 @@ class UserRESTControllerLib { } } -module.exports = UserRESTControllerLib +export default UserRESTControllerLib diff --git a/src/controllers/rest-api/users/index.js b/src/controllers/rest-api/users/index.js index c829615..0001861 100644 --- a/src/controllers/rest-api/users/index.js +++ b/src/controllers/rest-api/users/index.js @@ -3,11 +3,12 @@ */ // Public npm libraries. -const Router = require('koa-router') +import Router from 'koa-router' // Local libraries. -const UserRESTControllerLib = require('./controller') -const Validators = require('../middleware/validators') +import UserRESTControllerLib from './controller.js' + +import Validators from '../middleware/validators.js' let _this @@ -85,4 +86,4 @@ class UserRouter { } } -module.exports = UserRouter +export default UserRouter diff --git a/src/controllers/timer-controllers.js b/src/controllers/timer-controllers.js index 6a08067..7611d58 100644 --- a/src/controllers/timer-controllers.js +++ b/src/controllers/timer-controllers.js @@ -56,4 +56,4 @@ class TimerControllers { } } -module.exports = TimerControllers +export default TimerControllers; diff --git a/src/entities/entry.js b/src/entities/entry.js index c94cb26..0dbb952 100644 --- a/src/entities/entry.js +++ b/src/entities/entry.js @@ -38,4 +38,4 @@ class Entry { } } -module.exports = Entry +export default Entry; diff --git a/src/entities/offer.js b/src/entities/offer.js index c21936e..cfa0cdf 100644 --- a/src/entities/offer.js +++ b/src/entities/offer.js @@ -103,4 +103,4 @@ class OfferEntity { } } -module.exports = OfferEntity +export default OfferEntity; diff --git a/src/entities/order.js b/src/entities/order.js index 5137114..8a3a3a8 100644 --- a/src/entities/order.js +++ b/src/entities/order.js @@ -65,4 +65,4 @@ class Order { } } -module.exports = Order +export default Order; diff --git a/src/entities/user.js b/src/entities/user.js index 86114ea..02f2899 100644 --- a/src/entities/user.js +++ b/src/entities/user.js @@ -21,4 +21,4 @@ class User { } } -module.exports = User +export default User diff --git a/src/use-cases/entry.js b/src/use-cases/entry.js index 3031c92..5289dc6 100644 --- a/src/use-cases/entry.js +++ b/src/use-cases/entry.js @@ -1,6 +1,5 @@ -const { wlogger } = require('../adapters/wlogger') - -const EntryEntiy = require('../entities/entry') +import { wlogger } from '../adapters/wlogger'; +import EntryEntiy from '../entities/entry'; class EntryLib { constructor (localConfig = {}) { // console.log('User localConfig: ', localConfig) @@ -63,4 +62,4 @@ class EntryLib { } } -module.exports = EntryLib +export default EntryLib; diff --git a/src/use-cases/index.js b/src/use-cases/index.js index 5ae5ad8..de44706 100644 --- a/src/use-cases/index.js +++ b/src/use-cases/index.js @@ -4,10 +4,10 @@ https://troutsblog.com/blog/clean-architecture */ -const UserUseCases = require('./user') -const EntryUseCases = require('./entry') -const OfferUseCases = require('./offer') -const OrderUseCases = require('./order') +import UserUseCases from './user.js' +import EntryUseCases from './entry.js' +import OfferUseCases from './offer.js' +import OrderUseCases from './order.js' class UseCases { constructor (localConfig = {}) { @@ -40,4 +40,4 @@ class UseCases { } } -module.exports = UseCases +export default UseCases diff --git a/src/use-cases/offer/index.js b/src/use-cases/offer/index.js index d4991a1..cfa019d 100644 --- a/src/use-cases/offer/index.js +++ b/src/use-cases/offer/index.js @@ -14,11 +14,12 @@ */ // Global npm libraries -const axios = require('axios') +import axios from 'axios'; // Local libraries -const OfferEntity = require('../../entities/offer') -const config = require('../../../config') +import OfferEntity from '../../entities/offer'; + +import config from '../../../config'; const DEFAULT_ENTRIES_PER_PAGE = 20 const NFT_ENTRIES_PER_PAGE = 6 @@ -593,4 +594,4 @@ class OfferUseCases { } } -module.exports = OfferUseCases +export default OfferUseCases; diff --git a/src/use-cases/offer/retry-queue.js b/src/use-cases/offer/retry-queue.js index 7a1e461..b9fc72d 100644 --- a/src/use-cases/offer/retry-queue.js +++ b/src/use-cases/offer/retry-queue.js @@ -9,8 +9,9 @@ pay-to-write-access-controller.js depends on this library. */ -const PQueue = require('p-queue').default -const pRetry = require('p-retry') +import PQueue from 'p-queue'; + +import pRetry from 'p-retry'; let _this @@ -103,4 +104,4 @@ class RetryQueue { } } -module.exports = RetryQueue +export default RetryQueue; diff --git a/src/use-cases/order.js b/src/use-cases/order.js index 12c69a8..5583fa5 100644 --- a/src/use-cases/order.js +++ b/src/use-cases/order.js @@ -3,9 +3,10 @@ */ // Local libraries -const { wlogger } = require('../adapters/wlogger') -const OrderEntity = require('../entities/order') -const config = require('../../config') +import { wlogger } from '../adapters/wlogger'; + +import OrderEntity from '../entities/order'; +import config from '../../config'; class OrderLib { constructor (localConfig = {}) { @@ -237,4 +238,4 @@ class OrderLib { } } -module.exports = OrderLib +export default OrderLib; diff --git a/src/use-cases/user.js b/src/use-cases/user.js index c879717..75baadd 100644 --- a/src/use-cases/user.js +++ b/src/use-cases/user.js @@ -3,8 +3,9 @@ functions are called by the /user REST API endpoints. */ -const UserEntity = require('../entities/user') -const { wlogger } = require('../adapters/wlogger') +import UserEntity from '../entities/user.js' + +import wlogger from '../adapters/wlogger.js' class UserLib { constructor (localConfig = {}) { @@ -181,4 +182,4 @@ class UserLib { } } -module.exports = UserLib +export default UserLib diff --git a/test/e2e/automated/a01-auth.rest-e2e.js b/test/e2e/automated/a01-auth.rest-e2e.js index 0968848..3c97010 100644 --- a/test/e2e/automated/a01-auth.rest-e2e.js +++ b/test/e2e/automated/a01-auth.rest-e2e.js @@ -5,15 +5,18 @@ */ // Public npm libraries -const assert = require('chai').assert -const axios = require('axios').default +import { assert } from 'chai' + +import axios from 'axios' + // const sinon = require('sinon') // Local support libraries -const config = require('../../../config') -const Server = require('../../../bin/server') -const testUtils = require('../../utils/test-utils') -const AdminLib = require('../../../src/adapters/admin') +import config from '../../../config/index.js' + +import Server from '../../../bin/server.js' +import testUtils from '../../utils/test-utils.js' +import AdminLib from '../../../src/adapters/admin.js' const adminLib = new AdminLib() // const request = supertest.agent(app.listen()) diff --git a/test/e2e/automated/a02-users.rest-e2e.js b/test/e2e/automated/a02-users.rest-e2e.js index d4a0125..4e6f8d0 100644 --- a/test/e2e/automated/a02-users.rest-e2e.js +++ b/test/e2e/automated/a02-users.rest-e2e.js @@ -1,20 +1,19 @@ -const testUtils = require('../../utils/test-utils') -const assert = require('chai').assert -const config = require('../../../config') -const axios = require('axios').default -const sinon = require('sinon') +import testUtils from '../../utils/test-utils.js' +import { assert } from 'chai' +import config from '../../../config/index.js' +import axios from 'axios' +import sinon from 'sinon' +import util from 'util' -const util = require('util') +import UserController from '../../../src/controllers/rest-api/users/controller.js' +import Adapters from '../../../src/adapters/index.js' +import UseCases from '../../../src/use-cases/index.js' util.inspect.defaultOptions = { depth: 1 } const LOCALHOST = `http://localhost:${config.port}` const context = {} - -const UserController = require('../../../src/controllers/rest-api/users/controller') -const Adapters = require('../../../src/adapters') const adapters = new Adapters() -const UseCases = require('../../../src/use-cases/') let uut let sandbox @@ -39,7 +38,7 @@ describe('Users', () => { // Get the JWT used to log in as the admin 'system' user. const adminJWT = await testUtils.getAdminJWT() - // console.log(`adminJWT: ${admi nJWT}`) + console.log(`adminJWT: ${adminJWT}`) context.adminJWT = adminJWT // const admin = await testUtils.loginAdminUser() @@ -71,9 +70,6 @@ describe('Users', () => { await axios(options) - /* console.log( - `result stringified: ${JSON.stringify(result.data, null, 2)}` - ) */ assert(false, 'Unexpected result') } catch (err) { assert(err.response.status === 422, 'Error code 422 expected.') diff --git a/test/e2e/automated/a04-contact.rest-e2e.js b/test/e2e/automated/a04-contact.rest-e2e.js index 4d28cde..374d9bb 100644 --- a/test/e2e/automated/a04-contact.rest-e2e.js +++ b/test/e2e/automated/a04-contact.rest-e2e.js @@ -1,15 +1,15 @@ -const config = require('../../../config') -const axios = require('axios').default -const assert = require('chai').assert -const sinon = require('sinon') +import config from '../../../config/index.js' +import axios from 'axios' +import { assert } from 'chai' +import sinon from 'sinon' + +import { context as mockContext } from '../../unit/mocks/ctx-mock.js' +import ContactController from '../../../src/controllers/rest-api/contact/controller.js' // Mock data // const mockData = require('./mocks/contact-mocks') const LOCALHOST = `http://localhost:${config.port}` - -const mockContext = require('../../unit/mocks/ctx-mock').context -const ContactController = require('../../../src/controllers/rest-api/contact/controller') let uut let sandbox diff --git a/test/e2e/automated/a06-logapi.rest-e2e.js b/test/e2e/automated/a06-logapi.rest-e2e.js index 5ea6dc4..63c3b9a 100644 --- a/test/e2e/automated/a06-logapi.rest-e2e.js +++ b/test/e2e/automated/a06-logapi.rest-e2e.js @@ -1,17 +1,15 @@ -const config = require('../../../config') -const assert = require('chai').assert +import config from '../../../config/index.js' +import { assert } from 'chai' +import axios from 'axios' +import sinon from 'sinon' +import util from 'util' -const axios = require('axios').default -const sinon = require('sinon') - -const util = require('util') +import LogsController from '../../../src/controllers/rest-api/logs/controller.js' +import { context as mockContext } from '../../unit/mocks/ctx-mock.js' util.inspect.defaultOptions = { depth: 1 } const LOCALHOST = `http://localhost:${config.port}` -const LogsController = require('../../../src/controllers/rest-api/logs/controller') -const mockContext = require('../../unit/mocks/ctx-mock').context - let sandbox let uut describe('LogsApi', () => { diff --git a/test/e2e/automated/a08-validators.rest-e2e.js b/test/e2e/automated/a08-validators.rest-e2e.js index b93d4a8..042345e 100644 --- a/test/e2e/automated/a08-validators.rest-e2e.js +++ b/test/e2e/automated/a08-validators.rest-e2e.js @@ -1,12 +1,10 @@ -const assert = require('chai').assert -const testUtils = require('../../utils/test-utils') - -const Validators = require('../../../src/controllers/rest-api/middleware/validators') - -const sinon = require('sinon') -const mockContext = require('../../unit/mocks/ctx-mock').context - -const util = require('util') +/* +import { assert } from 'chai'; +import testUtils from '../../utils/test-utils.js'; +import Validators from '../../../src/controllers/rest-api/middleware/validators.js'; +import sinon from 'sinon'; +import { context as mockContext } from '../../unit/mocks/ctx-mock.js'; +import util from 'util'; util.inspect.defaultOptions = { depth: 1 } const context = {} @@ -303,3 +301,4 @@ describe('Validators', () => { }) }) }) +*/ diff --git a/test/e2e/automated/a09-admin.rest-e2e.js b/test/e2e/automated/a09-admin.rest-e2e.js index cf94d2f..833423f 100644 --- a/test/e2e/automated/a09-admin.rest-e2e.js +++ b/test/e2e/automated/a09-admin.rest-e2e.js @@ -1,10 +1,7 @@ -const assert = require('chai').assert - -const Admin = require('../../../src/adapters/admin') - -const sinon = require('sinon') - -const util = require('util') +import { assert } from 'chai' +import Admin from '../../../src/adapters/admin.js' +import sinon from 'sinon' +import util from 'util' util.inspect.defaultOptions = { depth: 1 } let sandbox diff --git a/test/e2e/automated/a10-offer.rest-e2e.js b/test/e2e/automated/a10-offer.rest-e2e.js index 39a8e5a..30459f3 100644 --- a/test/e2e/automated/a10-offer.rest-e2e.js +++ b/test/e2e/automated/a10-offer.rest-e2e.js @@ -6,7 +6,7 @@ // const assert = require('chai').assert // const axios = require('axios').default -const sinon = require('sinon') +import sinon from 'sinon'; // const LOCALHOST = `http://localhost:${config.port}` diff --git a/test/e2e/manual/01-create-order.js b/test/e2e/manual/01-create-order.js index 3095a9f..f1b575c 100644 --- a/test/e2e/manual/01-create-order.js +++ b/test/e2e/manual/01-create-order.js @@ -5,7 +5,7 @@ Ensure the REST API is up an running before running this test. */ -const axios = require('axios') +import axios from 'axios'; const LOCALHOST = 'http://localhost:5700' diff --git a/test/e2e/manual/02-take-offer.js b/test/e2e/manual/02-take-offer.js index cde0ec7..8c9e43a 100644 --- a/test/e2e/manual/02-take-offer.js +++ b/test/e2e/manual/02-take-offer.js @@ -2,7 +2,7 @@ Part 2 of 3: Take an offer by submiting a counter-offer. */ -const axios = require('axios') +import axios from 'axios'; const LOCALHOST = 'http://localhost:5700' diff --git a/test/integration/adapters/p2wdb-adapter-integration.js b/test/integration/adapters/p2wdb-adapter-integration.js index f3b90ab..59af7cc 100644 --- a/test/integration/adapters/p2wdb-adapter-integration.js +++ b/test/integration/adapters/p2wdb-adapter-integration.js @@ -10,10 +10,10 @@ */ // Public npm libraries -const BCHJS = require('@psf/bch-js') +import BCHJS from '@psf/bch-js'; // Local libraries -const P2wdbAdapter = require('../../../src/adapters/p2wdb-adapter') +import P2wdbAdapter from '../../../src/adapters/p2wdb-adapter'; const wif = process.env.WIF if (!wif) { diff --git a/test/integration/adapters/wallet-adapter-integration.js b/test/integration/adapters/wallet-adapter-integration.js index 4c1d6e6..05cf828 100644 --- a/test/integration/adapters/wallet-adapter-integration.js +++ b/test/integration/adapters/wallet-adapter-integration.js @@ -6,7 +6,7 @@ // const assert = require('chai').assert // Local libraries. -const WalletAdapter = require('../../../src/adapters/wallet') +import WalletAdapter from '../../../src/adapters/wallet'; describe('#wallet', () => { let uut diff --git a/test/integration/use-cases/offer-use-case-integration.js b/test/integration/use-cases/offer-use-case-integration.js index 81b4cab..edce59b 100644 --- a/test/integration/use-cases/offer-use-case-integration.js +++ b/test/integration/use-cases/offer-use-case-integration.js @@ -6,11 +6,12 @@ */ // Public npm libraries -const assert = require('chai').assert +import { assert } from 'chai'; // Local npm libraries -const Adapters = require('../../../src/adapters') -const Offer = require('../../../src/use-cases/offer') +import Adapters from '../../../src/adapters'; + +import Offer from '../../../src/use-cases/offer'; describe('#offer-use-case.js', () => { let uut diff --git a/test/unit/adapters/adapters-index-unit.js b/test/unit/adapters/adapters-index-unit.js index 8873fdf..d7c0bd3 100644 --- a/test/unit/adapters/adapters-index-unit.js +++ b/test/unit/adapters/adapters-index-unit.js @@ -3,11 +3,12 @@ */ // Global npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local libraries -const Adapters = require('../../../src/adapters') +import Adapters from '../../../src/adapters/index.js' describe('#adapters', () => { let uut, sandbox diff --git a/test/unit/adapters/bch.adapter.unit.js b/test/unit/adapters/bch.adapter.unit.js index 5b4b910..6b4e0a2 100644 --- a/test/unit/adapters/bch.adapter.unit.js +++ b/test/unit/adapters/bch.adapter.unit.js @@ -1,10 +1,7 @@ -const assert = require('chai').assert - -const BCHJS = require('../../../src/adapters/bch') - -const sinon = require('sinon') - -const util = require('util') +import { assert } from 'chai'; +import BCHJS from '../../../src/adapters/bch'; +import sinon from 'sinon'; +import util from 'util'; util.inspect.defaultOptions = { depth: 1 } // const mockData = require('../mocks/bchjs-mock') diff --git a/test/unit/adapters/contact.adapter.unit.js b/test/unit/adapters/contact.adapter.unit.js index 078e44b..0ff8caa 100644 --- a/test/unit/adapters/contact.adapter.unit.js +++ b/test/unit/adapters/contact.adapter.unit.js @@ -1,7 +1,6 @@ -const assert = require('chai').assert -const sinon = require('sinon') - -const ContactLib = require('../../../src/adapters/contact') +import { assert } from 'chai' +import sinon from 'sinon' +import ContactLib from '../../../src/adapters/contact.js' let uut let sandbox diff --git a/test/unit/adapters/fullstack-jwt.adapter.unit.js b/test/unit/adapters/fullstack-jwt.adapter.unit.js index 28216b8..b97b51f 100644 --- a/test/unit/adapters/fullstack-jwt.adapter.unit.js +++ b/test/unit/adapters/fullstack-jwt.adapter.unit.js @@ -3,10 +3,10 @@ */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const FullStackJWT = require('../../../src/adapters/fullstack-jwt') +import sinon from 'sinon' +import FullStackJWT from '../../../src/adapters/fullstack-jwt.js' describe('#FullStackJWT', () => { let sandbox diff --git a/test/unit/adapters/ipfs-coord.adapter.unit.js b/test/unit/adapters/ipfs-coord.adapter.unit.js index 53f2c85..6ba6fea 100644 --- a/test/unit/adapters/ipfs-coord.adapter.unit.js +++ b/test/unit/adapters/ipfs-coord.adapter.unit.js @@ -2,20 +2,20 @@ Unit tests for the IPFS Adapter. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const IPFSCoordAdapter = require('../../../src/adapters/ipfs/ipfs-coord') -const IPFSMock = require('../mocks/ipfs-mock') -const IPFSCoordMock = require('../mocks/ipfs-coord-mock') -const config = require('../../../config') +import sinon from 'sinon' +import IPFSCoordAdapter from '../../../src/adapters/ipfs/ipfs-coord.js' +import create from '../mocks/ipfs-mock.js' +import IPFSCoordMock from '../mocks/ipfs-coord-mock.js' +import config from '../../../config/index.js' describe('#IPFS', () => { let uut let sandbox beforeEach(() => { - const ipfs = IPFSMock.create() + const ipfs = create() uut = new IPFSCoordAdapter({ ipfs }) sandbox = sinon.createSandbox() @@ -52,7 +52,7 @@ describe('#IPFS', () => { it('should get the public IP address if this node is a Circuit Relay', async () => { // Mock dependencies. uut.IpfsCoord = IPFSCoordMock - sandbox.stub(uut.publicIp, 'v4').returns('123') + sandbox.stub(uut.publicIp, 'v4').resolves('123') // Force Circuit Relay uut.config.isCircuitRelay = true @@ -62,6 +62,21 @@ describe('#IPFS', () => { assert.equal(result, true) }) + + it('should exit quietly if this node is a Circuit Relay and there is an issue getting the IP address', async () => { + // Mock dependencies. + uut.IpfsCoord = IPFSCoordMock + sandbox.stub(uut.publicIp, 'v4').rejects(new Error('test error')) + + // Force Circuit Relay + uut.config.isCircuitRelay = true + + const result = await uut.start() + // console.log('result: ', result) + + assert.equal(result, true) + }) + it('should return a promise that resolves into an instance of IPFS in production mode', async () => { uut.config.isProduction = true // Mock dependencies. diff --git a/test/unit/adapters/ipfs-index.adapter.unit.js b/test/unit/adapters/ipfs-index.adapter.unit.js index 3c36911..f3cb8ed 100644 --- a/test/unit/adapters/ipfs-index.adapter.unit.js +++ b/test/unit/adapters/ipfs-index.adapter.unit.js @@ -2,12 +2,12 @@ Unit tests for the index.js file for the IPFS and ipfs-coord libraries. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const IPFSLib = require('../../../src/adapters/ipfs') -const IPFSMock = require('../mocks/ipfs-mock') -const IPFSCoordMock = require('../mocks/ipfs-coord-mock') +import sinon from 'sinon' +import IPFSLib from '../../../src/adapters/ipfs/index.js' +// import create from '../mocks/ipfs-mock.js' +import IPFSCoordMock from '../mocks/ipfs-coord-mock.js' describe('#IPFS-adapter-index', () => { let uut @@ -24,7 +24,9 @@ describe('#IPFS-adapter-index', () => { describe('#start', () => { it('should return a promise that resolves into an instance of IPFS.', async () => { // Mock dependencies. - uut.ipfsAdapter = new IPFSMock() + uut.ipfsAdapter = { + start: async () => {} + } uut.IpfsCoordAdapter = IPFSCoordMock const result = await uut.start() diff --git a/test/unit/adapters/ipfs.adapter.unit.js b/test/unit/adapters/ipfs.adapter.unit.js index 0a1519d..dcc060d 100644 --- a/test/unit/adapters/ipfs.adapter.unit.js +++ b/test/unit/adapters/ipfs.adapter.unit.js @@ -2,11 +2,12 @@ Unit tests for the IPFS Adapter. */ -const assert = require('chai').assert -const sinon = require('sinon') -const IPFSLib = require('../../../src/adapters/ipfs/ipfs') -const IPFSMock = require('../mocks/ipfs-mock') -const config = require('../../../config') +import { assert } from 'chai' + +import sinon from 'sinon' +import IPFSLib from '../../../src/adapters/ipfs/ipfs.js' +import create from '../mocks/ipfs-mock.js' +import config from '../../../config/index.js' // config.isProduction = true; describe('#IPFS-adapter', () => { @@ -44,7 +45,7 @@ describe('#IPFS-adapter', () => { describe('#start', () => { it('should return a promise that resolves into an instance of IPFS.', async () => { // Mock dependencies. - uut.IPFS = IPFSMock + uut.create = create const result = await uut.start() // console.log('result: ', result) @@ -56,7 +57,7 @@ describe('#IPFS-adapter', () => { it('should return a promise that resolves into an instance of IPFS in production mode.', async () => { // Mock dependencies. - uut.IPFS = IPFSMock + uut.create = create uut.config.isProduction = true const result = await uut.start() // console.log('result: ', result) @@ -69,7 +70,7 @@ describe('#IPFS-adapter', () => { it('should catch and throw an error', async () => { try { // Force an error - sandbox.stub(uut.IPFS, 'create').rejects(new Error('test error')) + sandbox.stub(uut, 'create').rejects(new Error('test error')) await uut.start() diff --git a/test/unit/adapters/json-files.adapter.unit.js b/test/unit/adapters/json-files.adapter.unit.js index 0a18d7d..46abbb5 100644 --- a/test/unit/adapters/json-files.adapter.unit.js +++ b/test/unit/adapters/json-files.adapter.unit.js @@ -2,14 +2,18 @@ Unit tests for the JSON File adapter. */ -const assert = require('chai').assert -const fs = require('fs') -const sinon = require('sinon') +import { assert } from 'chai' +import fs from 'fs' +import sinon from 'sinon' +import util from 'util' -const util = require('util') +import JsonFiles from '../../../src/adapters/json-files.js' + +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' util.inspect.defaultOptions = { depth: 1 } - -const JsonFiles = require('../../../src/adapters/json-files') +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) const JSON_FILE = 'test-json-file.json' const JSON_PATH = `${__dirname.toString()}/${JSON_FILE}` diff --git a/test/unit/adapters/logapi.adapter.unit.js b/test/unit/adapters/logapi.adapter.unit.js index 0d90b44..3ff000f 100644 --- a/test/unit/adapters/logapi.adapter.unit.js +++ b/test/unit/adapters/logapi.adapter.unit.js @@ -1,12 +1,15 @@ -const assert = require('chai').assert +import { assert } from 'chai' +import sinon from 'sinon' +import util from 'util' -const sinon = require('sinon') +import LogsApiLib from '../../../src/adapters/logapi.js' +import mockData from '../mocks/log-api-mock.js' -const util = require('util') +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' util.inspect.defaultOptions = { depth: 1 } - -const LogsApiLib = require('../../../src/adapters/logapi') -const mockData = require('../mocks/log-api-mock') +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) const context = {} let sandbox diff --git a/test/unit/adapters/nodemailer.adapter.unit.js b/test/unit/adapters/nodemailer.adapter.unit.js index 11f29ac..9cb6bfb 100644 --- a/test/unit/adapters/nodemailer.adapter.unit.js +++ b/test/unit/adapters/nodemailer.adapter.unit.js @@ -3,10 +3,10 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const NodeMailer = require('../../../src/adapters/nodemailer') +import sinon from 'sinon' +import NodeMailer from '../../../src/adapters/nodemailer.js' let sandbox let uut diff --git a/test/unit/adapters/order-pagination.unit.js b/test/unit/adapters/order-pagination.unit.js index a805979..a9428e3 100644 --- a/test/unit/adapters/order-pagination.unit.js +++ b/test/unit/adapters/order-pagination.unit.js @@ -6,14 +6,16 @@ */ // Public npm libraries. -const assert = require('chai').assert -const sinon = require('sinon') -const mongoose = require('mongoose') +import { assert } from 'chai'; + +import sinon from 'sinon'; +import mongoose from 'mongoose'; // Local libraries. -const OrderPagination = require('../../../src/adapters/localdb/order-pagination') -const Order = require('../../../src/adapters/localdb/models/order') -const config = require('../../../config') +import OrderPagination from '../../../src/adapters/localdb/order-pagination'; + +import Order from '../../../src/adapters/localdb/models/order'; +import config from '../../../config'; describe('#OrderPagination', () => { let uut, sandbox diff --git a/test/unit/adapters/p2wdb.adapter.unit.js b/test/unit/adapters/p2wdb.adapter.unit.js index 3fa2b4b..7d057bc 100644 --- a/test/unit/adapters/p2wdb.adapter.unit.js +++ b/test/unit/adapters/p2wdb.adapter.unit.js @@ -3,13 +3,15 @@ */ // Public npm libraries. -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; + // const BCHJS = require('@psf/bch-js') -const BchWallet = require('minimal-slp-wallet/index.js') +import BchWallet from 'minimal-slp-wallet/index.js'; // Local libraries. -const P2wdbAdapter = require('../../../src/adapters/p2wdb-adapter') +import P2wdbAdapter from '../../../src/adapters/p2wdb-adapter'; describe('#P2wdbAdapter', () => { let uut, sandbox, bchWallet diff --git a/test/unit/adapters/passport.adapter.unit.js b/test/unit/adapters/passport.adapter.unit.js index eefb4b5..536fe54 100644 --- a/test/unit/adapters/passport.adapter.unit.js +++ b/test/unit/adapters/passport.adapter.unit.js @@ -1,7 +1,6 @@ -const assert = require('chai').assert -const PassportLib = require('../../../src/adapters/passport') - -const sinon = require('sinon') +import { assert } from 'chai' +import PassportLib from '../../../src/adapters/passport.js' +import sinon from 'sinon' let uut let sandbox diff --git a/test/unit/adapters/users.adapter.unit.js b/test/unit/adapters/users.adapter.unit.js index 0436758..79bd954 100644 --- a/test/unit/adapters/users.adapter.unit.js +++ b/test/unit/adapters/users.adapter.unit.js @@ -2,16 +2,17 @@ Unit tests for the users Mongoose model. */ -const assert = require('chai').assert -const sinon = require('sinon') -const mongoose = require('mongoose') +import { assert } from 'chai' + +import sinon from 'sinon' +import mongoose from 'mongoose' + +import User from '../../../src/adapters/localdb/models/users.js' +import config from '../../../config/index.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -const User = require('../../../src/adapters/localdb/models/users') -const config = require('../../../config') - describe('#User-Adapter', () => { // let uut let sandbox diff --git a/test/unit/adapters/wallet.adapter.unit.js b/test/unit/adapters/wallet.adapter.unit.js index 644ced3..5ea8848 100644 --- a/test/unit/adapters/wallet.adapter.unit.js +++ b/test/unit/adapters/wallet.adapter.unit.js @@ -3,14 +3,17 @@ */ // Public npm libraries. -const assert = require('chai').assert -const sinon = require('sinon') -const fs = require('fs') +import { assert } from 'chai'; + +import sinon from 'sinon'; +import fs from 'fs'; + // const BCHJS = require('@psf/bch-js') // Local libraries. -const WalletAdapter = require('../../../src/adapters/wallet') -const { MockBchWallet } = require('../mocks/adapters/wallet') +import WalletAdapter from '../../../src/adapters/wallet'; + +import { MockBchWallet } from '../mocks/adapters/wallet'; // Global constants const testWalletFile = `${__dirname.toString()}/test-wallet.json` diff --git a/test/unit/adapters/webhook.adapter.unit.js b/test/unit/adapters/webhook.adapter.unit.js index fdca276..6a1a444 100644 --- a/test/unit/adapters/webhook.adapter.unit.js +++ b/test/unit/adapters/webhook.adapter.unit.js @@ -2,13 +2,14 @@ Unit tests for the webhook adapter. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -const WebHook = require('../../../src/adapters/webhook') +import WebHook from '../../../src/adapters/webhook'; describe('#Webhook-Adapter', () => { let uut diff --git a/test/unit/adapters/wlogger.adapter.unit.js b/test/unit/adapters/wlogger.adapter.unit.js index fc157f6..521e1e9 100644 --- a/test/unit/adapters/wlogger.adapter.unit.js +++ b/test/unit/adapters/wlogger.adapter.unit.js @@ -1,7 +1,6 @@ -const assert = require('chai').assert -const { Wlogger } = require('../../../src/adapters/wlogger') - -const sinon = require('sinon') +import { assert } from 'chai' +import { Wlogger } from '../../../src/adapters/wlogger.js' +import sinon from 'sinon' let uut let sandbox diff --git a/test/unit/controllers/controllers.unit.js b/test/unit/controllers/controllers.unit.js index a60ddec..2f93c1b 100644 --- a/test/unit/controllers/controllers.unit.js +++ b/test/unit/controllers/controllers.unit.js @@ -4,9 +4,9 @@ // Public npm libraries // const assert = require('chai').assert -const sinon = require('sinon') +import sinon from 'sinon' -const Controllers = require('../../../src/controllers') +import Controllers from '../../../src/controllers/index.js' describe('#Controllers', () => { let uut diff --git a/test/unit/controllers/json-rpc/a10-rpc.unit.js b/test/unit/controllers/json-rpc/a10-rpc.unit.js index dbb4a11..ede1f83 100644 --- a/test/unit/controllers/json-rpc/a10-rpc.unit.js +++ b/test/unit/controllers/json-rpc/a10-rpc.unit.js @@ -3,19 +3,21 @@ */ // Public npm libraries -const assert = require('chai').assert -const jsonrpc = require('jsonrpc-lite') -const sinon = require('sinon') -const { v4: uid } = require('uuid') +import { assert } from 'chai' + +import jsonrpc from 'jsonrpc-lite' +import sinon from 'sinon' +import { v4 as uid } from 'uuid' + +// Local libraries. +import JSONRPC from '../../../../src/controllers/json-rpc/index.js' + +import adapters from '../../mocks/adapters/index.js' +import UseCasesMock from '../../mocks/use-cases/index.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -// Local libraries. -const JSONRPC = require('../../../../src/controllers/json-rpc') -const adapters = require('../../mocks/adapters') -const UseCasesMock = require('../../mocks/use-cases') - describe('#JSON RPC', () => { let uut let sandbox diff --git a/test/unit/controllers/json-rpc/a12-validators.unit.js b/test/unit/controllers/json-rpc/a12-validators.unit.js index a3bdba5..4ce255a 100644 --- a/test/unit/controllers/json-rpc/a12-validators.unit.js +++ b/test/unit/controllers/json-rpc/a12-validators.unit.js @@ -5,18 +5,20 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') -const sinon = require('sinon') -const assert = require('chai').assert -const { v4: uid } = require('uuid') +import jsonrpc from 'jsonrpc-lite' + +import sinon from 'sinon' +import { assert } from 'chai' +import { v4 as uid } from 'uuid' + +// Local libraries +import Validators from '../../../../src/controllers/json-rpc/validators.js' + +import adapters from '../../mocks/adapters/index.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -// Local libraries -const Validators = require('../../../../src/controllers/json-rpc/validators') -const adapters = require('../../mocks/adapters') - describe('#validators', () => { let uut let sandbox diff --git a/test/unit/controllers/json-rpc/a14-rate-limits.js b/test/unit/controllers/json-rpc/a14-rate-limits.js index 601e922..fb5eae2 100644 --- a/test/unit/controllers/json-rpc/a14-rate-limits.js +++ b/test/unit/controllers/json-rpc/a14-rate-limits.js @@ -5,15 +5,16 @@ */ // Public npm libraries -const sinon = require('sinon') -const assert = require('chai').assert +import sinon from 'sinon' + +import { assert } from 'chai' + +// Local libraries +import RateLimit from '../../../../src/controllers/json-rpc/rate-limit.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -// Local libraries -const RateLimit = require('../../../../src/controllers/json-rpc/rate-limit') - describe('#rate-limit', () => { let uut let sandbox diff --git a/test/unit/controllers/json-rpc/about.json-rpc.controller.unit.js b/test/unit/controllers/json-rpc/about.json-rpc.controller.unit.js index 39cac34..5dd5e2c 100644 --- a/test/unit/controllers/json-rpc/about.json-rpc.controller.unit.js +++ b/test/unit/controllers/json-rpc/about.json-rpc.controller.unit.js @@ -3,11 +3,12 @@ */ // Public npm libraries -const sinon = require('sinon') -const assert = require('chai').assert +import sinon from 'sinon' + +import { assert } from 'chai' // Local libraries -const AboutRPC = require('../../../../src/controllers/json-rpc/about') +import AboutRPC from '../../../../src/controllers/json-rpc/about/index.js' describe('#AboutRPC', () => { let uut diff --git a/test/unit/controllers/json-rpc/auth.json-rpc.controller.unit.js b/test/unit/controllers/json-rpc/auth.json-rpc.controller.unit.js index eccb62c..ec11d45 100644 --- a/test/unit/controllers/json-rpc/auth.json-rpc.controller.unit.js +++ b/test/unit/controllers/json-rpc/auth.json-rpc.controller.unit.js @@ -3,20 +3,22 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') -const sinon = require('sinon') -const assert = require('chai').assert -const { v4: uid } = require('uuid') +import jsonrpc from 'jsonrpc-lite' + +import sinon from 'sinon' +import { assert } from 'chai' +import { v4 as uid } from 'uuid' + +// Local libraries +import AuthRPC from '../../../../src/controllers/json-rpc/auth/index.js' + +import RateLimit from '../../../../src/controllers/json-rpc/rate-limit.js' +import adapters from '../../mocks/adapters/index.js' +import UseCasesMock from '../../mocks/use-cases/index.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -// Local libraries -const AuthRPC = require('../../../../src/controllers/json-rpc/auth') -const RateLimit = require('../../../../src/controllers/json-rpc/rate-limit') -const adapters = require('../../mocks/adapters') -const UseCasesMock = require('../../mocks/use-cases') - describe('#AuthRPC', () => { let uut let sandbox diff --git a/test/unit/controllers/json-rpc/users.json-rpc-controller.unit.js b/test/unit/controllers/json-rpc/users.json-rpc-controller.unit.js index 45ca299..77f7ad5 100644 --- a/test/unit/controllers/json-rpc/users.json-rpc-controller.unit.js +++ b/test/unit/controllers/json-rpc/users.json-rpc-controller.unit.js @@ -3,19 +3,21 @@ */ // Public npm libraries -const jsonrpc = require('jsonrpc-lite') -const sinon = require('sinon') -const assert = require('chai').assert -const { v4: uid } = require('uuid') +import jsonrpc from 'jsonrpc-lite' + +import sinon from 'sinon' +import { assert } from 'chai' +import { v4 as uid } from 'uuid' + +// Local libraries +import UserRPC from '../../../../src/controllers/json-rpc/users/index.js' + +import adapters from '../../mocks/adapters/index.js' +import UseCasesMock from '../../mocks/use-cases/index.js' // Set the environment variable to signal this is a test. process.env.TORLIST_ENV = 'test' -// Local libraries -const UserRPC = require('../../../../src/controllers/json-rpc/users') -const adapters = require('../../mocks/adapters') -const UseCasesMock = require('../../mocks/use-cases') - describe('#UserRPC', () => { let uut let sandbox diff --git a/test/unit/controllers/rest-api/auth/auth.rest.controller.unit.js b/test/unit/controllers/rest-api/auth/auth.rest.controller.unit.js index 454269c..9c53d05 100644 --- a/test/unit/controllers/rest-api/auth/auth.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/auth/auth.rest.controller.unit.js @@ -3,21 +3,25 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' + +import UseCasesMock from '../../../mocks/use-cases/index.js' + // const app = require('../../../mocks/app-mock') -const AuthRESTController = require('../../../../../src/controllers/rest-api/auth/controller') +import AuthRESTController from '../../../../../src/controllers/rest-api/auth/controller.js' + +import { context as mockContext } from '../../../../unit/mocks/ctx-mock.js' + let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context - describe('#Auth-REST-Router', () => { // const testUser = {} diff --git a/test/unit/controllers/rest-api/auth/auth.rest.router.unit.js b/test/unit/controllers/rest-api/auth/auth.rest.router.unit.js index 86325e1..3a559f9 100644 --- a/test/unit/controllers/rest-api/auth/auth.rest.router.unit.js +++ b/test/unit/controllers/rest-api/auth/auth.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' + +import UseCasesMock from '../../../mocks/use-cases/index.js' + // const app = require('../../../mocks/app-mock') -const AuthRouter = require('../../../../../src/controllers/rest-api/auth') +import AuthRouter from '../../../../../src/controllers/rest-api/auth/index.js' + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/contact/contact.rest.controller.unit.js b/test/unit/controllers/rest-api/contact/contact.rest.controller.unit.js index ab5c171..c474acf 100644 --- a/test/unit/controllers/rest-api/contact/contact.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/contact/contact.rest.controller.unit.js @@ -3,16 +3,16 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const ContactController = require('../../../../../src/controllers/rest-api/contact/controller') +import sinon from 'sinon' +import ContactController from '../../../../../src/controllers/rest-api/contact/controller.js' + +import { context as mockContext } from '../../../../unit/mocks/ctx-mock.js' let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context - describe('Contact', () => { before(async () => { }) diff --git a/test/unit/controllers/rest-api/contact/contact.rest.router.unit.js b/test/unit/controllers/rest-api/contact/contact.rest.router.unit.js index d3e8934..836c19e 100644 --- a/test/unit/controllers/rest-api/contact/contact.rest.router.unit.js +++ b/test/unit/controllers/rest-api/contact/contact.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' + +import UseCasesMock from '../../../mocks/use-cases/index.js' + // const app = require('../../../mocks/app-mock') -const ContactRouter = require('../../../../../src/controllers/rest-api/contact') +import ContactRouter from '../../../../../src/controllers/rest-api/contact/index.js' + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/entry/entry.rest.controller.unit.js b/test/unit/controllers/rest-api/entry/entry.rest.controller.unit.js index 27e3809..8aae482 100644 --- a/test/unit/controllers/rest-api/entry/entry.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/entry/entry.rest.controller.unit.js @@ -3,19 +3,20 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; -const EntryController = require('../../../../../src/controllers/rest-api/entry/controller') +import UseCasesMock from '../../../mocks/use-cases'; +import EntryController from '../../../../../src/controllers/rest-api/entry/controller'; let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context +import { context as mockContext } from '../../../../unit/mocks/ctx-mock'; describe('#Entry-REST-Controller', () => { // const testUser = {} diff --git a/test/unit/controllers/rest-api/entry/entry.rest.router.unit.js b/test/unit/controllers/rest-api/entry/entry.rest.router.unit.js index b3708cd..3b4e11e 100644 --- a/test/unit/controllers/rest-api/entry/entry.rest.router.unit.js +++ b/test/unit/controllers/rest-api/entry/entry.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; + +import UseCasesMock from '../../../mocks/use-cases'; + // const app = require('../../../mocks/app-mock') -const EntryRouter = require('../../../../../src/controllers/rest-api/entry') +import EntryRouter from '../../../../../src/controllers/rest-api/entry'; + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/logs/logs.rest.controller.unit.js b/test/unit/controllers/rest-api/logs/logs.rest.controller.unit.js index f798bf3..f51592c 100644 --- a/test/unit/controllers/rest-api/logs/logs.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/logs/logs.rest.controller.unit.js @@ -3,16 +3,16 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const LogsApiController = require('../../../../../src/controllers/rest-api/logs/controller') +import sinon from 'sinon' +import LogsApiController from '../../../../../src/controllers/rest-api/logs/controller.js' + +import { context as mockContext } from '../../../../unit/mocks/ctx-mock.js' let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context - describe('Logapi', () => { before(async () => { }) diff --git a/test/unit/controllers/rest-api/logs/logs.rest.router.unit.js b/test/unit/controllers/rest-api/logs/logs.rest.router.unit.js index 39f5a56..a8cd589 100644 --- a/test/unit/controllers/rest-api/logs/logs.rest.router.unit.js +++ b/test/unit/controllers/rest-api/logs/logs.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' + +import UseCasesMock from '../../../mocks/use-cases/index.js' + // const app = require('../../../mocks/app-mock') -const LogsRouter = require('../../../../../src/controllers/rest-api/logs') +import LogsRouter from '../../../../../src/controllers/rest-api/logs/index.js' + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/middleware/validators-unit.js b/test/unit/controllers/rest-api/middleware/validators-unit.js new file mode 100644 index 0000000..6a29c00 --- /dev/null +++ b/test/unit/controllers/rest-api/middleware/validators-unit.js @@ -0,0 +1,306 @@ +/* + Unit tests for the REST API middleware that validates users. +*/ + +// Public npm libraries +import { assert } from 'chai' +import sinon from 'sinon' + +// Local libraries +import Validators from '../../../../../src/controllers/rest-api/middleware/validators.js' +import { context as mockContext } from '../../../../unit/mocks/ctx-mock.js' + +describe('#Validators', () => { + let uut + let ctx + let sandbox + + beforeEach(() => { + uut = new Validators() + + // Mock the context object. + ctx = mockContext() + + sandbox = sinon.createSandbox() + }) + + afterEach(() => sandbox.restore()) + + describe('#getToken', () => { + it('should return null if no header is provided', () => { + const result = uut.getToken(ctx) + + assert.equal(result, null) + }) + + it('should return null if header is not in two parts', () => { + ctx.request.header.authorization = 'Bearer' + + const result = uut.getToken(ctx) + + assert.equal(result, null) + }) + + it('should return null if first part of header does not container the word bearer', () => { + ctx.request.header.authorization = 'some thing' + + const result = uut.getToken(ctx) + + assert.equal(result, null) + }) + + it('should return the JWT token from the header', () => { + const jwt = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYzMjNiNTUwNzgxYWYzNTc4YzI0ZmU5YiIsImlhdCI6MTY2MzQ0NDczNCwiZXhwIjoxNjYzNTMxMTM0fQ.BY5sOfXc4z5axS98CdTfyqnO9y2wijOlwnv52rcvxHA' + ctx.request.header.authorization = `Bearer ${jwt}` + + const result = uut.getToken(ctx) + + assert.equal(result, jwt) + }) + }) + + describe('#ensureUser', () => { + it('should throw error if token is not provided', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns() + + await uut.ensureUser(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if token can not be verified', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').throws(new Error('test error')) + + await uut.ensureUser(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if user can not be found in database', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves(false) + + await uut.ensureUser(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should return true if the user is verified', async () => { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ user: 'alice' }) + + const result = await uut.ensureUser(ctx) + + assert.equal(result, true) + }) + }) + + describe('#ensureUser', () => { + it('should throw error if token is not provided', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns() + + await uut.ensureAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if token can not be verified', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').throws(new Error('test error')) + + await uut.ensureAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if user can not be found in database', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves(false) + + await uut.ensureAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if user is not an admin', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'user' }) + + await uut.ensureAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should return true if the user is an admin', async () => { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'admin' }) + + const result = await uut.ensureAdmin(ctx) + + assert.equal(result, true) + }) + }) + + describe('#ensureTargetUserOrAdmin', () => { + it('should throw error if token is not provided', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns() + + await uut.ensureTargetUserOrAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if token can not be verified', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').throws(new Error('test error')) + + ctx.params = { + id: '456' + } + + await uut.ensureTargetUserOrAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if user can not be found in database', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves(false) + + ctx.params = { + id: '456' + } + + await uut.ensureTargetUserOrAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error if user is not an admin', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'user' }) + + ctx.params = { + id: '456' + } + + await uut.ensureTargetUserOrAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should throw error is user is not admin or target user', async () => { + try { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'user', _id: '123' }) + + ctx.params = { + id: '456' + } + + await uut.ensureTargetUserOrAdmin(ctx) + + assert.fail('Unexpected result') + } catch (err) { + assert.equal(ctx.status, 401) + } + }) + + it('should return true if the user is an admin', async () => { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'admin', _id: '123' }) + + ctx.params = { + id: '456' + } + + const result = await uut.ensureTargetUserOrAdmin(ctx) + + assert.equal(result, true) + }) + + it('should return true if the user is the target user', async () => { + // Mock dependencies and force desired code path + sandbox.stub(uut, 'getToken').returns('fake-jwt') + sandbox.stub(uut.jwt, 'verify').returns({}) + sandbox.stub(uut.User, 'findById').resolves({ type: 'user', _id: '123' }) + + ctx.params = { + id: '123' + } + + const result = await uut.ensureTargetUserOrAdmin(ctx) + + assert.equal(result, true) + }) + }) +}) diff --git a/test/unit/controllers/rest-api/offer/offer.rest.controller.unit.js b/test/unit/controllers/rest-api/offer/offer.rest.controller.unit.js index 945b072..2abf66a 100644 --- a/test/unit/controllers/rest-api/offer/offer.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/offer/offer.rest.controller.unit.js @@ -3,20 +3,24 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; + +import UseCasesMock from '../../../mocks/use-cases'; + // const app = require('../../../mocks/app-mock') -const OfferRESTController = require('../../../../../src/controllers/rest-api/offer/controller') +import OfferRESTController from '../../../../../src/controllers/rest-api/offer/controller'; + let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context +import { context as mockContext } from '../../../../unit/mocks/ctx-mock'; describe('#Offer-REST-Router', () => { // const testUser = {} diff --git a/test/unit/controllers/rest-api/offer/offer.rest.router.unit.js b/test/unit/controllers/rest-api/offer/offer.rest.router.unit.js index 18dd820..af526e9 100644 --- a/test/unit/controllers/rest-api/offer/offer.rest.router.unit.js +++ b/test/unit/controllers/rest-api/offer/offer.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; + +import UseCasesMock from '../../../mocks/use-cases'; + // const app = require('../../../mocks/app-mock') -const OfferRouter = require('../../../../../src/controllers/rest-api/offer') +import OfferRouter from '../../../../../src/controllers/rest-api/offer'; + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/order/order.rest.controller.unit.js b/test/unit/controllers/rest-api/order/order.rest.controller.unit.js index b772814..6a13c89 100644 --- a/test/unit/controllers/rest-api/order/order.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/order/order.rest.controller.unit.js @@ -3,20 +3,24 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; + +import UseCasesMock from '../../../mocks/use-cases'; + // const app = require('../../../mocks/app-mock') -const OrderRESTController = require('../../../../../src/controllers/rest-api/order/controller') +import OrderRESTController from '../../../../../src/controllers/rest-api/order/controller'; + let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context +import { context as mockContext } from '../../../../unit/mocks/ctx-mock'; describe('#Order-REST-Router', () => { // const testUser = {} diff --git a/test/unit/controllers/rest-api/order/order.rest.router.unit.js b/test/unit/controllers/rest-api/order/order.rest.router.unit.js index 3da2457..de75d0c 100644 --- a/test/unit/controllers/rest-api/order/order.rest.router.unit.js +++ b/test/unit/controllers/rest-api/order/order.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters'; + +import UseCasesMock from '../../../mocks/use-cases'; + // const app = require('../../../mocks/app-mock') -const OrderRouter = require('../../../../../src/controllers/rest-api/order') +import OrderRouter from '../../../../../src/controllers/rest-api/order'; + let uut let sandbox // let ctx diff --git a/test/unit/controllers/rest-api/rest.controller.unit.js b/test/unit/controllers/rest-api/rest.controller.unit.js index f798edb..0e46689 100644 --- a/test/unit/controllers/rest-api/rest.controller.unit.js +++ b/test/unit/controllers/rest-api/rest.controller.unit.js @@ -3,14 +3,17 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local libraries -const RESTControllers = require('../../../../src/controllers/rest-api/') +import RESTControllers from '../../../../src/controllers/rest-api/index.js' + // const mockContext = require('../../../unit/mocks/ctx-mock').context -const adapters = require('../../mocks/adapters') -const UseCasesMock = require('../../mocks/use-cases') +import adapters from '../../mocks/adapters/index.js' + +import UseCasesMock from '../../mocks/use-cases/index.js' describe('#RESTControllers', () => { let uut diff --git a/test/unit/controllers/rest-api/users/users.rest.controller.unit.js b/test/unit/controllers/rest-api/users/users.rest.controller.unit.js index 7b5e2af..45b1b81 100644 --- a/test/unit/controllers/rest-api/users/users.rest.controller.unit.js +++ b/test/unit/controllers/rest-api/users/users.rest.controller.unit.js @@ -3,20 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' +import UseCasesMock from '../../../mocks/use-cases/index.js' +import UserController from '../../../../../src/controllers/rest-api/users/controller.js' -const UserController = require('../../../../../src/controllers/rest-api/users/controller') +import { context as mockContext } from '../../../../unit/mocks/ctx-mock.js' let uut let sandbox let ctx -const mockContext = require('../../../../unit/mocks/ctx-mock').context - describe('#Users-REST-Controller', () => { // const testUser = {} diff --git a/test/unit/controllers/rest-api/users/users.rest.router.unit.js b/test/unit/controllers/rest-api/users/users.rest.router.unit.js index f225562..798264f 100644 --- a/test/unit/controllers/rest-api/users/users.rest.router.unit.js +++ b/test/unit/controllers/rest-api/users/users.rest.router.unit.js @@ -3,15 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries -const adapters = require('../../../mocks/adapters') -const UseCasesMock = require('../../../mocks/use-cases') +import adapters from '../../../mocks/adapters/index.js' + +import UseCasesMock from '../../../mocks/use-cases/index.js' + // const app = require('../../../mocks/app-mock') -const UserRouter = require('../../../../../src/controllers/rest-api/users') +import UserRouter from '../../../../../src/controllers/rest-api/users/index.js' + let uut let sandbox // let ctx diff --git a/test/unit/entities/entry.entity.unit.js b/test/unit/entities/entry.entity.unit.js index 7b6629b..09a28ff 100644 --- a/test/unit/entities/entry.entity.unit.js +++ b/test/unit/entities/entry.entity.unit.js @@ -2,10 +2,10 @@ Unit tests for the User entity library. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; -const Entry = require('../../../src/entities/entry') +import sinon from 'sinon'; +import Entry from '../../../src/entities/entry'; let sandbox let uut diff --git a/test/unit/entities/offer.entity.unit.js b/test/unit/entities/offer.entity.unit.js index 6425896..f1a0601 100644 --- a/test/unit/entities/offer.entity.unit.js +++ b/test/unit/entities/offer.entity.unit.js @@ -2,10 +2,10 @@ Unit tests for the Offer entity library. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; -const Offer = require('../../../src/entities/offer') +import sinon from 'sinon'; +import Offer from '../../../src/entities/offer'; let sandbox let uut diff --git a/test/unit/entities/order.entity.unit.js b/test/unit/entities/order.entity.unit.js index 3ef8a38..4c2f1cf 100644 --- a/test/unit/entities/order.entity.unit.js +++ b/test/unit/entities/order.entity.unit.js @@ -2,10 +2,10 @@ Unit tests for the User entity library. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; -const Order = require('../../../src/entities/order') +import sinon from 'sinon'; +import Order from '../../../src/entities/order'; let sandbox let uut diff --git a/test/unit/entities/user.entity.unit.js b/test/unit/entities/user.entity.unit.js index a2b80c3..4ef6de9 100644 --- a/test/unit/entities/user.entity.unit.js +++ b/test/unit/entities/user.entity.unit.js @@ -2,10 +2,10 @@ Unit tests for the User entity library. */ -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' -const User = require('../../../src/entities/user') +import sinon from 'sinon' +import User from '../../../src/entities/user.js' let sandbox let uut diff --git a/test/unit/misc/config.js b/test/unit/misc/config.js new file mode 100644 index 0000000..6a55b7e --- /dev/null +++ b/test/unit/misc/config.js @@ -0,0 +1,50 @@ +/* + Unit tests for the config directory +*/ + +import { assert } from 'chai' + +let currentEnv + +describe('#config', () => { + before(() => { + // Backup the current environment setting. + currentEnv = process.env.SVC_ENV + }) + + after(() => { + // Restore the environment setting before starting these tests. + process.env.SVC_ENV = currentEnv + }) + + it('Should return development environment config by default', async () => { + const importedConfig = await import('../../../config/index.js') + const config = importedConfig.default + // console.log('config: ', config) + + assert.equal(config.env, 'dev') + }) + + it('Should return test environment config', async () => { + // Hack to dynamically import a library multiple times: + // https://github.com/denoland/deno/issues/6946 + + process.env.SVC_ENV = 'test' + + const importedConfig2 = await import('../../../config/index.js?foo=bar1') + const config = importedConfig2.default + // console.log('config: ', config) + + assert.equal(config.env, 'test') + }) + + it('Should return test environment config', async () => { + process.env.SVC_ENV = 'prod' + + const importedConfig3 = await import('../../../config/index.js?foo=bar2') + const config = importedConfig3.default + // console.log('config: ', config) + + assert.equal(config.env, 'prod') + }) +}) diff --git a/test/unit/misc/passport.unit.js b/test/unit/misc/passport.unit.js index 71f273f..6cd1705 100644 --- a/test/unit/misc/passport.unit.js +++ b/test/unit/misc/passport.unit.js @@ -3,13 +3,15 @@ */ // Public npm libraries -// const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' +import sinon from 'sinon' +import passport from 'koa-passport' // Local libraries -const User = require('../../../src/adapters/localdb/models/users') -const { passport, passportCallback } = require('../../../config/passport') -const adaptersMock = require('../mocks/adapters') +import User from '../../../src/adapters/localdb/models/users.js' + +import { applyPassportMods, passportCallback } from '../../../config/passport.js' +import adaptersMock from '../mocks/adapters/index.js' describe('#passport', () => { let sandbox @@ -25,33 +27,6 @@ describe('#passport', () => { afterEach(() => sandbox.restore()) - describe('#serializeUser', () => { - it('should serialize a user', () => { - const user = { - id: 'abc123' - } - const done = () => {} - - passport.serializeUser(user, done) - }) - }) - - describe('#deserializeUser', () => { - it('should deserialize a user', () => { - // Mock Users model. - sandbox.stub(User, 'findById').resolves({ id }) - - passport.deserializeUser(id, done) - }) - - it('should catch and handle errors', () => { - // Force an error - sandbox.stub(User, 'findById').rejects(new Error('test error')) - - passport.deserializeUser(id, done) - }) - }) - describe('#passportCallback', () => { it('should return if user is found', () => { // Mock Users model. @@ -74,4 +49,45 @@ describe('#passport', () => { passportCallback(id, 'password', done) }) }) + + describe('#applyPassportMods', () => { + it('should apply modifications to default passport behavior', () => { + const result = applyPassportMods(passport) + + assert.equal(result, true) + }) + }) + + describe('#serializeUser', () => { + it('should serialize a user', () => { + const user = { + id: 'abc123' + } + const done = () => {} + + applyPassportMods(passport) + + passport.serializeUser(user, done) + }) + }) + + describe('#deserializeUser', () => { + it('should deserialize a user', () => { + // Mock Users model. + sandbox.stub(User, 'findById').resolves({ id }) + + applyPassportMods(passport) + + passport.deserializeUser(id, done) + }) + + it('should catch and handle errors', () => { + // Force an error + sandbox.stub(User, 'findById').rejects(new Error('test error')) + + applyPassportMods(passport) + + passport.deserializeUser(id, done) + }) + }) }) diff --git a/test/unit/misc/server-unit.js b/test/unit/misc/server-unit.js index fa3e7fb..514be81 100644 --- a/test/unit/misc/server-unit.js +++ b/test/unit/misc/server-unit.js @@ -3,11 +3,11 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' +import sinon from 'sinon' // Local libraries -const Server = require('../../../bin/server') +import Server from '../../../bin/server.js' describe('#server', () => { let uut, sandbox diff --git a/test/unit/mocks/adapters/index.js b/test/unit/mocks/adapters/index.js index cc576f0..0702e6a 100644 --- a/test/unit/mocks/adapters/index.js +++ b/test/unit/mocks/adapters/index.js @@ -1,7 +1,8 @@ /* Mocks for the Adapter library. */ -const BCHJS = require('@psf/bch-js') +import BCHJS from '@psf/bch-js'; + const bchjs = new BCHJS() class IpfsAdapter { @@ -129,7 +130,8 @@ const bch = { // burnPsf: async () => {}, // generateSignature: async () => {} // } -const { MockBchWallet } = require('./wallet') +import { MockBchWallet } from './wallet'; + const wallet = { burnPsf: async () => { }, @@ -148,4 +150,4 @@ const p2wdb = { checkForSufficientFunds: async () => true } -module.exports = { ipfs, localdb, bch, wallet, p2wdb, bchjs} +export default { ipfs, localdb, bch, wallet, p2wdb, bchjs} diff --git a/test/unit/mocks/adapters/wallet.js b/test/unit/mocks/adapters/wallet.js index 2fadec3..2f677b5 100644 --- a/test/unit/mocks/adapters/wallet.js +++ b/test/unit/mocks/adapters/wallet.js @@ -2,7 +2,7 @@ Mock data for the wallet.adapter.unit.js test file. */ -const BCHJS = require('@psf/bch-js') +import BCHJS from '@psf/bch-js'; const mockWallet = { mnemonic: 'course abstract aerobic deer try switch turtle diet fence affair butter top', @@ -141,4 +141,4 @@ class MockBchWallet { } } -module.exports = { MockBchWallet, mockWallet} +export default { MockBchWallet, mockWallet}; diff --git a/test/unit/mocks/app-mock.js b/test/unit/mocks/app-mock.js index e341212..70eb558 100644 --- a/test/unit/mocks/app-mock.js +++ b/test/unit/mocks/app-mock.js @@ -6,4 +6,4 @@ const app = { use: () => {} } -module.exports = app +export default app; diff --git a/test/unit/mocks/bchjs-mock.js b/test/unit/mocks/bchjs-mock.js index 12673b6..4cb075c 100644 --- a/test/unit/mocks/bchjs-mock.js +++ b/test/unit/mocks/bchjs-mock.js @@ -31,32 +31,33 @@ const psfBalances = [ decimalCount: 7 } ] - - // Token array without psf tokens - const noPsfBalances = [ - { - tokenId: - 'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb', - balance: 617, - slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', - decimalCount: 8 - }, - { - tokenId: - 'a436c8e1b6bee3d701c6044d190f76f774be83c36de8d34a988af4489e86dd37', - balance: 776, - slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', - decimalCount: 7 - }, - { - tokenId: - 'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb', - balance: 617, - slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', - decimalCount: 8 - } - ] - module.exports = { - psfBalances, - noPsfBalances - } \ No newline at end of file + +// Token array without psf tokens +const noPsfBalances = [ + { + tokenId: + 'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb', + balance: 617, + slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', + decimalCount: 8 + }, + { + tokenId: + 'a436c8e1b6bee3d701c6044d190f76f774be83c36de8d34a988af4489e86dd37', + balance: 776, + slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', + decimalCount: 7 + }, + { + tokenId: + 'df808a41672a0a0ae6475b44f272a107bc9961b90f29dc918d71301f24fe92fb', + balance: 617, + slpAddress: 'simpleledger:qr5agtachyxvrwxu76vzszan5pnvuzy8duhv4lxrsk', + decimalCount: 8 + } +] + +export default { + psfBalances, + noPsfBalances +}; \ No newline at end of file diff --git a/test/unit/mocks/ctx-mock.js b/test/unit/mocks/ctx-mock.js index c7536bd..4cadfe8 100644 --- a/test/unit/mocks/ctx-mock.js +++ b/test/unit/mocks/ctx-mock.js @@ -12,8 +12,9 @@ // const ctx = mockContext() // ... -const Stream = require('stream') -const Koa = require('koa') +import Stream from 'stream'; + +import Koa from 'koa'; const context = (req, res, app) => { const socket = new Stream.Duplex() @@ -43,8 +44,8 @@ const request = (req, res, app) => context(req, res, app).request const response = (req, res, app) => context(req, res, app).response -module.exports = { +export { context, request, response -} +}; diff --git a/test/unit/mocks/ipfs-coord-mock.js b/test/unit/mocks/ipfs-coord-mock.js index 3ced0b4..6fe8053 100644 --- a/test/unit/mocks/ipfs-coord-mock.js +++ b/test/unit/mocks/ipfs-coord-mock.js @@ -12,4 +12,4 @@ class IPFSCoord { async subscribeToChat() {} } -module.exports = IPFSCoord +export default IPFSCoord; diff --git a/test/unit/mocks/ipfs-mock.js b/test/unit/mocks/ipfs-mock.js index ff45da4..658b045 100644 --- a/test/unit/mocks/ipfs-mock.js +++ b/test/unit/mocks/ipfs-mock.js @@ -2,18 +2,24 @@ Mocks for the js-ipfs */ -class IPFS { - constructor () { - this.ipfs = {} - } +// class IPFS { +// constructor () { +// this.ipfs = {} +// } +// +// static create () { +// const mockIpfs = new MockIpfsInstance() +// +// return mockIpfs +// } +// +// async start () {} +// } - static create () { - const mockIpfs = new MockIpfsInstance() +function create () { + const mockIpfs = new MockIpfsInstance() - return mockIpfs - } - - async start () {} + return mockIpfs } class MockIpfsInstance { @@ -28,4 +34,4 @@ class MockIpfsInstance { stop () {} } -module.exports = IPFS +export default create; diff --git a/test/unit/mocks/log-api-mock.js b/test/unit/mocks/log-api-mock.js index 46add32..253a2ac 100644 --- a/test/unit/mocks/log-api-mock.js +++ b/test/unit/mocks/log-api-mock.js @@ -23,6 +23,7 @@ const data = [ timestamp: '2020-11-14T12:15:55.231Z' } ] -module.exports = { + +export default { data -} +}; diff --git a/test/unit/mocks/use-cases/index.js b/test/unit/mocks/use-cases/index.js index 0c30b12..2fdf720 100644 --- a/test/unit/mocks/use-cases/index.js +++ b/test/unit/mocks/use-cases/index.js @@ -60,4 +60,4 @@ class UseCasesMock { order = new Order() } -module.exports = UseCasesMock +export default UseCasesMock; diff --git a/test/unit/mocks/use-cases/offer-mock-data.js b/test/unit/mocks/use-cases/offer-mock-data.js index 46831a1..41172cc 100644 --- a/test/unit/mocks/use-cases/offer-mock-data.js +++ b/test/unit/mocks/use-cases/offer-mock-data.js @@ -126,11 +126,11 @@ const fungibleTokenData01 = { "mutableData": "" } -module.exports = { +export default { nftOffer01, nftTokenData01, simpleNftOffer01, simpleNftTokenData01, fungibleOffer01, fungibleTokenData01 -} +}; diff --git a/test/unit/use-cases/entry.use-case.unit.js b/test/unit/use-cases/entry.use-case.unit.js index 1520a0f..70b83b3 100644 --- a/test/unit/use-cases/entry.use-case.unit.js +++ b/test/unit/use-cases/entry.use-case.unit.js @@ -1,13 +1,15 @@ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries // const testUtils = require('../../utils/test-utils') // Unit under test (uut) -const EntryLib = require('../../../src/use-cases/entry') -const adapters = require('../mocks/adapters') +import EntryLib from '../../../src/use-cases/entry'; + +import adapters from '../mocks/adapters'; describe('#entry-use-case', () => { let uut diff --git a/test/unit/use-cases/index.use-case.unit.js b/test/unit/use-cases/index.use-case.unit.js index 6830a71..a7eba11 100644 --- a/test/unit/use-cases/index.use-case.unit.js +++ b/test/unit/use-cases/index.use-case.unit.js @@ -3,15 +3,17 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' + +import sinon from 'sinon' // Local support libraries // const testUtils = require('../../utils/test-utils') // Unit under test (uut) -const UseCases = require('../../../src/use-cases') -const adapters = require('../mocks/adapters') +import UseCases from '../../../src/use-cases/index.js' + +import adapters from '../mocks/adapters/index.js' describe('#use-cases', () => { let uut diff --git a/test/unit/use-cases/offer.use-case.unit.js b/test/unit/use-cases/offer.use-case.unit.js index 4911946..95e1f9f 100644 --- a/test/unit/use-cases/offer.use-case.unit.js +++ b/test/unit/use-cases/offer.use-case.unit.js @@ -3,17 +3,19 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries // const testUtils = require('../../utils/test-utils') // Unit under test (uut) -const OfferLib = require('../../../src/use-cases/offer') -const OrderUseCase = require('../../../src/use-cases/order') -const adapters = require('../mocks/adapters') -const mockData = require('../mocks/use-cases/offer-mock-data.js') +import OfferLib from '../../../src/use-cases/offer'; + +import OrderUseCase from '../../../src/use-cases/order'; +import adapters from '../mocks/adapters'; +import mockData from '../mocks/use-cases/offer-mock-data.js'; describe('#offer-use-case', () => { let uut diff --git a/test/unit/use-cases/order.use-case.unit.js b/test/unit/use-cases/order.use-case.unit.js index 32f62b2..b68cba1 100644 --- a/test/unit/use-cases/order.use-case.unit.js +++ b/test/unit/use-cases/order.use-case.unit.js @@ -3,15 +3,17 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai'; + +import sinon from 'sinon'; // Local support libraries // const testUtils = require('../../utils/test-utils') // Unit under test (uut) -const OrderLib = require('../../../src/use-cases/order') -const adapters = require('../mocks/adapters') +import OrderLib from '../../../src/use-cases/order'; + +import adapters from '../mocks/adapters'; describe('#order-use-case', () => { let uut diff --git a/test/unit/use-cases/users.use-case.unit.js b/test/unit/use-cases/users.use-case.unit.js index 3ea16db..a73ed24 100644 --- a/test/unit/use-cases/users.use-case.unit.js +++ b/test/unit/use-cases/users.use-case.unit.js @@ -5,15 +5,16 @@ */ // Public npm libraries -const assert = require('chai').assert -const sinon = require('sinon') +import { assert } from 'chai' +import sinon from 'sinon' // Local support libraries // const testUtils = require('../../utils/test-utils') // Unit under test (uut) -const UserLib = require('../../../src/use-cases/user') -const adapters = require('../mocks/adapters') +import UserLib from '../../../src/use-cases/user.js' + +import adapters from '../mocks/adapters/index.js' describe('#users-use-case', () => { let uut @@ -329,22 +330,23 @@ describe('#users-use-case', () => { } }) - // it('should update the user model', async () => { - // const newData = { - // email: 'test@test.com', - // password: 'password', - // name: 'testy tester' - // } - // - // const result = await uut.updateUser(testUser, newData) - // - // // Assert that expected properties and values exist. - // assert.property(result, '_id') - // assert.property(result, 'email') - // assert.equal(result.email, 'test@test.com') - // assert.property(result, 'name') - // assert.equal(result.name, 'testy tester') - // }) + it('should update the user model', async () => { + const newData = { + email: 'test@test.com', + password: 'password', + name: 'testy tester' + } + testUser.save = async () => {} + + const result = await uut.updateUser(testUser, newData) + + // Assert that expected properties and values exist. + assert.property(result, '_id') + assert.property(result, 'email') + assert.equal(result.email, 'test@test.com') + assert.property(result, 'name') + assert.equal(result.name, 'testy tester') + }) // TODO: verify that an admin can change the type of a user }) diff --git a/test/utils/test-utils.js b/test/utils/test-utils.js index 02d72b4..5758dbc 100644 --- a/test/utils/test-utils.js +++ b/test/utils/test-utils.js @@ -3,14 +3,22 @@ */ // Public NPM libraries -const mongoose = require('mongoose') -const axios = require('axios').default +import mongoose from 'mongoose' +import axios from 'axios' // Local libraries -const config = require('../../config') -const User = require('../../src/adapters/localdb/models/users') +import config from '../../config/index.js' +import User from '../../src/adapters/localdb/models/users.js' +import JsonFiles from '../../src/adapters/json-files.js' + +// Hack to get __dirname back. +// https://blog.logrocket.com/alternatives-dirname-node-js-es-modules/ +import * as url from 'url' + +const jsonFiles = new JsonFiles() const LOCALHOST = `http://localhost:${config.port}` +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) // Remove all collections from the DB. async function cleanDb () { @@ -110,9 +118,11 @@ async function loginTestUser () { async function loginAdminUser () { try { - const FILENAME = `../../config/system-user-${config.env}.json` - const adminUserData = require(FILENAME) - console.log(`adminUserData: ${JSON.stringify(adminUserData, null, 2)}`) + const FILENAME = `${__dirname.toString()}../../config/system-user-${config.env}.json` + // console.log('FILENAME: ', FILENAME) + + const adminUserData = await jsonFiles.readJSON(FILENAME) + // console.log(`adminUserData: ${JSON.stringify(adminUserData, null, 2)}`) const options = { method: 'POST', @@ -149,8 +159,9 @@ async function getAdminJWT () { // process.env.KOA_ENV = process.env.KOA_ENV || 'dev' // console.log(`env: ${process.env.KOA_ENV}`) - const FILENAME = `../../config/system-user-${config.env}.json` - const adminUserData = require(FILENAME) + const FILENAME = `${__dirname.toString()}../../config/system-user-${config.env}.json` + // console.log('FILENAME: ', FILENAME) + const adminUserData = await jsonFiles.readJSON(FILENAME) // console.log(`adminUserData: ${JSON.stringify(adminUserData, null, 2)}`) return adminUserData.token @@ -160,7 +171,7 @@ async function getAdminJWT () { } } -module.exports = { +export default { cleanDb, createUser, loginTestUser, diff --git a/util/users/createUsers.js b/util/users/createUsers.js index 0aa333c..3fc75e4 100644 --- a/util/users/createUsers.js +++ b/util/users/createUsers.js @@ -1,6 +1,5 @@ -const mongoose = require('mongoose') - -const config = require('../../config') +import mongoose from 'mongoose' +import config from '../../config/index.js' const EMAIL = 'test@test.com' const PASSWORD = 'pass' @@ -34,6 +33,6 @@ async function addUser () { } addUser() -module.exports = { +export default { addUser } diff --git a/util/users/delete-all-test-users.js b/util/users/delete-all-test-users.js index 9d61994..53c7d7f 100644 --- a/util/users/delete-all-test-users.js +++ b/util/users/delete-all-test-users.js @@ -1,12 +1,12 @@ -const mongoose = require('mongoose') +import mongoose from 'mongoose' // Force test environment // make sure environment variable is set before this file gets called. // see test script in package.json. // process.env.KOA_ENV = 'test' -const config = require('../../config') +import config from '../../config/index.js' -const User = require('../../src/models/users') +import User from '../../src/models/users/js' async function deleteUsers () { // Connect to the Mongo Database. diff --git a/util/users/getUsers.js b/util/users/getUsers.js index a80a5fd..56e1109 100644 --- a/util/users/getUsers.js +++ b/util/users/getUsers.js @@ -1,8 +1,6 @@ -const mongoose = require('mongoose') - -const config = require('../../config') - -const User = require('../../src/models/users') +import mongoose from 'mongoose' +import config from '../../config/index.js' +import User from '../../src/models/users.js' async function getUsers () { // Connect to the Mongo Database. diff --git a/util/wipe-test-db.js b/util/wipe-test-db.js index 8f7106f..d97ad09 100644 --- a/util/wipe-test-db.js +++ b/util/wipe-test-db.js @@ -4,11 +4,11 @@ 'use strict' -const mongoose = require('mongoose') +import mongoose from 'mongoose' +import config from '../config/index.js' // Force test environment process.env.KOA_ENV = 'test' -const config = require('../config') async function cleanDb () { // Connect to the Mongo Database.