diff --git a/.github/workflows/pr-reminder.yml b/.github/workflows/pr-reminder.yml index c030722657..ec71c4f32e 100644 --- a/.github/workflows/pr-reminder.yml +++ b/.github/workflows/pr-reminder.yml @@ -2,14 +2,14 @@ name: PRs reviews reminder on: schedule: - - cron: "0 8-17/1 * * 1-5" + - cron: "0 8-17/8 * * 1-5" workflow_dispatch: jobs: pr-reviews-reminder: runs-on: ubuntu-latest steps: - - uses: yann300/pr-reviews-reminder-action@master + - uses: Aniket-Engg/pr-reviews-reminder-action@master env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: diff --git a/apps/remix-ide/src/app/components/vertical-icons.tsx b/apps/remix-ide/src/app/components/vertical-icons.tsx index f43a5505c3..2f69d5bee3 100644 --- a/apps/remix-ide/src/app/components/vertical-icons.tsx +++ b/apps/remix-ide/src/app/components/vertical-icons.tsx @@ -16,6 +16,8 @@ const profile = { events: ['toggleContent', 'showContent'] } +const toMaximize = ['LearnEth'] + export class VerticalIcons extends Plugin { events: EventEmitter htmlElement: HTMLDivElement @@ -106,6 +108,11 @@ export class VerticalIcons extends Plugin { // TODO: Only keep `this.emit` (issue#2210) this.emit('showContent', name) this.events.emit('showContent', name) + if (toMaximize.includes(name)) { + setTimeout(_ => { + this.call('layout', 'maximiseSidePanel') + }, 500) + } } /** diff --git a/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx b/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx index a77a210277..813567831d 100644 --- a/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx +++ b/apps/remix-ide/src/app/plugins/permission-handler-plugin.tsx @@ -92,7 +92,17 @@ export class PermissionHandlerPlugin extends Plugin { const {allow, hash} = sensitiveCall ? this.sessionPermissions[to.name][method][from.name] : this.permissions[to.name][method][from.name] if (!allow) { const warning = this.notAllowWarning(from, to, method) - this.call('notification', 'toast', warning) + const warnEl = +
+ { warning } +
+ {}}>To change the permission go to + Plugin Manager + + / Permissions +
+
+ this.call('notification', 'toast', warnEl) return false } return hash === from.hash diff --git a/apps/remix-ide/src/assets/img/cookbook.webp b/apps/remix-ide/src/assets/img/cookbook.webp index e3535bbdca..d2ee110b2b 100644 Binary files a/apps/remix-ide/src/assets/img/cookbook.webp and b/apps/remix-ide/src/assets/img/cookbook.webp differ diff --git a/apps/remix-ide/src/assets/img/soliditySurvey2023.webp b/apps/remix-ide/src/assets/img/soliditySurvey2023.webp new file mode 100644 index 0000000000..eb0a022e62 Binary files /dev/null and b/apps/remix-ide/src/assets/img/soliditySurvey2023.webp differ diff --git a/apps/remix-ide/src/assets/img/unknownPluginIcon.webp b/apps/remix-ide/src/assets/img/unknownPluginIcon.webp new file mode 100644 index 0000000000..89a779f7a5 Binary files /dev/null and b/apps/remix-ide/src/assets/img/unknownPluginIcon.webp differ diff --git a/libs/ghaction-helper/package.json b/libs/ghaction-helper/package.json index a673f49419..03538218ec 100644 --- a/libs/ghaction-helper/package.json +++ b/libs/ghaction-helper/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/ghaction-helper", - "version": "0.1.17", + "version": "0.1.18", "description": "Solidity Tests GitHub Action Helper", "main": "src/index.js", "scripts": { @@ -19,17 +19,17 @@ }, "homepage": "https://github.com/ethereum/remix-project#readme", "devDependencies": { - "@remix-project/remix-solidity": "^0.5.23", + "@remix-project/remix-solidity": "^0.5.24", "@types/chai": "^4.3.4", "typescript": "^4.9.3" }, "dependencies": { "@ethereum-waffle/chai": "^3.4.4", - "@remix-project/remix-simulator": "^0.2.37", + "@remix-project/remix-simulator": "^0.2.38", "chai": "^4.3.7", "ethers": "^5.7.2", "web3": "^4.1.1" }, "types": "./src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf" + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3" } \ No newline at end of file diff --git a/libs/remix-analyzer/package.json b/libs/remix-analyzer/package.json index e61b576765..debd93bab7 100644 --- a/libs/remix-analyzer/package.json +++ b/libs/remix-analyzer/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-analyzer", - "version": "0.5.46", + "version": "0.5.47", "description": "Tool to perform static analysis on Solidity smart contracts", "scripts": { "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/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-astwalker": "^0.0.67", - "@remix-project/remix-lib": "^0.5.44", + "@remix-project/remix-astwalker": "^0.0.68", + "@remix-project/remix-lib": "^0.5.45", "async": "^2.6.2", "ethers": "^5.4.2", "ethjs-util": "^0.1.6", @@ -50,6 +50,6 @@ "typescript": "^3.7.5" }, "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf", + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3", "main": "./src/index.js" } \ No newline at end of file diff --git a/libs/remix-astwalker/package.json b/libs/remix-astwalker/package.json index a835048c4e..09518a3287 100644 --- a/libs/remix-astwalker/package.json +++ b/libs/remix-astwalker/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-astwalker", - "version": "0.0.67", + "version": "0.0.68", "description": "Tool to walk through Solidity AST", "main": "src/index.js", "scripts": { @@ -37,7 +37,7 @@ "@ethereumjs/tx": "^4.1.1", "@ethereumjs/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-lib": "^0.5.44", + "@remix-project/remix-lib": "^0.5.45", "@types/tape": "^4.2.33", "async": "^2.6.2", "ethers": "^5.4.2", @@ -53,6 +53,6 @@ "tap-spec": "^5.0.0" }, "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf", + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3", "types": "./src/index.d.ts" } \ No newline at end of file diff --git a/libs/remix-debug/package.json b/libs/remix-debug/package.json index 7a3f109298..f047493037 100644 --- a/libs/remix-debug/package.json +++ b/libs/remix-debug/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-debug", - "version": "0.5.37", + "version": "0.5.38", "description": "Tool to debug Ethereum transactions", "contributors": [ { @@ -26,10 +26,10 @@ "@ethereumjs/tx": "^4.1.1", "@ethereumjs/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-astwalker": "^0.0.67", - "@remix-project/remix-lib": "^0.5.44", - "@remix-project/remix-simulator": "^0.2.37", - "@remix-project/remix-solidity": "^0.5.23", + "@remix-project/remix-astwalker": "^0.0.68", + "@remix-project/remix-lib": "^0.5.45", + "@remix-project/remix-simulator": "^0.2.38", + "@remix-project/remix-solidity": "^0.5.24", "ansi-gray": "^0.1.1", "async": "^2.6.2", "color-support": "^1.1.3", @@ -69,6 +69,6 @@ }, "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-debug#readme", "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf", + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3", "types": "./src/index.d.ts" } \ No newline at end of file diff --git a/libs/remix-lib/package.json b/libs/remix-lib/package.json index 74e48fc07c..a6048b5b85 100644 --- a/libs/remix-lib/package.json +++ b/libs/remix-lib/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-lib", - "version": "0.5.44", + "version": "0.5.45", "description": "Library to various Remix tools", "contributors": [ { @@ -55,6 +55,6 @@ }, "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-lib#readme", "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf", + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3", "types": "./src/index.d.ts" } \ No newline at end of file diff --git a/libs/remix-simulator/package.json b/libs/remix-simulator/package.json index c9abd30319..c9f9372198 100644 --- a/libs/remix-simulator/package.json +++ b/libs/remix-simulator/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-simulator", - "version": "0.2.37", + "version": "0.2.38", "description": "Ethereum IDE and tools for the web", "contributors": [ { @@ -22,7 +22,7 @@ "@ethereumjs/tx": "^4.1.1", "@ethereumjs/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-lib": "^0.5.44", + "@remix-project/remix-lib": "^0.5.45", "ansi-gray": "^0.1.1", "async": "^3.1.0", "body-parser": "^1.18.2", @@ -70,6 +70,6 @@ }, "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-simulator#readme", "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf", + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3", "types": "./src/index.d.ts" } \ No newline at end of file diff --git a/libs/remix-solidity/package.json b/libs/remix-solidity/package.json index c4cf19f8ec..7c63f273d7 100644 --- a/libs/remix-solidity/package.json +++ b/libs/remix-solidity/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-solidity", - "version": "0.5.23", + "version": "0.5.24", "description": "Tool to load and run Solidity compiler", "main": "src/index.js", "types": "src/index.d.ts", @@ -19,7 +19,7 @@ "@ethereumjs/tx": "^4.1.1", "@ethereumjs/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-lib": "^0.5.44", + "@remix-project/remix-lib": "^0.5.45", "async": "^2.6.2", "eslint-scope": "^5.0.0", "ethers": "^5.4.2", @@ -57,5 +57,5 @@ }, "homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-solidity#readme", "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf" + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3" } \ No newline at end of file diff --git a/libs/remix-tests/package.json b/libs/remix-tests/package.json index 5701a9f288..81b5b2bf91 100644 --- a/libs/remix-tests/package.json +++ b/libs/remix-tests/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-tests", - "version": "0.2.37", + "version": "0.2.38", "description": "Tool to test Solidity smart contracts", "main": "src/index.js", "types": "./src/index.d.ts", @@ -41,9 +41,9 @@ "@ethereumjs/tx": "^4.1.1", "@ethereumjs/util": "^8.0.5", "@ethereumjs/vm": "^6.4.1", - "@remix-project/remix-lib": "^0.5.44", - "@remix-project/remix-simulator": "^0.2.37", - "@remix-project/remix-solidity": "^0.5.23", + "@remix-project/remix-lib": "^0.5.45", + "@remix-project/remix-simulator": "^0.2.38", + "@remix-project/remix-solidity": "^0.5.24", "@remix-project/remix-url-resolver": "^0.0.42", "ansi-gray": "^0.1.1", "async": "^2.6.0", @@ -78,5 +78,5 @@ "typescript": "^3.3.1" }, "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf" + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3" } \ No newline at end of file diff --git a/libs/remix-ui/app/src/lib/remix-app/remix-app.tsx b/libs/remix-ui/app/src/lib/remix-app/remix-app.tsx index d0fca73279..91b254f913 100644 --- a/libs/remix-ui/app/src/lib/remix-app/remix-app.tsx +++ b/libs/remix-ui/app/src/lib/remix-app/remix-app.tsx @@ -112,35 +112,34 @@ const RemixApp = (props: IRemixAppUi) => { setShowEnterDialog(false) localStorage.setItem('hadUsageTypeAsked', type) - await props.app.appManager.call('walkthrough', 'start') - // Use the type to setup the UI accordingly switch (type) { - case UsageTypes.Beginner: { - await props.app.appManager.call('manager', 'activatePlugin', 'LearnEth') - // const wName = 'Playground' - // const workspaces = await props.app.appManager.call('filePanel', 'getWorkspaces') - // if (!workspaces.find((workspace) => workspace.name === wName)) { - // await props.app.appManager.call('filePanel', 'createWorkspace', wName, 'playground') - // } - // await props.app.appManager.call('filePanel', 'switchToWorkspace', { name: wName, isLocalHost: false }) - - _paq.push(['trackEvent', 'enterDialog', 'usageType', 'beginner']) - break - } - case UsageTypes.Advance: { - _paq.push(['trackEvent', 'enterDialog', 'usageType', 'tutor']) - break - } - case UsageTypes.Prototyper: { - _paq.push(['trackEvent', 'enterDialog', 'usageType', 'prototyper']) - break - } - case UsageTypes.Production: { - _paq.push(['trackEvent', 'enterDialog', 'usageType', 'production']) - break - } - default: throw new Error() + case UsageTypes.Beginner: { + await props.app.appManager.call('manager', 'activatePlugin', 'LearnEth') + await props.app.appManager.call('walkthrough', 'start') + // const wName = 'Playground' + // const workspaces = await props.app.appManager.call('filePanel', 'getWorkspaces') + // if (!workspaces.find((workspace) => workspace.name === wName)) { + // await props.app.appManager.call('filePanel', 'createWorkspace', wName, 'playground') + // } + // await props.app.appManager.call('filePanel', 'switchToWorkspace', { name: wName, isLocalHost: false }) + + _paq.push(['trackEvent', 'enterDialog', 'usageType', 'beginner']) + break + } + case UsageTypes.Advance: { + _paq.push(['trackEvent', 'enterDialog', 'usageType', 'tutor']) + break + } + case UsageTypes.Prototyper: { + _paq.push(['trackEvent', 'enterDialog', 'usageType', 'prototyper']) + break + } + case UsageTypes.Production: { + _paq.push(['trackEvent', 'enterDialog', 'usageType', 'production']) + break + } + default: throw new Error() } } diff --git a/libs/remix-ui/home-tab/src/lib/components/homeTabFeatured.tsx b/libs/remix-ui/home-tab/src/lib/components/homeTabFeatured.tsx index d24ee0fb93..4f1d72bfad 100644 --- a/libs/remix-ui/home-tab/src/lib/components/homeTabFeatured.tsx +++ b/libs/remix-ui/home-tab/src/lib/components/homeTabFeatured.tsx @@ -40,7 +40,39 @@ function HomeTabFeatured() { autoPlaySpeed={15000} dotListClass="position-relative mt-2" > -
+
+ + + +
+
+ SOLIDITY DEVELOPER SURVEY 2023 +
+

+ Please take a few minutes of your time to complete the survey. +

+

+ Thank you for your support! Read the full announcement + _paq.push(['trackEvent', 'hometab', 'featuredSection', 'soliditySurvey23'])} + target="__blank" + href="https://soliditylang.org/blog/2023/12/08/solidity-developer-survey-2023-announcement/" + > + here. + +

+ + Start Survey + +
+
+
@@ -66,7 +98,7 @@ function HomeTabFeatured() {
-
+
@@ -87,7 +119,7 @@ function HomeTabFeatured() {
-
+
@@ -111,7 +143,7 @@ function HomeTabFeatured() {
-
+
diff --git a/libs/remix-ui/home-tab/src/lib/components/workspaceTemplate.tsx b/libs/remix-ui/home-tab/src/lib/components/workspaceTemplate.tsx index 6fa131d702..fc79ac359a 100644 --- a/libs/remix-ui/home-tab/src/lib/components/workspaceTemplate.tsx +++ b/libs/remix-ui/home-tab/src/lib/components/workspaceTemplate.tsx @@ -25,7 +25,7 @@ function WorkspaceTemplate({gsID, workspaceTitle, description, projectLogo, call
- +
diff --git a/libs/remix-ui/permission-handler/src/lib/permission-dialog.tsx b/libs/remix-ui/permission-handler/src/lib/permission-dialog.tsx index b428cb25da..2490939633 100644 --- a/libs/remix-ui/permission-handler/src/lib/permission-dialog.tsx +++ b/libs/remix-ui/permission-handler/src/lib/permission-dialog.tsx @@ -19,10 +19,12 @@ const PermissionHandlerDialog = (props: PermissionHandlerProps) => { } const imgFrom = () => { - return + if (!from.icon || from.icon === '') from.icon = "/assets/img/pluginManager.webp" + return } const imgTo = () => { - return + if (!to.icon || to.icon === '') to.icon = "/assets/img/pluginManager.webp" + return } const pluginsImages = () => { return ( diff --git a/libs/remix-ui/plugin-manager/src/lib/components/permissionsSettings.tsx b/libs/remix-ui/plugin-manager/src/lib/components/permissionsSettings.tsx index 017f5dc137..a9b708c92e 100644 --- a/libs/remix-ui/plugin-manager/src/lib/components/permissionsSettings.tsx +++ b/libs/remix-ui/plugin-manager/src/lib/components/permissionsSettings.tsx @@ -90,7 +90,7 @@ function PermisssionsSettings() { htmlFor={`permission-checkbox-${targetPlugin}-${funcName}-${targetPlugin}`} data-id={`permission-label-${targetPlugin}-${funcName}-${targetPlugin}`} > - {pluginName} {funcName} + {pluginName} {funcName}
diff --git a/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx b/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx index 5a672c318f..4544bb1d82 100644 --- a/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx +++ b/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx @@ -535,7 +535,7 @@ export function ContractDropdownUI(props: ContractDropdownProps) { > } > -
+
{props.count}
diff --git a/libs/remix-url-resolver/package.json b/libs/remix-url-resolver/package.json index 335d804ce5..94001d7277 100644 --- a/libs/remix-url-resolver/package.json +++ b/libs/remix-url-resolver/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-url-resolver", - "version": "0.0.66", + "version": "0.0.67", "description": "Solidity import url resolver engine", "main": "src/index.js", "types": "src/index.d.ts", @@ -41,5 +41,5 @@ "typescript": "^3.1.6" }, "typings": "src/index.d.ts", - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf" + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3" } \ No newline at end of file diff --git a/libs/remix-ws-templates/package.json b/libs/remix-ws-templates/package.json index f66f8fa012..5e35a6ca0b 100644 --- a/libs/remix-ws-templates/package.json +++ b/libs/remix-ws-templates/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remix-ws-templates", - "version": "1.0.31", + "version": "1.0.32", "description": "Create a Remix IDE workspace using different templates", "main": "src/index.js", "types": "src/index.d.ts", @@ -24,5 +24,5 @@ "ethers": "^5.4.2", "web3": "^4.1.1" }, - "gitHead": "29e14eb9e9750b43522e3667bb340ff6884d1ebf" + "gitHead": "2c7dc1096de47ad3a80cd983b29bac6ac17b30f3" } \ No newline at end of file diff --git a/libs/remixd/package.json b/libs/remixd/package.json index 7994439370..57757d2cab 100644 --- a/libs/remixd/package.json +++ b/libs/remixd/package.json @@ -1,6 +1,6 @@ { "name": "@remix-project/remixd", - "version": "0.6.20", + "version": "0.6.21", "description": "remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)", "main": "index.js", "types": "./index.d.ts",