diff --git a/.env b/.env index fb9b2f69..c894aa80 100644 --- a/.env +++ b/.env @@ -1,3 +1,5 @@ GENERATE_SOURCEMAP=false APP_PORT=3030 REACT_APP_TITLE=image-bin + +DID_STORAGE_URL=http://cedcaa27-znkga5fuxuwntawzo6ugwlps92i9alparpfh.did.abtnet.io diff --git a/CHANGELOG.md b/CHANGELOG.md index 776f3b91..f1e40d48 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.7.1 (十月 27, 2022) + +- feat: use did storage as the storage engine + ## 0.7.0 (October 14, 2022) - fix: security for non-admin users diff --git a/api/index.js b/api/index.js index 7ac37ee5..e5d2850f 100644 --- a/api/index.js +++ b/api/index.js @@ -12,6 +12,7 @@ const fallback = require('express-history-api-fallback'); const { name, version } = require('../package.json'); const logger = require('./libs/logger'); const env = require('./libs/env'); +const { apiRouter } = require('./routes'); if (fs.existsSync(env.uploadDir) === false) { fs.mkdirSync(env.uploadDir, { recursive: true }); @@ -27,7 +28,7 @@ app.use(express.urlencoded({ extended: true, limit: env.maxUploadSize })); app.use('/uploads', express.static(env.uploadDir, { maxAge: '356d', immutable: true, index: false })); const router = express.Router(); -router.use('/api', require('./routes/upload')); +router.use('/api', apiRouter); const isDevelopment = process.env.NODE_ENV === 'development'; const isProduction = process.env.NODE_ENV === 'production' || process.env.ABT_NODE_SERVICE_ENV === 'production'; diff --git a/api/libs/api.js b/api/libs/api.js new file mode 100644 index 00000000..25fa1c73 --- /dev/null +++ b/api/libs/api.js @@ -0,0 +1,7 @@ +const { default: axios } = require('axios'); + +const api = axios.create(); + +module.exports = { + api, +}; diff --git a/api/libs/storage-endpoint.js b/api/libs/storage-endpoint.js new file mode 100644 index 00000000..e2629fb4 --- /dev/null +++ b/api/libs/storage-endpoint.js @@ -0,0 +1,14 @@ +const urlJoin = require('url-join'); + +/** + * + * @param {string} endpoint + * @param {string} objectKey + */ +function getPublicUrl(endpoint, objectKey) { + return urlJoin(endpoint.replace('object/', ''), 'public', objectKey); +} + +module.exports = { + getPublicUrl, +}; diff --git a/api/routes/.upload.js b/api/routes/.upload.js new file mode 100644 index 00000000..555792d0 --- /dev/null +++ b/api/routes/.upload.js @@ -0,0 +1,137 @@ +const fs = require('fs'); +const path = require('path'); +const multer = require('multer'); +const express = require('express'); +const joinUrl = require('url-join'); +const pick = require('lodash/pick'); +const middleware = require('@blocklet/sdk/lib/middlewares'); +const mime = require('mime-types'); +const { customRandom, urlAlphabet, random } = require('nanoid'); + +const env = require('../libs/env'); +const Upload = require('../states/upload'); +const Folder = require('../states/folder'); + +const uploadRouter = express.Router(); +const nanoid = customRandom(urlAlphabet, 24, random); +const auth = middleware.auth({ roles: env.uploaderRoles }); +const user = middleware.user(); +const ensureAdmin = middleware.auth({ roles: ['admin', 'owner'] }); +const upload = multer({ + storage: multer.diskStorage({ + destination: env.uploadDir, + filename: (req, file, cb) => { + cb(null, `${Date.now()}-${nanoid()}.${mime.extension(file.mimetype)}`); + }, + }), +}); + +uploadRouter.post('/', user, auth, upload.single('image'), async (req, res) => { + const obj = new URL(env.appUrl); + obj.protocol = req.get('x-forwarded-proto') || req.protocol; + obj.pathname = joinUrl(req.headers['x-path-prefix'] || '/', '/uploads', req.file.filename); + + const doc = await Upload.insert({ + ...pick(req.file, ['size', 'filename', 'mimetype', 'originalname']), + remark: req.body.remark || '', + createdAt: new Date().toISOString(), + updatedAt: new Date().toISOString(), + createdBy: req.user.did, + updatedBy: req.user.did, + }); + + res.json({ url: obj.href, ...doc }); +}); + +const DEFAULT_PAGE_SIZE = 20; +const MAX_PAGE_SIZE = 100; +uploadRouter.get('/', user, auth, async (req, res) => { + let page = Number(req.query.page || 1); + let pageSize = Number(req.query.pageSize || DEFAULT_PAGE_SIZE); + + page = Number.isNaN(page) ? 1 : page; + pageSize = Number.isNaN(pageSize) ? DEFAULT_PAGE_SIZE : pageSize; + pageSize = pageSize > MAX_PAGE_SIZE ? MAX_PAGE_SIZE : pageSize; + + const condition = {}; + if (req.query.folderId) { + condition.folderId = req.query.folderId; + } + + if (['guest', 'member'].includes(req.user.role)) { + condition.createdBy = req.user.did; + } + + const uploads = await Upload.paginate({ condition, sort: { createdAt: -1 }, page, size: pageSize }); + const total = await Upload.count(condition); + + const folders = await Folder.cursor({}).sort({ createdAt: -1 }).exec(); + + res.jsonp({ uploads, folders, total, page, pageSize, pageCount: Math.ceil(total / pageSize) }); +}); + +// preview image +uploadRouter.get('/:filename', user, auth, async (req, res) => { + const doc = await Upload.findOne({ filename: req.params.filename }); + res.jsonp(doc); +}); + +// remove upload +uploadRouter.delete('/:id', user, ensureAdmin, async (req, res) => { + const doc = await Upload.findOne({ _id: req.params.id }); + if (!doc) { + res.jsonp({ error: 'No such upload' }); + return; + } + + const result = await Upload.remove({ _id: req.params.id }); + if (result) { + fs.unlinkSync(path.join(env.uploadDir, doc.filename)); + } + + res.jsonp(doc); +}); + +// create folder +uploadRouter.post('/folders', user, ensureAdmin, async (req, res) => { + const name = req.body.name.trim(); + if (!name) { + res.jsonp({ error: 'folder name required' }); + return; + } + + const exist = await Folder.findOne({ name }); + if (exist) { + res.json(exist); + return; + } + + const doc = await Folder.insert({ + name, + createdAt: new Date().toISOString(), + updatedAt: new Date().toISOString(), + createdBy: req.user.did, + updatedBy: req.user.did, + }); + + res.json(doc); +}); + +// move to folder +uploadRouter.put('/:id', user, ensureAdmin, async (req, res) => { + const doc = await Upload.findOne({ _id: req.params.id }); + if (!doc) { + res.jsonp({ error: 'No such upload' }); + return; + } + + const [, updatedDoc] = await Upload.update( + { _id: req.params.id }, + { $set: pick(req.body, ['folderId']) }, + { returnUpdatedDocs: true } + ); + + res.jsonp(updatedDoc); +}); + +module.exports = { uploadRouter }; diff --git a/api/routes/index.js b/api/routes/index.js new file mode 100644 index 00000000..8063243e --- /dev/null +++ b/api/routes/index.js @@ -0,0 +1,12 @@ +const express = require('express'); +const { storageEndpointRouter } = require('./storage-endpoint'); +const { uploadRouter } = require('./upload'); + +const apiRouter = express.Router(); + +apiRouter.use('/uploads', uploadRouter); +apiRouter.use('/storage-endpoint', storageEndpointRouter); + +module.exports = { + apiRouter, +}; diff --git a/api/routes/storage-endpoint.js b/api/routes/storage-endpoint.js new file mode 100644 index 00000000..a7598b53 --- /dev/null +++ b/api/routes/storage-endpoint.js @@ -0,0 +1,47 @@ +const express = require('express'); +const { isEmpty } = require('lodash'); +const { storageEndpointRepository } = require('../states/storage-endpoint'); + +const storageEndpointRouter = express.Router(); + +storageEndpointRouter.put( + '/', + /** + * + * @param {import('express').Request} req + * @param {import('express').Response} res + */ + async (req, res) => { + const { endpoint } = req.body; + + if (isEmpty(endpoint)) { + return res.status(400).send('endpoint cannot be empty'); + } + + await storageEndpointRepository.write(endpoint); + + return res.send('ok'); + } +); + +storageEndpointRouter.get( + '/', + /** + * + * @param {import('express').Request} req + * @param {import('express').Response} res + */ + async (req, res) => { + if (!(await storageEndpointRepository.exists())) { + return ''; + } + + const endpoint = await storageEndpointRepository.read(); + + return res.send(endpoint); + } +); + +module.exports = { + storageEndpointRouter, +}; diff --git a/api/routes/upload.js b/api/routes/upload.js index 97e81840..edd76958 100644 --- a/api/routes/upload.js +++ b/api/routes/upload.js @@ -1,5 +1,4 @@ -const fs = require('fs'); -const path = require('path'); +const fs = require('fs-extra'); const multer = require('multer'); const express = require('express'); const joinUrl = require('url-join'); @@ -7,12 +6,15 @@ const pick = require('lodash/pick'); const middleware = require('@blocklet/sdk/lib/middlewares'); const mime = require('mime-types'); const { customRandom, urlAlphabet, random } = require('nanoid'); - +const FormData = require('form-data'); const env = require('../libs/env'); const Upload = require('../states/upload'); const Folder = require('../states/folder'); +const { api } = require('../libs/api'); +const { storageEndpointRepository } = require('../states/storage-endpoint'); +const { getPublicUrl } = require('../libs/storage-endpoint'); -const router = express.Router(); +const uploadRouter = express.Router(); const nanoid = customRandom(urlAlphabet, 24, random); const auth = middleware.auth({ roles: env.uploaderRoles }); const user = middleware.user(); @@ -26,11 +28,34 @@ const upload = multer({ }), }); -router.post('/uploads', user, auth, upload.single('image'), async (req, res) => { +uploadRouter.post('/', user, auth, upload.single('image'), async (req, res) => { const obj = new URL(env.appUrl); obj.protocol = req.get('x-forwarded-proto') || req.protocol; obj.pathname = joinUrl(req.headers['x-path-prefix'] || '/', '/uploads', req.file.filename); + const endpoint = await storageEndpointRepository.read(); + + const stream = fs.createReadStream(req.file.path); + const filename = req.file.originalname; + const putUrl = joinUrl(endpoint, filename); + + const formData = new FormData(); + formData.append('data', stream); + + // @see: https://github.com/axios/axios#-automatic-serialization-to-formdata + await api({ + url: putUrl, + method: 'PUT', + data: formData, + headers: { + 'x-app-did': env.appId, + 'x-skip-signature': true, + ...formData.getHeaders(), + }, + }).catch((error) => console.error(error.message)); + + const publicUrl = getPublicUrl(endpoint, filename); + const doc = await Upload.insert({ ...pick(req.file, ['size', 'filename', 'mimetype', 'originalname']), remark: req.body.remark || '', @@ -38,14 +63,19 @@ router.post('/uploads', user, auth, upload.single('image'), async (req, res) => updatedAt: new Date().toISOString(), createdBy: req.user.did, updatedBy: req.user.did, + objectUrl: putUrl, + publicUrl, }); - res.json({ url: obj.href, ...doc }); + // eslint-disable-next-line no-console + console.log({ publicUrl }); + + return res.json({ url: doc.publicUrl, ...doc }); }); const DEFAULT_PAGE_SIZE = 20; const MAX_PAGE_SIZE = 100; -router.get('/uploads', user, auth, async (req, res) => { +uploadRouter.get('/', user, auth, async (req, res) => { let page = Number(req.query.page || 1); let pageSize = Number(req.query.pageSize || DEFAULT_PAGE_SIZE); @@ -71,29 +101,37 @@ router.get('/uploads', user, auth, async (req, res) => { }); // preview image -router.get('/uploads/:filename', user, auth, async (req, res) => { +uploadRouter.get('/:filename', user, auth, async (req, res) => { const doc = await Upload.findOne({ filename: req.params.filename }); res.jsonp(doc); }); // remove upload -router.delete('/uploads/:id', user, ensureAdmin, async (req, res) => { +uploadRouter.delete('/:id', user, ensureAdmin, async (req, res) => { + /** + * @type {ImageBin.Upload} + */ const doc = await Upload.findOne({ _id: req.params.id }); if (!doc) { - res.jsonp({ error: 'No such upload' }); - return; + return res.jsonp({ error: 'No such upload' }); } - const result = await Upload.remove({ _id: req.params.id }); - if (result) { - fs.unlinkSync(path.join(env.uploadDir, doc.filename)); + if (doc.objectUrl) { + await api.delete(doc.objectUrl, { + headers: { + 'x-app-did': env.appId, + 'x-skip-signature': true, + }, + }); } - res.jsonp(doc); + await Upload.remove({ _id: req.params.id }); + + return res.jsonp(doc); }); // create folder -router.post('/folders', user, ensureAdmin, async (req, res) => { +uploadRouter.post('/folders', user, ensureAdmin, async (req, res) => { const name = req.body.name.trim(); if (!name) { res.jsonp({ error: 'folder name required' }); @@ -118,7 +156,7 @@ router.post('/folders', user, ensureAdmin, async (req, res) => { }); // move to folder -router.put('/uploads/:id', user, ensureAdmin, async (req, res) => { +uploadRouter.put('/:id', user, ensureAdmin, async (req, res) => { const doc = await Upload.findOne({ _id: req.params.id }); if (!doc) { res.jsonp({ error: 'No such upload' }); @@ -134,4 +172,4 @@ router.put('/uploads/:id', user, ensureAdmin, async (req, res) => { res.jsonp(updatedDoc); }); -module.exports = router; +module.exports = { uploadRouter }; diff --git a/api/states/storage-endpoint.js b/api/states/storage-endpoint.js new file mode 100644 index 00000000..509e2862 --- /dev/null +++ b/api/states/storage-endpoint.js @@ -0,0 +1,37 @@ +const fs = require('fs-extra'); +const path = require('path'); +const { dataDir } = require('../libs/env'); + +const endpointFilePath = path.join(dataDir, 'endpoint.txt'); +class StorageEndpointRepository { + /** + * + * @returns {Promise} + */ + async exists() { + return fs.existsSync(endpointFilePath); + } + + /** + * + * @param {any} endpoint + * @returns {Promise} + */ + async write(endpoint) { + return fs.outputFile(endpointFilePath, endpoint); + } + + /** + * + * + * @return {Promise} + */ + async read() { + const buffer = await fs.readFile(endpointFilePath); + return buffer.toString(); + } +} + +module.exports = { + storageEndpointRepository: new StorageEndpointRepository(), +}; diff --git a/blocklet.yml b/blocklet.yml index 74c17fd8..f71d7762 100644 --- a/blocklet.yml +++ b/blocklet.yml @@ -1,5 +1,5 @@ name: image-bin -version: 0.7.0 +version: 0.7.1 title: Image Bin description: Paste and share your images keywords: @@ -88,6 +88,12 @@ environments: default: '900' secure: false shared: true + - name: DID_STORAGE_URL + description: Address of DID Storage instance + required: false + default: http://cedcaa27-znkga5fuxuwntawzo6ugwlps92i9alparpfh.did.abtnet.io + secure: false + shared: true capabilities: clusterMode: false component: true diff --git a/package.json b/package.json index edbdaeb0..b8098682 100644 --- a/package.json +++ b/package.json @@ -1,21 +1,26 @@ { "name": "image-bin", - "version": "0.7.0", + "version": "0.7.1", "scripts": { + "dev:local": "bn dev remove && bn dev", "dev": "PUBLIC_URL='./' craco start", "build": "craco build", "eject": "react-scripts eject", "lint": "eslint src api --ext .mjs,.js,.jsx,.ts,.tsx", + "lint:fix": "npm run lint -- --fix", "start": "npm-run-all --parallel start:*", "start:client": "npm run dev", "start:api": "NODE_ENV=development nodemon api/index.js -w api", "clean": "rm -rf .blocklet", "bundle": "npm run bundle:client && npm run bundle:api", + "bundle:local": "npm run bundle:client && npm run clean && bn bundle --zip --create-release ", "bundle:client": "PUBLIC_URL='/.blocklet/proxy/z8ia1mAXo8ZE7ytGF36L5uBf9kD2kenhqFGp9' npm run build", "bundle:api": "npm run clean && blocklet bundle --zip --create-release", "deploy": "npm run bundle && blocklet deploy .blocklet/bundle", + "deploy:local": "bn dev remove && npm run bundle:local && bn deploy .blocklet/bundle", "upload": "npm run bundle && blocklet upload .blocklet/release/blocklet.json", - "prepare": "husky install" + "prepare": "husky install", + "update:deps": "npx -y taze -r -w" }, "lint-staged": { "*.{mjs,js,jsx,ts,tsx}": [ @@ -47,6 +52,7 @@ "@emotion/react": "^11.10.4", "@emotion/styled": "^11.10.4", "@mui/material": "^5.10.4", + "@sentry/browser": "^7.16.0", "axios": "^0.26.1", "compression": "^1.7.4", "cookie-parser": "^1.4.6", @@ -56,6 +62,8 @@ "express": "^4.18.1", "express-async-errors": "^3.1.1", "express-history-api-fallback": "^2.2.1", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", "lodash": "^4.17.21", "mime-types": "^2.1.35", "multer": "^1.4.4", @@ -64,6 +72,7 @@ "prop-types": "^15.8.1", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-ga": "^3.3.1", "react-router-dom": "^6.3.0", "react-scripts": "5.0.0", "react-use": "^17.4.0", @@ -75,6 +84,7 @@ }, "devDependencies": { "@arcblock/eslint-config": "^0.2.3", + "@types/fs-extra": "^9.0.13", "eslint": "^8.23.0", "husky": "^7.0.4", "lint-staged": "^12.5.0", diff --git a/src/components/actions.js b/src/components/actions.js index d4c667ed..55ab1b79 100644 --- a/src/components/actions.js +++ b/src/components/actions.js @@ -113,6 +113,7 @@ export default function ImageActions({ data }) { variant: 'contained', color: 'secondary', disabled: loading, + loading, }, }; diff --git a/src/components/history.js b/src/components/history.js index 165d59bf..2fb659e0 100644 --- a/src/components/history.js +++ b/src/components/history.js @@ -20,7 +20,7 @@ function Gallery({ uploads }) { return ( {uploads.map((x) => { - const imageUrl = createImageUrl(x.filename); + const imageUrl = x.publicUrl ?? createImageUrl(x.filename); return (
diff --git a/src/components/storage-actions.js b/src/components/storage-actions.js new file mode 100644 index 00000000..2caad846 --- /dev/null +++ b/src/components/storage-actions.js @@ -0,0 +1,131 @@ +import { Toast } from '@arcblock/ux'; +import { isEmpty } from 'lodash'; +import { useState } from 'react'; +import Dialog from '@arcblock/ux/lib/Dialog'; +import Button from '@arcblock/ux/lib/Button'; +import { TextField } from '@mui/material'; +import styled from '@emotion/styled'; +import api from '../libs/api'; + +function StorageAction() { + const [isLoading, setIsLoading] = useState(false); + const [storageEndpointDialog, setStorageEndpointDialog] = useState( + /** + * @type {{ + * didStorageUrl: string + * }} + */ + (null) + ); + + const handleGetStorageEndpoint = async () => { + setStorageEndpointDialog((preValue) => ({ ...preValue, didStorageUrl: window.blocklet.DID_STORAGE_URL })); + }; + const handleSaveStorageEndpoint = async () => { + try { + const url = new URL(window.location.href); + + const endpoint = url.searchParams.get('endpoint'); + + if (isEmpty(endpoint)) { + Toast.error('Storage endpoint not found'); + } + + await api.put('/api/storage-endpoint', { + endpoint, + }); + + Toast.success('Storage endpoint saved'); + } catch (error) { + console.error(error); + Toast.error(error.message); + } + }; + const handleAuthorizeNow = async () => { + if (isEmpty(storageEndpointDialog?.didStorageUrl)) { + Toast.error('StorageUrl cannot be empty'); + return; + } + + setIsLoading(true); + const authorizeURL = new URL(storageEndpointDialog.didStorageUrl); + authorizeURL.searchParams.set('action', 'authorize'); + authorizeURL.searchParams.set('appDid', window.blocklet.appId); + authorizeURL.searchParams.set('appName', 'image bin'); + authorizeURL.searchParams.set('appDescription', 'image bin app'); + authorizeURL.searchParams.set('redirectUrl', new URL(window.location.href).origin); + authorizeURL.searchParams.set('scopes', 'list:object read:object write:object'); + window.location.href = authorizeURL; + }; + + return ( +
+
+ +
+
+ +
+ + {storageEndpointDialog && ( + setStorageEndpointDialog(null)} + actions={ +
+ +
+ }> + setStorageEndpointDialog((x) => ({ ...x, didStorageUrl: e.target.value }))} + /> +
+ )} +
+ ); +} + +const Div = styled.div` + .functions { + margin-top: 8px; + + .submit { + padding: 12px 24px; + border-radius: 5px; + cursor: pointer; + color: #eee; + width: 100%; + max-width: 320px; + text-shadow: 0 1px 0 black; + text-decoration: none; + font-size: 1.2rem; + background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.2)); + border: 1px solid #000000; + background-color: #166f16; + box-shadow: inset 0 1px 1px rgb(255 255 255 / 15%), inset 0 0 5px rgb(255 255 255 / 5%), 0 0 5px rgb(0 0 25 / 50%), + 0 5px 10px rgb(0 0 25 / 30%); + } + } +`; + +export default StorageAction; diff --git a/src/components/uploader.js b/src/components/uploader.js index 4f1f7ea1..3820fe68 100644 --- a/src/components/uploader.js +++ b/src/components/uploader.js @@ -24,6 +24,7 @@ import 'uppload/dist/themes/light.css'; import { useUploadContext } from '../contexts/upload'; import api from '../libs/api'; +import StorageAction from './storage-actions'; const obj = new window.URL(window.location.origin); obj.pathname = joinUrl(window.blocklet.prefix, '/api/uploads'); @@ -87,6 +88,9 @@ export default function Uploader() { Upload Image
+
+ +
); } diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 00000000..595f8e62 --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,15 @@ +declare module ImageBin { + export interface Upload { + filename: string; + mimetype: string; + size: number; + originalname: string; + remark: string; + createAt: string; + updateAt: string; + createdBy: string; + updateBy: string; + folderId?: string; + publicUrl: string; + } +} diff --git a/version b/version index faef31a4..39e898a4 100644 --- a/version +++ b/version @@ -1 +1 @@ -0.7.0 +0.7.1 diff --git a/yarn.lock b/yarn.lock index d56d65d1..f417166f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,31 +2,31 @@ # yarn lockfile v1 -"@abtnode/client@1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@abtnode/client/-/client-1.8.19.tgz" - integrity sha512-egcRFTJtmNTsU4mDEEqIsNY1VaZWBdtzxp5g3ZZ4aMOMSgo8sW6zrx8psCTuDMK39TYZZZtEPISDAVC62EHwZw== +"@abtnode/client@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@abtnode/client/-/client-1.8.31.tgz#f035fc4b847ae9e7c3c5a357e594bb38a66bff02" + integrity sha512-3qIU8mToRS3UAGMzDEPcLXe/yE3aelWl2zrwwXFUgmJ1nx+vOsDCO4iniWHlXHvHDJPCI89J8agcC7kXhD+3ug== dependencies: "@arcblock/sdk-util" "^0.32.0" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" axios "^0.27.2" blueimp-md5 "^2.19.0" - core-js "^3.24.1" + core-js "^3.25.5" debug "^4.3.4" eventemitter3 "^4.0.7" lodash "^4.17.21" react-app-polyfill "^1.0.6" -"@abtnode/constant@1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@abtnode/constant/-/constant-1.8.19.tgz" - integrity sha512-mQ/VJS6cgZz9R6lkp2yFLkbaLleX/8pf8AqIz2Q1V9u4G7WfJOsCKk+KpyFfBQLR/hB9TY04W5sJ5NWlYQFhNw== +"@abtnode/constant@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@abtnode/constant/-/constant-1.8.31.tgz#1472ff5f1543a7c8e8335c4eed0f13723d1e7953" + integrity sha512-RZIQKHnKvvas+cGTuW3OO6X/9x/qii801hifgPFgAh7MJyh+bNiKW4YP+RoVERqAoOD99rIHXr62F0awKyO74g== -"@abtnode/logger@1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@abtnode/logger/-/logger-1.8.19.tgz" - integrity sha512-TH9Xk/91cdXiBjMiDpEAmXUzNGHhvJNxi0vYmgYkUB+nyXl2NWTZzP+Xm2+3zU/LGcwdpmoZqMFwXD/e/dWxlg== +"@abtnode/logger@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@abtnode/logger/-/logger-1.8.31.tgz#967ce38bd5cbeac8c36e69532209daaed575bd96" + integrity sha512-FMRF4V4a67JwV2aTyc/aFZqiF82tOG9vyEwgu0BynHZnItHQQDfWhRHEYopulvBOtNnc9DtYTerwQ56xrmAxGg== dependencies: debug "^4.3.4" fast-safe-stringify "^2.1.1" @@ -34,20 +34,21 @@ lodash.isempty "^4.4.0" rewire "^5.0.0" rotating-file-stream "^2.1.6" - winston "^3.8.1" + winston "^3.8.2" winston-daily-rotate-file "^4.7.1" -"@abtnode/util@1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@abtnode/util/-/util-1.8.19.tgz" - integrity sha512-eHZflT6zX2Ebv0k6kUWkNl4Upxu1nWuwRh6sdQo1V+r6wMAOVSiu2MxvwCaZV9PlDVEYeq88hfNugA5ypK0NSg== - dependencies: - "@abtnode/constant" "1.8.19" - "@abtnode/logger" "1.8.19" - "@arcblock/jwt" "^1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" +"@abtnode/util@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@abtnode/util/-/util-1.8.31.tgz#34e2c63bec58c8e0d0f1913a7bac9f616baf151b" + integrity sha512-whXPn4UTlIw0o2yHC4tekTgwUtRTzelAJi3NYEkFJSC55kTBqKDVSpCtbne8rOoXbxSnQDHXN/CA4+F+Bl2a5w== + dependencies: + "@abtnode/constant" "1.8.31" + "@abtnode/logger" "1.8.31" + "@arcblock/jwt" "^1.17.23" + "@blocklet/constant" "1.8.31" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" axios "^0.27.2" axios-mock-adapter "^1.21.2" axon "^2.0.3" @@ -57,7 +58,9 @@ flush-write-stream "^2.0.0" folder-walker "^3.2.0" form-data "^4.0.0" + get-folder-size "^2.0.1" hasha "^5.2.2" + hpagent "^1.1.0" internal-ip "^6.2.0" is-docker "^2.2.1" json-stable-stringify "^1.0.1" @@ -66,10 +69,12 @@ parallel-transform "^1.2.0" public-ip "^4.0.4" pump "^3.0.0" - semver "^7.3.7" + read-last-lines "^1.8.0" + semver "^7.3.8" semver-sort "^1.0.0" shelljs "^0.8.5" stream-to-promise "^3.0.0" + tail "^2.2.4" through2-filter "^3.0.0" through2-map "^3.0.0" to-semver "^3.0.0" @@ -93,43 +98,41 @@ jsonpointer "^5.0.0" leven "^3.1.0" -"@arcblock/did-auth@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/did-auth/-/did-auth-1.17.19.tgz" - integrity sha512-C6II8QldFO44ZNRyHGyaX9M0YwKzbRlS4fmWy3xgRmyb8CYCb1eAojdC3eXBPP/cOByKMEkoPwH3/l7ITYpXMA== - dependencies: - "@arcblock/did" "1.17.19" - "@arcblock/jwt" "1.17.19" - "@arcblock/validator" "1.17.19" - "@ocap/client" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" +"@arcblock/did-auth@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/did-auth/-/did-auth-1.17.23.tgz#2dad2c09a06f6d0ed57abb38220bf6756d19a13a" + integrity sha512-C+VKxVzKCZ1t2vwUOHUHvWW46Tq3356FVRpcIP338uK8WcdZ4imGYmvLtsdA65jTX31KJj/vSOsRL7FB7gj+kg== + dependencies: + "@arcblock/did" "1.17.23" + "@arcblock/jwt" "1.17.23" + "@arcblock/validator" "1.17.23" + "@ocap/client" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" debug "^4.3.4" json-stable-stringify "^1.0.1" lodash "^4.17.21" semver "^7.3.7" tweetnacl-sealedbox-js "^1.2.0" -"@arcblock/did-connect@^2.4.24": - version "2.4.24" - resolved "https://registry.npmjs.org/@arcblock/did-connect/-/did-connect-2.4.24.tgz" - integrity sha512-zpaai3pIWJMxzEtcjdc+k6dTEB0OwvoEkRhL6cVC4ogZ6LWPgjuXCHZwaLUY1enPgYr3I7k1zSdmskpYgYJTAA== - dependencies: - "@arcblock/did-motif" "^1.1.10" - "@arcblock/event-client" "^1.6.3" - "@arcblock/icons" "^2.4.24" - "@arcblock/react-hooks" "^2.4.24" - "@arcblock/ux" "^2.4.24" - "@emotion/react" "^11.10.0" - "@emotion/styled" "^11.10.0" - "@fontsource/lato" "^4.5.9" - "@fontsource/ubuntu-mono" "^4.5.11" - "@mui/icons-material" "^5.8.4" - "@mui/material" "^5.10.0" +"@arcblock/did-connect@^2.4.24", "@arcblock/did-connect@^2.4.47": + version "2.4.47" + resolved "https://registry.yarnpkg.com/@arcblock/did-connect/-/did-connect-2.4.47.tgz#905a07a4ce967dc4d0578bbdd53c930387371eee" + integrity sha512-NI0UVR8Roj1NvWlPdg27fEAVmTzMc80WLE0Kkp85QVRwpf52DJHw/qCtOT2g/o+ZOJiD+WbG/nzT1EM46XriGg== + dependencies: + "@arcblock/event-client" "^1.7.1" + "@arcblock/icons" "^2.4.47" + "@arcblock/react-hooks" "^2.4.47" + "@arcblock/ux" "^2.4.47" + "@emotion/react" "^11.10.4" + "@emotion/styled" "^11.10.4" + "@fontsource/lato" "^4.5.10" + "@mui/icons-material" "^5.10.6" + "@mui/material" "^5.10.8" axios "^0.21.4" buffer "^6.0.3" - core-js "^3.24.1" + core-js "^3.25.5" dsbridge "3.1.4" js-cookie "^2.2.1" mdi-material-ui "^7.5.0" @@ -137,15 +140,15 @@ tweetnacl "^1.0.3" tweetnacl-sealedbox-js "^1.2.0" -"@arcblock/did-ext@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/did-ext/-/did-ext-1.17.19.tgz" - integrity sha512-mXTZ8oLuQtT2uYQXeBV+5xQ46Yz7Hz9sdXI4Dp2bVjNtZzVFPoSXxE7sMm4qWb+Sd5EJ1NbjnFooeNSbmLkrtg== +"@arcblock/did-ext@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/did-ext/-/did-ext-1.17.23.tgz#5bdf6da2d09e6c31c3df834b6bc35dcb80526afa" + integrity sha512-TupM7svSgS5vElUuohyFRaKJlf8oZsKppQMN0tno260PR1p5i/KPXukTKT3iN3QbLB3iH+pv2I1jZEaQY3JU1g== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" "@wangshijun/hdkey" "^2.0.4" bn.js "^5.2.1" debug "^4.3.4" @@ -158,26 +161,26 @@ dependencies: bs58 "^5.0.0" -"@arcblock/did-util@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/did-util/-/did-util-1.17.19.tgz" - integrity sha512-pUlvhfLffpvp5A0IEfje2YAA9hsbq+telj6mxUf/R75O+TVrCnm8BxlGYt7gUe2SpVVrx+uPsclsvfqshjS8dA== - dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/message" "1.17.19" - "@ocap/proto" "1.17.19" - "@ocap/types" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" - -"@arcblock/did@1.17.19", "@arcblock/did@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/did/-/did-1.17.19.tgz" - integrity sha512-Z2iD/UxOd2FqmJ/07alGFdFlWMHLx83wCP5ZueWX3qpuzJkIQHgnig9JFsk0ora1AAr78F8iyDdoCMRdrctZVg== - dependencies: - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" +"@arcblock/did-util@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/did-util/-/did-util-1.17.23.tgz#bdd81b2c714517235e37b798a0bd5bead06fa97b" + integrity sha512-X1KKjKuHBNKaNWWY3DxPDmGmVmXCeVlYrbZD5zfcYrWfEox3tLlgkXRPqtWLdXgfolMBgCapLibN3lE88lElTg== + dependencies: + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/message" "1.17.23" + "@ocap/proto" "1.17.23" + "@ocap/types" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" + +"@arcblock/did@1.17.23", "@arcblock/did@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/did/-/did-1.17.23.tgz#65416362b35433a80ebf44d9fa78fe4f619946fd" + integrity sha512-cEc+t+nOlEUgAQ4Z5+jH/dHMlmhnjKsBFTlUnl5FtGZ+HhRtLuq75fDRMSNS6XEpNW4pm4FcJxs5hrviEc8pxA== + dependencies: + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" bn.js "^5.2.1" debug "^4.3.4" lodash "^4.17.21" @@ -198,9 +201,9 @@ eslint-plugin-react-hooks "^4.6.0" eslint-plugin-unicorn "^42.0.0" -"@arcblock/event-client@^1.6.3": +"@arcblock/event-client@^1.7.1": version "1.7.1" - resolved "https://registry.npmjs.org/@arcblock/event-client/-/event-client-1.7.1.tgz" + resolved "https://registry.yarnpkg.com/@arcblock/event-client/-/event-client-1.7.1.tgz#8db95d104f4af4c74ee38922da523e7d820996f0" integrity sha512-ZtpO9i9L60DfOBT5zfIu7jUQ7G8dTUgCxvmcX6TyweDydtcFbGlSz2EDurhgeRDL5sVBeXcGYQQkEeYL3giQmg== dependencies: debug "^4.3.4" @@ -209,40 +212,40 @@ wolfy87-eventemitter "^5.2.9" ws "^7.5.9" -"@arcblock/event-hub@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/event-hub/-/event-hub-1.17.19.tgz" - integrity sha512-VR87K4tYHhDXVkcI6+CaGURk6SjaQyVf8OOi8S0CtIbUM2GYkGn44yvRMaOLap+IyNrUy0GlcxUp51iLCL/A2Q== +"@arcblock/event-hub@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/event-hub/-/event-hub-1.17.23.tgz#217c577423f4312a0aa955cdec3ed2c7c1cf32f1" + integrity sha512-VOsxtiTgfDoboIGCLaWStqZroQtp2XQt8svPh6CV/dg/lqVLVXmxja9P8L8roUBs2DuV97KzGmpBaeKEroDsVQ== dependencies: - "@arcblock/did" "1.17.19" - "@arcblock/jwt" "1.17.19" - "@ocap/wallet" "1.17.19" + "@arcblock/did" "1.17.23" + "@arcblock/jwt" "1.17.23" + "@ocap/wallet" "1.17.23" amp-message "~0.1.2" axon "^2.0.3" -"@arcblock/icons@^2.4.24": - version "2.4.24" - resolved "https://registry.npmjs.org/@arcblock/icons/-/icons-2.4.24.tgz" - integrity sha512-0qUSCjdoq2gaHZ0CSyfWSl/50nZE6erm2+s5vbvttcKGd5yMxi2x0Z5rDq9bbKrKCYWvS6BFqu+DNJUlIXrZqg== +"@arcblock/icons@^2.4.47": + version "2.4.47" + resolved "https://registry.yarnpkg.com/@arcblock/icons/-/icons-2.4.47.tgz#82782288ec8ce57daa41d134332b59f5f6f0e835" + integrity sha512-SFTVKJyJkvIfT/dmHtYAUOhITMp+O0YVTZihCr2yN23WNeRA7knQlKG5nrL6Oge9MPKWTZwUjLKiwxCC/Uwbaw== -"@arcblock/jwt@1.17.19", "@arcblock/jwt@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/jwt/-/jwt-1.17.19.tgz" - integrity sha512-4y1lXO1bHf0+RKu2fw3x3yZ0GekDoDxCjYFtXH5J3CtcsLKYnCrRspz3aDA/jDmKhuLAnTxRFts9TiZDzcvXYQ== +"@arcblock/jwt@1.17.23", "@arcblock/jwt@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/jwt/-/jwt-1.17.23.tgz#b46e06932b2abfae01c591da822922f9e27782e2" + integrity sha512-6WcX5wwGmSMH0IZwLCx56JjnRiMyqD2GitEAekNrk/9ehkx7Gb1Gi5ls+Tc92wl5xJhknxYm7Mya5ZUBFhXplg== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" debug "^4.3.4" json-stable-stringify "^1.0.1" semver "^7.3.7" -"@arcblock/react-hooks@^2.4.24": - version "2.4.24" - resolved "https://registry.npmjs.org/@arcblock/react-hooks/-/react-hooks-2.4.24.tgz" - integrity sha512-zy+tPeayPEOpS+LiPZDZ/na1Y58RJjKI8E/h8PIoi3oHcH78DZviaVk4BUxjF/Bv0Pgz3EpJXDKBIAO9VPCtgw== +"@arcblock/react-hooks@^2.4.47": + version "2.4.47" + resolved "https://registry.yarnpkg.com/@arcblock/react-hooks/-/react-hooks-2.4.47.tgz#6e57d0aa022f9c47c40377eda158f3f7d093ca57" + integrity sha512-Pfu0is2cpoke792+zcnmvLMKQjRMnmQ47Ap6S0U9d1Uetqx/sUDNeBVbKixOtibAwcrYrINoFgJmrUM2zINTlQ== dependencies: - core-js "^3.24.1" + core-js "^3.25.5" event-target-shim "^5.0.1" ismobilejs "^1.1.1" @@ -257,26 +260,28 @@ lodash.get "^4.4.2" lodash.set "^4.3.2" -"@arcblock/ux@^2.4.24": - version "2.4.24" - resolved "https://registry.npmjs.org/@arcblock/ux/-/ux-2.4.24.tgz" - integrity sha512-6THEVc7+OrF5ABIN40ynZW2OGOQi4eN9SXgPgAeXxOu9mj/+pLLxufK6B03JsvMQpqRFKptwHJp3WYJ1gk3+uQ== +"@arcblock/ux@^2.4.24", "@arcblock/ux@^2.4.47": + version "2.4.47" + resolved "https://registry.yarnpkg.com/@arcblock/ux/-/ux-2.4.47.tgz#1b86c01cf85619473485443b0d4bb051ef98be32" + integrity sha512-j2n1VIMUzIbJlIO87HtwFPN2n7RK032FSuae7dpF7Y69lotevsbOmphOl/RGuCk5Bxr9S7LsglT7JyezRwPmdA== dependencies: - "@arcblock/icons" "^2.4.24" - "@arcblock/react-hooks" "^2.4.24" + "@arcblock/did-motif" "^1.1.10" + "@arcblock/icons" "^2.4.47" + "@arcblock/react-hooks" "^2.4.47" "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@emotion/react" "^11.10.0" - "@emotion/styled" "^11.10.0" - "@fontsource/lato" "^4.5.9" - "@mui/icons-material" "^5.8.4" - "@mui/material" "^5.10.0" + "@emotion/react" "^11.10.4" + "@emotion/styled" "^11.10.4" + "@fontsource/lato" "^4.5.10" + "@fontsource/ubuntu-mono" "^4.5.11" + "@mui/icons-material" "^5.10.6" + "@mui/material" "^5.10.8" "@solana/qr-code-styling" "^1.6.0-beta.0" axios "^0.21.4" base64-url "^2.3.3" copy-to-clipboard "^3.3.2" - core-js "^3.24.1" + core-js "^3.25.5" d3-geo "^1.12.1" - dayjs "^1.11.4" + dayjs "^1.11.5" devices.css "^0.1.15" highlight.js "^11.6.0" is-svg "^4.3.2" @@ -291,46 +296,46 @@ react-intersection-observer "^8.34.0" react-lottie-player "^1.4.3" react-player "^1.15.3" - react-router-dom "^6.3.0" + react-router-dom "^6.4.2" react-shadow "^19.0.3" react-use "^17.4.0" rebound "^0.1.0" topojson-client "^3.1.0" versor "^0.0.4" -"@arcblock/validator@1.17.19", "@arcblock/validator@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/validator/-/validator-1.17.19.tgz" - integrity sha512-3XAlav04Ob6VLTPOQznPe1zuXw+z4k+nEVHtRI6V8qef8lQr9T+Sk+w+nWcMg3BTgFre+7tbU1evHFdlXmeZRA== +"@arcblock/validator@1.17.23", "@arcblock/validator@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/validator/-/validator-1.17.23.tgz#bcbde6d5eb934526ec4b8ce55b3a08678b7ee73a" + integrity sha512-i1E7+mRKfTy8QZUG/HfHAEf88nw10gFE6hsnxVbZWmhmHn6P8cGcdRUHNcD7DLJtuMV0usUnTbPqIH51LsyvnA== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" bn.js "5.2.1" joi "^17.6.0" lodash "^4.17.21" type-fest "^2.18.0" -"@arcblock/vc@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/vc/-/vc-1.17.19.tgz" - integrity sha512-5cLlWslQ79W3ioXC685l3aSH36O8sXyFfUrHKWHaegufyaHWBjygFg3gobokhbN2h+nbzNhEUESD6rbSBNyIQQ== +"@arcblock/vc@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/vc/-/vc-1.17.23.tgz#0577866f37f3535cfd9bf1668ffd2ddf0f18e74a" + integrity sha512-YbsRDMnDgciQNXdaa2tSDH2SE4/ZiaICs9HKdzYgBjqxBt89YaXJnb8f3sGnCCQaU0jfoTx9xKb3XR2914SKdg== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" debug "^4.3.4" is-absolute-url "^3.0.3" json-stable-stringify "^1.0.1" lodash "^4.17.21" -"@arcblock/ws@1.17.19", "@arcblock/ws@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@arcblock/ws/-/ws-1.17.19.tgz" - integrity sha512-bLA78V/lDOAAatEiD3FaoDuepJVxXxggXd7XODsz4Wf0Qotxp49GB3n/xjYhUs4tNZIbqMJGED4fbLFwYzbBQQ== +"@arcblock/ws@1.17.23", "@arcblock/ws@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@arcblock/ws/-/ws-1.17.23.tgz#334b56335c9e70d3c9288d525f9cc9cec248ee69" + integrity sha512-6Lf5XIqfYuILDcXQHM9n0sGZo0mNPvYznpGWaksXiwRFd9PQKDPRXDJEWRgso0J+40hhwVdhtwSxiFdL1RxsCQ== dependencies: - "@arcblock/event-hub" "1.17.19" + "@arcblock/event-hub" "1.17.23" debug "^4.3.4" eventemitter3 "^4.0.7" lodash "^4.17.21" @@ -1350,13 +1355,20 @@ core-js-pure "^3.20.2" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.19.0" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz" integrity sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA== dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.19.0": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.4.tgz#a42f814502ee467d55b38dd1c256f53a7b885c78" + integrity sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.18.10", "@babel/template@^7.3.3": version "7.18.10" resolved "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz" @@ -1396,21 +1408,27 @@ resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@blocklet/meta@1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@blocklet/meta/-/meta-1.8.19.tgz" - integrity sha512-tV6EgoWmKzDcbuAHWawnypZH4+1wGEnHDDDmpoB/pkOvBK8Ea0rE2aDKBfN1uhQk/YP1Z6YRQWHfXVHIrGP2DQ== - dependencies: - "@abtnode/constant" "1.8.19" - "@abtnode/util" "1.8.19" - "@arcblock/did" "1.17.19" - "@arcblock/did-ext" "1.17.19" - "@arcblock/did-util" "1.17.19" - "@arcblock/jwt" "1.17.19" - "@ocap/asset" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" +"@blocklet/constant@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@blocklet/constant/-/constant-1.8.31.tgz#71eccb057b34d88f9745db1a2c08b36b439a1967" + integrity sha512-OWcxjhuBjjhlGmbWikV/Idntfz07/oW0tn8WgbgltiQ+EZjIofWZPJWT6wuVLF0C7f6/xw9h+VV8sHpsyXJ/ig== + +"@blocklet/meta@1.8.31": + version "1.8.31" + resolved "https://registry.yarnpkg.com/@blocklet/meta/-/meta-1.8.31.tgz#d43c4793218c6fb429daa5c05bce19206fdfd84f" + integrity sha512-9oLSAIL5v77CnLOjdnP0zNnmhxTElCfWl4Rs92RD3t4MTDLve+fuwCBS7o2CkfasNT8WQNcHhYzhMsyIojxcaw== + dependencies: + "@abtnode/constant" "1.8.31" + "@abtnode/util" "1.8.31" + "@arcblock/did" "1.17.23" + "@arcblock/did-ext" "1.17.23" + "@arcblock/did-util" "1.17.23" + "@arcblock/jwt" "1.17.23" + "@blocklet/constant" "1.8.31" + "@ocap/asset" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" ajv "^8.11.0" axios "^0.27.2" cjk-length "^1.0.0" @@ -1418,7 +1436,7 @@ fs-extra "^10.1.0" hosted-git-info "3.0.8" is-glob "^4.0.3" - joi "^17.6.0" + joi "17.6.3" joi-extension-semver "^5.0.0" js-yaml "^4.1.0" json-stable-stringify "^1.0.1" @@ -1429,41 +1447,42 @@ validate-npm-package-name "^3.0.0" "@blocklet/sdk@^1.8.19": - version "1.8.19" - resolved "https://registry.npmjs.org/@blocklet/sdk/-/sdk-1.8.19.tgz" - integrity sha512-1dc6CroB0EOibnvDQXJH5h2UhijYzqXAB3gyWh5AwP4JUlqT+vYeYGAJTzTxdnrxXNhSEY+vsxJHa2YOfcUmuw== - dependencies: - "@abtnode/client" "1.8.19" - "@abtnode/constant" "1.8.19" - "@arcblock/did-auth" "1.17.19" - "@arcblock/jwt" "1.17.19" - "@arcblock/ws" "1.17.19" - "@blocklet/meta" "1.8.19" - "@did-connect/authenticator" "^2.1.13" - "@did-connect/handler" "^2.1.13" - "@nedb/core" "^2.0.4" - "@ocap/mcrypto" "1.17.19" - "@ocap/wallet" "1.17.19" + version "1.8.31" + resolved "https://registry.yarnpkg.com/@blocklet/sdk/-/sdk-1.8.31.tgz#d1a6050c04575e8e87711e063414b09b9a2e1a07" + integrity sha512-A0mcLdFtS16pZzxAEonRQEDvwUrYAEAcQ4lXmSVIls6PN026IwYBIUNI5sY27FX0SbXh16ewet7AP4uRhAZ6+A== + dependencies: + "@abtnode/client" "1.8.31" + "@abtnode/constant" "1.8.31" + "@arcblock/did-auth" "1.17.23" + "@arcblock/jwt" "1.17.23" + "@arcblock/ws" "1.17.23" + "@blocklet/constant" "1.8.31" + "@blocklet/meta" "1.8.31" + "@did-connect/authenticator" "^2.1.23" + "@did-connect/handler" "^2.1.23" + "@nedb/core" "^2.0.5" + "@ocap/mcrypto" "1.17.23" + "@ocap/wallet" "1.17.23" axios "^0.27.2" fs-extra "^10.1.0" - joi "^17.6.0" + joi "17.6.3" json-stable-stringify "^1.0.1" lodash "^4.17.21" lru-cache "^6.0.0" url-join "^4.0.1" "@blocklet/ui-react@^2.4.24": - version "2.4.24" - resolved "https://registry.npmjs.org/@blocklet/ui-react/-/ui-react-2.4.24.tgz" - integrity sha512-kODFHmNL2VjiXgpeIVw8tNhhrQCkLDS5+y0Ixx25hTbH+Yw7LKgIHvRpfUXogZye3kKGC55pVTxTghC+a+IYAw== - dependencies: - "@arcblock/did-connect" "^2.4.24" - "@arcblock/ux" "^2.4.24" - "@emotion/react" "^11.10.0" - "@emotion/styled" "^11.10.0" + version "2.4.47" + resolved "https://registry.yarnpkg.com/@blocklet/ui-react/-/ui-react-2.4.47.tgz#9b6ca1dfd0dea7eaabf6143fe7482aedcc8ba5ee" + integrity sha512-eFjnPDHVAKaka8yrLtZkmbrLJzep4jZp/DBKXtBZvXyipZpL074ze1Pae0JFzReW2IYilA/8NEb//lsgISY/UQ== + dependencies: + "@arcblock/did-connect" "^2.4.47" + "@arcblock/ux" "^2.4.47" + "@emotion/react" "^11.10.4" + "@emotion/styled" "^11.10.4" "@iconify/iconify" "^2.2.1" - "@mui/material" "^5.10.0" - core-js "^3.24.1" + "@mui/material" "^5.10.8" + core-js "^3.25.5" react-error-boundary "^3.1.4" "@colors/colors@1.5.0": @@ -1610,55 +1629,55 @@ enabled "2.0.x" kuler "^2.0.0" -"@did-connect/authenticator@2.1.14", "@did-connect/authenticator@^2.1.13": - version "2.1.14" - resolved "https://registry.npmjs.org/@did-connect/authenticator/-/authenticator-2.1.14.tgz" - integrity sha512-wz0yFL0yAOpKen1iMEHiFtv5J4iUKN906ABfViN2wUdYvv/90YmMxWu7r0NR2wj5EBUdHLnsGy3DSJouxGbJTg== +"@did-connect/authenticator@2.1.24", "@did-connect/authenticator@^2.1.23": + version "2.1.24" + resolved "https://registry.yarnpkg.com/@did-connect/authenticator/-/authenticator-2.1.24.tgz#eed28c3ce83c2e0506bfa1b11ac7a17cbc70a31d" + integrity sha512-eoPxoddhRru/DanjuGAzx3k5rpgwdxGIPueMTOMZ9ZZ5/sf1ltZbqeDDL1bfi7qaTkWIotIFQFFBUXtyu8Vyuw== dependencies: - "@arcblock/did" "^1.17.19" - "@arcblock/jwt" "^1.17.19" - "@did-connect/types" "2.1.14" - "@ocap/util" "^1.17.19" - "@ocap/wallet" "^1.17.19" + "@arcblock/did" "^1.17.23" + "@arcblock/jwt" "^1.17.23" + "@did-connect/types" "2.1.24" + "@ocap/util" "^1.17.23" + "@ocap/wallet" "^1.17.23" debug "^4.3.4" lodash "^4.17.21" type-fest "^2.19.0" -"@did-connect/handler@^2.1.13": - version "2.1.14" - resolved "https://registry.npmjs.org/@did-connect/handler/-/handler-2.1.14.tgz" - integrity sha512-+B8D8fnhyP46lQQoybLL/6CuZgS0hgrK/sVDfJhKzLapElNJM6F2sj7Ll9qlVqEc//65hbEI75cofIMdoYXTqA== - dependencies: - "@arcblock/did" "^1.17.19" - "@arcblock/jwt" "^1.17.19" - "@arcblock/ws" "^1.17.19" - "@did-connect/authenticator" "2.1.14" - "@did-connect/storage" "2.1.14" - "@did-connect/types" "2.1.14" - "@ocap/mcrypto" "^1.17.19" - "@ocap/util" "^1.17.19" +"@did-connect/handler@^2.1.23": + version "2.1.24" + resolved "https://registry.yarnpkg.com/@did-connect/handler/-/handler-2.1.24.tgz#eac3e00db9f49ad5ddf4dc9b66769a1d047a09c9" + integrity sha512-9J1pkU7Gr02PZupH6QKgBlK5JGJN0vEAx/ldlqbfzR85lMozf7xMgPH9EdfOZus7CnWQWnVW59lpgJ1ygUjEPA== + dependencies: + "@arcblock/did" "^1.17.23" + "@arcblock/jwt" "^1.17.23" + "@arcblock/ws" "^1.17.23" + "@did-connect/authenticator" "2.1.24" + "@did-connect/storage" "2.1.24" + "@did-connect/types" "2.1.24" + "@ocap/mcrypto" "^1.17.23" + "@ocap/util" "^1.17.23" axios "^0.27.2" lodash "^4.17.21" object-hash "^3.0.0" p-wait-for "^3.2.0" - semver "^7.3.7" + semver "^7.3.8" type-fest "^2.19.0" -"@did-connect/storage@2.1.14": - version "2.1.14" - resolved "https://registry.npmjs.org/@did-connect/storage/-/storage-2.1.14.tgz" - integrity sha512-cuGUQT6HoUhImnkmkvRa87E/s5X0Z8WiaUWuo7b6DUWIv/x5Mk7N2mtbRpMv5tERdQx2uR1Bqu9Jr5cWYxQrJA== +"@did-connect/storage@2.1.24": + version "2.1.24" + resolved "https://registry.yarnpkg.com/@did-connect/storage/-/storage-2.1.24.tgz#a59716d3ce7779722cf13923dda7a029a211281f" + integrity sha512-pyxcgt+2+BFOWN5bIgb2LOorQzY5YhRIuB9/tT7mEeBu57EA5bhRXYR5cxhAA/RY9M1cvYKOZ4vCxFZ1M2CpKQ== dependencies: - "@did-connect/types" "2.1.14" + "@did-connect/types" "2.1.24" -"@did-connect/types@2.1.14": - version "2.1.14" - resolved "https://registry.npmjs.org/@did-connect/types/-/types-2.1.14.tgz" - integrity sha512-RVCC3WQgM3n/w2WF9wSC0Qn8Mzs89Kbe7uuD4Ge0piX/TtfNtCNOUM/DvW4vxiNQ7Eq9n9AkibHLrP5AaaKOOQ== +"@did-connect/types@2.1.24": + version "2.1.24" + resolved "https://registry.yarnpkg.com/@did-connect/types/-/types-2.1.24.tgz#bd4eb21d9c5ce56bf0f2ec74509dffd821c48ad6" + integrity sha512-8kklduaEH9+3y8F30KFhmxM0nz5+6ut9NT7j7vbbcXrngja+v/g+sfLaMeqI/1QJLWbpBM4hAQ8Ax7vyc+NLdQ== dependencies: - "@arcblock/validator" "^1.17.19" - "@ocap/mcrypto" "^1.17.19" - joi "^17.6.0" + "@arcblock/validator" "^1.17.23" + "@ocap/mcrypto" "^1.17.23" + joi "17.6.3" type-fest "^2.19.0" "@emotion/babel-plugin@^11.10.0": @@ -1707,7 +1726,7 @@ resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz" integrity sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA== -"@emotion/react@^11.10.0", "@emotion/react@^11.10.4": +"@emotion/react@^11.10.4": version "11.10.4" resolved "https://registry.npmjs.org/@emotion/react/-/react-11.10.4.tgz" integrity sha512-j0AkMpr6BL8gldJZ6XQsQ8DnS9TxEQu1R+OGmDZiWjBAJtCcbt0tS3I/YffoqHXxH6MjgI7KdMbYKw3MEiU9eA== @@ -1737,7 +1756,7 @@ resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.0.tgz" integrity sha512-OiTkRgpxescko+M51tZsMq7Puu/KP55wMT8BgpcXVG2hqXc0Vo0mfymJ/Uj24Hp0i083ji/o0aLddh08UEjq8w== -"@emotion/styled@^11.10.0", "@emotion/styled@^11.10.4": +"@emotion/styled@^11.10.4": version "11.10.4" resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.4.tgz" integrity sha512-pRl4R8Ez3UXvOPfc2bzIoV8u9P97UedgHS4FPX594ntwEuAMA114wlaHvOK24HB48uqfXiGlYIZYCxVJ1R1ttQ== @@ -1784,10 +1803,25 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@fontsource/lato@^4.5.9": - version "4.5.9" - resolved "https://registry.npmjs.org/@fontsource/lato/-/lato-4.5.9.tgz" - integrity sha512-VkDnHBbPee/KMAUuBwe3rEKRDECo1MsA+I+ucZNU6FYdHrsv+SKpYgNr7nk/OhoaGrn9PrpXcmcd9eoD4J3Y6Q== +"@eslint/eslintrc@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.3.3.tgz#2b044ab39fdfa75b4688184f9e573ce3c5b0ff95" + integrity sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.4.0" + globals "^13.15.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@fontsource/lato@^4.5.10": + version "4.5.10" + resolved "https://registry.yarnpkg.com/@fontsource/lato/-/lato-4.5.10.tgz#1ab3d33282e605886e4a8b4c32b1f230a4cb5ea6" + integrity sha512-2hYR6r661Cq9B8zugtu6yxuOKqrVhAgfOSaPSq8XoxbC4ebsl0KOTy/vPoP+9U7JuQVLfrmikirW4a9Z0nDUug== "@fontsource/ubuntu-mono@^4.5.11": version "4.5.11" @@ -1815,6 +1849,15 @@ debug "^4.1.1" minimatch "^3.0.4" +"@humanwhocodes/config-array@^0.11.6": + version "0.11.6" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.6.tgz#6a51d603a3aaf8d4cf45b42b3f2ac9318a4adc4b" + integrity sha512-jJr+hPTJYKyDILJfhNSHsjiwXYf26Flsz8DvNndOsHs5pwSnpGUEy8yzF0JYhCEvTDdV2vuOK5tt8BVhwO5/hg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.1" + debug "^4.1.1" + minimatch "^3.0.4" + "@humanwhocodes/gitignore-to-minimatch@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz" @@ -2122,81 +2165,81 @@ resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz" integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== -"@mui/base@5.0.0-alpha.96": - version "5.0.0-alpha.96" - resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.96.tgz" - integrity sha512-GZf2YguepLFMWGG8vQNLRl7FlXPDeyxQBYgrkHxwNJYeRw55rrGrJxHzL1iCbk71VZ2IIAIs5IAxNpyHK9iqPQ== +"@mui/base@5.0.0-alpha.102": + version "5.0.0-alpha.102" + resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-alpha.102.tgz#53b07d0b73d3afe1d2a3feb3b43c8188bb821796" + integrity sha512-5e/qAIP+DlkrZxIt/cwnDw/A3ii22WkoEoWKHyu4+oeGs3/1Flh7qLaN4h5EAIBB9TvTEZEUzvmsTInmIj6ghg== dependencies: - "@babel/runtime" "^7.18.9" + "@babel/runtime" "^7.19.0" "@emotion/is-prop-valid" "^1.2.0" "@mui/types" "^7.2.0" - "@mui/utils" "^5.10.3" + "@mui/utils" "^5.10.9" "@popperjs/core" "^2.11.6" clsx "^1.2.1" prop-types "^15.8.1" react-is "^18.2.0" -"@mui/core-downloads-tracker@^5.10.4": - version "5.10.4" - resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.10.4.tgz" - integrity sha512-VGekVa9dleJ+ii47+gXvKUV5a11T0nsjXN8bk5NqiJRQWRCAhbTHgsfZuctNcMeLW9FSf2gu6U0k2U6rhABKcA== +"@mui/core-downloads-tracker@^5.10.10": + version "5.10.10" + resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-5.10.10.tgz#a3e5d2f6e5146e9a85d48824c386a31be1746ba3" + integrity sha512-aDuE2PNEh+hAndxEWlZgq7uiFPZKJtnkPDX7v6kSCrMXA32ZaQ6rZi5olmC7DUHt/BaOSxb7N/im/ss0XBkDhA== -"@mui/icons-material@^5.8.4": - version "5.10.3" - resolved "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.10.3.tgz" - integrity sha512-o0kbUlsWCBtCE0wP33cGKbyryCh7kpm2EECYMPDmWrLhbA+HUODXIdhiTFS26szp2xXo9HY1lEx0ufeJ+tddYw== +"@mui/icons-material@^5.10.6": + version "5.10.9" + resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-5.10.9.tgz#f9522c49797caf30146acc576e37ecb4f95bbc38" + integrity sha512-sqClXdEM39WKQJOQ0ZCPTptaZgqwibhj2EFV9N0v7BU1PO8y4OcX/a2wIQHn4fNuDjIZktJIBrmU23h7aqlGgg== dependencies: - "@babel/runtime" "^7.18.9" + "@babel/runtime" "^7.19.0" -"@mui/material@^5.10.0", "@mui/material@^5.10.4": - version "5.10.4" - resolved "https://registry.npmjs.org/@mui/material/-/material-5.10.4.tgz" - integrity sha512-uwupjunU3p8XxZU4f2zF1GYlwB9GDxW1H05BMDPSh0u+37yLxuQDMMxwQQPUo9jSA5Y22/eR4Y71ScxKU89QHg== +"@mui/material@^5.10.4", "@mui/material@^5.10.8": + version "5.10.10" + resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.10.10.tgz#df780d933c0aa9d4a5272f32c9cc24bf1ea72cff" + integrity sha512-ioLvqY7VvcePz9dnEIRhpiVvtJmAFmvG6rtLXXzVdMmAVbSaelr5Io07mPz/mCyqE+Uv8/4EuJV276DWO7etzA== dependencies: - "@babel/runtime" "^7.18.9" - "@mui/base" "5.0.0-alpha.96" - "@mui/core-downloads-tracker" "^5.10.4" - "@mui/system" "^5.10.4" + "@babel/runtime" "^7.19.0" + "@mui/base" "5.0.0-alpha.102" + "@mui/core-downloads-tracker" "^5.10.10" + "@mui/system" "^5.10.10" "@mui/types" "^7.2.0" - "@mui/utils" "^5.10.3" + "@mui/utils" "^5.10.9" "@types/react-transition-group" "^4.4.5" clsx "^1.2.1" - csstype "^3.1.0" + csstype "^3.1.1" prop-types "^15.8.1" react-is "^18.2.0" react-transition-group "^4.4.5" -"@mui/private-theming@^5.10.3": - version "5.10.3" - resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.10.3.tgz" - integrity sha512-LCYIKlkGz2BTSng2BFzzwSJBRZbChIUri2x2Nh8ryk2B1Ho7zpvE7ex6y39LlStG2Frf92NFC/V4YQbmMAjD5A== +"@mui/private-theming@^5.10.9": + version "5.10.9" + resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.10.9.tgz#c427bfa736455703975cdb108dbde6a174ba7971" + integrity sha512-BN7/CnsVPVyBaQpDTij4uV2xGYHHHhOgpdxeYLlIu+TqnsVM7wUeF+37kXvHovxM6xmL5qoaVUD98gDC0IZnHg== dependencies: - "@babel/runtime" "^7.18.9" - "@mui/utils" "^5.10.3" + "@babel/runtime" "^7.19.0" + "@mui/utils" "^5.10.9" prop-types "^15.8.1" -"@mui/styled-engine@^5.10.4": - version "5.10.4" - resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.10.4.tgz" - integrity sha512-y29qlonPj4wndTjbePk9O6uWp/FBRNXjiMwI64oiYQ+v3E0EkLnADfDn49GAqOJAfN/r7nHbVZBlvLNIcMbgDg== +"@mui/styled-engine@^5.10.8": + version "5.10.8" + resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.10.8.tgz#2db411e4278f06f70ccb6b5cd56ace67109513f6" + integrity sha512-w+y8WI18EJV6zM/q41ug19cE70JTeO6sWFsQ7tgePQFpy6ToCVPh0YLrtqxUZXSoMStW5FMw0t9fHTFAqPbngw== dependencies: - "@babel/runtime" "^7.18.9" + "@babel/runtime" "^7.19.0" "@emotion/cache" "^11.10.3" - csstype "^3.1.0" + csstype "^3.1.1" prop-types "^15.8.1" -"@mui/system@^5.10.4": - version "5.10.4" - resolved "https://registry.npmjs.org/@mui/system/-/system-5.10.4.tgz" - integrity sha512-fE7LtYStPHPfq7EJXEVLQGvz23pS5YwSI7A4mWEFyyW21hHUh0c1opZXb7caHJsUTiBoC22W7R8GGfbVdSOnZA== +"@mui/system@^5.10.10": + version "5.10.10" + resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.10.10.tgz#fbc34f29a3b62268c3d2b2be92819a35fc52de90" + integrity sha512-TXwtKN0adKpBrZmO+eilQWoPf2veh050HLYrN78Kps9OhlvO70v/2Kya0+mORFhu9yhpAwjHXO8JII/R4a5ZLA== dependencies: - "@babel/runtime" "^7.18.9" - "@mui/private-theming" "^5.10.3" - "@mui/styled-engine" "^5.10.4" + "@babel/runtime" "^7.19.0" + "@mui/private-theming" "^5.10.9" + "@mui/styled-engine" "^5.10.8" "@mui/types" "^7.2.0" - "@mui/utils" "^5.10.3" + "@mui/utils" "^5.10.9" clsx "^1.2.1" - csstype "^3.1.0" + csstype "^3.1.1" prop-types "^15.8.1" "@mui/types@^7.2.0": @@ -2204,28 +2247,28 @@ resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.0.tgz" integrity sha512-lGXtFKe5lp3UxTBGqKI1l7G8sE2xBik8qCfrLHD5olwP/YU0/ReWoWT7Lp1//ri32dK39oPMrJN8TgbkCSbsNA== -"@mui/utils@^5.10.3": - version "5.10.3" - resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.10.3.tgz" - integrity sha512-4jXMDPfx6bpMVuheLaOpKTjpzw39ogAZLeaLj5+RJec3E37/hAZMYjURfblLfTWMMoGoqkY03mNsZaEwNobBow== +"@mui/utils@^5.10.9": + version "5.10.9" + resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.10.9.tgz#9dc455f9230f43eeb81d96a9a4bdb3855bb9ea39" + integrity sha512-2tdHWrq3+WCy+G6TIIaFx3cg7PorXZ71P375ExuX61od1NOAJP1mK90VxQ8N4aqnj2vmO3AQDkV4oV2Ktvt4bA== dependencies: - "@babel/runtime" "^7.18.9" + "@babel/runtime" "^7.19.0" "@types/prop-types" "^15.7.5" "@types/react-is" "^16.7.1 || ^17.0.0" prop-types "^15.8.1" react-is "^18.2.0" -"@nedb/binary-search-tree@2.0.4": - version "2.0.4" - resolved "https://registry.npmjs.org/@nedb/binary-search-tree/-/binary-search-tree-2.0.4.tgz" - integrity sha512-CqrOltK53ZR5jOBuZ7/KxtYO8QwR6tXojSEyw9Jmoq4ecZ//8S0iakwZCb7o6dCz5tGQnRDp8klNh11T8jJOxg== +"@nedb/binary-search-tree@2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nedb/binary-search-tree/-/binary-search-tree-2.0.5.tgz#17f2d6e30989aed11e713711a43dd7c8a8163db4" + integrity sha512-zjCn1xjlmlP51yKA9XEzxWtvaWieqe2j2G6ap2zxUF0VfJMrCo21WjYl0GJcX5sLiWkBr69AXJLQTWN2KGqaAA== -"@nedb/core@^2.0.4": - version "2.0.4" - resolved "https://registry.npmjs.org/@nedb/core/-/core-2.0.4.tgz" - integrity sha512-UlODy/I0WSgY5/eIjIRdopqgJKlUsUPHacxZqszRxRWxp1npi44yberP4cb8N4BmZP6nlTtSZaRpI+C9xX5jqg== +"@nedb/core@^2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nedb/core/-/core-2.0.5.tgz#9862d9c988c2fd54a8e7a63d83b1b457e606a23f" + integrity sha512-MOXAyUpGWHzD8+pT4gOXd1cZCoIFaWHtzC/NEUxA/xbN95tHVEXTyDFir4FmT+C4hG9UkE4xkEF3L016lzth4g== dependencies: - "@nedb/binary-search-tree" "2.0.4" + "@nedb/binary-search-tree" "2.0.5" async "^3.2.4" debug "^4.3.4" localforage "^1.10.0" @@ -2246,7 +2289,7 @@ resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.walk@^1.2.3": +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== @@ -2254,20 +2297,20 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@ocap/asset@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/asset/-/asset-1.17.19.tgz" - integrity sha512-uIIKt1StOqdMh73bxEThyCUUwp2C9bZTLZZEdKRTO/d24nEnibgRgC5DJSQRepAOKs1lA1Opgkdr2jbf6hU6Iw== - dependencies: - "@arcblock/did" "1.17.19" - "@arcblock/did-util" "1.17.19" - "@arcblock/validator" "1.17.19" - "@arcblock/vc" "1.17.19" - "@ocap/contract" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/types" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" +"@ocap/asset@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/asset/-/asset-1.17.23.tgz#ddbead09ff81a7334118a582a40cb926c250c585" + integrity sha512-2xv4VZgi9NhW9SHhAtUAZZWPj3X4wY+LQCtSVjjcXFUx+/fmuf+h9f79Xr2ZX2j83zfJmWKxWsg/IoLEwFMbtg== + dependencies: + "@arcblock/did" "1.17.23" + "@arcblock/did-util" "1.17.23" + "@arcblock/validator" "1.17.23" + "@arcblock/vc" "1.17.23" + "@ocap/contract" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/types" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" debug "^4.3.4" flat "^5.0.2" is-absolute-url "^3.0.3" @@ -2276,21 +2319,21 @@ mustache "^4.2.0" type-fest "^2.18.0" -"@ocap/client@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/client/-/client-1.17.19.tgz" - integrity sha512-lb3AYQ+Edel/5UCXYjFvlSeG/MSxFRUP2czZ8z9A1zwF/UdKzlvHTIedq3UDznUf5r9ef/umTIIMeaU+O1QawA== +"@ocap/client@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/client/-/client-1.17.23.tgz#1c7fe67f14d9ca953573b44b880b5269decec68c" + integrity sha512-XiLwaTF95OoTe2Agb9x0AhXxNq2a9pP7uu9TGvofeKWhYVjQ9gr3oaFsdTQaTnfKFV3v2gCioB3wpmsMSv3n8Q== dependencies: - "@arcblock/did" "1.17.19" - "@arcblock/did-util" "1.17.19" + "@arcblock/did" "1.17.23" + "@arcblock/did-util" "1.17.23" "@arcblock/sdk-util" "^0.32.0" - "@arcblock/ws" "1.17.19" - "@ocap/asset" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/message" "1.17.19" - "@ocap/proto" "1.17.19" - "@ocap/util" "1.17.19" - "@ocap/wallet" "1.17.19" + "@arcblock/ws" "1.17.23" + "@ocap/asset" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/message" "1.17.23" + "@ocap/proto" "1.17.23" + "@ocap/util" "1.17.23" + "@ocap/wallet" "1.17.23" blueimp-md5 "^2.19.0" debug "^4.3.4" is-absolute-url "^3.0.3" @@ -2299,24 +2342,24 @@ react-app-polyfill "^1.0.6" wolfy87-eventemitter "^5.2.9" -"@ocap/contract@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/contract/-/contract-1.17.19.tgz" - integrity sha512-11+BDCu99doviqbljRISLkGGywjIT/FP7KUcYBaIsv0Cb3R1iXbggdsygD/7SLlX0vj+Glzz7xAI3TtEaK4fKw== +"@ocap/contract@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/contract/-/contract-1.17.23.tgz#1d7f87e8889d5669cb2aeb9f6cbf15417ddcf777" + integrity sha512-YkTKDD/8zihabi/krndZgwuGnynPvuhl42t8fpVFdex4yG9HdVvhvdpExUHCL0o8FTJRxzUnMBl7vozCAYtGsA== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" debug "^4.3.4" esprima "^4.0.1" lodash "^4.17.21" -"@ocap/mcrypto@1.17.19", "@ocap/mcrypto@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/mcrypto/-/mcrypto-1.17.19.tgz" - integrity sha512-ziHbkRMkEuH1JldIB0w+98JxRZXmLan6KH8H3K1Z9my7ZT9hrEaOl96jT52v2Tdl1145HXQtb8UBszTaJcf/qA== +"@ocap/mcrypto@1.17.23", "@ocap/mcrypto@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/mcrypto/-/mcrypto-1.17.23.tgz#0b2689388010a44512b590815c5f37e1bfa8a89f" + integrity sha512-n+NChgBW5hZuYyjNuh9kR4NWbulgjYV80JkmqJlYWppviiIMuSPZsdVgLYgsiNqzuP3+U1+6uQPuatODe9w8dg== dependencies: - "@ocap/util" "1.17.19" + "@ocap/util" "1.17.23" bn.js "5.2.1" crypto-js "^4.1.1" elliptic "^6.5.4" @@ -2328,36 +2371,36 @@ tweetnacl "^1.0.3" type-fest "^2.18.0" -"@ocap/message@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/message/-/message-1.17.19.tgz" - integrity sha512-Txjo1xahi1QFOeCJwSD9b3ndDcWhpYB6lmgq1+JWMDX+PXeBtMmtqPn4e9/hXAhxQbrd71Zkx0w7/JdEb40szA== +"@ocap/message@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/message/-/message-1.17.23.tgz#c182427635cabf033ad12690f48cf49a2730fbcf" + integrity sha512-lYeARrTBz6KBO4vnaVJ+klXS8yFiSxhIwqsflz5FDWf6KxgbBHJE2cEly/wWgMSs4vEiuPQ82DXfAbRyIcMu/w== dependencies: - "@ocap/proto" "1.17.19" - "@ocap/util" "1.17.19" + "@ocap/proto" "1.17.23" + "@ocap/util" "1.17.23" debug "^4.3.4" google-protobuf "3.21.0" lodash "^4.17.21" -"@ocap/proto@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/proto/-/proto-1.17.19.tgz" - integrity sha512-LoHU1pHwmvzrkTJEGnC9swKJ5++mEQxpFrfI/tMpgGiuFsrdhy/uPEeR9wzAtMLxAkvv7FCWnkM2nCLhpCjiWQ== +"@ocap/proto@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/proto/-/proto-1.17.23.tgz#639e2f89e1633b33a09cd1b3003552df802d37fe" + integrity sha512-jCrht5tfUV4l3KOrnjdXa1hUaOSqW5Nyut0ew4upyBZsDEhajtCTfqa5q0vEji30gHhsFOPd68H+or3zREvSDg== dependencies: debug "^4.3.4" lodash "^4.17.21" -"@ocap/types@1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/types/-/types-1.17.19.tgz" - integrity sha512-Cxr1ertDjStjcApgQINuKzppTRxzrglQGXHSTVJNqvGPufDFsHBtonP9KuqmNuw5jC1cC/ENuWGC+4b3eRnLZQ== +"@ocap/types@1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/types/-/types-1.17.23.tgz#e92753f63d65872d15cfcbfc2f7f43f9300fec2b" + integrity sha512-bVHIvHCtsDgz9maZebeImPAfyWZGLa6EdJFJp12rGnrpyCkZpdH/UoQ1EmuEiCb8jWAebpkM3041oZU5ULqnSA== dependencies: google-protobuf "3.21.0" -"@ocap/util@1.17.19", "@ocap/util@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/util/-/util-1.17.19.tgz" - integrity sha512-MH73osqk4Dz23JJXQqx+bZbKp5AjsqvSudBE2jMxWKOXfOGaaxF2b3jybwy3QfWDaVV9AEGgCbVpyf/ioImb6w== +"@ocap/util@1.17.23", "@ocap/util@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/util/-/util-1.17.23.tgz#ca9f05aa36957c13105fb58a161a3af9380e5956" + integrity sha512-0bg9wORzGBltdALqcIJgdmGVaZZI1zclA5NpRcQAkzdlM3VIEDSRMDDTtW+usUBvWkocjR41PnOb6A98JwxsTQ== dependencies: base64-url "^2.3.3" bn.js "5.2.1" @@ -2366,14 +2409,14 @@ type-fest "^2.18.0" utf8 "^3.0.0" -"@ocap/wallet@1.17.19", "@ocap/wallet@^1.17.19": - version "1.17.19" - resolved "https://registry.npmjs.org/@ocap/wallet/-/wallet-1.17.19.tgz" - integrity sha512-nqvvF+NVyoY3BLPSsxWuruidIn/pbQhTzN0HZmoFdZlil15gTupMl/H0Im+nYcyOyKyx3K+r5ggtoGzEev0zHQ== +"@ocap/wallet@1.17.23", "@ocap/wallet@^1.17.23": + version "1.17.23" + resolved "https://registry.yarnpkg.com/@ocap/wallet/-/wallet-1.17.23.tgz#711d9360418eca0707ae102a791811ed513b58f8" + integrity sha512-hIoHBdUhdh+vDV6vG2expsAxBYOiA7GLvSHrDVQyUB5xcb2d2dXoUJtFhU0bVHVgS+dn6VK6zePKbuQMwX57KQ== dependencies: - "@arcblock/did" "1.17.19" - "@ocap/mcrypto" "1.17.19" - "@ocap/util" "1.17.19" + "@arcblock/did" "1.17.23" + "@ocap/mcrypto" "1.17.23" + "@ocap/util" "1.17.23" "@pmmmwh/react-refresh-webpack-plugin@^0.5.3": version "0.5.7" @@ -2410,6 +2453,11 @@ resolved "https://registry.npmjs.org/@react-dnd/shallowequal/-/shallowequal-2.0.0.tgz" integrity sha512-Pc/AFTdwZwEKJxFJvlxrSmGe/di+aAOBn60sremrpLo6VI/6cmiUYNNwlI5KNYttg7uypzA3ILPMPgxB2GYZEg== +"@remix-run/router@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@remix-run/router/-/router-1.0.2.tgz#1c17eadb2fa77f80a796ad5ea9bf108e6993ef06" + integrity sha512-GRSOFhJzjGN+d4sKHTMSvNeUPoZiDHWmRnXfzaxrqe7dE/Nzlc8BiMSJdLDESZlndM7jIUrZ/F4yWqVYlI0rwQ== + "@rollup/plugin-babel@^5.2.0": version "5.3.1" resolved "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz" @@ -2452,6 +2500,38 @@ resolved "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.1.4.tgz" integrity sha512-LwzQKA4vzIct1zNZzBmRKI9QuNpLgTQMEjsQLf3BXuGYb3QPTP4Yjf6mkdX+X1mYttZ808QpOwAzZjv28kq7DA== +"@sentry/browser@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.16.0.tgz#afd2bac91857d2359272a0d9d2b1ee5ca7d69828" + integrity sha512-tJ063zvoF8Raw7mzQEXupOFPSN6v36WIbsDVGeFdToPCwViaBuATaxvWCrudGzsnBkMyItmTLJkzn9SEIXUOiw== + dependencies: + "@sentry/core" "7.16.0" + "@sentry/types" "7.16.0" + "@sentry/utils" "7.16.0" + tslib "^1.9.3" + +"@sentry/core@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.16.0.tgz#60f9b54ef2ec524176b329e1d15be39c36da5953" + integrity sha512-vq6H1b/IPTvzDD9coQ3wIudvSjkAYuUlXb1dv69dRlq4v3st9dcKBps1Zf0lQ1i4TVlDLoe1iGMmNFglMF1Q5w== + dependencies: + "@sentry/types" "7.16.0" + "@sentry/utils" "7.16.0" + tslib "^1.9.3" + +"@sentry/types@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.16.0.tgz#79c06ada153a84feb949fa49b1c9d15f91decd79" + integrity sha512-i6D+OK6d0l/k+VQvRp/Pt21WkDEgVBUIZq+sOkEZJczbcfexVdXKeXXoYTD2vYuFq8Yy28fzlsZaKI+NoH94yQ== + +"@sentry/utils@7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.16.0.tgz#b832520c661d4435808969ee04814ff8e20497b1" + integrity sha512-3Zh1txg7IRp4kZAdG27YF7K6lD1IZyuAo9KjoPg1Xzqa4DOZyASJuEkbf+rK2a9T4HrtVHHXJUsNbKg8WM3VHg== + dependencies: + "@sentry/types" "7.16.0" + tslib "^1.9.3" + "@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz" @@ -2768,6 +2848,13 @@ "@types/qs" "*" "@types/serve-static" "*" +"@types/fs-extra@^9.0.13": + version "9.0.13" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45" + integrity sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA== + dependencies: + "@types/node" "*" + "@types/graceful-fs@^4.1.2": version "4.1.5" resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz" @@ -3417,7 +3504,7 @@ ansi-styles@^6.0.0: resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz" integrity sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg== -any-promise@^1.1.0, any-promise@~1.3.0: +any-promise@^1.0.0, any-promise@^1.1.0, any-promise@~1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz" integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== @@ -3884,6 +3971,24 @@ body-parser@1.20.0: type-is "~1.6.18" unpipe "1.0.0" +body-parser@1.20.1: + version "1.20.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" + integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== + dependencies: + bytes "3.1.2" + content-type "~1.0.4" + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" + iconv-lite "0.4.24" + on-finished "2.4.1" + qs "6.11.0" + raw-body "2.5.1" + type-is "~1.6.18" + unpipe "1.0.0" + bonjour-service@^1.0.11: version "1.0.14" resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz" @@ -4522,11 +4627,16 @@ core-js-pure@^3.20.2, core-js-pure@^3.8.1: resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.1.tgz" integrity sha512-7Fr74bliUDdeJCBMxkkIuQ4xfxn/SwrVg+HkJUAoNEXVqYLv55l6Af0dJ5Lq2YBUW9yKqSkLXaS5SYPK6MGa/A== -core-js@^3.19.2, core-js@^3.24.1, core-js@^3.5.0: +core-js@^3.19.2, core-js@^3.5.0: version "3.25.1" resolved "https://registry.npmjs.org/core-js/-/core-js-3.25.1.tgz" integrity sha512-sr0FY4lnO1hkQ4gLDr24K0DGnweGO1QwSj5BpfQjpSJPdqWalja4cTps29Y/PJVG/P7FYlPDkH3hO+Tr0CvDgQ== +core-js@^3.25.5: + version "3.26.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.26.0.tgz#a516db0ed0811be10eac5d94f3b8463d03faccfe" + integrity sha512-+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw== + core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" @@ -4821,11 +4931,16 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^3.0.2, csstype@^3.0.6, csstype@^3.1.0: +csstype@^3.0.2, csstype@^3.0.6: version "3.1.0" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz" integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA== +csstype@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" + integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== + cyclist@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz" @@ -4857,10 +4972,10 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" -dayjs@^1.11.4: - version "1.11.5" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.5.tgz" - integrity sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA== +dayjs@^1.11.5: + version "1.11.6" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.6.tgz#2e79a226314ec3ec904e3ee1dd5a4f5e5b1c7afb" + integrity sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ== debug@*, debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" @@ -5777,7 +5892,52 @@ eslint@^6.8.0: text-table "^0.2.0" v8-compile-cache "^2.0.3" -eslint@^8.23.0, eslint@^8.3.0: +eslint@^8.23.0: + version "8.26.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.26.0.tgz#2bcc8836e6c424c4ac26a5674a70d44d84f2181d" + integrity sha512-kzJkpaw1Bfwheq4VXUezFriD1GxszX6dUekM7Z3aC2o4hju+tsR/XyTC3RcoSD7jmy9VkPU3+N6YjVU2e96Oyg== + dependencies: + "@eslint/eslintrc" "^1.3.3" + "@humanwhocodes/config-array" "^0.11.6" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.3.2" + doctrine "^3.0.0" + escape-string-regexp "^4.0.0" + eslint-scope "^7.1.1" + eslint-utils "^3.0.0" + eslint-visitor-keys "^3.3.0" + espree "^9.4.0" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + find-up "^5.0.0" + glob-parent "^6.0.2" + globals "^13.15.0" + grapheme-splitter "^1.0.4" + ignore "^5.2.0" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + is-path-inside "^3.0.3" + js-sdsl "^4.1.4" + js-yaml "^4.1.0" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.1" + regexpp "^3.2.0" + strip-ansi "^6.0.1" + strip-json-comments "^3.1.0" + text-table "^0.2.0" + +eslint@^8.3.0: version "8.23.0" resolved "https://registry.npmjs.org/eslint/-/eslint-8.23.0.tgz" integrity sha512-pBG/XOn0MsJcKcTRLr27S5HpzQo4kLr+HjLQIyK4EiCsijDl/TB+h5uEuJU6bQ8Edvwz1XWOjpaP2qgnXGpTcA== @@ -5948,7 +6108,7 @@ express-history-api-fallback@^2.2.1: resolved "https://registry.npmjs.org/express-history-api-fallback/-/express-history-api-fallback-2.2.1.tgz" integrity sha512-swxwm3aP8vrOOvlzOdZvHlSZtJGwHKaY94J6AkrAgCTmcbko3IRwbkhLv2wKV1WeZhjxX58aLMpP3atDBnKuZg== -express@^4.17.3, express@^4.18.1: +express@^4.17.3: version "4.18.1" resolved "https://registry.npmjs.org/express/-/express-4.18.1.tgz" integrity sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q== @@ -5985,6 +6145,43 @@ express@^4.17.3, express@^4.18.1: utils-merge "1.0.1" vary "~1.1.2" +express@^4.18.1: + version "4.18.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" + integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.1" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.5.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.2.0" + fresh "0.5.2" + http-errors "2.0.0" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.7" + qs "6.11.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.18.0" + serve-static "1.15.0" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + ext-list@^2.0.0: version "2.2.2" resolved "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz" @@ -6334,7 +6531,7 @@ form-data@^3.0.0: form-data@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" @@ -6428,6 +6625,11 @@ functions-have-names@^1.2.2, functions-have-names@^1.2.3: resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== +gar@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/gar/-/gar-1.0.4.tgz#f777bc7db425c0572fdeb52676172ca1ae9888b8" + integrity sha512-w4n9cPWyP7aHxKxYHFQMegj7WIAsL/YX/C4Bs5Rr8s1H9M1rNtRWRsw+ovYMkXDQ5S4ZbYHsHAPmevPjPgw44w== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" @@ -6438,6 +6640,14 @@ get-caller-file@^2.0.5: resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-folder-size@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-folder-size/-/get-folder-size-2.0.1.tgz#3fe0524dd3bad05257ef1311331417bcd020a497" + integrity sha512-+CEb+GDCM7tkOS2wdMKTn9vU7DgnKUTuDlehkNJKNSovdCOVxs14OfKCk4cvSaR3za4gj+OBdl9opPN9xrJ0zA== + dependencies: + gar "^1.0.4" + tiny-each-async "2.0.3" + get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz" @@ -6755,13 +6965,6 @@ highlight.js@^11.6.0: resolved "https://registry.npmjs.org/highlight.js/-/highlight.js-11.6.0.tgz" integrity sha512-ig1eqDzJaB0pqEvlPVIpSSyMaO92bH1N2rJpLMN/nX396wTpDA4Eq0uK+7I/2XG17pFaaKE0kjV/XPeGt7Evjw== -history@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/history/-/history-5.3.0.tgz" - integrity sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ== - dependencies: - "@babel/runtime" "^7.7.6" - hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz" @@ -6805,6 +7008,11 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" +hpagent@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hpagent/-/hpagent-1.1.0.tgz#9ff305d6716652bbfe9e300d1865d2c51f284f47" + integrity sha512-bgJcBmNTZaJO03xtXOTNfoFEf/3VwoZ/gJ2O4ekTCZu4LSFtfzQFrJ0kjq8ZSS0+IdghXqQIiDUnpp0eUR9IJg== + html-encoding-sniffer@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz" @@ -7309,6 +7517,11 @@ is-object@^1.0.1: resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz" integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + is-plain-obj@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz" @@ -8006,6 +8219,17 @@ joi-extension-semver@^5.0.0: dependencies: semver "^6.1.1" +joi@17.6.3: + version "17.6.3" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.3.tgz#b8e9e143f0188884563e6de50f8b23ddcd3cb2f5" + integrity sha512-YlQsIaS9MHYekzf1Qe11LjTkNzx9qhYluK3172z38RxYoAUf82XMX1p1DG1H4Wtk2ED/vPdSn9OggqtDu+aTow== + 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" + joi@^17.6.0: version "17.6.0" resolved "https://registry.npmjs.org/joi/-/joi-17.6.0.tgz" @@ -8022,6 +8246,11 @@ js-cookie@^2.2.1: resolved "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz" integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ== +js-sdsl@^4.1.4: + version "4.1.5" + resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.1.5.tgz#1ff1645e6b4d1b028cd3f862db88c9d887f26e2a" + integrity sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q== + js-sha3@^0.8.0: version "0.8.0" resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz" @@ -8784,6 +9013,15 @@ mute-stream@0.0.8: resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== +mz@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + nano-css@^5.2.1, nano-css@^5.3.1: version "5.3.5" resolved "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz" @@ -8859,14 +9097,14 @@ node-releases@^2.0.6: integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== nodemon@^2.0.19: - version "2.0.19" - resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.19.tgz" - integrity sha512-4pv1f2bMDj0Eeg/MhGqxrtveeQ5/G/UVe9iO6uTZzjnRluSA4PVWf8CW99LUPwGB3eNIA7zUFoP77YuI7hOc0A== + version "2.0.20" + resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.20.tgz#e3537de768a492e8d74da5c5813cb0c7486fc701" + integrity sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw== dependencies: chokidar "^3.5.2" debug "^3.2.7" ignore-by-default "^1.0.1" - minimatch "^3.0.4" + minimatch "^3.1.2" pstree.remy "^1.1.8" semver "^5.7.1" simple-update-notifier "^1.0.7" @@ -10176,6 +10414,13 @@ qs@6.10.3: dependencies: side-channel "^1.0.4" +qs@6.11.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + query-string@^5.0.1: version "5.1.1" resolved "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz" @@ -10358,6 +10603,11 @@ react-fast-compare@^3.1.1: resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz" integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== +react-ga@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/react-ga/-/react-ga-3.3.1.tgz#d8e1f4e05ec55ed6ff944dcb14b99011dfaf9504" + integrity sha512-4Vc0W5EvXAXUN/wWyxvsAKDLLgtJ3oLmhYYssx+YzphJpejtOst6cbIHCIyF50Fdxuf5DDKqRYny24yJ2y7GFQ== + react-helmet@^6.1.0: version "6.1.0" resolved "https://registry.npmjs.org/react-helmet/-/react-helmet-6.1.0.tgz" @@ -10416,20 +10666,20 @@ react-refresh@^0.11.0: resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== -react-router-dom@^6.3.0: - version "6.3.0" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.3.0.tgz" - integrity sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw== +react-router-dom@^6.3.0, react-router-dom@^6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.4.2.tgz#115b37d501d6d8ac870683694978c51c43e6c0d2" + integrity sha512-yM1kjoTkpfjgczPrcyWrp+OuQMyB1WleICiiGfstnQYo/S8hPEEnVjr/RdmlH6yKK4Tnj1UGXFSa7uwAtmDoLQ== dependencies: - history "^5.2.0" - react-router "6.3.0" + "@remix-run/router" "1.0.2" + react-router "6.4.2" -react-router@6.3.0: - version "6.3.0" - resolved "https://registry.npmjs.org/react-router/-/react-router-6.3.0.tgz" - integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== +react-router@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.4.2.tgz#300628ee9ed81b8ef1597b5cb98b474efe9779b8" + integrity sha512-Rb0BAX9KHhVzT1OKhMvCDMw776aTYM0DtkxqUBP8dNBom3mPXlfNs76JNGK8wKJ1IZEY1+WGj+cvZxHVk/GiKw== dependencies: - history "^5.2.0" + "@remix-run/router" "1.0.2" react-scripts@5.0.0: version "5.0.0" @@ -10610,6 +10860,13 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" +read-last-lines@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/read-last-lines/-/read-last-lines-1.8.0.tgz#4f94d4345ece7b8083ebb71c5fcdf60bd7afb9cc" + integrity sha512-oPL0cnZkhsO2xF7DBrdzVhXSNajPP5TzzCim/2IAjeGb17ArLLTRriI/ceV6Rook3L27mvbrOvLlf9xYYnaftQ== + dependencies: + mz "^2.7.0" + read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" @@ -11139,6 +11396,13 @@ semver@^7.3.2, semver@^7.3.5, semver@^7.3.7: dependencies: lru-cache "^6.0.0" +semver@^7.3.8: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== + dependencies: + lru-cache "^6.0.0" + semver@~7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz" @@ -11901,6 +12165,11 @@ table@^5.2.3: slice-ansi "^2.1.0" string-width "^3.0.0" +tail@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/tail/-/tail-2.2.4.tgz#90dd4c5a174a3fa39dcb65a1df1950a4a0093a41" + integrity sha512-PX8klSxW1u3SdgDrDeewh5GNE+hkJ4h02JvHfV6YrHqWOVJ88nUdSQqtsUf/gWhgZlPAws3fiZ+F1f8euspcuQ== + tailwindcss@^3.0.2: version "3.1.8" resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz" @@ -12015,6 +12284,20 @@ text-table@^0.2.0: resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + throat@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz" @@ -12074,6 +12357,11 @@ timed-out@^4.0.1: resolved "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz" integrity sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA== +tiny-each-async@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/tiny-each-async/-/tiny-each-async-2.0.3.tgz#8ebbbfd6d6295f1370003fbb37162afe5a0a51d1" + integrity sha512-5ROII7nElnAirvFn8g7H7MtpfV1daMcyfTGQwsn/x2VtyV+VPiO5CjReCJtWLvoKTDEDmZocf3cNPraiMnBXLA== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" @@ -12220,7 +12508,7 @@ tsconfig-paths@^3.14.1: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1, tslib@^1.9.0: +tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -12809,9 +13097,9 @@ winston-transport@^4.4.0, winston-transport@^4.5.0: readable-stream "^3.6.0" triple-beam "^1.3.0" -winston@^3.8.1: +winston@^3.8.2: version "3.8.2" - resolved "https://registry.npmjs.org/winston/-/winston-3.8.2.tgz" + resolved "https://registry.yarnpkg.com/winston/-/winston-3.8.2.tgz#56e16b34022eb4cff2638196d9646d7430fdad50" integrity sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew== dependencies: "@colors/colors" "1.5.0"