From 235aaa14f834bf88ff6142ff5b0bbbcc3b502059 Mon Sep 17 00:00:00 2001 From: Joseph Izang Date: Tue, 27 Dec 2022 23:23:35 +0100 Subject: [PATCH 1/7] order templates in accepted order --- .../src/app/tabs/locales/en/home.json | 2 + .../src/app/tabs/locales/zh/home.json | 2 + .../src/lib/components/homeTabGetStarted.tsx | 41 +++++++++++-------- 3 files changed, 27 insertions(+), 18 deletions(-) diff --git a/apps/remix-ide/src/app/tabs/locales/en/home.json b/apps/remix-ide/src/app/tabs/locales/en/home.json index 0b2c025b7f..2f5c219afa 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/home.json +++ b/apps/remix-ide/src/app/tabs/locales/en/home.json @@ -27,6 +27,8 @@ "home.remixDefaultTemplateDesc": "Create a workspace with sample files.", "home.ozerc20TemplateDesc": "Create an ERC20 token by importing OpenZeppelin library.", "home.ozerc721TemplateDesc": "Create an NFT token by importing OpenZeppelin library.", + "home.ozerc1155TemplateDesc": "Create an ERC1155 token by importing OpenZeppelin library.", + "home.gnosisSafeMultisigTemplateDesc": "Create Multi-Signature wallets using this template.", "home.zeroxErc20TemplateDesc": "Create an ERC20 token by importing 0xProject contract.", "home.learn": "Learn", "home.remixBasics": "Remix Basics", diff --git a/apps/remix-ide/src/app/tabs/locales/zh/home.json b/apps/remix-ide/src/app/tabs/locales/zh/home.json index 3541ee6d66..f5d1a0fc33 100644 --- a/apps/remix-ide/src/app/tabs/locales/zh/home.json +++ b/apps/remix-ide/src/app/tabs/locales/zh/home.json @@ -27,6 +27,8 @@ "home.remixDefaultTemplateDesc": "创建一个带有样本文件的工作空间", "home.ozerc20TemplateDesc": "通过引入 OpenZeppelin 库来创建一个 ERC20 代币。", "home.ozerc721TemplateDesc": "通过引入 OpenZeppelin 库来创建一个 NFT 代币。", + "home.ozerc1155TemplateDesc": "", + "home.gnosisSafeMultisigTemplateDesc": "", "home.zeroxErc20TemplateDesc": "通过引入 0xProject 合约来创建一个 ERC20 代币。", "home.learn": "学习", "home.remixBasics": "Remix 基础", diff --git a/libs/remix-ui/home-tab/src/lib/components/homeTabGetStarted.tsx b/libs/remix-ui/home-tab/src/lib/components/homeTabGetStarted.tsx index b06c697edf..cd2bd6a09b 100644 --- a/libs/remix-ui/home-tab/src/lib/components/homeTabGetStarted.tsx +++ b/libs/remix-ui/home-tab/src/lib/components/homeTabGetStarted.tsx @@ -105,31 +105,36 @@ function HomeTabGetStarted ({plugin}: HomeTabGetStartedProps) { deviceType={"desktop"} itemClass="w-100" > - createWorkspace("blank")} /> - createWorkspace("remixDefault")} /> - createWorkspace("ozerc20")} /> createWorkspace("ozerc721")} /> + workspaceTitle="Gnosis MultiSig" + description={intl.formatMessage({ id: 'home.gnosisSafeMultisigTemplateDesc' })} + callback={() => createWorkspace("gnosisSafeMultisig")} /> createWorkspace("zeroxErc20")} /> + createWorkspace("ozerc20")} /> + createWorkspace("ozerc721")} /> + createWorkspace("ozerc1155")} /> + createWorkspace("remixDefault")} /> From 1fc90c7ec6394e9f8971696f2cb2bbe30240b349 Mon Sep 17 00:00:00 2001 From: Joseph Izang Date: Wed, 28 Dec 2022 00:30:19 +0100 Subject: [PATCH 2/7] reordering the Featured Plugins section --- .../src/app/tabs/locales/en/home.json | 1 + .../src/app/tabs/locales/zh/home.json | 1 + .../lib/components/homeTabFeaturedPlugins.tsx | 29 ++++++++++++++----- .../src/lib/components/homeTabGetStarted.tsx | 2 +- 4 files changed, 24 insertions(+), 9 deletions(-) diff --git a/apps/remix-ide/src/app/tabs/locales/en/home.json b/apps/remix-ide/src/app/tabs/locales/en/home.json index 2f5c219afa..07c3cee4e4 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/home.json +++ b/apps/remix-ide/src/app/tabs/locales/en/home.json @@ -21,6 +21,7 @@ "home.solhintPluginDesc": "Solhint is an open source project for linting Solidity code.", "home.sourcifyPluginDesc": "Solidity contract and metadata verification service.", "home.unitTestPluginDesc": "Write and run unit tests for your contracts in Solidity.", + "home.dgitPluginDesc": "Add source control to your projects.", "home.getStarted": "Get Started", "home.projectTemplates": "Project Templates", "home.blankTemplateDesc": "Create an empty workspace.", diff --git a/apps/remix-ide/src/app/tabs/locales/zh/home.json b/apps/remix-ide/src/app/tabs/locales/zh/home.json index f5d1a0fc33..8be3bb9b90 100644 --- a/apps/remix-ide/src/app/tabs/locales/zh/home.json +++ b/apps/remix-ide/src/app/tabs/locales/zh/home.json @@ -21,6 +21,7 @@ "home.solhintPluginDesc": "Solhint 是一个用于检查 Solidity 代码的开源项目", "home.sourcifyPluginDesc": "Solidity 合约和元数据验证服务。", "home.unitTestPluginDesc": "在 Solidity 中为你的合约编写和运行单元测试。", + "home.dgitPluginDesc": "", "home.getStarted": "开始使用", "home.projectTemplates": "项目模板", "home.blankTemplateDesc": "创建一个空的工作空间。", diff --git a/libs/remix-ui/home-tab/src/lib/components/homeTabFeaturedPlugins.tsx b/libs/remix-ui/home-tab/src/lib/components/homeTabFeaturedPlugins.tsx index 9c535301ff..8869b9b2eb 100644 --- a/libs/remix-ui/home-tab/src/lib/components/homeTabFeaturedPlugins.tsx +++ b/libs/remix-ui/home-tab/src/lib/components/homeTabFeaturedPlugins.tsx @@ -84,6 +84,12 @@ function HomeTabFeaturedPlugins ({plugin}: HomeTabFeaturedPluginsProps) { _paq.push(['trackEvent', 'hometabActivate', 'userActivate', 'solidityUnitTesting']) } + const startDgit = async () => { + await plugin.appManager.activatePlugin('dgit') + plugin.verticalIcons.select('dgit') + _paq.push(['tracEvent', 'hometabActivate', 'userActivate', 'dgit']) + } + return (
@@ -126,20 +132,19 @@ function HomeTabFeaturedPlugins ({plugin}: HomeTabFeaturedPluginsProps) { remixMaintained={true} callback={() => startSolidity()} /> - startStarkNet()} - /> startSolhint()} /> + startDgit()} + /> startSourceVerify()} /> + startStarkNet()} + /> createWorkspace("gnosisSafeMultisig")} /> Date: Wed, 28 Dec 2022 11:55:54 +0100 Subject: [PATCH 3/7] add onclickdapp artifact and pluginbutton. --- .../src/app/tabs/locales/en/home.json | 1 + apps/remix-ide/src/assets/img/dgit.webp | Bin 0 -> 6656 bytes .../src/assets/img/oneclickdapp.webp | Bin 0 -> 22854 bytes .../lib/components/homeTabFeaturedPlugins.tsx | 34 +++++++++--------- 4 files changed, 18 insertions(+), 17 deletions(-) create mode 100644 apps/remix-ide/src/assets/img/dgit.webp create mode 100644 apps/remix-ide/src/assets/img/oneclickdapp.webp diff --git a/apps/remix-ide/src/app/tabs/locales/en/home.json b/apps/remix-ide/src/app/tabs/locales/en/home.json index 07c3cee4e4..48509b2187 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/home.json +++ b/apps/remix-ide/src/app/tabs/locales/en/home.json @@ -22,6 +22,7 @@ "home.sourcifyPluginDesc": "Solidity contract and metadata verification service.", "home.unitTestPluginDesc": "Write and run unit tests for your contracts in Solidity.", "home.dgitPluginDesc": "Add source control to your projects.", + "home.oneClickDappDesc": "Quickly generate smart contract interfaces", "home.getStarted": "Get Started", "home.projectTemplates": "Project Templates", "home.blankTemplateDesc": "Create an empty workspace.", diff --git a/apps/remix-ide/src/assets/img/dgit.webp b/apps/remix-ide/src/assets/img/dgit.webp new file mode 100644 index 0000000000000000000000000000000000000000..75038b84d35cf54b0fe268077ef0e40c093b6f4f GIT binary patch literal 6656 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 M{4qPY+W%bs3vhc*H~;_u literal 0 HcmV?d00001 diff --git a/apps/remix-ide/src/assets/img/oneclickdapp.webp b/apps/remix-ide/src/assets/img/oneclickdapp.webp new file mode 100644 index 0000000000000000000000000000000000000000..ab464320cd0058f8ca73935a3c20c9615b370e6b GIT binary patch literal 22854 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 { - await plugin.appManager.activatePlugin('starkNet_compiler') - plugin.verticalIcons.select('starkNet_compiler') - _paq.push(['trackEvent', 'hometabActivate', 'userActivate', 'starkNet_compiler']) + const startOneClickDapp = async () => { + await plugin.appManager.activatePlugin('oneClickDapp') + plugin.verticalIcons.select('oneClickDapp') + _paq.push(['trackEvent', 'hometabActivate', 'userActivate', 'oneClickDapp']) } const startSolhint = async () => { await plugin.appManager.activatePlugin(['solidity', 'solhint']) @@ -138,13 +138,6 @@ function HomeTabFeaturedPlugins ({plugin}: HomeTabFeaturedPluginsProps) { description={intl.formatMessage({ id: 'home.solhintPluginDesc' })} callback={() => startSolhint()} /> - startDgit()} - /> startSourceVerify()} /> startStarkNet()} + imgPath="assets/img/dgit.webp" + envID="dgitLogo" + envText="Dgit" + description={intl.formatMessage({ id: 'home.dgitPluginDesc' })} + remixMaintained={true} + callback={() => startDgit()} + /> + startOneClickDapp()} /> Date: Wed, 28 Dec 2022 12:09:24 +0100 Subject: [PATCH 4/7] change startLearnEthTuts behaviour --- .../remix-ui/home-tab/src/lib/components/homeTabLearn.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libs/remix-ui/home-tab/src/lib/components/homeTabLearn.tsx b/libs/remix-ui/home-tab/src/lib/components/homeTabLearn.tsx index dab7548165..5f3ba436d5 100644 --- a/libs/remix-ui/home-tab/src/lib/components/homeTabLearn.tsx +++ b/libs/remix-ui/home-tab/src/lib/components/homeTabLearn.tsx @@ -31,10 +31,10 @@ function HomeTabLearn ({plugin}: HomeTabLearnProps) { window.open("https://remix-ide.readthedocs.io/en/latest/remix_tutorials_learneth.html?highlight=learneth#learneth-tutorial-repos", '_blank') } - const startLearnEthTutorial = async (tutorial) => { + const startLearnEthTutorial = async (tutorial: 'basics' | 'useofweb3js' | 'deploylibraries') => { await plugin.appManager.activatePlugin(['solidity', 'LearnEth', 'solidityUnitTesting']) - plugin.call('LearnEth', 'startTutorial', 'ethereum/remix-workshops', 'master', tutorial) plugin.verticalIcons.select('LearnEth') + plugin.call('LearnEth', 'startTutorial', 'ethereum/remix-workshops', 'master', tutorial) _paq.push(['trackEvent', 'hometab', 'startLearnEthTutorial', tutorial]) } @@ -45,7 +45,9 @@ function HomeTabLearn ({plugin}: HomeTabLearnProps) { From bfa5fe8931897cf57a2af53772593eb18872bf02 Mon Sep 17 00:00:00 2001 From: Joseph Izang Date: Wed, 18 Jan 2023 16:33:42 +0100 Subject: [PATCH 6/7] fix remix basics --- apps/remix-ide/src/app/tabs/locales/en/home.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/remix-ide/src/app/tabs/locales/en/home.json b/apps/remix-ide/src/app/tabs/locales/en/home.json index fad7729185..d45b27442f 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/home.json +++ b/apps/remix-ide/src/app/tabs/locales/en/home.json @@ -33,7 +33,7 @@ "home.gnosisSafeMultisigTemplateDesc": "Create Multi-Signature wallets using this template.", "home.zeroxErc20TemplateDesc": "Create an ERC20 token by importing 0xProject contract.", "home.learn": "Learn", - "home.learnEth1": "Intro to Solidity", + "home.learnEth1": "Remix Basics", "home.learnEth1Desc":"An introduction to Remix's interface and basic operations.", "home.learnEth2": "Intro to Solidity", "home.learnEth2Desc": "Interactively learn the Solidity beginner concepts.", From 9b7983e4cc596d62d283f8f3384e3fe44fbc1037 Mon Sep 17 00:00:00 2001 From: Joseph Izang Date: Wed, 18 Jan 2023 16:56:05 +0100 Subject: [PATCH 7/7] make changes to home.json --- apps/remix-ide/src/app/tabs/locales/en/home.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/remix-ide/src/app/tabs/locales/en/home.json b/apps/remix-ide/src/app/tabs/locales/en/home.json index d45b27442f..af2adf8f12 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/home.json +++ b/apps/remix-ide/src/app/tabs/locales/en/home.json @@ -36,9 +36,9 @@ "home.learnEth1": "Remix Basics", "home.learnEth1Desc":"An introduction to Remix's interface and basic operations.", "home.learnEth2": "Intro to Solidity", - "home.learnEth2Desc": "Interactively learn the Solidity beginner concepts.", - "home.remixAdvanced": "Remix Advanced", - "home.remixAdvancedDesc": "Learn to deploy with Libraries", + "home.learnEth2Desc": "Interactively learn Solidity beginner concepts.", + "home.remixAdvanced": "Deploying with Libraries", + "home.remixAdvancedDesc": "Learn to deploy with libraries in Remix", "home.remixYoutubePlaylist": "Remix Youtube Playlist", "home.remixTwitterProfile": "Remix Twitter Profile", "home.remixLinkedinProfile": "Remix Linkedin Profile",