pull/5370/head
filip mertens 2 years ago
parent 6e8b64d80b
commit d4fd29b8dc
  1. 17
      apps/remix-ide/src/app/plugins/parser/services/code-parser-compiler.ts
  2. 1
      apps/remix-ide/webpack.config.js
  3. 2
      libs/remix-ui/editor/src/index.ts
  4. 4
      libs/remix-ui/editor/src/lib/actions/editor.ts
  5. 44
      libs/remix-ui/editor/src/lib/providers/completion/completionGlobals.ts
  6. 10
      libs/remix-ui/editor/src/lib/providers/completionProvider.ts
  7. 6
      libs/remix-ui/editor/src/lib/providers/hoverProvider.ts
  8. 30
      libs/remix-ui/editor/src/lib/remix-ui-editor.tsx
  9. 2
      package.json
  10. 398
      yarn.lock

@ -9,11 +9,18 @@ import { sourceMappingDecoder } from '@remix-project/remix-debug'
import { CompilerRetriggerMode, CompilationSourceCode } from '@remix-project/remix-solidity'; import { CompilerRetriggerMode, CompilationSourceCode } from '@remix-project/remix-solidity';
import { findLinesInStringWithMatch, SearchResultLine } from '@remix-ui/search' import { findLinesInStringWithMatch, SearchResultLine } from '@remix-ui/search'
import { lastCompilationResult } from '@remixproject/plugin-api'; import { lastCompilationResult } from '@remixproject/plugin-api';
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
enum MarkerSeverity {
Hint = 1,
Info = 2,
Warning = 4,
Error = 8
}
type errorMarker = { type errorMarker = {
message: string message: string
severity: monaco.MarkerSeverity severity: monacoTypes.MarkerSeverity
position: { position: {
start: { start: {
line: number line: number
@ -196,8 +203,8 @@ export default class CodeParserCompiler {
const decorator: fileDecoration = { const decorator: fileDecoration = {
path: fileTarget.file, path: fileTarget.file,
isDirectory: false, isDirectory: false,
fileStateType: errors[0].severity == monaco.MarkerSeverity.Error ? fileDecorationType.Error : fileDecorationType.Warning, fileStateType: errors[0].severity == MarkerSeverity.Error ? fileDecorationType.Error : fileDecorationType.Warning,
fileStateLabelClass: errors[0].severity == monaco.MarkerSeverity.Error ? 'text-danger' : 'text-warning', fileStateLabelClass: errors[0].severity == MarkerSeverity.Error ? 'text-danger' : 'text-warning',
fileStateIconClass: '', fileStateIconClass: '',
fileStateIcon: '', fileStateIcon: '',
text: errors.length.toString(), text: errors.length.toString(),
@ -230,7 +237,7 @@ export default class CodeParserCompiler {
async createErrorMarker(error: any, filePath: string, lineColumn): Promise<errorMarker> { async createErrorMarker(error: any, filePath: string, lineColumn): Promise<errorMarker> {
return { return {
message: error.formattedMessage, message: error.formattedMessage,
severity: error.severity === 'error' ? monaco.MarkerSeverity.Error : monaco.MarkerSeverity.Warning, severity: error.severity === 'error' ? MarkerSeverity.Error : MarkerSeverity.Warning,
position: { position: {
start: { start: {
line: ((lineColumn.start && lineColumn.start.line) || 0) + 1, line: ((lineColumn.start && lineColumn.start.line) || 0) + 1,

@ -90,7 +90,6 @@ module.exports = composePlugins(withNx(), withReact(), (config) => {
config.ignoreWarnings = [/Failed to parse source map/] // ignore source-map-loader warnings config.ignoreWarnings = [/Failed to parse source map/] // ignore source-map-loader warnings
// set minimizer // set minimizer
config.optimization.minimizer = [ config.optimization.minimizer = [
new TerserPlugin({ new TerserPlugin({

@ -1,2 +1,2 @@
export * from './lib/remix-ui-editor' export * from './lib/remix-ui-editor'
export { default as monaco } from './types/monaco' export { default as monacoTypes } from './types/monaco'

@ -1,5 +1,5 @@
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
export interface Action { export interface Action {
type: string; type: string;
payload: Record<string, any> payload: Record<string, any>
@ -58,7 +58,7 @@ export const reducerActions = (models = initialState, action: Action) => {
} }
case 'REVEAL_RANGE': { case 'REVEAL_RANGE': {
if (!editor) return models if (!editor) return models
const range: monaco.IRange = { const range: monacoTypes.IRange = {
startLineNumber: action.payload.startLineNumber + 1, startLineNumber: action.payload.startLineNumber + 1,
startColumn: action.payload.startColumn, startColumn: action.payload.startColumn,
endLineNumber: action.payload.endLineNumber + 1, endLineNumber: action.payload.endLineNumber + 1,

@ -1,5 +1,5 @@
import path from "path"; import path from "path";
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
type CodeParserImportsData = { type CodeParserImportsData = {
files?: string[], files?: string[],
@ -7,7 +7,7 @@ type CodeParserImportsData = {
packages?: string[], packages?: string[],
} }
export function getStringCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getStringCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: 'concatenate an arbitrary number of string values', detail: 'concatenate an arbitrary number of string values',
@ -20,7 +20,7 @@ export function getStringCompletionItems(range: monaco.IRange, monaco): monaco.l
] ]
} }
export function getBytesCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getBytesCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: 'concatenate an arbitrary number of values', detail: 'concatenate an arbitrary number of values',
@ -34,7 +34,7 @@ export function getBytesCompletionItems(range: monaco.IRange, monaco): monaco.la
} }
export function getBlockCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getBlockCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: '(address): Current block miner’s address', detail: '(address): Current block miner’s address',
@ -96,7 +96,7 @@ export function getBlockCompletionItems(range: monaco.IRange, monaco): monaco.la
]; ];
} }
export function getCompletionSnippets(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getCompletionSnippets(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
label: 'contract', label: 'contract',
@ -192,7 +192,7 @@ export function getCompletionSnippets(range: monaco.IRange, monaco): monaco.lang
] ]
} }
export function getTxCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getTxCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: '(uint): gas price of the transaction', detail: '(uint): gas price of the transaction',
@ -211,7 +211,7 @@ export function getTxCompletionItems(range: monaco.IRange, monaco): monaco.langu
]; ];
} }
export function getMsgCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getMsgCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: '(bytes): complete calldata', detail: '(bytes): complete calldata',
@ -251,7 +251,7 @@ export function getMsgCompletionItems(range: monaco.IRange, monaco): monaco.lang
]; ];
} }
export function getAbiCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getAbiCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: 'encode(..) returs (bytes): ABI-encodes the given arguments', detail: 'encode(..) returs (bytes): ABI-encodes the given arguments',
@ -297,7 +297,7 @@ export function getAbiCompletionItems(range: monaco.IRange, monaco): monaco.lang
} }
export function GetCompletionTypes(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function GetCompletionTypes(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
const completionItems = []; const completionItems = [];
const types = ['address', 'string', 'bytes', 'byte', 'int', 'uint', 'bool', 'hash']; const types = ['address', 'string', 'bytes', 'byte', 'int', 'uint', 'bool', 'hash'];
for (let index = 8; index <= 256; index += 8) { for (let index = 8; index <= 256; index += 8) {
@ -313,8 +313,8 @@ export function GetCompletionTypes(range: monaco.IRange, monaco): monaco.languag
return completionItems; return completionItems;
} }
function CreateCompletionItem(label: string, kind: monaco.languages.CompletionItemKind, detail: string, range: monaco.IRange) { function CreateCompletionItem(label: string, kind: monacoTypes.languages.CompletionItemKind, detail: string, range: monacoTypes.IRange) {
const completionItem: monaco.languages.CompletionItem = { const completionItem: monacoTypes.languages.CompletionItem = {
label, label,
kind, kind,
detail, detail,
@ -326,7 +326,7 @@ function CreateCompletionItem(label: string, kind: monaco.languages.CompletionIt
return completionItem; return completionItem;
} }
export function GetCompletionKeywords(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function GetCompletionKeywords(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
const completionItems = []; const completionItems = [];
const keywords = ['modifier', 'mapping', 'break', 'continue', 'delete', 'else', 'for', const keywords = ['modifier', 'mapping', 'break', 'continue', 'delete', 'else', 'for',
'after', 'promise', 'alias', 'apply', 'auto', 'copyof', 'default', 'define', 'final', 'implements', 'after', 'promise', 'alias', 'apply', 'auto', 'copyof', 'default', 'define', 'final', 'implements',
@ -336,7 +336,7 @@ export function GetCompletionKeywords(range: monaco.IRange, monaco): monaco.lang
'private', 'public', 'external', 'internal', 'payable', 'nonpayable', 'view', 'pure', 'case', 'do', 'else', 'finally', 'private', 'public', 'external', 'internal', 'payable', 'nonpayable', 'view', 'pure', 'case', 'do', 'else', 'finally',
'in', 'instanceof', 'return', 'throw', 'try', 'catch', 'typeof', 'yield', 'void', 'virtual', 'override']; 'in', 'instanceof', 'return', 'throw', 'try', 'catch', 'typeof', 'yield', 'void', 'virtual', 'override'];
keywords.forEach(unit => { keywords.forEach(unit => {
const completionItem: monaco.languages.CompletionItem = { const completionItem: monacoTypes.languages.CompletionItem = {
label: unit, label: unit,
kind: monaco.languages.CompletionItemKind.Keyword, kind: monaco.languages.CompletionItemKind.Keyword,
detail: unit + ' keyword', detail: unit + ' keyword',
@ -365,7 +365,7 @@ export function GetCompletionKeywords(range: monaco.IRange, monaco): monaco.lang
} }
export function GeCompletionUnits(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function GeCompletionUnits(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
const completionItems = []; const completionItems = [];
const etherUnits = ['wei', 'gwei', 'finney', 'szabo', 'ether']; const etherUnits = ['wei', 'gwei', 'finney', 'szabo', 'ether'];
etherUnits.forEach(unit => { etherUnits.forEach(unit => {
@ -389,10 +389,10 @@ export function GeCompletionUnits(range: monaco.IRange, monaco): monaco.language
return completionItems; return completionItems;
} }
export function GetImports(range: monaco.IRange export function GetImports(range: monacoTypes.IRange
, monaco, data: CodeParserImportsData , monaco, data: CodeParserImportsData
, word: string , word: string
): monaco.languages.CompletionItem[] { ): monacoTypes.languages.CompletionItem[] {
let list = [] let list = []
if (!word.startsWith('@')) { if (!word.startsWith('@')) {
word = word.replace('"', ''); word = word.replace('"', '');
@ -472,7 +472,7 @@ export function GetImports(range: monaco.IRange
return list; return list;
}; };
export function GetGlobalVariable(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function GetGlobalVariable(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: 'Current block', detail: 'Current block',
@ -519,7 +519,7 @@ export function GetGlobalVariable(range: monaco.IRange, monaco): monaco.language
]; ];
} }
export function GetGlobalFunctions(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function GetGlobalFunctions(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: 'assert(bool condition): throws if the condition is not met - to be used for internal errors.', detail: 'assert(bool condition): throws if the condition is not met - to be used for internal errors.',
@ -643,7 +643,7 @@ export function GetGlobalFunctions(range: monaco.IRange, monaco): monaco.languag
]; ];
} }
export function getContextualAutoCompleteByGlobalVariable(word: string, range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getContextualAutoCompleteByGlobalVariable(word: string, range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
if (word === 'block') { if (word === 'block') {
return getBlockCompletionItems(range, monaco); return getBlockCompletionItems(range, monaco);
} }
@ -668,7 +668,7 @@ export function getContextualAutoCompleteByGlobalVariable(word: string, range: m
return null; return null;
} }
export function getArrayCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getArrayCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: '', detail: '',
@ -705,7 +705,7 @@ export function getArrayCompletionItems(range: monaco.IRange, monaco): monaco.la
] ]
} }
export function getAddressCompletionItems(range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getAddressCompletionItems(range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
return [ return [
{ {
detail: '(uint256): balance of the Address in Wei', detail: '(uint256): balance of the Address in Wei',
@ -751,7 +751,7 @@ export function getAddressCompletionItems(range: monaco.IRange, monaco): monaco.
} }
export function getContextualAutoCompleteBTypeName(word: string, range: monaco.IRange, monaco): monaco.languages.CompletionItem[] { export function getContextualAutoCompleteBTypeName(word: string, range: monacoTypes.IRange, monaco): monacoTypes.languages.CompletionItem[] {
if (word === 'ArrayTypeName') { if (word === 'ArrayTypeName') {
return getArrayCompletionItems(range, monaco); return getArrayCompletionItems(range, monaco);
} }

@ -2,8 +2,8 @@ import { AstNode } from "@remix-project/remix-solidity"
import { isArray } from "lodash" import { isArray } from "lodash"
import { EditorUIProps } from "../remix-ui-editor" import { EditorUIProps } from "../remix-ui-editor"
import { GeCompletionUnits, GetCompletionKeywords, getCompletionSnippets, GetCompletionTypes, getContextualAutoCompleteBTypeName, getContextualAutoCompleteByGlobalVariable, GetGlobalFunctions, GetGlobalVariable, GetImports } from "./completion/completionGlobals" import { GeCompletionUnits, GetCompletionKeywords, getCompletionSnippets, GetCompletionTypes, getContextualAutoCompleteBTypeName, getContextualAutoCompleteByGlobalVariable, GetGlobalFunctions, GetGlobalVariable, GetImports } from "./completion/completionGlobals"
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
export class RemixCompletionProvider implements monaco.languages.CompletionItemProvider { export class RemixCompletionProvider implements monacoTypes.languages.CompletionItemProvider {
props: EditorUIProps props: EditorUIProps
monaco: any monaco: any
@ -15,7 +15,7 @@ export class RemixCompletionProvider implements monaco.languages.CompletionItemP
} }
triggerCharacters = ['.', '', '"', '@', '/'] triggerCharacters = ['.', '', '"', '@', '/']
async provideCompletionItems(model: monaco.editor.ITextModel, position: monaco.Position, context: monaco.languages.CompletionContext): Promise<monaco.languages.CompletionList | undefined> { async provideCompletionItems(model: monacoTypes.editor.ITextModel, position: monacoTypes.Position, context: monacoTypes.languages.CompletionContext): Promise<monacoTypes.languages.CompletionList | undefined> {
const completionSettings = await this.props.plugin.call('config', 'getAppParameter', 'settings/auto-completion') const completionSettings = await this.props.plugin.call('config', 'getAppParameter', 'settings/auto-completion')
if (!completionSettings) return if (!completionSettings) return
@ -30,7 +30,7 @@ export class RemixCompletionProvider implements monaco.languages.CompletionItemP
const line = model.getLineContent(position.lineNumber) const line = model.getLineContent(position.lineNumber)
let nodes: AstNode[] = [] let nodes: AstNode[] = []
let suggestions: monaco.languages.CompletionItem[] = [] let suggestions: monacoTypes.languages.CompletionItem[] = []
if (context.triggerCharacter === '"' || context.triggerCharacter === '@' || context.triggerCharacter === '/') { if (context.triggerCharacter === '"' || context.triggerCharacter === '@' || context.triggerCharacter === '/') {
const lastpart = line.substring(0, position.column - 1).split(';').pop() const lastpart = line.substring(0, position.column - 1).split(';').pop()
@ -340,7 +340,7 @@ export class RemixCompletionProvider implements monaco.languages.CompletionItemP
private getDotCompletions = async (nameOfLastTypedExpression: string, range) => { private getDotCompletions = async (nameOfLastTypedExpression: string, range) => {
const contractCompletions = await this.getContractCompletions() const contractCompletions = await this.getContractCompletions()
let nodes: any[] = [] let nodes: any[] = []
let suggestions: monaco.languages.CompletionItem[] = [] let suggestions: monacoTypes.languages.CompletionItem[] = []
const filterNodes = (nodes: any[], parentNode: any, declarationOf: any = null) => { const filterNodes = (nodes: any[], parentNode: any, declarationOf: any = null) => {
return nodes && nodes.filter(node => { return nodes && nodes.filter(node => {

@ -1,8 +1,8 @@
import { Monaco } from '@monaco-editor/react' import { Monaco } from '@monaco-editor/react'
import { EditorUIProps } from '../remix-ui-editor' import { EditorUIProps } from '../remix-ui-editor'
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
export class RemixHoverProvider implements monaco.languages.HoverProvider { export class RemixHoverProvider implements monacoTypes.languages.HoverProvider {
props: EditorUIProps props: EditorUIProps
monaco: Monaco monaco: Monaco
@ -11,7 +11,7 @@ export class RemixHoverProvider implements monaco.languages.HoverProvider {
this.monaco = monaco this.monaco = monaco
} }
provideHover = async function (model: monaco.editor.ITextModel, position: monaco.Position): Promise<monaco.languages.Hover> { provideHover = async function (model: monacoTypes.editor.ITextModel, position: monacoTypes.Position): Promise<monacoTypes.languages.Hover> {
const cursorPosition = this.props.editorAPI.getHoverPosition(position) const cursorPosition = this.props.editorAPI.getHoverPosition(position)
const nodeAtPosition = await this.props.plugin.call('codeParser', 'definitionAtPosition', cursorPosition) const nodeAtPosition = await this.props.plugin.call('codeParser', 'definitionAtPosition', cursorPosition)
const contents = [] const contents = []

@ -7,7 +7,7 @@ import { solidityTokensProvider, solidityLanguageConfig } from './syntaxes/solid
import { cairoTokensProvider, cairoLanguageConfig } from './syntaxes/cairo' import { cairoTokensProvider, cairoLanguageConfig } from './syntaxes/cairo'
import { zokratesTokensProvider, zokratesLanguageConfig } from './syntaxes/zokrates' import { zokratesTokensProvider, zokratesLanguageConfig } from './syntaxes/zokrates'
import { moveTokenProvider, moveLanguageConfig } from './syntaxes/move' import { moveTokenProvider, moveLanguageConfig } from './syntaxes/move'
import { monaco } from '@remix-ui/editor'; import { monacoTypes } from '@remix-ui/editor';
import './remix-ui-editor.css' import './remix-ui-editor.css'
import { loadTypes } from './web-types' import { loadTypes } from './web-types'
@ -20,6 +20,14 @@ import { RemixCompletionProvider } from './providers/completionProvider'
import { RemixHighLightProvider } from './providers/highlightProvider' import { RemixHighLightProvider } from './providers/highlightProvider'
import { RemixDefinitionProvider } from './providers/definitionProvider' import { RemixDefinitionProvider } from './providers/definitionProvider'
enum MarkerSeverity {
Hint = 1,
Info = 2,
Warning = 4,
Error = 8
}
type sourceAnnotation = { type sourceAnnotation = {
row: number, row: number,
column: number, column: number,
@ -60,12 +68,12 @@ export type lineText = {
className: string className: string
afterContentClassName: string afterContentClassName: string
hide: boolean, hide: boolean,
hoverMessage: monaco.IMarkdownString | monaco.IMarkdownString[] hoverMessage: monacoTypes.IMarkdownString | monacoTypes.IMarkdownString[]
} }
type errorMarker = { type errorMarker = {
message: string message: string
severity: monaco.MarkerSeverity | 'warning' | 'info' | 'error' | 'hint' severity: monacoTypes.MarkerSeverity | 'warning' | 'info' | 'error' | 'hint'
position: { position: {
start: { start: {
line: number line: number
@ -106,8 +114,8 @@ export interface EditorUIProps {
findMatches: (uri: string, value: string) => any findMatches: (uri: string, value: string) => any
getFontSize: () => number, getFontSize: () => number,
getValue: (uri: string) => string getValue: (uri: string) => string
getCursorPosition: (offset?: boolean) => number | monaco.IPosition getCursorPosition: (offset?: boolean) => number | monacoTypes.IPosition
getHoverPosition: (position: monaco.IPosition) => number getHoverPosition: (position: monacoTypes.IPosition) => number
addDecoration: (marker: sourceMarker, filePath: string, typeOfDecoration: string) => DecorationsReturn addDecoration: (marker: sourceMarker, filePath: string, typeOfDecoration: string) => DecorationsReturn
clearDecorationsByPlugin: (filePath: string, plugin: string, typeOfDecoration: string, registeredDecorations: any, currentDecorations: any) => DecorationsReturn clearDecorationsByPlugin: (filePath: string, plugin: string, typeOfDecoration: string, registeredDecorations: any, currentDecorations: any) => DecorationsReturn
keepDecorationsFor: (filePath: string, plugin: string, typeOfDecoration: string, registeredDecorations: any, currentDecorations: any) => DecorationsReturn keepDecorationsFor: (filePath: string, plugin: string, typeOfDecoration: string, registeredDecorations: any, currentDecorations: any) => DecorationsReturn
@ -426,7 +434,7 @@ export const EditorUI = (props: EditorUIProps) => {
props.editorAPI.addErrorMarker = async (errors: errorMarker[], from: string) => { props.editorAPI.addErrorMarker = async (errors: errorMarker[], from: string) => {
const allMarkersPerfile: Record<string, Array<monaco.editor.IMarkerData>> = {} const allMarkersPerfile: Record<string, Array<monacoTypes.editor.IMarkerData>> = {}
for (const error of errors) { for (const error of errors) {
let filePath = error.file let filePath = error.file
@ -436,12 +444,12 @@ export const EditorUI = (props: EditorUIProps) => {
filePath = fileFromUrl.file filePath = fileFromUrl.file
const model = editorModelsState[filePath]?.model const model = editorModelsState[filePath]?.model
const errorServerityMap = { const errorServerityMap = {
'error': monaco.MarkerSeverity.Error, 'error': MarkerSeverity.Error,
'warning': monaco.MarkerSeverity.Warning, 'warning': MarkerSeverity.Warning,
'info': monaco.MarkerSeverity.Info 'info': MarkerSeverity.Info
} }
if (model) { if (model) {
const markerData: monaco.editor.IMarkerData = { const markerData: monacoTypes.editor.IMarkerData = {
severity: (typeof error.severity === 'string') ? errorServerityMap[error.severity] : error.severity, severity: (typeof error.severity === 'string') ? errorServerityMap[error.severity] : error.severity,
startLineNumber: ((error.position.start && error.position.start.line) || 0), startLineNumber: ((error.position.start && error.position.start.line) || 0),
startColumn: ((error.position.start && error.position.start.column) || 0), startColumn: ((error.position.start && error.position.start.column) || 0),
@ -497,7 +505,7 @@ export const EditorUI = (props: EditorUIProps) => {
} }
} }
props.editorAPI.getHoverPosition = (position: monaco.Position) => { props.editorAPI.getHoverPosition = (position: monacoTypes.Position) => {
if (!monacoRef.current) return if (!monacoRef.current) return
const model = editorModelsState[currentFileRef.current]?.model const model = editorModelsState[currentFileRef.current]?.model
if (model) { if (model) {

@ -194,7 +194,7 @@
"time-stamp": "^2.2.0", "time-stamp": "^2.2.0",
"toml": "^3.0.0", "toml": "^3.0.0",
"tree-kill": "^1.2.2", "tree-kill": "^1.2.2",
"web3": "^1.8.0", "web3": "^1.8.2",
"winston": "^3.3.3", "winston": "^3.3.3",
"ws": "^7.3.0" "ws": "^7.3.0"
}, },

@ -2281,7 +2281,15 @@
lru-cache "^5.1.1" lru-cache "^5.1.1"
memory-level "^1.0.0" memory-level "^1.0.0"
"@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.0": "@ethereumjs/common@2.5.0":
version "2.5.0"
resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.5.0.tgz#ec61551b31bef7a69d1dc634d8932468866a4268"
integrity sha512-DEHjW6e38o+JmB/NO3GZBpW4lpaiBpkFgXF6jLcJ6gETBYpEyaA5nTimsWBUJR3Vmtm/didUEbNjajskugZORg==
dependencies:
crc-32 "^1.2.0"
ethereumjs-util "^7.1.1"
"@ethereumjs/common@^2.5.0":
version "2.6.0" version "2.6.0"
resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.0.tgz#feb96fb154da41ee2cc2c5df667621a440f36348" resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.0.tgz#feb96fb154da41ee2cc2c5df667621a440f36348"
integrity sha512-Cq2qS0FTu6O2VU1sgg+WyU9Ps0M6j/BEMHN+hRaECXCV/r0aI78u4N6p52QW/BDVhwWZpCdrvG8X7NJdzlpNUA== integrity sha512-Cq2qS0FTu6O2VU1sgg+WyU9Ps0M6j/BEMHN+hRaECXCV/r0aI78u4N6p52QW/BDVhwWZpCdrvG8X7NJdzlpNUA==
@ -2350,13 +2358,13 @@
ethereum-cryptography "^1.1.2" ethereum-cryptography "^1.1.2"
readable-stream "^3.6.0" readable-stream "^3.6.0"
"@ethereumjs/tx@^3.3.2": "@ethereumjs/tx@3.3.2":
version "3.4.0" version "3.3.2"
resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.4.0.tgz#7eb1947eefa55eb9cf05b3ca116fb7a3dbd0bce7" resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.3.2.tgz#348d4624bf248aaab6c44fec2ae67265efe3db00"
integrity sha512-WWUwg1PdjHKZZxPPo274ZuPsJCWV3SqATrEKQP1n2DrVYVP1aZIYpo/mFaA0BDoE0tIQmBeimRCEA0Lgil+yYw== integrity sha512-6AaJhwg4ucmwTvw/1qLaZUX5miWrwZ4nLOUsKyb/HtzS3BMw/CasKhdi1ims9mBKeK9sOJCH4qGKOBGyJCeeog==
dependencies: dependencies:
"@ethereumjs/common" "^2.6.0" "@ethereumjs/common" "^2.5.0"
ethereumjs-util "^7.1.3" ethereumjs-util "^7.1.2"
"@ethereumjs/tx@^4.0.2": "@ethereumjs/tx@^4.0.2":
version "4.0.2" version "4.0.2"
@ -10898,7 +10906,7 @@ cryptiles@2.x.x:
dependencies: dependencies:
boom "2.x.x" boom "2.x.x"
crypto-browserify@3.12.0, crypto-browserify@^3.0.0, crypto-browserify@^3.12.0: crypto-browserify@^3.0.0, crypto-browserify@^3.12.0:
version "3.12.0" version "3.12.0"
resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==
@ -12772,10 +12780,10 @@ ethereumjs-util@6.2.1, ethereumjs-util@^6.0.0, ethereumjs-util@^6.2.1:
ethjs-util "0.1.6" ethjs-util "0.1.6"
rlp "^2.2.3" rlp "^2.2.3"
ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.3: ethereumjs-util@^7.0.3, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.2, ethereumjs-util@^7.1.5:
version "7.1.3" version "7.1.5"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.3.tgz#b55d7b64dde3e3e45749e4c41288238edec32d23" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181"
integrity sha512-y+82tEbyASO0K0X1/SRhbJJoAlfcvq8JbrG4a5cjrOks7HS/36efU/0j2flxCPOUM++HFahk33kr/ZxyC4vNuw== integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==
dependencies: dependencies:
"@types/bn.js" "^5.1.0" "@types/bn.js" "^5.1.0"
bn.js "^5.1.2" bn.js "^5.1.2"
@ -12783,10 +12791,10 @@ ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.3:
ethereum-cryptography "^0.1.3" ethereum-cryptography "^0.1.3"
rlp "^2.2.4" rlp "^2.2.4"
ethereumjs-util@^7.0.3: ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.3:
version "7.1.5" version "7.1.3"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.3.tgz#b55d7b64dde3e3e45749e4c41288238edec32d23"
integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg== integrity sha512-y+82tEbyASO0K0X1/SRhbJJoAlfcvq8JbrG4a5cjrOks7HS/36efU/0j2flxCPOUM++HFahk33kr/ZxyC4vNuw==
dependencies: dependencies:
"@types/bn.js" "^5.1.0" "@types/bn.js" "^5.1.0"
bn.js "^5.1.2" bn.js "^5.1.2"
@ -26686,7 +26694,7 @@ util@0.10.3:
dependencies: dependencies:
inherits "2.0.1" inherits "2.0.1"
util@^0.12.0, util@^0.12.3: util@^0.12.3:
version "0.12.4" version "0.12.4"
resolved "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz#66121a31420df8f01ca0c464be15dfa1d1850253" resolved "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz#66121a31420df8f01ca0c464be15dfa1d1850253"
integrity sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw== integrity sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==
@ -26698,14 +26706,7 @@ util@^0.12.0, util@^0.12.3:
safe-buffer "^5.1.2" safe-buffer "^5.1.2"
which-typed-array "^1.1.2" which-typed-array "^1.1.2"
util@~0.10.1: util@^0.12.5, util@~0.12.0:
version "0.10.4"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901"
integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==
dependencies:
inherits "2.0.3"
util@~0.12.0:
version "0.12.5" version "0.12.5"
resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc"
integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==
@ -26716,6 +26717,13 @@ util@~0.12.0:
is-typed-array "^1.1.3" is-typed-array "^1.1.3"
which-typed-array "^1.1.2" which-typed-array "^1.1.2"
util@~0.10.1:
version "0.10.4"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901"
integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==
dependencies:
inherits "2.0.3"
utils-merge@1.0.1: utils-merge@1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
@ -26728,11 +26736,6 @@ utrie@^1.0.2:
dependencies: dependencies:
base64-arraybuffer "^1.0.2" base64-arraybuffer "^1.0.2"
uuid@3.3.2, uuid@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
uuid@^3.0.0, uuid@~3.0.1: uuid@^3.0.0, uuid@~3.0.1:
version "3.0.1" version "3.0.1"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1"
@ -26743,11 +26746,21 @@ uuid@^3.0.1:
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
uuid@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
uuid@^8.3.2: uuid@^8.3.2:
version "8.3.2" version "8.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
uuid@^9.0.0:
version "9.0.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5"
integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
v8-compile-cache-lib@^3.0.1: v8-compile-cache-lib@^3.0.1:
version "3.0.1" version "3.0.1"
resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
@ -26963,214 +26976,213 @@ web-streams-polyfill@^3.1.0:
resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.0.tgz#a6b74026b38e4885869fb5c589e90b95ccfc7965" resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.0.tgz#a6b74026b38e4885869fb5c589e90b95ccfc7965"
integrity sha512-EqPmREeOzttaLRm5HS7io98goBgZ7IVz79aDvqjD0kYXLtFZTc0T/U6wHTPKyIjb+MdN7DFIIX6hgdBEpWmfPA== integrity sha512-EqPmREeOzttaLRm5HS7io98goBgZ7IVz79aDvqjD0kYXLtFZTc0T/U6wHTPKyIjb+MdN7DFIIX6hgdBEpWmfPA==
web3-bzz@1.8.0: web3-bzz@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.8.0.tgz#2023676d7c17ea36512bf76eb310755a02a3d464" resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.8.2.tgz#67ea1c775874056250eece551ded22905ed08784"
integrity sha512-caDtdKeLi7+2Vb+y+cq2yyhkNjnxkFzVW0j1DtemarBg3dycG1iEl75CVQMLNO6Wkg+HH9tZtRnUyFIe5LIUeQ== integrity sha512-1EEnxjPnFnvNWw3XeeKuTR8PBxYd0+XWzvaLK7OJC/Go9O8llLGxrxICbKV+8cgIE0sDRBxiYx02X+6OhoAQ9w==
dependencies: dependencies:
"@types/node" "^12.12.6" "@types/node" "^12.12.6"
got "12.1.0" got "12.1.0"
swarm-js "^0.1.40" swarm-js "^0.1.40"
web3-core-helpers@1.8.0: web3-core-helpers@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.8.0.tgz#5dcfdda1a4ea277041d912003198f1334ca29d7c" resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.8.2.tgz#82066560f8085e6c7b93bcc8e88b441289ea9f9f"
integrity sha512-nMAVwZB3rEp/khHI2BvFy0e/xCryf501p5NGjswmJtEM+Zrd3Biaw52JrB1qAZZIzCA8cmLKaOgdfamoDOpWdw== integrity sha512-6B1eLlq9JFrfealZBomd1fmlq1o4A09vrCVQSa51ANoib/jllT3atZrRDr0zt1rfI7TSZTZBXdN/aTdeN99DWw==
dependencies: dependencies:
web3-eth-iban "1.8.0" web3-eth-iban "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-core-method@1.8.0: web3-core-method@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.8.0.tgz#9c2da8896808917d1679c319f19e2174ba17086c" resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.8.2.tgz#ba5ec68084e903f0516415010477618be017eac2"
integrity sha512-c94RAzo3gpXwf2rf8rL8C77jOzNWF4mXUoUfZYYsiY35cJFd46jQDPI00CB5+ZbICTiA5mlVzMj4e7jAsTqiLA== integrity sha512-1qnr5mw5wVyULzLOrk4B+ryO3gfGjGd/fx8NR+J2xCGLf1e6OSjxT9vbfuQ3fErk/NjSTWWreieYWLMhaogcRA==
dependencies: dependencies:
"@ethersproject/transactions" "^5.6.2" "@ethersproject/transactions" "^5.6.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-promievent "1.8.0" web3-core-promievent "1.8.2"
web3-core-subscriptions "1.8.0" web3-core-subscriptions "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-core-promievent@1.8.0: web3-core-promievent@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.8.0.tgz#979765fd4d37ab0f158f0ee54037b279b737bd53" resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.8.2.tgz#e670d6b4453632e6ecfd9ad82da44f77ac1585c9"
integrity sha512-FGLyjAuOaAQ+ZhV6iuw9tg/9WvIkSZXKHQ4mdTyQ8MxVraOtFivOCbuLLsGgapfHYX+RPxsc1j1YzQjKoupagQ== integrity sha512-nvkJWDVgoOSsolJldN33tKW6bKKRJX3MCPDYMwP5SUFOA/mCzDEoI88N0JFofDTXkh1k7gOqp1pvwi9heuaxGg==
dependencies: dependencies:
eventemitter3 "4.0.4" eventemitter3 "4.0.4"
web3-core-requestmanager@1.8.0: web3-core-requestmanager@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.8.0.tgz#06189df80cf52d24a195a7ef655031afe8192df3" resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.8.2.tgz#dda95e83ca4808949612a41e54ecea557f78ef26"
integrity sha512-2AoYCs3Owl5foWcf4uKPONyqFygSl9T54L8b581U16nsUirjhoTUGK/PBhMDVcLCmW4QQmcY5A8oPFpkQc1TTg== integrity sha512-p1d090RYs5Mu7DK1yyc3GCBVZB/03rBtFhYFoS2EruGzOWs/5Q0grgtpwS/DScdRAm8wB8mYEBhY/RKJWF6B2g==
dependencies: dependencies:
util "^0.12.0" util "^0.12.5"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-providers-http "1.8.0" web3-providers-http "1.8.2"
web3-providers-ipc "1.8.0" web3-providers-ipc "1.8.2"
web3-providers-ws "1.8.0" web3-providers-ws "1.8.2"
web3-core-subscriptions@1.8.0: web3-core-subscriptions@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.8.0.tgz#ff66ae4467c8cb4716367248bcefb1845c0f8b83" resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.8.2.tgz#0c8bd49439d83c6f0a03c70f00b24a915a70a5ed"
integrity sha512-7lHVRzDdg0+Gcog55lG6Q3D8JV+jN+4Ly6F8cSn9xFUAwOkdbgdWsjknQG7t7CDWy21DQkvdiY2BJF8S68AqOA== integrity sha512-vXQogHDmAIQcKpXvGiMddBUeP9lnKgYF64+yQJhPNE5PnWr1sAibXuIPV7mIPihpFr/n/DORRj6Wh1pUv9zaTw==
dependencies: dependencies:
eventemitter3 "4.0.4" eventemitter3 "4.0.4"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core@1.8.0: web3-core@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.8.0.tgz#90afce527ac1b1dff8cbed2acbc0336530b8aacf" resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.8.2.tgz#333e93d7872b1a36efe758ed8b89a7acbdd962c2"
integrity sha512-9sCA+Z02ci6zoY2bAquFiDjujRwmSKHiSGi4B8IstML8okSytnzXk1izHYSynE7ahIkguhjWAuXFvX76F5rAbA== integrity sha512-DJTVEAYcNqxkqruJE+Rxp3CIv0y5AZMwPHQmOkz/cz+MM75SIzMTc0AUdXzGyTS8xMF8h3YWMQGgGEy8SBf1PQ==
dependencies: dependencies:
"@types/bn.js" "^5.1.0" "@types/bn.js" "^5.1.0"
"@types/node" "^12.12.6" "@types/node" "^12.12.6"
bignumber.js "^9.0.0" bignumber.js "^9.0.0"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-core-requestmanager "1.8.0" web3-core-requestmanager "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-abi@1.8.0: web3-eth-abi@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.8.0.tgz#47fdff00bfdfa72064c9c612ff6369986598196d" resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.8.2.tgz#16e1e9be40e2527404f041a4745111211488f31a"
integrity sha512-xPeMb2hS9YLQK/Q5YZpkcmzoRGM+/R8bogSrYHhNC3hjZSSU0YRH+1ZKK0f9YF4qDZaPMI8tKWIMSCDIpjG6fg== integrity sha512-Om9g3kaRNjqiNPAgKwGT16y+ZwtBzRe4ZJFGjLiSs6v5I7TPNF+rRMWuKnR6jq0azQZDj6rblvKFMA49/k48Og==
dependencies: dependencies:
"@ethersproject/abi" "^5.6.3" "@ethersproject/abi" "^5.6.3"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-accounts@1.8.0: web3-eth-accounts@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.8.0.tgz#960d947ee87a49d6c706dc6312334fbfbd6ff812" resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.8.2.tgz#b894f5d5158fcae429da42de75d96520d0712971"
integrity sha512-HQ/MDSv4bexwJLvnqsM6xpGE7c2NVOqyhzOZFyMUKXbIwIq85T3TaLnM9pCN7XqMpDcfxqiZ3q43JqQVkzHdmw== integrity sha512-c367Ij63VCz9YdyjiHHWLFtN85l6QghgwMQH2B1eM/p9Y5lTlTX7t/Eg/8+f1yoIStXbk2w/PYM2lk+IkbqdLA==
dependencies: dependencies:
"@ethereumjs/common" "^2.5.0" "@ethereumjs/common" "2.5.0"
"@ethereumjs/tx" "^3.3.2" "@ethereumjs/tx" "3.3.2"
crypto-browserify "3.12.0"
eth-lib "0.2.8" eth-lib "0.2.8"
ethereumjs-util "^7.0.10" ethereumjs-util "^7.1.5"
scrypt-js "^3.0.1" scrypt-js "^3.0.1"
uuid "3.3.2" uuid "^9.0.0"
web3-core "1.8.0" web3-core "1.8.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-contract@1.8.0: web3-eth-contract@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.8.0.tgz#58f4ce0bde74e5ce87663502e409a92abad7b2c5" resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.8.2.tgz#5388b7130923d2b790c09a420391a81312a867fb"
integrity sha512-6xeXhW2YoCrz2Ayf2Vm4srWiMOB6LawkvxWJDnUWJ8SMATg4Pgu42C/j8rz/enXbYWt2IKuj0kk8+QszxQbK+Q== integrity sha512-ID5A25tHTSBNwOPjiXSVzxruz006ULRIDbzWTYIFTp7NJ7vXu/kynKK2ag/ObuTqBpMbobP8nXcA9b5EDkIdQA==
dependencies: dependencies:
"@types/bn.js" "^5.1.0" "@types/bn.js" "^5.1.0"
web3-core "1.8.0" web3-core "1.8.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-core-promievent "1.8.0" web3-core-promievent "1.8.2"
web3-core-subscriptions "1.8.0" web3-core-subscriptions "1.8.2"
web3-eth-abi "1.8.0" web3-eth-abi "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-ens@1.8.0: web3-eth-ens@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.8.0.tgz#f1937371eac54b087ebe2e871780c2710d39998d" resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.8.2.tgz#0a086ad4d919102e28b9fd3036df246add9df22a"
integrity sha512-/eFbQEwvsMOEiOhw9/iuRXCsPkqAmHHWuFOrThQkozRgcnSTRnvxkkRC/b6koiT5/HaKeUs4yQDg+/ixsIxZxA== integrity sha512-PWph7C/CnqdWuu1+SH4U4zdrK4t2HNt0I4XzPYFdv9ugE8EuojselioPQXsVGvjql+Nt3jDLvQvggPqlMbvwRw==
dependencies: dependencies:
content-hash "^2.5.2" content-hash "^2.5.2"
eth-ens-namehash "2.0.8" eth-ens-namehash "2.0.8"
web3-core "1.8.0" web3-core "1.8.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-promievent "1.8.0" web3-core-promievent "1.8.2"
web3-eth-abi "1.8.0" web3-eth-abi "1.8.2"
web3-eth-contract "1.8.0" web3-eth-contract "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-iban@1.8.0: web3-eth-iban@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.8.0.tgz#3af8a0c95b5f7b0b81ab0bcd2075c1e5dda31520" resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.8.2.tgz#5cb3022234b13986f086353b53f0379a881feeaf"
integrity sha512-4RbvUxcMpo/e5811sE3a6inJ2H4+FFqUVmlRYs0RaXaxiHweahSRBNcpO0UWgmlePTolj0rXqPT2oEr0DuC8kg== integrity sha512-h3vNblDWkWMuYx93Q27TAJz6lhzpP93EiC3+45D6xoz983p6si773vntoQ+H+5aZhwglBtoiBzdh7PSSOnP/xQ==
dependencies: dependencies:
bn.js "^5.2.1" bn.js "^5.2.1"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth-personal@1.8.0: web3-eth-personal@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.8.0.tgz#433c35e2e042844402a12d543c4126ea1494b478" resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.8.2.tgz#3526c1ebaa4e7bf3a0a8ec77e34f067cc9a750b2"
integrity sha512-L7FT4nR3HmsfZyIAhFpEctKkYGOjRC2h6iFKs9gnFCHZga8yLcYcGaYOBIoYtaKom99MuGBoosayWt/Twh7F5A== integrity sha512-Vg4HfwCr7doiUF/RC+Jz0wT4+cYaXcOWMAW2AHIjHX6Z7Xwa8nrURIeQgeEE62qcEHAzajyAdB1u6bJyTfuCXw==
dependencies: dependencies:
"@types/node" "^12.12.6" "@types/node" "^12.12.6"
web3-core "1.8.0" web3-core "1.8.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-net "1.8.0" web3-net "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-eth@1.8.0: web3-eth@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.8.0.tgz#006974a5d5e30644d05814111f9e162a72e4a09c" resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.8.2.tgz#8562287ae1803c30eb54dc7d832092e5739ce06a"
integrity sha512-hist52os3OT4TQFB/GxPSMxTh3995sz6LPvQpPvj7ktSbpg9RNSFaSsPlCT63wUAHA3PZb1FemkAIeQM5t72Lw== integrity sha512-JoTiWWc4F4TInpbvDUGb0WgDYJsFhuIjJlinc5ByjWD88Gvh+GKLsRjjFdbqe5YtwIGT4NymwoC5LQd1K6u/QQ==
dependencies: dependencies:
web3-core "1.8.0" web3-core "1.8.2"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-core-subscriptions "1.8.0" web3-core-subscriptions "1.8.2"
web3-eth-abi "1.8.0" web3-eth-abi "1.8.2"
web3-eth-accounts "1.8.0" web3-eth-accounts "1.8.2"
web3-eth-contract "1.8.0" web3-eth-contract "1.8.2"
web3-eth-ens "1.8.0" web3-eth-ens "1.8.2"
web3-eth-iban "1.8.0" web3-eth-iban "1.8.2"
web3-eth-personal "1.8.0" web3-eth-personal "1.8.2"
web3-net "1.8.0" web3-net "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-net@1.8.0: web3-net@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.8.0.tgz#9acff92d7c647d801bc68df0ff4416f104dbe789" resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.8.2.tgz#97e1e0015fabc4cda31017813e98d0b5468dd04f"
integrity sha512-kX6EAacK7QrOe7DOh0t5yHS5q2kxZmTCxPVwSz9io9xBeE4n4UhmzGJ/VfhP2eM3OPKYeypcR3LEO6zZ8xn2vw== integrity sha512-1itkDMGmbgb83Dg9nporFes9/fxsU7smJ3oRXlFkg4ZHn8YJyP1MSQFPJWWwSc+GrcCFt4O5IrUTvEkHqE3xag==
dependencies: dependencies:
web3-core "1.8.0" web3-core "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
web3-providers-http@1.8.0: web3-providers-http@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.8.0.tgz#3fd1e569ead2095343fac17d53160a3bae674c23" resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.8.2.tgz#fbda3a3bbc8db004af36e91bec35f80273b37885"
integrity sha512-/MqxwRzExohBWW97mqlCSW/+NHydGRyoEDUS1bAIF2YjfKFwyRtHgrEzOojzkC9JvB+8LofMvbXk9CcltpZapw== integrity sha512-2xY94IIEQd16+b+vIBF4IC1p7GVaz9q4EUFscvMUjtEq4ru4Atdzjs9GP+jmcoo49p70II0UV3bqQcz0TQfVyQ==
dependencies: dependencies:
abortcontroller-polyfill "^1.7.3" abortcontroller-polyfill "^1.7.3"
cross-fetch "^3.1.4" cross-fetch "^3.1.4"
es6-promise "^4.2.8" es6-promise "^4.2.8"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-providers-ipc@1.8.0: web3-providers-ipc@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.8.0.tgz#d339a24c4d764e459e425d3ac868a551ac33e3ea" resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.8.2.tgz#e52a7250f40c83b99a2482ec5b4cf2728377ae5c"
integrity sha512-tAXHtVXNUOgehaBU8pzAlB3qhjn/PRpjdzEjzHNFqtRRTwzSEKOJxFeEhaUA4FzHnTlbnrs8ujHWUitcp1elfg== integrity sha512-p6fqKVGFg+WiXGHWnB1hu43PbvPkDHTz4RgoEzbXugv5rtv5zfYLqm8Ba6lrJOS5ks9kGKR21a0y3NzE3u7V4w==
dependencies: dependencies:
oboe "2.1.5" oboe "2.1.5"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
web3-providers-ws@1.8.0: web3-providers-ws@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.8.0.tgz#a0a73e0606981ea32bed40d215000a64753899de" resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.8.2.tgz#56a2b701387011aca9154ca4bc06ea4b5f27e4ef"
integrity sha512-bcZtSifsqyJxwkfQYamfdIRp4nhj9eJd7cxHg1uUkfLJK125WP96wyJL1xbPt7qt0MpfnTFn8/UuIqIB6nFENg== integrity sha512-3s/4K+wHgbiN+Zrp9YjMq2eqAF6QGABw7wFftPdx+m5hWImV27/MoIx57c6HffNRqZXmCHnfWWFCNHHsi7wXnA==
dependencies: dependencies:
eventemitter3 "4.0.4" eventemitter3 "4.0.4"
web3-core-helpers "1.8.0" web3-core-helpers "1.8.2"
websocket "^1.0.32" websocket "^1.0.32"
web3-shh@1.8.0: web3-shh@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.8.0.tgz#b4abbf4f59d097ce2f74360e61e2e5c0bd6507c7" resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.8.2.tgz#217a417f0d6e243dd4d441848ffc2bd164cea8a0"
integrity sha512-DNRgSa9Jf9xYFUGKSMylrf+zt3MPjhI2qF+UWX07o0y3+uf8zalDGiJOWvIS4upAsdPiKKVJ7co+Neof47OMmg== integrity sha512-uZ+3MAoNcaJsXXNCDnizKJ5viBNeHOFYsCbFhV755Uu52FswzTOw6DtE7yK9nYXMtIhiSgi7nwl1RYzP8pystw==
dependencies: dependencies:
web3-core "1.8.0" web3-core "1.8.2"
web3-core-method "1.8.0" web3-core-method "1.8.2"
web3-core-subscriptions "1.8.0" web3-core-subscriptions "1.8.2"
web3-net "1.8.0" web3-net "1.8.2"
web3-utils@1.8.0: web3-utils@1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.8.0.tgz#0a506f8c6af9a2ad6ba79689892662769534fc03" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.8.2.tgz#c32dec5e9b955acbab220eefd7715bc540b75cc9"
integrity sha512-7nUIl7UWpLVka2f09CMbKOSEvorvHnaugIabU4mj7zfMvm0tSByLcEu3eyV9qgS11qxxLuOkzBIwCstTflhmpQ== integrity sha512-v7j6xhfLQfY7xQDrUP0BKbaNrmZ2/+egbqP9q3KYmOiPpnvAfol+32slgL0WX/5n8VPvKCK5EZ1HGrAVICSToA==
dependencies: dependencies:
bn.js "^5.2.1" bn.js "^5.2.1"
ethereum-bloom-filters "^1.0.6" ethereum-bloom-filters "^1.0.6"
@ -27180,18 +27192,18 @@ web3-utils@1.8.0:
randombytes "^2.1.0" randombytes "^2.1.0"
utf8 "3.0.0" utf8 "3.0.0"
web3@^1.8.0: web3@^1.8.2:
version "1.8.0" version "1.8.2"
resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.0.tgz#3ca5f0b32de6a1f626407740411219035b5fde64" resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.2.tgz#95a4e5398fd0f01325264bf8e5e8cdc69a7afe86"
integrity sha512-sldr9stK/SALSJTgI/8qpnDuBJNMGjVR84hJ+AcdQ+MLBGLMGsCDNubCoyO6qgk1/Y9SQ7ignegOI/7BPLoiDA== integrity sha512-92h0GdEHW9wqDICQQKyG4foZBYi0OQkyg4CRml2F7XBl/NG+fu9o6J19kzfFXzSBoA4DnJXbyRgj/RHZv5LRiw==
dependencies: dependencies:
web3-bzz "1.8.0" web3-bzz "1.8.2"
web3-core "1.8.0" web3-core "1.8.2"
web3-eth "1.8.0" web3-eth "1.8.2"
web3-eth-personal "1.8.0" web3-eth-personal "1.8.2"
web3-net "1.8.0" web3-net "1.8.2"
web3-shh "1.8.0" web3-shh "1.8.2"
web3-utils "1.8.0" web3-utils "1.8.2"
webidl-conversions@^3.0.0: webidl-conversions@^3.0.0:
version "3.0.1" version "3.0.1"

Loading…
Cancel
Save