Merge branch 'master' of https://github.com/ethereum/remix-project into desktope2e

pull/4837/head
filip mertens 8 months ago
commit d0fd55040e
  1. 2
      .github/workflows/pr-reminder.yml
  2. 2
      apps/remix-ide-e2e/src/tests/generalSettings.test.ts
  3. 2
      apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts
  4. 4
      apps/remix-ide/src/app/tabs/locales/en/terminal.json
  5. 11
      apps/remix-ide/src/app/tabs/web3-provider.js
  6. 4
      apps/remix-ide/src/app/udapp/run-tab.js
  7. 4
      apps/remix-ide/src/blockchain/blockchain.tsx
  8. 6
      apps/solhint/yarn.lock
  9. 8
      libs/ghaction-helper/package.json
  10. 8
      libs/remix-analyzer/package.json
  11. 6
      libs/remix-astwalker/package.json
  12. 12
      libs/remix-debug/package.json
  13. 4
      libs/remix-lib/package.json
  14. 6
      libs/remix-simulator/package.json
  15. 6
      libs/remix-solidity/package.json
  16. 10
      libs/remix-tests/package.json
  17. 3
      libs/remix-ui/run-tab/src/lib/actions/deploy.ts
  18. 4
      libs/remix-ui/run-tab/src/lib/actions/events.ts
  19. 2
      libs/remix-ui/terminal/src/lib/components/remix-ui-terminal-bar.tsx
  20. 26
      libs/remix-ui/terminal/src/lib/components/remix-ui-terminal-menu.tsx
  21. 5
      libs/remix-ui/terminal/src/lib/remix-ui-terminal.css
  22. 4
      libs/remix-url-resolver/package.json
  23. 4
      libs/remix-ws-templates/package.json
  24. 2
      libs/remixd/package.json
  25. 2
      package.json

@ -14,4 +14,4 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
webhook-url: ${{ secrets.DISCORD_WEBHOOK_URL }} webhook-url: ${{ secrets.DISCORD_WEBHOOK_URL }}
freeze-date: '2024-03-11T18:00:00Z' freeze-date: '2024-03-25T18:00:00Z'

@ -152,7 +152,7 @@ module.exports = {
.scrollAndClick('*[data-id="settingsTabLocaleLabelen"]') .scrollAndClick('*[data-id="settingsTabLocaleLabelen"]')
.pause(2000) .pause(2000)
.assert.containsText('*[data-id="sidePanelSwapitTitle"]', 'SETTINGS') .assert.containsText('*[data-id="sidePanelSwapitTitle"]', 'SETTINGS')
.assert.containsText('*[data-id="listenNetworkCheckInput"]', 'listen on all transactions') .assert.containsText('*[data-id="listenNetworkCheckInput"]', 'Listen on all transactions')
.assert.containsText('*[data-id="settingsTabGenerateContractMetadataLabel"]', 'Generate contract metadata') .assert.containsText('*[data-id="settingsTabGenerateContractMetadataLabel"]', 'Generate contract metadata')
.assert.containsText('*[data-id="settingsAutoCompleteLabel"]', 'Enable code completion in editor') .assert.containsText('*[data-id="settingsAutoCompleteLabel"]', 'Enable code completion in editor')
.assert.containsText('*[data-id="settingsShowGasLabel"]', 'Display gas estimates in editor') .assert.containsText('*[data-id="settingsShowGasLabel"]', 'Display gas estimates in editor')

@ -341,6 +341,8 @@ module.exports = {
browser browser
.clickLaunchIcon('solidity') .clickLaunchIcon('solidity')
.setSolidityCompilerVersion('builtin') .setSolidityCompilerVersion('builtin')
.click('.remixui_compilerConfigSection')
.setValue('#evmVersionSelector', 'shanghai') // Temporary fix
.clickLaunchIcon('filePanel') .clickLaunchIcon('filePanel')
.click('*[data-id="treeViewLitreeViewItemcontracts"]') .click('*[data-id="treeViewLitreeViewItemcontracts"]')
.openFile('contracts/3_Ballot.sol') .openFile('contracts/3_Ballot.sol')

@ -1,8 +1,8 @@
{ {
"terminal.listen": "listen on all transactions", "terminal.listen": "Listen on all transactions",
"terminal.listenVM": "Listen on all transactions is disabled for VM environment", "terminal.listenVM": "Listen on all transactions is disabled for VM environment",
"terminal.listenTitle": "If checked Remix will listen on all transactions mined in the current environment and not only transactions created by you", "terminal.listenTitle": "If checked Remix will listen on all transactions mined in the current environment and not only transactions created by you",
"terminal.search": "Search with transaction hash or address", "terminal.search": "Filter with transaction hash or address",
"terminal.used": "used", "terminal.used": "used",
"terminal.debug": "Debug", "terminal.debug": "Debug",
"terminal.welcomeText1": "Welcome to", "terminal.welcomeText1": "Welcome to",

@ -58,8 +58,17 @@ export class Web3ProviderModule extends Plugin {
const contractAddressStr = addressToString(receipt.contractAddress) const contractAddressStr = addressToString(receipt.contractAddress)
const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', contractAddressStr) const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', contractAddressStr)
if (contractData) { if (contractData) {
this.call('udapp', 'addInstance', contractAddressStr, contractData.contract.abi, contractData.name)
const data = await this.call('compilerArtefacts', 'getCompilerAbstract', contractData.file) const data = await this.call('compilerArtefacts', 'getCompilerAbstract', contractData.file)
const contractObject = {
name: contractData.name,
abi: contractData.contract.abi,
compiler: data,
contract: {
file : contractData.file,
object: contractData.contract
}
}
this.call('udapp', 'addInstance', contractAddressStr, contractData.contract.abi, contractData.name, contractObject)
await this.call('compilerArtefacts', 'addResolvedContract', contractAddressStr, data) await this.call('compilerArtefacts', 'addResolvedContract', contractAddressStr, data)
} }
}, 50) }, 50)

@ -85,8 +85,8 @@ export class RunTab extends ViewPlugin {
this.emit('clearAllSavedInstancesReducer') this.emit('clearAllSavedInstancesReducer')
} }
addInstance(address, abi, name) { addInstance(address, abi, name, contractData) {
this.emit('addInstanceReducer', address, abi, name) this.emit('addInstanceReducer', address, abi, name, contractData)
} }
addSavedInstance(address, abi, name, savedOn, filePath) { addSavedInstance(address, abi, name, savedOn, filePath) {

@ -287,7 +287,7 @@ export class Blockchain extends Plugin {
await this.saveDeployedContractStorageLayout(implementationContractObject, address, networkInfo) await this.saveDeployedContractStorageLayout(implementationContractObject, address, networkInfo)
this.events.emit('newProxyDeployment', address, new Date().toISOString(), implementationContractObject.contractName) this.events.emit('newProxyDeployment', address, new Date().toISOString(), implementationContractObject.contractName)
_paq.push(['trackEvent', 'blockchain', 'Deploy With Proxy', 'Proxy deployment successful']) _paq.push(['trackEvent', 'blockchain', 'Deploy With Proxy', 'Proxy deployment successful'])
this.call('udapp', 'addInstance', addressToString(address), implementationContractObject.abi, implementationContractObject.name) this.call('udapp', 'addInstance', addressToString(address), implementationContractObject.abi, implementationContractObject.name, implementationContractObject)
} }
this.runTx(args, confirmationCb, continueCb, promptCb, finalCb) this.runTx(args, confirmationCb, continueCb, promptCb, finalCb)
@ -337,7 +337,7 @@ export class Blockchain extends Plugin {
} }
await this.saveDeployedContractStorageLayout(newImplementationContractObject, proxyAddress, networkInfo) await this.saveDeployedContractStorageLayout(newImplementationContractObject, proxyAddress, networkInfo)
_paq.push(['trackEvent', 'blockchain', 'Upgrade With Proxy', 'Upgrade Successful']) _paq.push(['trackEvent', 'blockchain', 'Upgrade With Proxy', 'Upgrade Successful'])
this.call('udapp', 'addInstance', addressToString(proxyAddress), newImplementationContractObject.abi, newImplementationContractObject.name) this.call('udapp', 'addInstance', addressToString(proxyAddress), newImplementationContractObject.abi, newImplementationContractObject.name, newImplementationContractObject)
} }
this.runTx(args, confirmationCb, continueCb, promptCb, finalCb) this.runTx(args, confirmationCb, continueCb, promptCb, finalCb)
} }

@ -245,9 +245,9 @@ fast-json-stable-stringify@^2.0.0:
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
follow-redirects@^1.14.0: follow-redirects@^1.14.0:
version "1.15.4" version "1.15.6"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.4.tgz#cdc7d308bf6493126b17ea2191ea0ccf3e535adf" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b"
integrity sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw== integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==
fs.realpath@^1.0.0: fs.realpath@^1.0.0:
version "1.0.0" version "1.0.0"

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/ghaction-helper", "name": "@remix-project/ghaction-helper",
"version": "0.1.23", "version": "0.1.24",
"description": "Solidity Tests GitHub Action Helper", "description": "Solidity Tests GitHub Action Helper",
"main": "src/index.js", "main": "src/index.js",
"scripts": { "scripts": {
@ -19,17 +19,17 @@
}, },
"homepage": "https://github.com/ethereum/remix-project#readme", "homepage": "https://github.com/ethereum/remix-project#readme",
"devDependencies": { "devDependencies": {
"@remix-project/remix-solidity": "^0.5.29", "@remix-project/remix-solidity": "^0.5.30",
"@types/chai": "^4.3.4", "@types/chai": "^4.3.4",
"typescript": "^4.9.3" "typescript": "^4.9.3"
}, },
"dependencies": { "dependencies": {
"@ethereum-waffle/chai": "^3.4.4", "@ethereum-waffle/chai": "^3.4.4",
"@remix-project/remix-simulator": "^0.2.43", "@remix-project/remix-simulator": "^0.2.44",
"chai": "^4.3.7", "chai": "^4.3.7",
"ethers": "^5.7.2", "ethers": "^5.7.2",
"web3": "^4.1.1" "web3": "^4.1.1"
}, },
"types": "./src/index.d.ts", "types": "./src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85" "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-analyzer", "name": "@remix-project/remix-analyzer",
"version": "0.5.52", "version": "0.5.53",
"description": "Tool to perform static analysis on Solidity smart contracts", "description": "Tool to perform static analysis on Solidity smart contracts",
"scripts": { "scripts": {
"test": "./../../node_modules/.bin/ts-node --project ../../tsconfig.base.json --require tsconfig-paths/register ./../../node_modules/.bin/tape ./test/tests.ts" "test": "./../../node_modules/.bin/ts-node --project ../../tsconfig.base.json --require tsconfig-paths/register ./../../node_modules/.bin/tape ./test/tests.ts"
@ -25,8 +25,8 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-astwalker": "^0.0.73", "@remix-project/remix-astwalker": "^0.0.74",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"async": "^2.6.2", "async": "^2.6.2",
"ethers": "^5.4.2", "ethers": "^5.4.2",
"ethjs-util": "^0.1.6", "ethjs-util": "^0.1.6",
@ -50,6 +50,6 @@
"typescript": "^3.7.5" "typescript": "^3.7.5"
}, },
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85", "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a",
"main": "./src/index.js" "main": "./src/index.js"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-astwalker", "name": "@remix-project/remix-astwalker",
"version": "0.0.73", "version": "0.0.74",
"description": "Tool to walk through Solidity AST", "description": "Tool to walk through Solidity AST",
"main": "src/index.js", "main": "src/index.js",
"scripts": { "scripts": {
@ -37,7 +37,7 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"@types/tape": "^4.2.33", "@types/tape": "^4.2.33",
"async": "^2.6.2", "async": "^2.6.2",
"ethers": "^5.4.2", "ethers": "^5.4.2",
@ -53,6 +53,6 @@
"tap-spec": "^5.0.0" "tap-spec": "^5.0.0"
}, },
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85", "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a",
"types": "./src/index.d.ts" "types": "./src/index.d.ts"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-debug", "name": "@remix-project/remix-debug",
"version": "0.5.43", "version": "0.5.44",
"description": "Tool to debug Ethereum transactions", "description": "Tool to debug Ethereum transactions",
"contributors": [ "contributors": [
{ {
@ -26,10 +26,10 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-astwalker": "^0.0.73", "@remix-project/remix-astwalker": "^0.0.74",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"@remix-project/remix-simulator": "^0.2.43", "@remix-project/remix-simulator": "^0.2.44",
"@remix-project/remix-solidity": "^0.5.29", "@remix-project/remix-solidity": "^0.5.30",
"ansi-gray": "^0.1.1", "ansi-gray": "^0.1.1",
"async": "^2.6.2", "async": "^2.6.2",
"color-support": "^1.1.3", "color-support": "^1.1.3",
@ -69,6 +69,6 @@
}, },
"homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-debug#readme", "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-debug#readme",
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85", "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a",
"types": "./src/index.d.ts" "types": "./src/index.d.ts"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-lib", "name": "@remix-project/remix-lib",
"version": "0.5.50", "version": "0.5.51",
"description": "Library to various Remix tools", "description": "Library to various Remix tools",
"contributors": [ "contributors": [
{ {
@ -55,6 +55,6 @@
}, },
"homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-lib#readme", "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-lib#readme",
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85", "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a",
"types": "./src/index.d.ts" "types": "./src/index.d.ts"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-simulator", "name": "@remix-project/remix-simulator",
"version": "0.2.43", "version": "0.2.44",
"description": "Ethereum IDE and tools for the web", "description": "Ethereum IDE and tools for the web",
"contributors": [ "contributors": [
{ {
@ -22,7 +22,7 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"ansi-gray": "^0.1.1", "ansi-gray": "^0.1.1",
"async": "^3.1.0", "async": "^3.1.0",
"body-parser": "^1.18.2", "body-parser": "^1.18.2",
@ -70,6 +70,6 @@
}, },
"homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-simulator#readme", "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-simulator#readme",
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85", "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a",
"types": "./src/index.d.ts" "types": "./src/index.d.ts"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-solidity", "name": "@remix-project/remix-solidity",
"version": "0.5.29", "version": "0.5.30",
"description": "Tool to load and run Solidity compiler", "description": "Tool to load and run Solidity compiler",
"main": "src/index.js", "main": "src/index.js",
"types": "src/index.d.ts", "types": "src/index.d.ts",
@ -19,7 +19,7 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"async": "^2.6.2", "async": "^2.6.2",
"eslint-scope": "^5.0.0", "eslint-scope": "^5.0.0",
"ethers": "^5.4.2", "ethers": "^5.4.2",
@ -57,5 +57,5 @@
}, },
"homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-solidity#readme", "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-solidity#readme",
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85" "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-tests", "name": "@remix-project/remix-tests",
"version": "0.2.43", "version": "0.2.44",
"description": "Tool to test Solidity smart contracts", "description": "Tool to test Solidity smart contracts",
"main": "src/index.js", "main": "src/index.js",
"types": "./src/index.d.ts", "types": "./src/index.d.ts",
@ -41,9 +41,9 @@
"@ethereumjs/tx": "^4.1.1", "@ethereumjs/tx": "^4.1.1",
"@ethereumjs/util": "^8.0.5", "@ethereumjs/util": "^8.0.5",
"@ethereumjs/vm": "^6.4.1", "@ethereumjs/vm": "^6.4.1",
"@remix-project/remix-lib": "^0.5.50", "@remix-project/remix-lib": "^0.5.51",
"@remix-project/remix-simulator": "^0.2.43", "@remix-project/remix-simulator": "^0.2.44",
"@remix-project/remix-solidity": "^0.5.29", "@remix-project/remix-solidity": "^0.5.30",
"@remix-project/remix-url-resolver": "^0.0.42", "@remix-project/remix-url-resolver": "^0.0.42",
"ansi-gray": "^0.1.1", "ansi-gray": "^0.1.1",
"async": "^2.6.0", "async": "^2.6.0",
@ -78,5 +78,5 @@
"typescript": "^3.3.1" "typescript": "^3.3.1"
}, },
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85" "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a"
} }

@ -250,7 +250,8 @@ export const loadAddress = (plugin: RunTab, dispatch: React.Dispatch<any>, contr
return dispatch(displayNotification('Alert', error, 'OK', null)) return dispatch(displayNotification('Alert', error, 'OK', null))
} }
if (loadType === 'abi') { if (loadType === 'abi') {
return addInstance(dispatch, { abi, address, name: '<at address>' }) const contractData = { name: '<at address>', abi, contract: {file: plugin.REACT_API.contracts.currentFile}} as ContractData
return addInstance(dispatch, { contractData, address, name: '<at address>' })
} else if (loadType === 'instance') { } else if (loadType === 'instance') {
if (!contract) return dispatch(displayPopUp('No compiled contracts found.')) if (!contract) return dispatch(displayPopUp('No compiled contracts found.'))
const currentFile = plugin.REACT_API.contracts.currentFile const currentFile = plugin.REACT_API.contracts.currentFile

@ -83,8 +83,8 @@ export const setupEvents = (plugin: RunTab, dispatch: React.Dispatch<any>) => {
dispatch(clearAllSavedInstances()) dispatch(clearAllSavedInstances())
}) })
plugin.on('udapp', 'addInstanceReducer', (address, abi, name) => { plugin.on('udapp', 'addInstanceReducer', (address, abi, name, contractData?) => {
addInstance(dispatch, { abi, address, name }) addInstance(dispatch, { contractData, abi, address, name })
}) })
plugin.on('udapp', 'addSavedInstanceReducer', (address, abi, name, savedOn, filePath) => { plugin.on('udapp', 'addSavedInstanceReducer', (address, abi, name, savedOn, filePath) => {

@ -23,7 +23,7 @@ export const RemixUITerminalBar = (props: RemixUiTerminalProps) => {
return (<> return (<>
<div className="remix_ui_terminal_bar d-flex"> <div className="remix_ui_terminal_bar d-flex">
<div <div
className="remix_ui_terminal_menu d-flex w-100 align-items-center position-relative border-top border-dark bg-light" className="remix_ui_terminal_menu justify-content-between d-flex w-100 align-items-center position-relative border-top border-dark bg-light"
ref={terminalMenu} ref={terminalMenu}
data-id="terminalToggleMenu" data-id="terminalToggleMenu"
> >

@ -27,25 +27,23 @@ export const RemixUITerminalMenu = (props: RemixUiTerminalProps) => {
} }
return (<div className='d-flex flex-row align-items-center'> return (<div className='d-flex flex-row align-items-center'>
<CustomTooltip placement="top" tooltipId="terminalClear" tooltipClasses="text-nowrap" tooltipText={<FormattedMessage id="terminal.pendingTransactions" />}> <CustomTooltip placement="top" tooltipId="terminalpendingTransactions" tooltipClasses="text-nowrap" tooltipText={<FormattedMessage id="terminal.pendingTransactions" />}>
<div className="mx-2">0</div> <div className="mx-2">0</div>
</CustomTooltip> </CustomTooltip>
<CustomTooltip <CustomTooltip
placement="top" placement="top"
tooltipId="terminalClear" tooltipId="terminalListenOnN"
tooltipClasses="text-nowrap" tooltipClasses="text-nowrap"
tooltipText={intl.formatMessage({ id: terminalState.isVM ? 'terminal.listenVM' : 'terminal.listenTitle' })} tooltipText={terminalState.isVM ? intl.formatMessage({ id: 'terminal.listenVM' }) : intl.formatMessage({ id: 'terminal.listenTitle' })}
> >
<div className="h-80 mx-3 align-items-center remix_ui_terminal_listenOnNetwork custom-control custom-checkbox"> <div className="h-80 mx-3 align-items-center remix_ui_terminal_listenOnNetwork custom-control custom-checkbox">
<CustomTooltip placement="top" tooltipId="terminalClear" tooltipClasses="text-nowrap" tooltipText={intl.formatMessage({ id: 'terminal.listenTitle' })}> <input
<input className="custom-control-input"
className="custom-control-input" id="listenNetworkCheck"
id="listenNetworkCheck" onChange={listenOnNetwork}
onChange={listenOnNetwork} type="checkbox"
type="checkbox" disabled={terminalState.isVM}
disabled={terminalState.isVM} />
/>
</CustomTooltip>
<label <label
className="form-check-label custom-control-label text-nowrap" className="form-check-label custom-control-label text-nowrap"
style={{ paddingTop: '0.125rem' }} style={{ paddingTop: '0.125rem' }}
@ -56,7 +54,7 @@ export const RemixUITerminalMenu = (props: RemixUiTerminalProps) => {
</label> </label>
</div> </div>
</CustomTooltip> </CustomTooltip>
<div className="remix_ui_terminal_search d-flex align-items-center h-100"> <div className="remix_ui_terminal_search mx-1 d-flex align-items-center h-100">
<i className="remix_ui_terminal_searchIcon d-flex align-items-center justify-content-center fas fa-search bg-light" aria-hidden="true"></i> <i className="remix_ui_terminal_searchIcon d-flex align-items-center justify-content-center fas fa-search bg-light" aria-hidden="true"></i>
<input <input
onChange={(event) => setSearchInput(event.target.value.trim())} onChange={(event) => setSearchInput(event.target.value.trim())}
@ -68,7 +66,7 @@ export const RemixUITerminalMenu = (props: RemixUiTerminalProps) => {
/> />
</div> </div>
<div className="mx-2 remix_ui_terminal_console" id="clearConsole" data-id="terminalClearConsole" onClick={handleClearConsole}> <div className="mx-2 remix_ui_terminal_console" id="clearConsole" data-id="terminalClearConsole" onClick={handleClearConsole}>
<CustomTooltip placement="top" tooltipId="terminalClear" tooltipClasses="text-nowrap" tooltipText={<FormattedMessage id="terminal.clearConsole" />}> <CustomTooltip placement="top" tooltipId="terminalClearTerminal" tooltipClasses="text-nowrap" tooltipText={<FormattedMessage id="terminal.clearConsole" />}>
<i className="fas fa-ban" aria-hidden="true"></i> <i className="fas fa-ban" aria-hidden="true"></i>
</CustomTooltip> </CustomTooltip>
</div> </div>

@ -71,10 +71,7 @@ element.style {
font-family : monospace; font-family : monospace;
} }
.remix_ui_terminal_search { .remix_ui_terminal_search {
width : 330px; width : 19rem;
padding-left : 20px;
padding-top : 1px;
padding-bottom : 1px;
} }
.remix_ui_terminal_filter { .remix_ui_terminal_filter {
height : 80%; height : 80%;

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-url-resolver", "name": "@remix-project/remix-url-resolver",
"version": "0.0.72", "version": "0.0.73",
"description": "Solidity import url resolver engine", "description": "Solidity import url resolver engine",
"main": "src/index.js", "main": "src/index.js",
"types": "src/index.d.ts", "types": "src/index.d.ts",
@ -41,5 +41,5 @@
"typescript": "^3.1.6" "typescript": "^3.1.6"
}, },
"typings": "src/index.d.ts", "typings": "src/index.d.ts",
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85" "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remix-ws-templates", "name": "@remix-project/remix-ws-templates",
"version": "1.0.37", "version": "1.0.38",
"description": "Create a Remix IDE workspace using different templates", "description": "Create a Remix IDE workspace using different templates",
"main": "src/index.js", "main": "src/index.js",
"types": "src/index.d.ts", "types": "src/index.d.ts",
@ -24,5 +24,5 @@
"ethers": "^5.4.2", "ethers": "^5.4.2",
"web3": "^4.1.1" "web3": "^4.1.1"
}, },
"gitHead": "d08019670b3095207b262dac71c55d8467a81f85" "gitHead": "751c821c0264dec832ee8739800e32b79b09c00a"
} }

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remixd", "name": "@remix-project/remixd",
"version": "0.6.27", "version": "0.6.28",
"description": "remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)", "description": "remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)",
"main": "index.js", "main": "index.js",
"types": "./index.d.ts", "types": "./index.d.ts",

@ -1,6 +1,6 @@
{ {
"name": "remix-project", "name": "remix-project",
"version": "0.45.0-dev", "version": "0.46.0-dev",
"license": "MIT", "license": "MIT",
"description": "Ethereum Remix Monorepo", "description": "Ethereum Remix Monorepo",
"main": "index.js", "main": "index.js",

Loading…
Cancel
Save