diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts index 932b8bc77c..e094677026 100644 --- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts +++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts @@ -20,8 +20,11 @@ export class CopilotSuggestion extends Plugin { ready: boolean constructor() { super(profile) - this.service = new SuggestionService() this.context = '' + } + + onActivation(): void { + this.service = new SuggestionService() this.service.events.on('progress', (data) => { this.emit('loading', data) }) @@ -29,7 +32,7 @@ export class CopilotSuggestion extends Plugin { }) this.service.events.on('ready', (data) => { this.ready = true - }) + }) } useRemoteService(service: string) { diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts index 0598175265..a234b032ba 100644 --- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts +++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts @@ -1,11 +1,13 @@ import EventEmitter from 'events' -export type SuggestOptions = { max_new_tokens: number, - temperature: number, - do_sample:boolean - top_k: number, - top_p:number, - stream_result:boolean} +export type SuggestOptions = { + max_new_tokens: number, + temperature: number, + do_sample:boolean + top_k: number, + top_p:number, + stream_result:boolean +} export class SuggestionService { worker: Worker @@ -17,12 +19,12 @@ export class SuggestionService { this.worker = new Worker(new URL('./worker.js', import.meta.url), { type: 'module' }); - this.init() this.events = new EventEmitter() this.responses = {} this.current } + //todo ask Yann if we should keep the model terminate(): void { this.worker.terminate() this.worker = new Worker(new URL('./worker.js', import.meta.url), { diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js index 0623b3712f..04b77ba634 100644 --- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js +++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js @@ -22,6 +22,7 @@ class CodeCompletionPipeline { // Listen for messages from the main thread self.addEventListener('message', async (event) => { + console.log("worker message ", event.data) const { id, model, text, max_new_tokens, cmd, diff --git a/apps/remix-ide/src/app/plugins/openaigpt.tsx b/apps/remix-ide/src/app/plugins/openaigpt.tsx index 9d1e121722..78892c599c 100644 --- a/apps/remix-ide/src/app/plugins/openaigpt.tsx +++ b/apps/remix-ide/src/app/plugins/openaigpt.tsx @@ -19,7 +19,7 @@ export class OpenAIGpt extends Plugin { async message(prompt): Promise { this.call('layout', 'maximizeTerminal') - this.call('terminal', 'log', 'Waiting for GPT answer...') + this.call('terminal', 'log', { type: 'typewriterwarning', value: 'Waiting for GPT answer...'}) let result try { result = await ( diff --git a/apps/remix-ide/src/app/plugins/solcoderAI.tsx b/apps/remix-ide/src/app/plugins/solcoderAI.tsx index 58bc953b6a..aa99c74f3a 100644 --- a/apps/remix-ide/src/app/plugins/solcoderAI.tsx +++ b/apps/remix-ide/src/app/plugins/solcoderAI.tsx @@ -22,7 +22,7 @@ export class SolCoder extends Plugin { async code_generation(prompt): Promise { this.emit("aiInfering") this.call('layout', 'maximizeTerminal') - this.call('terminal', 'log', 'Waiting for Solcoder answer...') + this.call('terminal', 'log', { type: 'typewriterwarning', value: 'Waiting for Solcoder answer...'}) let result try { result = await( @@ -47,7 +47,7 @@ export class SolCoder extends Plugin { async solidity_answer(prompt): Promise { this.emit("aiInfering") this.call('layout', 'maximizeTerminal') - this.call('terminal', 'log', 'Waiting for Solcoder answer...') + this.call('terminal', 'log', { type: 'typewriterwarning', value: 'Waiting for Solcoder answer...'}) let result try { result = await( @@ -77,7 +77,7 @@ export class SolCoder extends Plugin { async code_explaining(prompt): Promise { this.emit("aiInfering") this.call('layout', 'maximizeTerminal') - this.call('terminal', 'log', 'Waiting for Solcoder answer...') + this.call('terminal', 'log', { type: 'typewriterwarning', value: 'Waiting for Solcoder answer...'}) let result try { result = await( diff --git a/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json b/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json index d8f1b3695d..7826d29fa8 100644 --- a/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json +++ b/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json @@ -2,10 +2,10 @@ "remixUiTabs.tooltipText1": "Run script (CTRL + SHIFT + S)", "remixUiTabs.tooltipText2": "Compile CTRL + S", "remixUiTabs.tooltipText3": "Select .sol or .yul file to compile or a .ts or .js file and run it", - "remixUiTabs.tooltipText4": "Select .sol file to explain with AI [BETA]", - "remixUiTabs.tooltipText5": "Explain the contract/s in current file [BETA]", - "remixUiTabs.tooltipText6": "AI Copilot [BETA]", - "remixUiTabs.tooltipText3": "Select .sol, .vy or .yul file to compile or a .ts or .js file and run it", + "remixUiTabs.tooltipText4": "Select .sol file to use AI tools [BETA]", + "remixUiTabs.tooltipText5": "Explain the contract(s) in current file [BETA]", + "remixUiTabs.tooltipText6": "Enable AI Copilot [BETA]. Note that the AI model is downloaded once to your browser's memory - approximately 50MB.", + "remixUiTabs.tooltipText7": "Disable AI Copilot [BETA]", "remixUiTabs.zoomOut": "Zoom out", "remixUiTabs.zoomIn": "Zoom in" } diff --git a/apps/remix-ide/src/app/tabs/settings-tab.tsx b/apps/remix-ide/src/app/tabs/settings-tab.tsx index 7548db4f07..7954bf5d36 100644 --- a/apps/remix-ide/src/app/tabs/settings-tab.tsx +++ b/apps/remix-ide/src/app/tabs/settings-tab.tsx @@ -60,6 +60,12 @@ module.exports = class SettingsTab extends ViewPlugin { this.renderComponent() } + onActivation(): void { + this.on('copilot-suggestion', 'loading', (data) => { + this.call('terminal', 'log', { type: 'typewritererror', value: `.` }) + console.log("oninit") + }) + } render() { return (
diff --git a/apps/remix-ide/src/assets/css/themes/bootstrap-cerulean.min.css b/apps/remix-ide/src/assets/css/themes/bootstrap-cerulean.min.css index 3ed6161e19..eac0b0f94f 100644 --- a/apps/remix-ide/src/assets/css/themes/bootstrap-cerulean.min.css +++ b/apps/remix-ide/src/assets/css/themes/bootstrap-cerulean.min.css @@ -10,6 +10,7 @@ * Copyright 2011-2020 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */:root { + --ai: #da2de4; --blue:#033c73; --indigo:#6610f2; --purple:#6f42c1; @@ -8373,6 +8374,9 @@ a.text-danger:focus,a.text-danger:hover { a.text-light:focus,a.text-light:hover { color:#cbd3da!important } +.text-ai { + color: #da2de4 !important; +} .text-dark { color:#343a40!important } diff --git a/apps/remix-ide/src/assets/css/themes/bootstrap-cyborg.min.css b/apps/remix-ide/src/assets/css/themes/bootstrap-cyborg.min.css index 47c7fa9b91..0c74e7f730 100644 --- a/apps/remix-ide/src/assets/css/themes/bootstrap-cyborg.min.css +++ b/apps/remix-ide/src/assets/css/themes/bootstrap-cyborg.min.css @@ -11,6 +11,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap); :root { + --ai: #2de7f3; --blue:#2a9fd6; --indigo:#6610f2; --purple:#6f42c1; @@ -8375,6 +8376,9 @@ a.text-danger:focus,a.text-danger:hover { a.text-light:focus,a.text-light:hover { color:#000!important } +.text-dark { + color: #babbcc !important; +} .text-dark { color:#adafae!important } diff --git a/apps/remix-ide/src/assets/css/themes/bootstrap-flatly.min.css b/apps/remix-ide/src/assets/css/themes/bootstrap-flatly.min.css index e9b14b99af..45d3dfe8eb 100644 --- a/apps/remix-ide/src/assets/css/themes/bootstrap-flatly.min.css +++ b/apps/remix-ide/src/assets/css/themes/bootstrap-flatly.min.css @@ -10,7 +10,8 @@ * Copyright 2011-2020 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */@import url(https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400&display=swap);:root { - --blue:#2c3e50; + --ai: #da2de4; + --blue:#2c3e50; --indigo:#6610f2; --purple:#6f42c1; --pink:#e83e8c; @@ -7004,6 +7005,9 @@ a.text-danger:focus,a.text-danger:hover { a.text-light:focus,a.text-light:hover { color:#c0cdd1!important } +.text-ai { + color: #da2de4 !important; +} .text-dark { color:#7b8a8b!important } diff --git a/apps/remix-ide/src/assets/css/themes/bootstrap-spacelab.min.css b/apps/remix-ide/src/assets/css/themes/bootstrap-spacelab.min.css index 3129408286..dc4d761c61 100644 --- a/apps/remix-ide/src/assets/css/themes/bootstrap-spacelab.min.css +++ b/apps/remix-ide/src/assets/css/themes/bootstrap-spacelab.min.css @@ -11,6 +11,7 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */@import url(https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap); :root { + --ai: #da2de4; --blue:#446e9b; --indigo:#6610f2; --purple:#6f42c1; @@ -8375,6 +8376,9 @@ a.text-danger:focus,a.text-danger:hover { a.text-light:focus,a.text-light:hover { color:#c8c8c8!important } +.text-ai { + color: #da2de4 !important; +} .text-dark { color:#333!important } diff --git a/apps/remix-ide/src/assets/css/themes/remix-black_undtds.css b/apps/remix-ide/src/assets/css/themes/remix-black_undtds.css index 103957dc53..8af0836f0b 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-black_undtds.css +++ b/apps/remix-ide/src/assets/css/themes/remix-black_undtds.css @@ -1,5 +1,6 @@ @import url('https://fonts.googleapis.com/css?family=Nunito+Sans:400,600&display=swap'); :root { + --ai: #2de7f3; --blue: #90c3f6; --indigo: #6610f2; --purple: #9e77f6; @@ -8590,6 +8591,9 @@ a.text-light:hover { .text-dark { color: #babbcc !important; } +.text-ai { + color: #2de7f3 !important; +} a.text-dark:focus, a.text-dark:hover { color: #6f7087 !important; diff --git a/apps/remix-ide/src/assets/css/themes/remix-candy_ikhg4m.css b/apps/remix-ide/src/assets/css/themes/remix-candy_ikhg4m.css index 73574f8f5f..aba42e3ac6 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-candy_ikhg4m.css +++ b/apps/remix-ide/src/assets/css/themes/remix-candy_ikhg4m.css @@ -1,4 +1,5 @@ :root { + --ai: #da2de4; --blue: #007bff; --indigo: #6610f2; --purple: #6f42c1; @@ -9364,7 +9365,9 @@ a.text-light:hover, a.text-light:focus { color: #d9d9d9 !important; } - +.text-ai { + color: #da2de4 !important; +} .text-dark { color: #11556c !important; } diff --git a/apps/remix-ide/src/assets/css/themes/remix-dark_tvx1s2.css b/apps/remix-ide/src/assets/css/themes/remix-dark_tvx1s2.css index de97d73757..1708371250 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-dark_tvx1s2.css +++ b/apps/remix-ide/src/assets/css/themes/remix-dark_tvx1s2.css @@ -1,4 +1,5 @@ :root { + --ai: #2de7f3; --blue: #007aa6; --indigo: #6610f2; --purple: #9e77f6; @@ -8570,6 +8571,9 @@ a.text-info:hover { .text-warning { color: #c97539 !important; } +.text-ai { + color: #2de7f3 !important; +} a.text-warning:focus, a.text-warning:hover { color: #8f5227 !important; diff --git a/apps/remix-ide/src/assets/css/themes/remix-hacker_owl.css b/apps/remix-ide/src/assets/css/themes/remix-hacker_owl.css index 0ef4225d57..6c9ecb9534 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-hacker_owl.css +++ b/apps/remix-ide/src/assets/css/themes/remix-hacker_owl.css @@ -1,6 +1,7 @@ @import url('https://fonts.googleapis.com/css2?family=Saira:ital,wght@0,300;0,400;0,500;1,300;1,400&display=swap'); @import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,400;0,700;1,400&display=swap'); :root { + --ai: #2de7f3; --blue: #2cc1f7; --indigo: #6610f2; --purple: #6f42c1; @@ -8604,6 +8605,9 @@ a.text-light:hover { .text-dark { color: #babbcc !important; } +.text-ai { + color: #2de7f3 !important; +} a.text-dark:focus, a.text-dark:hover { color: #6f7087 !important; diff --git a/apps/remix-ide/src/assets/css/themes/remix-light_powaqg.css b/apps/remix-ide/src/assets/css/themes/remix-light_powaqg.css index b99025172c..3d47c2031c 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-light_powaqg.css +++ b/apps/remix-ide/src/assets/css/themes/remix-light_powaqg.css @@ -1,4 +1,5 @@ :root { + --ai: #da2de4; --blue: #007bff; --indigo: #6610f2; --purple: #7c47b9; @@ -9360,7 +9361,9 @@ a.text-light:hover, a.text-light:focus { color: #d9d9d9 !important; } - +.text-ai { + color: #da2de4 !important; +} .text-dark { color: #747B90 !important; } diff --git a/apps/remix-ide/src/assets/css/themes/remix-midcentury_hrzph3.css b/apps/remix-ide/src/assets/css/themes/remix-midcentury_hrzph3.css index f64bc8d01b..0b6cb171f4 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-midcentury_hrzph3.css +++ b/apps/remix-ide/src/assets/css/themes/remix-midcentury_hrzph3.css @@ -1,4 +1,5 @@ :root { + --ai: #da2de4; --blue: #007bff; --indigo: #6610f2; --purple: #6f42c1; @@ -9366,7 +9367,9 @@ a.text-light:hover, a.text-light:focus { color: #d9d9d9 !important; } - +.text-ai { + color: #da2de4 !important; +} .text-dark { color: #11556c !important; } diff --git a/apps/remix-ide/src/assets/css/themes/remix-unicorn.css b/apps/remix-ide/src/assets/css/themes/remix-unicorn.css index ebf508ff83..a7f4196f71 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-unicorn.css +++ b/apps/remix-ide/src/assets/css/themes/remix-unicorn.css @@ -1,4 +1,5 @@ :root { + --ai: #da2de4; --blue: #007bff; --indigo: #6610f2; --purple: #7c47b9; @@ -9360,7 +9361,9 @@ a.text-light:hover, a.text-light:focus { color: #d9d9d9 !important; } - +.text-ai { + color: #da2de4 !important; +} .text-dark { color: #747B90 !important; } diff --git a/apps/remix-ide/src/assets/css/themes/remix-violet.css b/apps/remix-ide/src/assets/css/themes/remix-violet.css index 275d0f0907..85b855c862 100644 --- a/apps/remix-ide/src/assets/css/themes/remix-violet.css +++ b/apps/remix-ide/src/assets/css/themes/remix-violet.css @@ -1,4 +1,5 @@ :root { + --ai: #da2de4; --blue: #007bff; --indigo: #6610f2; --purple: #7c47b9; @@ -9356,7 +9357,9 @@ a.text-light:hover, a.text-light:focus { color: #d9d9d9 !important; } - +.text-ai { + color: #da2de4 !important; +} .text-dark { color: #747B90 !important; } diff --git a/apps/remixdesktop/src/menus/view.ts b/apps/remixdesktop/src/menus/view.ts index 0a36d5367b..e488cfa50e 100644 --- a/apps/remixdesktop/src/menus/view.ts +++ b/apps/remixdesktop/src/menus/view.ts @@ -79,9 +79,9 @@ export default ( accelerator: 'CmdOrCtrl+0', click: function(item, focusedWindow) { if (focusedWindow) - { - focusedWindow.webContents.setZoomFactor(1) - } + { + focusedWindow.webContents.setZoomFactor(1) + } } }, diff --git a/diff.diff b/diff.diff deleted file mode 100644 index d7001f24c6..0000000000 --- a/diff.diff +++ /dev/null @@ -1,8355 +0,0 @@ -diff --git a/.circleci/config.yml b/.circleci/config.yml -index adc592c1c..d6b6620bb 100644 ---- a/.circleci/config.yml -+++ b/.circleci/config.yml -@@ -388,25 +388,16 @@ jobs: - - run: yarn install --cwd ./apps/remix-ide-e2e --modules-folder ../../node_modules - - run: mkdir node_modules/hardhat && wget https://unpkg.com/hardhat/console.sol -O node_modules/hardhat/console.sol - - run: ls -la ./dist/apps/remix-ide/assets/js -- - run: yarn run selenium-install --singleDriverInstall=firefox -+ - run: yarn run selenium-install || yarn run selenium-install - - when: - condition: - equal: [ "chrome", << parameters.browser >> ] - steps: -- - run: mkdir -p node_modules/selenium-standalone/.selenium/chromedriver/latest-x64/ - - run: cp ~/bin/chromedriver /home/circleci/remix-project/node_modules/selenium-standalone/.selenium/chromedriver/latest-x64/ -- - run: -- name: run selenium -- command: yarn selenium-standalone start --singleDriverStart=chrome -- background: true -- - when: -- condition: -- equal: [ "firefox", << parameters.browser >> ] -- steps: -- - run: -- name: run selenium -- command: yarn selenium-standalone start --singleDriverStart=firefox -- background: true -+ - run: -+ name: Start Selenium -+ command: yarn run selenium -+ background: true - - run: ./apps/remix-ide/ci/<< parameters.script >> << parameters.browser >> << parameters.jobsize >> << parameters.job >> - - store_test_results: - path: ./reports/tests -@@ -448,12 +439,11 @@ jobs: - - run: unzip ./persist/dist.zip - - run: unzip ./persist/plugin-<< parameters.plugin >>.zip - - run: yarn install --cwd ./apps/remix-ide-e2e --modules-folder ../../node_modules -- - run: yarn run selenium-install --singleDriverInstall=firefox -- - run: mkdir -p node_modules/selenium-standalone/.selenium/chromedriver/latest-x64/ -+ - run: yarn run selenium-install || yarn run selenium-install - - run: cp ~/bin/chromedriver /home/circleci/remix-project/node_modules/selenium-standalone/.selenium/chromedriver/latest-x64/ - - run: - name: Start Selenium -- command: yarn run selenium --singleDriverStart=chrome -+ command: yarn run selenium - background: true - - run: ./apps/remix-ide/ci/browser_test_plugin.sh << parameters.plugin >> - - store_test_results: -diff --git a/.github/workflows/pr-reminder.yml b/.github/workflows/pr-reminder.yml -index 532a7555b..d841471ec 100644 ---- a/.github/workflows/pr-reminder.yml -+++ b/.github/workflows/pr-reminder.yml -@@ -14,4 +14,4 @@ jobs: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - webhook-url: ${{ secrets.DISCORD_WEBHOOK_URL }} -- freeze-date: '2024-02-26T18:00:00Z' -+ freeze-date: '2024-02-12T18:00:00Z' -diff --git a/apps/etherscan/src/app/utils/networks.ts b/apps/etherscan/src/app/utils/networks.ts -index bcb899349..5609971a3 100644 ---- a/apps/etherscan/src/app/utils/networks.ts -+++ b/apps/etherscan/src/app/utils/networks.ts -@@ -34,7 +34,6 @@ export const scanAPIurls = { - 44787: 'https://api-alfajores.celoscan.io/api', - 2888: 'https://api-testnet.bobascan.com/api', - 84531: 'https://api-goerli.basescan.org/api', -- 84532: "https://api-sepolia.basescan.org/api", - 1442: 'https://api-testnet-zkevm.polygonscan.com/api', - 59140: 'https://api-testnet.lineascan.build/api', - } -diff --git a/apps/remix-ide-e2e/src/tests/ballot.test.ts b/apps/remix-ide-e2e/src/tests/ballot.test.ts -index 823259bda..7e9c51e43 100644 ---- a/apps/remix-ide-e2e/src/tests/ballot.test.ts -+++ b/apps/remix-ide-e2e/src/tests/ballot.test.ts -@@ -118,6 +118,7 @@ module.exports = { - .connectToExternalHttpProvider('http://localhost:8545', 'Custom') - .clickLaunchIcon('solidity') - .clickLaunchIcon('udapp') -+ .pause(2000) - .clearValue('input[placeholder="bytes32[] proposalNames"]') - .setValue('input[placeholder="bytes32[] proposalNames"]', '["0x48656c6c6f20576f726c64210000000000000000000000000000000000000000"]') - .click('*[data-id="Deploy - transact (not payable)"]') -@@ -554,4 +555,4 @@ contract Retriever is Storage { - return number; - } - } --` -+` -\ No newline at end of file -diff --git a/apps/remix-ide-e2e/src/tests/ballot_0_4_14.test.ts b/apps/remix-ide-e2e/src/tests/ballot_0_4_14.test.ts -index f1383ccfa..09398a896 100644 ---- a/apps/remix-ide-e2e/src/tests/ballot_0_4_14.test.ts -+++ b/apps/remix-ide-e2e/src/tests/ballot_0_4_14.test.ts -@@ -94,6 +94,7 @@ module.exports = { - .connectToExternalHttpProvider('http://localhost:8545', 'Custom') - .clickLaunchIcon('solidity') - .clickLaunchIcon('udapp') -+ .pause(2000) - .clearValue('input[placeholder="uint8 _numProposals"]') - .setValue('input[placeholder="uint8 _numProposals"]', '2') - .click('*[data-id="Deploy - transact (not payable)"]') -diff --git a/apps/remix-ide-e2e/src/tests/file_explorer_dragdrop.test.ts b/apps/remix-ide-e2e/src/tests/file_explorer_dragdrop.test.ts -index 949bf86d5..edcf90d88 100644 ---- a/apps/remix-ide-e2e/src/tests/file_explorer_dragdrop.test.ts -+++ b/apps/remix-ide-e2e/src/tests/file_explorer_dragdrop.test.ts -@@ -3,101 +3,101 @@ import { NightwatchBrowser } from 'nightwatch' - import init from '../helpers/init' - - const checkBrowserIsChrome = function (browser: NightwatchBrowser) { -- return browser.browserName.indexOf('chrome') > -1 -+ return browser.browserName.indexOf('chrome') > -1 - } - - - module.exports = { -- '@disabled': true, -- before: function (browser: NightwatchBrowser, done: VoidFunction) { -- init(browser, done) -- }, -- 'drag and drop file from root to contracts #group1 ': function (browser: NightwatchBrowser) { -- if (checkBrowserIsChrome(browser)) { -- browser -- .clickLaunchIcon('filePanel') -- .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]') -- .findElement('*[data-id="treeViewLitreeViewItemcontracts"]', (el) => { -- console.log((el as any).value.getId()) -- const id = (el as any).value.getId() -- browser -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemREADME.txt"]') -- .dragAndDrop('li[data-id="treeViewLitreeViewItemREADME.txt"]', id) -- .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -- .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]') -- }) -- } -- }, -+ '@disabled': true, -+ before: function (browser: NightwatchBrowser, done: VoidFunction) { -+ init(browser, done) -+ }, -+ 'drag and drop file from root to contracts #group1 ': function (browser: NightwatchBrowser) { -+ if (checkBrowserIsChrome(browser)) { -+ browser -+ .clickLaunchIcon('filePanel') -+ .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]') -+ .findElement('*[data-id="treeViewLitreeViewItemcontracts"]', (el) => { -+ console.log((el as any).value.getId()) -+ const id = (el as any).value.getId() -+ browser -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemREADME.txt"]') -+ .dragAndDrop('li[data-id="treeViewLitreeViewItemREADME.txt"]', id) -+ .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -+ .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]') -+ }) -+ } -+ }, - -- 'drag and drop file from contracts to root #group1': function (browser: NightwatchBrowser) { -- if (checkBrowserIsChrome(browser)) { -- browser.findElement('*[data-id="treeViewUltreeViewMenu"]', (el) => { -- console.log((el as any).value.getId()) -- const id = (el as any).value.getId() -- browser -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') -- .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]', id) -- .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -- .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -- }) -- browser.pause(1000) -- .waitForElementVisible('li[data-id="treeViewLitreeViewItem1_Storage.sol"]') -- } -- }, -- 'drag and drop scripts from root to contracts #group1': function (browser: NightwatchBrowser) { -- if (checkBrowserIsChrome(browser)) { -- browser -- .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]') -- .findElement('*[data-id="treeViewLitreeViewItemcontracts"]', (el) => { -- console.log((el as any).value.getId()) -- const id = (el as any).value.getId() -- browser -- .waitForElementVisible('div[data-id="treeViewDivDraggableItemscripts"]') -- .dragAndDrop('div[data-id="treeViewDivDraggableItemscripts"]', id) -- .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -- .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/scripts"]') -- }) -- } -- }, -- 'drag scripts from contracts to root #group1': function (browser: NightwatchBrowser) { -- if (checkBrowserIsChrome(browser)) { -- browser.findElement('*[data-id="treeViewUltreeViewMenu"]', (el) => { -- console.log((el as any).value.getId()) -- const id = (el as any).value.getId() -- browser -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/scripts"]') -- .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/scripts"]', id) -- .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -- .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -- }) -- browser.pause(1000) -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts"]') -+ 'drag and drop file from contracts to root #group1': function (browser: NightwatchBrowser) { -+ if (checkBrowserIsChrome(browser)) { -+ browser.findElement('*[data-id="treeViewUltreeViewMenu"]', (el) => { -+ console.log((el as any).value.getId()) -+ const id = (el as any).value.getId() -+ browser -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') -+ .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]', id) -+ .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -+ .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -+ }) -+ browser.pause(1000) -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItem1_Storage.sol"]') -+ } -+ }, -+ 'drag and drop scripts from root to contracts #group1': function (browser: NightwatchBrowser) { -+ if (checkBrowserIsChrome(browser)) { -+ browser -+ .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]') -+ .findElement('*[data-id="treeViewLitreeViewItemcontracts"]', (el) => { -+ console.log((el as any).value.getId()) -+ const id = (el as any).value.getId() -+ browser -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts"]') -+ .dragAndDrop('li[data-id="treeViewLitreeViewItemscripts"]', id) -+ .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -+ .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/scripts"]') -+ }) -+ } -+ }, -+ 'drag scripts from contracts to root #group1': function (browser: NightwatchBrowser) { -+ if (checkBrowserIsChrome(browser)) { -+ browser.findElement('*[data-id="treeViewUltreeViewMenu"]', (el) => { -+ console.log((el as any).value.getId()) -+ const id = (el as any).value.getId() -+ browser -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/scripts"]') -+ .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/scripts"]', id) -+ .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -+ .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -+ }) -+ browser.pause(1000) -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts"]') -+ } -+ }, -+ 'drag into nested folder': function (browser: NightwatchBrowser) { -+ if (checkBrowserIsChrome(browser)) { -+ browser.waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts"]') -+ .rightClick('li[data-id="treeViewLitreeViewItemscripts"]') -+ .waitForElementPresent('[data-id="contextMenuItemnewFolder') -+ .click('[data-id="contextMenuItemnewFolder') -+ .waitForElementVisible('*[data-id$="fileExplorerTreeItemInput"]') -+ .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', 'nested') -+ .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) -+ .findElement('*[data-id="treeViewLitreeViewItemscripts/nested"]', (el) => { -+ console.log((el as any).value.getId()) -+ const id = (el as any).value.getId() -+ browser -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]') -+ .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]', id) -+ .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -+ .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -+ .waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts/nested/README.txt"]') -+ }) -+ } - } -- }, -- 'drag into nested folder': function (browser: NightwatchBrowser) { -- if (checkBrowserIsChrome(browser)) { -- browser.waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts"]') -- .rightClick('li[data-id="treeViewLitreeViewItemscripts"]') -- .waitForElementPresent('[data-id="contextMenuItemnewFolder') -- .click('[data-id="contextMenuItemnewFolder') -- .waitForElementVisible('*[data-id$="fileExplorerTreeItemInput"]') -- .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', 'nested') -- .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) -- .findElement('*[data-id="treeViewLitreeViewItemscripts/nested"]', (el) => { -- console.log((el as any).value.getId()) -- const id = (el as any).value.getId() -- browser -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]') -- .dragAndDrop('li[data-id="treeViewLitreeViewItemcontracts/README.txt"]', id) -- .waitForElementPresent('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') -- .execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() }) -- .waitForElementVisible('li[data-id="treeViewLitreeViewItemscripts/nested/README.txt"]') -- }) -- } -- } - - - --} -+} -\ No newline at end of file -diff --git a/apps/remix-ide-e2e/src/tests/vyper_api.test.ts b/apps/remix-ide-e2e/src/tests/vyper_api.test.ts -index 3ac5b6561..5ef312d8a 100644 ---- a/apps/remix-ide-e2e/src/tests/vyper_api.test.ts -+++ b/apps/remix-ide-e2e/src/tests/vyper_api.test.ts -@@ -41,30 +41,8 @@ module.exports = { - .openFile('examples/auctions/blind_auction.vy') - }, - -- 'Context menu click to compile blind_auction should succeed #group1': function (browser: NightwatchBrowser) { -- browser -- .click('*[data-id="treeViewLitreeViewItemexamples/auctions/blind_auction.vy"]') -- .rightClick('*[data-id="treeViewLitreeViewItemexamples/auctions/blind_auction.vy"]') -- .waitForElementPresent('[data-id="contextMenuItemvyper"]') -- .click('[data-id="contextMenuItemvyper"]') -- .clickLaunchIcon('vyper') -- // @ts-ignore -- .frame(0) -- .waitForElementVisible({ -- selector:'[data-id="compilation-details"]', -- timeout: 120000 -- }) -- .click('[data-id="compilation-details"]') -- .frameParent() -- .waitForElementVisible('[data-id="copy-abi"]') -- .waitForElementVisible({ -- selector: "//*[@class='variable-value' and contains(.,'highestBidder')]", -- locateStrategy: 'xpath', -- }) -- }, -- - 'Compile blind_auction should success #group1': function (browser: NightwatchBrowser) { -- browser -+ browser.clickLaunchIcon('vyper') - // @ts-ignore - .frame(0) - .click('[data-id="remote-compiler"]') -diff --git a/apps/remix-ide/ci/makeMockCompiler.js b/apps/remix-ide/ci/makeMockCompiler.js -index 5e6975850..a45e91e00 100644 ---- a/apps/remix-ide/ci/makeMockCompiler.js -+++ b/apps/remix-ide/ci/makeMockCompiler.js -@@ -2,7 +2,7 @@ - - var fs = require('fs') - var compiler = require('solc') --var compilerInput = require('@remix-project/remix-solidity').compilerInputFactory -+var compilerInput = require('@remix-project/remix-solidity').CompilerInput - var defaultVersion = 'soljson-v0.8.24+commit.e11b9ed9.js' - const path = require('path') - -diff --git a/apps/remix-ide/src/app.js b/apps/remix-ide/src/app.js -index 6f01181fa..33e0e4d4c 100644 ---- a/apps/remix-ide/src/app.js -+++ b/apps/remix-ide/src/app.js -@@ -59,6 +59,7 @@ import { ripgrepPlugin } from './app/plugins/electron/ripgrepPlugin' - import { compilerLoaderPlugin, compilerLoaderPluginDesktop } from './app/plugins/electron/compilerLoaderPlugin' - - import {OpenAIGpt} from './app/plugins/openaigpt' -+import {SolCoder} from './app/plugins/solcoderAI' - - const isElectron = require('is-electron') - -@@ -233,6 +234,7 @@ class AppComponent { - - // ----------------- AI -------------------------------------- - const openaigpt = new OpenAIGpt() -+ const solcoder = new SolCoder() - const copilotSuggestion = new CopilotSuggestion() - - // ----------------- import content service ------------------------ -@@ -360,6 +362,7 @@ class AppComponent { - solidityScript, - templates, - openaigpt, -+ solcoder, - copilotSuggestion - ]) - -@@ -515,7 +518,9 @@ class AppComponent { - } - ) - await this.appManager.activatePlugin(['solidity-script', 'openaigpt']) -+ await this.appManager.activatePlugin(['solcoder']) - -+ - - await this.appManager.activatePlugin(['filePanel']) - // Set workspace after initial activation -diff --git a/apps/remix-ide/src/app/plugins/contractFlattener.tsx b/apps/remix-ide/src/app/plugins/contractFlattener.tsx -index a5f02719c..2c3640bcd 100644 ---- a/apps/remix-ide/src/app/plugins/contractFlattener.tsx -+++ b/apps/remix-ide/src/app/plugins/contractFlattener.tsx -@@ -2,7 +2,6 @@ import React from 'react' - import {Plugin} from '@remixproject/engine' - import {customAction} from '@remixproject/plugin-api' - import {concatSourceFiles, getDependencyGraph, normalizeContractPath} from '@remix-ui/solidity-compiler' --import type {CompilerInput, CompilationSource } from '@remix-project/remix-solidity' - - const _paq = (window._paq = window._paq || []) - -@@ -26,7 +25,7 @@ export class ContractFlattener extends Plugin { - if (data.sources && Object.keys(data.sources).length > 1) { - if (this.triggerFlattenContract) { - this.triggerFlattenContract = false -- await this.flattenContract(source, file, data, JSON.parse(input)) -+ await this.flattenContract(source, file, data) - } - } - }) -@@ -48,17 +47,17 @@ export class ContractFlattener extends Plugin { - * Takes the flattened result, writes it to a file and returns the result. - * @returns {Promise} - */ -- async flattenContract(source: {sources: any; target: string}, filePath: string, data: {contracts: any; sources: any}, input: CompilerInput): Promise { -+ async flattenContract(source: {sources: any; target: string}, filePath: string, data: {contracts: any; sources: any}): Promise { - const appendage = '_flattened.sol' - const normalized = normalizeContractPath(filePath) - const path = `${normalized[normalized.length - 2]}${appendage}` -- const ast: { [contractName: string]: CompilationSource } = data.sources -+ const ast = data.sources - let dependencyGraph - let sorted - let result - let sources - try { -- dependencyGraph = getDependencyGraph(ast, filePath, input.settings.remappings) -+ dependencyGraph = getDependencyGraph(ast, filePath) - sorted = dependencyGraph.isEmpty() ? [filePath] : dependencyGraph.sort().reverse() - sources = source.sources - result = concatSourceFiles(sorted, sources) -diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts -index ac1798b40..708243fca 100644 ---- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts -+++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/copilot-suggestion.ts -@@ -8,36 +8,31 @@ const profile = { - name: 'copilot-suggestion', - displayName: 'copilot-suggestion', - description: 'Get Solidity suggestions in editor', -- methods: ['suggest', 'init', 'uninstall', 'status', 'isActivate', 'useRemoteService', 'discardRemoteService'], -+ methods: ['suggest', 'init', 'uninstall', 'status', 'isActivate', 'discardRemoteService', 'useconfig'], - version: '0.1.0-alpha', - maintainedBy: "Remix" - } - - export class CopilotSuggestion extends Plugin { - service: SuggestionService -- remoteService: string - context: string - ready: boolean -+ config: { [id: string]: string } - constructor() { - super(profile) - this.service = new SuggestionService() - this.context = '' -- this.service.events.on('progress', (data) => { -- this.emit('loading', data) -- }) -- this.service.events.on('done', (data) => { -- }) -- this.service.events.on('ready', (data) => { -- this.ready = true -- }) -+ this.ready = true // always ready for service -+ this.config = {} - } - -- useRemoteService(service: string) { -- this.remoteService = service -+ -+ useconfig(config ){ -+ this.config = config - } - - discardRemoteService() { -- this.remoteService = null -+ this.ready = false - } - - status () { -@@ -59,18 +54,19 @@ export class CopilotSuggestion extends Plugin { - const max_new_tokens = await this.call('settings', 'get', 'settings/copilot/suggest/max_new_tokens') - const temperature = await this.call('settings', 'get', 'settings/copilot/suggest/temperature') - const options: SuggestOptions = { -- do_sample: false, -- top_k: 0, -- temperature: temperature || 0, -+ top_k: 50, -+ top_p: 0.92, -+ stream_result: false, -+ temperature: temperature || 0.9, - max_new_tokens: max_new_tokens || 0 - } - -- if (this.remoteService) { -- const {data} = await axios.post(this.remoteService, {context: content, max_new_words: options.max_new_tokens, temperature: options.temperature}) -- const parsedData = JSON.parse(data).trimStart() -+ if (this.ready){ -+ const data = await this.call('solcoder', 'code_completion', content.split(" ").slice(-1000).join(" "), options) -+ const parsedData = data[0].trimStart() - return {output: [{generated_text: parsedData}]} -- } else { -- return this.service.suggest(this.context ? this.context + '\n\n' + content : content, options) -+ }else{ -+ return - } - } - -diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts -index b85647cb9..49323aeda 100644 ---- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts -+++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/suggestion-service.ts -@@ -1,6 +1,10 @@ - import EventEmitter from 'events' - --export type SuggestOptions = { max_new_tokens: number, temperature: number, top_k: number, do_sample: boolean } -+export type SuggestOptions = { max_new_tokens: number, -+ temperature: number, -+ top_k: number, -+ top_p:number, -+ stream_result:boolean} - - export class SuggestionService { - worker: Worker -@@ -89,7 +93,6 @@ export class SuggestionService { - max_new_tokens: options.max_new_tokens, - temperature: options.temperature, - top_k: options.top_k, -- do_sample: options.do_sample - }) - this.responses[timespan] = (error, result) => { - if (error) return reject(error) -diff --git a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js -index a5affc48b..3d1e0f5ac 100644 ---- a/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js -+++ b/apps/remix-ide/src/app/plugins/copilot/suggestion-service/worker.js -@@ -3,7 +3,6 @@ import { pipeline, env } from '@xenova/transformers'; - - env.allowLocalModels = true; - --const instance = null - /** - * This class uses the Singleton pattern to ensure that only one instance of the pipeline is loaded. - */ -@@ -35,12 +34,12 @@ self.addEventListener('message', async (event) => { - if (cmd === 'init') { - // Retrieve the code-completion pipeline. When called for the first time, - // this will load the pipeline and save it for future use. -- CodeCompletionPipeline.model = model -- await CodeCompletionPipeline.getInstance(x => { -- // We also add a progress callback to the pipeline so that we can -- // track model loading. -- self.postMessage(x); -- }); -+ // CodeCompletionPipeline.model = model -+ // await CodeCompletionPipeline.getInstance(x => { -+ // // We also add a progress callback to the pipeline so that we can -+ // // track model loading. -+ // self.postMessage(x); -+ // }); - return - } - -@@ -48,8 +47,8 @@ self.addEventListener('message', async (event) => { - // Send the output back to the main thread - self.postMessage({ - id, -- status: 'error', -- message: 'model not yet loaded' -+ status: 'info', -+ message: 'model not longer supported' - }); - } - -diff --git a/apps/remix-ide/src/app/plugins/solcoderAI.tsx b/apps/remix-ide/src/app/plugins/solcoderAI.tsx -new file mode 100644 -index 000000000..a377f7897 ---- /dev/null -+++ b/apps/remix-ide/src/app/plugins/solcoderAI.tsx -@@ -0,0 +1,145 @@ -+import { Plugin } from '@remixproject/engine' -+import {SuggestOptions} from './copilot/suggestion-service/suggestion-service' -+ -+const _paq = (window._paq = window._paq || []) -+ -+const profile = { -+ name: 'solcoder', -+ displayName: 'solcoder', -+ description: 'solcoder', -+ methods: ['code_generation', 'code_completion', "solidity_answer", "code_explaining"], -+ events: [], -+ maintainedBy: 'Remix', -+} -+ -+export class SolCoder extends Plugin { -+ api_url: string -+ constructor() { -+ super(profile) -+ this.api_url = "https://hkfll35zthu6e2-7861.proxy.runpod.net/api/" -+ } -+ -+ async code_generation(prompt): Promise { -+ this.emit("aiInfering") -+ this.call('layout', 'maximizeTerminal') -+ this.call('terminal', 'log', 'Waiting for Solcoder answer...') -+ let result -+ try { -+ result = await( -+ await fetch(this.api_url.concat("code_generation"), { -+ method: 'POST', -+ headers: { -+ Accept: 'application/json', -+ 'Content-Type': 'application/json', -+ }, -+ body: JSON.stringify({"data":[prompt,false,1000,0.2,0.8,50]}), -+ }) -+ ).json() -+ return result.data[0] -+ } catch (e) { -+ this.call('terminal', 'log', { type: 'typewritererror', value: `Unable to get a response ${e.message}` }) -+ return -+ }finally { -+ this.emit("aiInferingDone") -+ } -+ } -+ -+ async solidity_answer(prompt): Promise { -+ this.emit("aiInfering") -+ this.call('layout', 'maximizeTerminal') -+ this.call('terminal', 'log', 'Waiting for Solcoder answer...') -+ let result -+ try { -+ result = await( -+ await fetch(this.api_url.concat("solidity_answer"), { -+ method: 'POST', -+ headers: { -+ Accept: 'application/json', -+ 'Content-Type': 'application/json', -+ }, -+ body: JSON.stringify({"data":[prompt,false,1000,0.9,0.8,50]}), -+ }) -+ ).json() -+ } catch (e) { -+ this.call('terminal', 'log', { type: 'typewritererror', value: `Unable to get a response ${e.message}` }) -+ return -+ }finally { -+ this.emit("aiInferingDone") -+ } -+ if (result) { -+ this.call('terminal', 'log', { type: 'typewriterwarning', value: result.data[0]}) -+ } else if (result.error) { -+ this.call('terminal', 'log', { type: 'typewriterwarning', value: "Error on request" }) -+ } -+ -+ } -+ -+ async code_explaining(prompt): Promise { -+ this.emit("aiInfering") -+ this.call('layout', 'maximizeTerminal') -+ this.call('terminal', 'log', 'Waiting for Solcoder answer...') -+ let result -+ try { -+ result = await( -+ await fetch(this.api_url.concat("code_explaining"), { -+ method: 'POST', -+ headers: { -+ Accept: 'application/json', -+ 'Content-Type': 'application/json', -+ }, -+ body: JSON.stringify({"data":[prompt,false,2000,0.9,0.8,50]}), -+ }) -+ ).json() -+ if (result) { -+ this.call('terminal', 'log', { type: 'typewriterwarning', value: result.data[0]}) -+ } -+ return result.data[0] -+ } catch (e) { -+ this.call('terminal', 'log', { type: 'typewritererror', value: `Unable to get a response ${e.message}` }) -+ return -+ }finally { -+ this.emit("aiInferingDone") -+ } -+ } -+ -+ async code_completion(prompt, options:SuggestOptions=null): Promise { -+ this.emit("aiInfering") -+ let result -+ try { -+ result = await( -+ await fetch(this.api_url.concat("code_completion"), { -+ method: 'POST', -+ headers: { -+ Accept: 'application/json', -+ 'Content-Type': 'application/json', -+ }, -+ body: JSON.stringify({"data": !options? [ -+ prompt, // string in 'context_code' Textbox component -+ "", // string in 'comment' Textbox component -+ false, // boolean in 'stream_result' Checkbox component -+ 200, // number (numeric value between 0 and 2000) in 'max_new_tokens' Slider component -+ 0.9, // number (numeric value between 0.01 and 1) in 'temperature' Slider component -+ 0.90, // number (numeric value between 0 and 1) in 'top_p' Slider component -+ 50, // number (numeric value between 1 and 200) in 'top_k' Slider component -+ ] : [ -+ prompt, -+ "", -+ options.stream_result, -+ options.max_new_tokens, -+ options.temperature, -+ options.top_p, -+ options.top_k -+ ]}), -+ }) -+ ).json() -+ -+ return result.data -+ } catch (e) { -+ this.call('terminal', 'log', { type: 'typewritererror', value: `Unable to get a response ${e.message}` }) -+ return -+ } finally { -+ this.emit("aiInferingDone") -+ } -+ } -+ -+} -diff --git a/apps/remix-ide/src/app/plugins/solidity-umlgen.tsx b/apps/remix-ide/src/app/plugins/solidity-umlgen.tsx -index 3fd6b6bd5..ebbb7b9bb 100644 ---- a/apps/remix-ide/src/app/plugins/solidity-umlgen.tsx -+++ b/apps/remix-ide/src/app/plugins/solidity-umlgen.tsx -@@ -11,7 +11,6 @@ import vizRenderStringSync from '@aduh95/viz.js/sync' - import {PluginViewWrapper} from '@remix-ui/helper' - import {customAction} from '@remixproject/plugin-api' - import {ClassOptions} from 'sol2uml/lib/converterClass2Dot' --import type {CompilerInput} from '@remix-project/remix-solidity' - const parser = (window as any).SolidityParser - - const _paq = (window._paq = window._paq || []) -@@ -75,7 +74,7 @@ export class SolidityUmlGen extends ViewPlugin implements ISolidityUmlGen { - try { - if (data.sources && Object.keys(data.sources).length > 1) { - // we should flatten first as there are multiple asts -- result = await this.flattenContract(source, file, data, JSON.parse(input)) -+ result = await this.flattenContract(source, file, data) - } - const ast = result.length > 1 ? parser.parse(result) : parser.parse(source.sources[file].content) - this.umlClasses = convertAST2UmlClasses(ast, this.currentFile) -@@ -143,8 +142,8 @@ export class SolidityUmlGen extends ViewPlugin implements ISolidityUmlGen { - * and assigns to a local property - * @returns {Promise} - */ -- async flattenContract(source: any, filePath: string, data: any, input: CompilerInput) { -- const result = await this.call('contractflattener', 'flattenContract', source, filePath, data, input) -+ async flattenContract(source: any, filePath: string, data: any) { -+ const result = await this.call('contractflattener', 'flattenContract', source, filePath, data) - return result - } - -diff --git a/apps/remix-ide/src/app/tabs/locales/en/editor.json b/apps/remix-ide/src/app/tabs/locales/en/editor.json -index fac7f7a60..33643eb0b 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/editor.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/editor.json -@@ -23,8 +23,10 @@ - "editor.generateDocumentation2": "Generate documentation for the function \"{name}\"", - "editor.generateDocumentationByAI": "solidity code: {content}\n Generate the documentation for the function {currentFunction} using the Doxygen style syntax", - "editor.explainFunction": "Explain this function", -+ "editor.explainFunctionSol": "Explain this code", - "editor.explainFunction2": "Explain the function \"{name}\"", - "editor.explainFunctionByAI": "solidity code: {content}\n Explain the function {currentFunction}", -+ "editor.explainFunctionByAISol": "solidity code: {content}\n Explain the function {currentFunction}", - "editor.executeFreeFunction": "Run a free function", - "editor.executeFreeFunction2": "Run the free function \"{name}\"", - "editor.toastText1": "This can only execute free function", -diff --git a/apps/remix-ide/src/app/tabs/locales/en/filePanel.json b/apps/remix-ide/src/app/tabs/locales/en/filePanel.json -index 3847cae62..3b790fa70 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/filePanel.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/filePanel.json -@@ -136,4 +136,4 @@ - "filePanel.movingFolderFailedMsg": "Unexpected error while moving folder: {src}", - "filePanel.workspaceActions": "Workspace actions", - "filePanel.saveCodeSample": "This code-sample workspace will not be persisted. Click here to save it." --} -+} -\ No newline at end of file -diff --git a/apps/remix-ide/src/app/tabs/locales/en/panel.json b/apps/remix-ide/src/app/tabs/locales/en/panel.json -index 013a68e19..c9ad7d8d0 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/panel.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/panel.json -@@ -4,7 +4,6 @@ - "panel.documentation": "Documentation", - "panel.description": "Description", - "panel.maintainedByRemix": "Maintained by Remix", -- "panel.maintainedExternally": "Not maintained by Remix", - "panel.pluginInfo": "Plugin info", - "panel.linkToDoc": "Link to documentation", - "panel.makeAnissue": "Make an issue" -diff --git a/apps/remix-ide/src/app/tabs/locales/en/pluginManager.json b/apps/remix-ide/src/app/tabs/locales/en/pluginManager.json -index f6de5d5e4..b4991edf7 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/pluginManager.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/pluginManager.json -@@ -33,7 +33,6 @@ - "pluginManager.ok": "OK", - "pluginManager.cancel": "Cancel", - "pluginManager.maintainedByRemix": "Maintained by Remix", -- "pluginManager.maintainedExternally": "Not maintained by Remix", - "pluginManager.linkToDoc": "Link to documentation", - "pluginManager.versionAlpha": "Version Alpha", - "pluginManager.versionBeta": "Version Beta", -diff --git a/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json b/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json -index 1c60e9592..f001d1d4f 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/remixUiTabs.json -@@ -2,6 +2,9 @@ - "remixUiTabs.tooltipText1": "Run script (CTRL + SHIFT + S)", - "remixUiTabs.tooltipText2": "Compile CTRL + S", - "remixUiTabs.tooltipText3": "Select .sol or .yul file to compile or a .ts or .js file and run it", -+ "remixUiTabs.tooltipText4": "Select .sol file to explain with AI", -+ "remixUiTabs.tooltipText5": "Explain the contract/s in current file", -+ "remixUiTabs.tooltipText6": "AI Copilot", - "remixUiTabs.zoomOut": "Zoom out", - "remixUiTabs.zoomIn": "Zoom in" - } -diff --git a/apps/remix-ide/src/app/tabs/locales/en/settings.json b/apps/remix-ide/src/app/tabs/locales/en/settings.json -index b290156ee..5f658450d 100644 ---- a/apps/remix-ide/src/app/tabs/locales/en/settings.json -+++ b/apps/remix-ide/src/app/tabs/locales/en/settings.json -@@ -38,7 +38,9 @@ - "settings.projectSecret": "PROJECT SECRET", - "settings.analyticsInRemix": "Analytics in Remix IDE", - "settings.copilot": "Solidity copilot - Alpha", -- "settings.copilot.activate": "Load & Activate copilot", -+ "settings.copilot.activate": "Enable copilot", - "settings.copilot.max_new_tokens": "Maximum number of words to generate", -- "settings.copilot.temperature": "Temperature" -+ "settings.copilot.temperature": "Temperature", -+ "settings.copilot.top_k": "top_k", -+ "settings.copilot.top_p": "top_p" - } -diff --git a/apps/remix-ide/src/app/tabs/settings-tab.tsx b/apps/remix-ide/src/app/tabs/settings-tab.tsx -index 8bbf8b2c8..b094dd802 100644 ---- a/apps/remix-ide/src/app/tabs/settings-tab.tsx -+++ b/apps/remix-ide/src/app/tabs/settings-tab.tsx -@@ -15,7 +15,7 @@ const _paq = (window._paq = window._paq || []) - const profile = { - name: 'settings', - displayName: 'Settings', -- methods: ['get'], -+ methods: ['get', 'updateCopilotChoice'], - events: [], - icon: 'assets/img/settings.webp', - description: 'Remix-IDE settings', -@@ -36,6 +36,7 @@ module.exports = class SettingsTab extends ViewPlugin { - } - element: HTMLDivElement - public useMatomoAnalytics: any -+ public useCopilot: any - dispatch: React.Dispatch = () => {} - constructor(config, editor) { - super(profile) -@@ -51,6 +52,7 @@ module.exports = class SettingsTab extends ViewPlugin { - this.element = document.createElement('div') - this.element.setAttribute('id', 'settingsTab') - this.useMatomoAnalytics = null -+ this.useCopilot = null - } - - setDispatch(dispatch: React.Dispatch) { -@@ -74,6 +76,7 @@ module.exports = class SettingsTab extends ViewPlugin { - editor={state.editor} - _deps={state._deps} - useMatomoAnalytics={state.useMatomoAnalytics} -+ useCopilot={state.useCopilot} - themeModule={state._deps.themeModule} - localeModule={state._deps.localeModule} - /> -@@ -88,6 +91,14 @@ module.exports = class SettingsTab extends ViewPlugin { - return this.config.get(key) - } - -+ updateCopilotChoice(isChecked) { -+ this.config.set('settings/copilot/suggest/activate', isChecked) -+ this.useCopilot = isChecked -+ this.dispatch({ -+ ...this -+ }) -+ } -+ - updateMatomoAnalyticsChoice(isChecked) { - this.config.set('settings/matomo-analytics', isChecked) - this.useMatomoAnalytics = isChecked -diff --git a/apps/remix-ide/src/app/tabs/web3-provider.js b/apps/remix-ide/src/app/tabs/web3-provider.js -index 16c3a3dd1..89b752873 100644 ---- a/apps/remix-ide/src/app/tabs/web3-provider.js -+++ b/apps/remix-ide/src/app/tabs/web3-provider.js -@@ -1,7 +1,6 @@ - import { Plugin } from '@remixproject/engine' - import * as packageJson from '../../../../../package.json' - import {isBigInt} from 'web3-validator' --import { addressToString } from "@remix-ui/helper" - - export const profile = { - name: 'web3Provider', -@@ -55,13 +54,8 @@ export class Web3ProviderModule extends Plugin { - console.log('receipt available but contract address not present', receipt) - return - } -- const contractAddressStr = addressToString(receipt.contractAddress) -- const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', contractAddressStr) -- if (contractData) { -- this.call('udapp', 'addInstance', contractAddressStr, contractData.contract.abi, contractData.name) -- const data = await this.call('compilerArtefacts', 'getCompilerAbstract', contractData.file) -- await this.call('compilerArtefacts', 'addResolvedContract', contractAddressStr, data) -- } -+ const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', receipt.contractAddress) -+ if (contractData) this.call('udapp', 'addInstance', receipt.contractAddress, contractData.contract.abi, contractData.name) - }, 50) - } - } -diff --git a/apps/remix-ide/src/assets/list.json b/apps/remix-ide/src/assets/list.json -deleted file mode 100644 -index b22d882d4..000000000 ---- a/apps/remix-ide/src/assets/list.json -+++ /dev/null -@@ -1,1190 +0,0 @@ --{ -- "builds": [ -- { -- "path": "soljson-v0.3.6+commit.3fc68da5.js", -- "version": "0.3.6", -- "build": "commit.3fc68da5", -- "longVersion": "0.3.6+commit.3fc68da5", -- "keccak256": "0x4a1c2a6a4896edefd3a4178a6c3ed8f1de625bd7c00dd7cc5781a9f36236e7db", -- "sha256": "0xee7ba01680ed3a1c1cda236189a51c1e6ff99f6dca602a580e5b16441772b50b", -- "urls": [ -- "bzzr://83e99aa35ae67e71bf77040e5b4686aeb3558919f172b6c28213a4dcd8d79e91", -- "dweb:/ipfs/Qme9brfZS3XhbiRbbNDKhBpgFknyD92omMmYa7XSf56bJP" -- ] -- }, -- { -- "path": "soljson-v0.4.0+commit.acd334c9.js", -- "version": "0.4.0", -- "build": "commit.acd334c9", -- "longVersion": "0.4.0+commit.acd334c9", -- "keccak256": "0x07994ad8c59c498bf44ca8e84914e27b79be964d98a9556226db377819d67387", -- "sha256": "0xb83d2025e0bbc7f7f0dc9e47f5aa22eacb548b42c55add8f5f6822c105163500", -- "urls": [ -- "bzzr://414fc715062f91971c8e0d9fbdf470dd24a8a35f4f96df0ba79980cdb0ae7eaa", -- "dweb:/ipfs/QmcBZ6Q2iHmrf9omvD7Jyy8kgrqyPmZFwvKWqvVDaxo1Ta" -- ] -- }, -- { -- "path": "soljson-v0.4.1+commit.4fc6fc2c.js", -- "version": "0.4.1", -- "build": "commit.4fc6fc2c", -- "longVersion": "0.4.1+commit.4fc6fc2c", -- "keccak256": "0x4c358c2e90447ad9e7c1816b5be8edde1172f67dedf16755a6c7373ede46b245", -- "sha256": "0x9825565e1f199dbed6de01d27e10f83a9180300acab80f8469bf427e3cf92e96", -- "urls": [ -- "bzzr://6ecbe30c4c8530b82d55ed6bec12e63efbab1cb16868b020d65399a8793599a6", -- "dweb:/ipfs/QmcEK5gvWNeHUtjsF3B6j5AXb9uNoG3aHbPrCMJDx7C8TM" -- ] -- }, -- { -- "path": "soljson-v0.4.2+commit.af6afb04.js", -- "version": "0.4.2", -- "build": "commit.af6afb04", -- "longVersion": "0.4.2+commit.af6afb04", -- "keccak256": "0xb67df5c37e8255e0de7918b6d3261f0f29e277d121bf5f414b66157a5b1070cd", -- "sha256": "0x67f8a94b60278cfb80d505c47a1a5e67ec2caf20167ef85f2bdf2a80a692bd1b", -- "urls": [ -- "bzzr://7ba69a10a4585d0a36e5843603476061e8b02878331fa580d5c2509ef01ddaa6", -- "dweb:/ipfs/QmVumPvgQVFLZvDvQddcDGcdxjbVWTTzxoQvJAECBBZ6Ju" -- ] -- }, -- { -- "path": "soljson-v0.4.3+commit.2353da71.js", -- "version": "0.4.3", -- "build": "commit.2353da71", -- "longVersion": "0.4.3+commit.2353da71", -- "keccak256": "0x62a65d0a951617f022524fc844ca11d90266f64e693343a2f41107183bf364c1", -- "sha256": "0x66da311056ec26c9c3fb501350ee22187c30e79c41bf2713eeff7d84479948c5", -- "urls": [ -- "bzzr://ccf4f1e05d942946bcca929e9263c541b2749bf1faf6dc6c211b4bf700344d71", -- "dweb:/ipfs/QmXf2cKYJ26tXAU6A6tmUk2dn4tuX3CWNaXJVnGLuoe15y" -- ] -- }, -- { -- "path": "soljson-v0.4.4+commit.4633f3de.js", -- "version": "0.4.4", -- "build": "commit.4633f3de", -- "longVersion": "0.4.4+commit.4633f3de", -- "keccak256": "0x06afcb6dc23efb1482545b63c5e3983dded0c383ecc46c3ae319f7b868201e47", -- "sha256": "0x9e386edb2ee759ad65792f7d62c10ae7edf65c5b874a5451f1e695e586b69eea", -- "urls": [ -- "bzzr://e93e97b9989cd59673bb1fd64a0f940e8729c3c40b819593b8590480cba24bea", -- "dweb:/ipfs/QmSJFaZhpXQ2EPF2koyiTNAiiuJRykv1Q8yubhkmBhvYyu" -- ] -- }, -- { -- "path": "soljson-v0.4.5+commit.b318366e.js", -- "version": "0.4.5", -- "build": "commit.b318366e", -- "longVersion": "0.4.5+commit.b318366e", -- "keccak256": "0xcdf7c4d4c6b9331b755170fa927692019c94088f87f100d2c3c920bcc3740d0b", -- "sha256": "0x7184dae0b761485a5dce66b50075e17857c5b55fe3fa71fe22d4d5acc0839741", -- "urls": [ -- "bzzr://e21d2bd58112fb165fa2c253504bf49ceca661ac1009d270a31cb996560cfa34", -- "dweb:/ipfs/QmYJuZgMbeMiotHAFNWEXdxjTa5yi7GaV4UkgBYABomFpj" -- ] -- }, -- { -- "path": "soljson-v0.4.6+commit.2dabbdf0.js", -- "version": "0.4.6", -- "build": "commit.2dabbdf0", -- "longVersion": "0.4.6+commit.2dabbdf0", -- "keccak256": "0x52ca702b8ed4b1e6d43d8a006b3d27f6dba611bac118c523711bfd209fb1cc9d", -- "sha256": "0x8db9466df3b91c52e3412cebd13176ea9fe16d3239d000828a081c34ce899337", -- "urls": [ -- "bzzr://24dc5536a4771b2336fa304f3cd38d5203b6ab49c78a3057ec578991f3fcf265", -- "dweb:/ipfs/QmZZ9hNntBxJw3G7LGW3e8nXtnGxLnaSMM44K4BbLrkELs" -- ] -- }, -- { -- "path": "soljson-v0.4.7+commit.822622cf.js", -- "version": "0.4.7", -- "build": "commit.822622cf", -- "longVersion": "0.4.7+commit.822622cf", -- "keccak256": "0xcd8a6a8b2626de75ef6ff73fb724f3ad5693a8902f86e88290f048b56182e7cc", -- "sha256": "0xd28a58fbc3ce56ff650d4daf3a1d8092e25cadf2a5b2769fd333b321dfc6a22d", -- "urls": [ -- "bzzr://6a5d22e366c35f184d5203f3e062131018d8a4d09cf770a0720cfaf4d7b49705", -- "dweb:/ipfs/QmfHjv4nYKuv3yFpWZqBYyiYEYmkQGydQmFT5b6mJkFpWp" -- ] -- }, -- { -- "path": "soljson-v0.4.8+commit.60cc1668.js", -- "version": "0.4.8", -- "build": "commit.60cc1668", -- "longVersion": "0.4.8+commit.60cc1668", -- "keccak256": "0x43c96fc79cf288cecda12b23a17f30b1cf0427a19dc7c1c094bb461eabefe0df", -- "sha256": "0x9af176f42b63eaec838999a07e80484f92f41a0fc497adefa65baf88d8fbecaf", -- "urls": [ -- "bzzr://fc0e644a61e43592754b66f8d911c91312538debb89da29ffda3d3fd81ff70d9", -- "dweb:/ipfs/Qmf7WYJJ8y6oHr4RQ7HC4tXgFPGvsnp3Qf6TrMBdK52Y5Z" -- ] -- }, -- { -- "path": "soljson-v0.4.9+commit.364da425.js", -- "version": "0.4.9", -- "build": "commit.364da425", -- "longVersion": "0.4.9+commit.364da425", -- "keccak256": "0xbe94ff397be2a951cbeb6c9c1a60ddf531d0ce76f45d51755386b6fa42cc2e2c", -- "sha256": "0x6ff1683eb76dc58c31043fea474be6da8535ec625d1cd8331a3daead84fd5564", -- "urls": [ -- "bzzr://6e134aa89a00a18d930924fc2fad2aa434f80b6a71085ff2ab379e3672c812e7", -- "dweb:/ipfs/QmeBWFbK1aAxnB6muXWStZJWndrFvMJt4xfAzEJD7AqaY3" -- ] -- }, -- { -- "path": "soljson-v0.4.10+commit.f0d539ae.js", -- "version": "0.4.10", -- "build": "commit.f0d539ae", -- "longVersion": "0.4.10+commit.f0d539ae", -- "keccak256": "0x178e51ad0c6a350ec4ed6fd07675dfd4d2581ee07b14b4954dd0b0f6d8633ca5", -- "sha256": "0xd70ca2f656a88a9be7a3f7d602f03b30149b3bda0d1057cfa3a3c5e3d6e07453", -- "urls": [ -- "bzzr://6e43013ff973198d7fcc4a43910041f2f07d0099f4252737a2a2545443b11105", -- "dweb:/ipfs/QmarthW41sfbrdkMmCK6jicXFZDGgvALzdgzygtUqEauae" -- ] -- }, -- { -- "path": "soljson-v0.4.11+commit.68ef5810.js", -- "version": "0.4.11", -- "build": "commit.68ef5810", -- "longVersion": "0.4.11+commit.68ef5810", -- "keccak256": "0xb8c3f5654b323cea016c0cc1a4584069714cdf796489efe2496a13f8f83a0e63", -- "sha256": "0xdeb3c274f8b840d657e2f9b1dba602e89f58b1bf3fd7178c48c9033310a1f006", -- "urls": [ -- "bzzr://084452a20ae520bba965ba0b863f3d6de0516d1f92ddb512a138fb787d841c55", -- "dweb:/ipfs/QmNUf8dTW9xANAvJmV1ho279AyWSCCvDp6bXet1QTcS2z5" -- ] -- }, -- { -- "path": "soljson-v0.4.12+commit.194ff033.js", -- "version": "0.4.12", -- "build": "commit.194ff033", -- "longVersion": "0.4.12+commit.194ff033", -- "keccak256": "0x598af6fec02a6783d6a438a6bb0f7d3012716d003f7bf6c9ac5a4d2bc911941b", -- "sha256": "0xd522b307a014a32ed5815b05045c4396abc047e70c8a53c1e3ef92e14daa61c6", -- "urls": [ -- "bzzr://cef259b97217a7526819155f6dd513768be5f8718324ec3a63c315071e2f7c70", -- "dweb:/ipfs/QmWGK9FbQiNWNeqysvCNCBw3q7cR1dzpnD1EKtNija2zyK" -- ] -- }, -- { -- "path": "soljson-v0.4.13+commit.0fb4cb1a.js", -- "version": "0.4.13", -- "build": "commit.0fb4cb1a", -- "longVersion": "0.4.13+commit.0fb4cb1a", -- "keccak256": "0x93f7046d6e0ea2492ec5229936821b3b020dbe9eb2e1193953389293d64a190b", -- "sha256": "0x68ace74ca809ff47b09449d4054c77907d9412f14f6003d5475b60f4fec13709", -- "urls": [ -- "bzzr://8943b9e6d4ec52bda1b8fbd65509168ba3388651a30cb495d5280cfbf35614d7", -- "dweb:/ipfs/Qmco9fGHM6mdaPVYqeDQ11GB3BrCbwRcEzM5XzHpAdAVWc" -- ] -- }, -- { -- "path": "soljson-v0.4.14+commit.c2215d46.js", -- "version": "0.4.14", -- "build": "commit.c2215d46", -- "longVersion": "0.4.14+commit.c2215d46", -- "keccak256": "0x7def3c264883cbe6ffbfc54894e48f9a0d2984ddbd1145eb898758d2a41d1559", -- "sha256": "0x54f3dc64f2ff5a5350410f6157a537d96fb4aeec90476e90a951ddfbd1fe4bca", -- "urls": [ -- "bzzr://3428015c422bb223c3fe8c3a85615081981c47ead375564c16701b261948f0f1", -- "dweb:/ipfs/QmXyyuEWhexuez2rzAeFjunpiAhncD1AfcXitGNHxpRWha" -- ] -- }, -- { -- "path": "soljson-v0.4.15+commit.bbb8e64f.js", -- "version": "0.4.15", -- "build": "commit.bbb8e64f", -- "longVersion": "0.4.15+commit.bbb8e64f", -- "keccak256": "0x9ffa9ee890ec483580c0b4ed72270b16e92eb0b7a8a97fb00c257f8809aa4023", -- "sha256": "0x3e64525797e0b2d9abaeb022688cc02d63fc5820327e382fc6574a7de650dc97", -- "urls": [ -- "bzzr://395f2d903c162ddc9b6ebd76db450ca6cb9cf8bb276c3d705aa462ae560d23ab", -- "dweb:/ipfs/QmW2rPbEtiVAbWJxtizzDqTjwpRpXCxkpSR696g9GxAYKT" -- ] -- }, -- { -- "path": "soljson-v0.4.16+commit.d7661dd9.js", -- "version": "0.4.16", -- "build": "commit.d7661dd9", -- "longVersion": "0.4.16+commit.d7661dd9", -- "keccak256": "0xf0a6c32af3eaa2f8c6d9e6c8b90f3bac5e775c7f1c90a61c1e72b593fbb1528d", -- "sha256": "0x0e6d842e941cd8b76280c59f28f6d020af1afdea8e4be9d9da677ac5dbe860c6", -- "urls": [ -- "bzzr://f44b067fda20d169321fd3616f68633fd7a4277b6340f42f74203f33dad4a472", -- "dweb:/ipfs/QmSwumWbYwYe4xLcqpi38VNtw7xCgbNaUkRhiZro9EnqLt" -- ] -- }, -- { -- "path": "soljson-v0.4.17+commit.bdeb9e52.js", -- "version": "0.4.17", -- "build": "commit.bdeb9e52", -- "longVersion": "0.4.17+commit.bdeb9e52", -- "keccak256": "0xeb8c3c474b5fa792f9b1b2ac6be945c32f835ccdc059deb562da4e99a031eab9", -- "sha256": "0x7fe677e8214d0486fa7164f797862fae0a0fefb7b72cf6ad8e728faa54f12b60", -- "urls": [ -- "bzzr://37026d0ee2865c52fff8f6311b67b94f96dbb52ce8af3f84c3a9aeb47b12bf47", -- "dweb:/ipfs/QmbgEAtdmSoxH4cfRJXj7mVpKv9rT5Cq2YmXmAnjgsyqBC" -- ] -- }, -- { -- "path": "soljson-v0.4.18+commit.9cf6e910.js", -- "version": "0.4.18", -- "build": "commit.9cf6e910", -- "longVersion": "0.4.18+commit.9cf6e910", -- "keccak256": "0xf824e695e8e66079b4b6063622c7dd80ed056d29969c8c3babac4fb572f3dfec", -- "sha256": "0x5bb50839ba5116bf31669f3de8dad72eaec298ba32a643be7d0dc2d1392c54d6", -- "urls": [ -- "bzzr://d847bc8f5d43cd348346c5bb253269de36f00810c2e189ca64a4becdb9e9312f", -- "dweb:/ipfs/Qmf5RrLbWeMykvWJbCyyThCLQ9YVmU8uWagMdSp9nNzZMc" -- ] -- }, -- { -- "path": "soljson-v0.4.19+commit.c4cbbb05.js", -- "version": "0.4.19", -- "build": "commit.c4cbbb05", -- "longVersion": "0.4.19+commit.c4cbbb05", -- "keccak256": "0xa60eadfddbfda0daebb8a1b883b89d33b800cff7ce7e12458170ea17cd5ede58", -- "sha256": "0x8c2a69fbab9bdf503538028c697e09e51a7e699323ae7100c375cb35c415a819", -- "urls": [ -- "bzzr://87e29a7298d49b8b52ed01d6146b05aa41c11a85d1b805dd48181ac2ed5e9b22", -- "dweb:/ipfs/QmSZEQEGuVJ7hudg8FzfDMXKVtn5AVGKaxbhSSDXwpX73K" -- ] -- }, -- { -- "path": "soljson-v0.4.20+commit.3155dd80.js", -- "version": "0.4.20", -- "build": "commit.3155dd80", -- "longVersion": "0.4.20+commit.3155dd80", -- "keccak256": "0x6c6dfa967526b7060634474ef730761711e5be662abf5ee02dc05985abfadec9", -- "sha256": "0x9852ad94048600cc5a1458b4a7ab625996844c809b314422693bdc81d953fcc0", -- "urls": [ -- "bzzr://3edc1542fb719d3e08138b492a5db06333fb36055a434c3b071b2dcb69e54fbc", -- "dweb:/ipfs/QmcsCpg6kfp7Vea4y9qPtfDXcaQJbDidb65n3t9f2MFDpR" -- ] -- }, -- { -- "path": "soljson-v0.4.21+commit.dfe3193c.js", -- "version": "0.4.21", -- "build": "commit.dfe3193c", -- "longVersion": "0.4.21+commit.dfe3193c", -- "keccak256": "0xd0f9a689670184ad874ca6a2cb40dfe57e9cf539d9330ca3f2501951478eace8", -- "sha256": "0x4197bb1cb0ea7e637ed8a0e7810f1bfe32c90d0151d6f423bb3dfeef9f6777c4", -- "urls": [ -- "bzzr://1abbc4967f3c6c5124f8876abe521d508c71b0d0d64dc066c1e7a1bfe6ba596d", -- "dweb:/ipfs/QmY7UN95hdfFSD1jwFANegze5eLX8PgP5BfWFH1usTB8Sw" -- ] -- }, -- { -- "path": "soljson-v0.4.22+commit.4cb486ee.js", -- "version": "0.4.22", -- "build": "commit.4cb486ee", -- "longVersion": "0.4.22+commit.4cb486ee", -- "keccak256": "0x50972c5b966188341d133aa58fbf895c54655d7bd733fb5ad58852e85f9f9444", -- "sha256": "0x73458d16a3e34fc7b489d2399b3680cccfc968d01abc9f1b61e438b6fb0c24a1", -- "urls": [ -- "bzzr://9eab5a9c94bde3d90eb76a1189febd5ae4d6c7bbc63cc1d76e8871e14e6e9b89", -- "dweb:/ipfs/QmPUJNa1LYaThwLQsw6fF5DMYyDfEg57gmD5wCsazkLS8c" -- ] -- }, -- { -- "path": "soljson-v0.4.23+commit.124ca40d.js", -- "version": "0.4.23", -- "build": "commit.124ca40d", -- "longVersion": "0.4.23+commit.124ca40d", -- "keccak256": "0x74f927b4f520d8d31863996a100ebc7827f919c77f777f6d4d416c6e613a03c7", -- "sha256": "0x98c350cc41f873af84a78d1e24cbc8449045ee54923af0a39440e4d84600dc50", -- "urls": [ -- "bzzr://a052dbfe589a766af66d85d4d797829241e867e0ead93fbf3d5e492c71b6434f", -- "dweb:/ipfs/QmZbo5YkSbcenWrUDjiCvUZdQe4UrNBw9vtx9nbgcMdRAs" -- ] -- }, -- { -- "path": "soljson-v0.4.24+commit.e67f0147.js", -- "version": "0.4.24", -- "build": "commit.e67f0147", -- "longVersion": "0.4.24+commit.e67f0147", -- "keccak256": "0x4cc2bb4c8894ad4349a88f330ba74d7ea643030d3f68037d1c94c370b6a25dd7", -- "sha256": "0xf83e8f7014ad6b8bc801dc3684c644e372673ed678425c35aea5d4b4fe37e922", -- "urls": [ -- "bzzr://2aae73578e361285488b6319e8e7b27e23b2736eeee3953cd65f1207cd849395", -- "dweb:/ipfs/QmauztXLDUdwJitA4Uc9MQYCTttUcivR5foTZYgwt4aAeC" -- ] -- }, -- { -- "path": "soljson-v0.4.25+commit.59dbf8f1.js", -- "version": "0.4.25", -- "build": "commit.59dbf8f1", -- "longVersion": "0.4.25+commit.59dbf8f1", -- "keccak256": "0x92b9c5de10bd908527e9cfba3f04bbe637163b4a5313c5a69179ccddd5fa6685", -- "sha256": "0x782a999d3e1227c86854e7e29954ee856c6ae684124b9facf09f4f1724dc4e85", -- "urls": [ -- "bzzr://fb1e9b951ce8abe575f8514bff6baa01417a988a399fab1dd27a252e7812d1bc", -- "dweb:/ipfs/QmUtwmzqqCftcubfyGwAefLBQ8ffp8EFhW7HCEQfhaviFs" -- ] -- }, -- { -- "path": "soljson-v0.4.26+commit.4563c3fc.js", -- "version": "0.4.26", -- "build": "commit.4563c3fc", -- "longVersion": "0.4.26+commit.4563c3fc", -- "keccak256": "0xc9c60203789ef778b9104ae7a39e9090b3d1256b24983d49e40e7d1e3c3ed65d", -- "sha256": "0x264d0d25e31cb32f4369f82ba3ad0b6a84a8a1975b10bd738123ddf947618840", -- "urls": [ -- "bzzr://335a6b94d26623dcaa4590ccd6d7529db1e153b65af3bf7def45fffaf9ee256a", -- "dweb:/ipfs/QmRd1uRbHRvpybQk5TQ11zyqmG4wQqHnefgvYdJ14V5D8x" -- ] -- }, -- { -- "path": "soljson-v0.5.0+commit.1d4f565a.js", -- "version": "0.5.0", -- "build": "commit.1d4f565a", -- "longVersion": "0.5.0+commit.1d4f565a", -- "keccak256": "0x2921f518cf5a0627d96e07e8c3d2b5482dbbf14d7dc6bbb055481c46d98903f3", -- "sha256": "0xaf811843add541705ff65f0c20fd864bd0387116544524fa1830cf67a14af6c4", -- "urls": [ -- "bzzr://31231abb33dc43d0478f03a4c8b15b161b172097c884307cf6cf64aeb83a6dc9", -- "dweb:/ipfs/QmYLhaeGbq3tFdCUC2pvtA8QdGnCbA8kn24z3C741k5TUE" -- ] -- }, -- { -- "path": "soljson-v0.5.1+commit.c8a2cb62.js", -- "version": "0.5.1", -- "build": "commit.c8a2cb62", -- "longVersion": "0.5.1+commit.c8a2cb62", -- "keccak256": "0x1980cf8a81c6bd2b371bf7d9145c819a7fb2d72e9aa462aaff0c10b4eccd595c", -- "sha256": "0x69cb1300b5f72eb128604507991d9ada97180d31afde7c59aa3fa3ae9ad5200d", -- "urls": [ -- "bzzr://7f35988e2c32ed2f3f1885fb81ace357b1555964d23085940980cacd29023da6", -- "dweb:/ipfs/QmPfxPYsYysRR8HFkWr47FMQ8ardmfmtrmdYc2ogT9Gfp9" -- ] -- }, -- { -- "path": "soljson-v0.5.2+commit.1df8f40c.js", -- "version": "0.5.2", -- "build": "commit.1df8f40c", -- "longVersion": "0.5.2+commit.1df8f40c", -- "keccak256": "0x3efd0585a3c00a1a2c62e590e22a69aa981d1b5148af2ebdbe1610dff93cea78", -- "sha256": "0xaff4ca62ac0b03cb4b9c50f8250e2e7307b5c75fefc9847f269bd05c20367148", -- "urls": [ -- "bzzr://e30e085b875fc291e5ee46ed7c88c28ec8e8c540ad8c799b106c365a52df9e97", -- "dweb:/ipfs/QmaZrQSg8njYzFXH2PzwxHDLKxkBhKmYmLm43DJWnurPeJ" -- ] -- }, -- { -- "path": "soljson-v0.5.3+commit.10d17f24.js", -- "version": "0.5.3", -- "build": "commit.10d17f24", -- "longVersion": "0.5.3+commit.10d17f24", -- "keccak256": "0x9b7a39606c3c27a8619b3eb493efca512cbd26c5ab7fc95489564239aab32a50", -- "sha256": "0x24b4cbc28d68bde8455c14a46b55e4f292c3c295271e09991b2176a487cb4487", -- "urls": [ -- "bzzr://3bccb9b8cee48b99b39f2f1296f7353bcd39c1ae61b1e19e5add7cedd0256cb2", -- "dweb:/ipfs/QmQmkd5FGiKKg8eRmo3L7Cn62nuV1M6GRDUGiq5bAx4AWx" -- ] -- }, -- { -- "path": "soljson-v0.5.4+commit.9549d8ff.js", -- "version": "0.5.4", -- "build": "commit.9549d8ff", -- "longVersion": "0.5.4+commit.9549d8ff", -- "keccak256": "0x4a6244b03de1968f0a48800e75640921d62b7602d0301093e1c5c318d1effb36", -- "sha256": "0x91ed0cf4390f33174a4aaf49d1ce7cd9c72e28b95d2f9422314a29b2144b2042", -- "urls": [ -- "bzzr://a5ab50564d82e6d55b462f4f85284d3fac294c78f2699b680544bc7efde2fb16", -- "dweb:/ipfs/QmRPchg1b5ofkLnLTPuunfSMKnxbXcZyzSR4NkyJAYUTrR" -- ] -- }, -- { -- "path": "soljson-v0.5.5+commit.47a71e8f.js", -- "version": "0.5.5", -- "build": "commit.47a71e8f", -- "longVersion": "0.5.5+commit.47a71e8f", -- "keccak256": "0xf46cb35b3aefb9b3d59a1fb4c151eb23a0f0a05387b379b3e7fbed1c01c861df", -- "sha256": "0xaf812445476c101ae5ef92941c79eaebf57b39d455bdfb54a6a86b4ab6ca498c", -- "urls": [ -- "bzzr://2e72b599d5a700cbd03d9f7ca082464b4823dbaabfc5e1031075b9631c005d35", -- "dweb:/ipfs/QmPYEmgLWDjk7kPGovojurz7fzdGv8Ti3H66nEzRzdiGwh" -- ] -- }, -- { -- "path": "soljson-v0.5.6+commit.b259423e.js", -- "version": "0.5.6", -- "build": "commit.b259423e", -- "longVersion": "0.5.6+commit.b259423e", -- "keccak256": "0x66669372d2d958bfeb5129a387dbc3882a96e260fc12e2910a7eb148b8ea5dd6", -- "sha256": "0x9ffc04d0aee2c817ae6a897b1ba5aaca2bcd860416aaddfaa4de553fc1ad6e8e", -- "urls": [ -- "bzzr://5f5dbf4ebe3be5dbe3e917a2de3908b3a9ed24207a6406a6e434e6f041e993c4", -- "dweb:/ipfs/QmYWL8Z3yXfCuhrprimdLhYFkjR74TjFHULxcABbUipetv" -- ] -- }, -- { -- "path": "soljson-v0.5.7+commit.6da8b019.js", -- "version": "0.5.7", -- "build": "commit.6da8b019", -- "longVersion": "0.5.7+commit.6da8b019", -- "keccak256": "0x27e324f75dd52eb180569e7a8865048253e5fcdaacc52e7c998ecaeb78dcdabd", -- "sha256": "0xfd7c4e652d5891c84d93b28c90b8ac58c9253d2a3677935883a337ee96087b8f", -- "urls": [ -- "bzzr://764a91ca290bfa564d890f3c1a5a88067b04e96398f223576cbdd17bbc1faee2", -- "dweb:/ipfs/QmdEr1zJrD2UYawZzeE6zPuYiYaSHdpLtKeHYixHgRp9ko" -- ] -- }, -- { -- "path": "soljson-v0.5.8+commit.23d335f2.js", -- "version": "0.5.8", -- "build": "commit.23d335f2", -- "longVersion": "0.5.8+commit.23d335f2", -- "keccak256": "0x05c00863784c63220704197d8446ac1e277fe53c42b5264093960b7bb70b9792", -- "sha256": "0x25cfdd733e9c780ab85373268fde7bfa2e4b22093af57422ca3b586c7af7cd60", -- "urls": [ -- "bzzr://18fc5b15154aef1640559c31bbd91ae267def62a2b86e434564184b6d3d283ce", -- "dweb:/ipfs/QmSUakgiWEffZ82RrN7hgLaemdqtLSCD7pfGAKxGhDUJxB" -- ] -- }, -- { -- "path": "soljson-v0.5.9+commit.e560f70d.js", -- "version": "0.5.9", -- "build": "commit.e560f70d", -- "longVersion": "0.5.9+commit.e560f70d", -- "keccak256": "0x7c967d9dc0fdca0db88a7cee22cf5886f65e8fa8b4a145eccd910fc81a1c949d", -- "sha256": "0x7d40c6325c0aa4635babdb8913626b7c4bac6a4f41e1c383de5f398e1fc98e1b", -- "urls": [ -- "bzzr://c1f03890d82592751d779ea2da8a690e15b0ccc5667314bf634c1f16ff4ed322", -- "dweb:/ipfs/QmZcHLPfa2Dz8M3justKYyDmDnaNo4pseTgAeQbtJNYywe" -- ] -- }, -- { -- "path": "soljson-v0.5.10+commit.5a6ea5b1.js", -- "version": "0.5.10", -- "build": "commit.5a6ea5b1", -- "longVersion": "0.5.10+commit.5a6ea5b1", -- "keccak256": "0x012ae146ebdd510b31c1e44a8d60071a66cdebc77f0e743a6ebc2fe68e67d297", -- "sha256": "0x566601442deff058d393359df59ed72b41e1f6a65b0aa371fab7f903c189b59d", -- "urls": [ -- "bzzr://47c24a09321abb781b5dbc05fffae84ece6844e41a295847dd68ad69633f60a4", -- "dweb:/ipfs/Qmej9jEnSsD2LqGnL4jgbUvHTxTwiFiHqeMpqyuPLaX1uw" -- ] -- }, -- { -- "path": "soljson-v0.5.11+commit.c082d0b4.js", -- "version": "0.5.11", -- "build": "commit.c082d0b4", -- "longVersion": "0.5.11+commit.c082d0b4", -- "keccak256": "0x4ba5500559a9ad03e4c1d3866ba9d915cdb5d7f2e326b4cb1fa0fe7bdf90dc27", -- "sha256": "0x89978dcef86244b8e7af95298abe26aaf4825df819d6c556e4323dc152c988ad", -- "urls": [ -- "bzzr://c609e5725e607a4d853f33c8d46064e0ab11b489f7a585134cfca570e29f447a", -- "dweb:/ipfs/QmdgDj3bPSKU1xKMY8FRHj8E6z9BQefeuaVuF27RpvZMXJ" -- ] -- }, -- { -- "path": "soljson-v0.5.12+commit.7709ece9.js", -- "version": "0.5.12", -- "build": "commit.7709ece9", -- "longVersion": "0.5.12+commit.7709ece9", -- "keccak256": "0xcda83fe69ce2a319d0caa20c98b53ff36ea1886054ab3dab23fa80ede3dcdea0", -- "sha256": "0x1784f89fcfffccddaa94273a58e452682f61dea05d142406775f099c6ef5d61f", -- "urls": [ -- "bzzr://5eacd00f2f132ea8fbb308baed9753579ade721a44e94067debb602e193b7ae2", -- "dweb:/ipfs/QmPA1Uf4iwkr2ouguzxxFepVxaRg36XFXxiwqYUuwafQzQ" -- ] -- }, -- { -- "path": "soljson-v0.5.13+commit.5b0b510c.js", -- "version": "0.5.13", -- "build": "commit.5b0b510c", -- "longVersion": "0.5.13+commit.5b0b510c", -- "keccak256": "0x432dd5d662d88c2316b4df503f693ae9e6e8ed4216726db2fdb3e7f628523fe5", -- "sha256": "0x6e095eefc48dfc21fec18d0b63f229e929f881b5d6e8a999e1622c6b707a7f54", -- "urls": [ -- "bzzr://1b3ef14eabfe47ff614c088337dfdf163c695612c193aeab9ac5a2af69d30334", -- "dweb:/ipfs/QmSgJ8Ru6vraz9CyCDPMifVxpckkoooVSBj9vYcQqG4wG4" -- ] -- }, -- { -- "path": "soljson-v0.5.14+commit.01f1aaa4.js", -- "version": "0.5.14", -- "build": "commit.01f1aaa4", -- "longVersion": "0.5.14+commit.01f1aaa4", -- "keccak256": "0x98e1027fbf3acb279f740c3b38df69d79ad3f2e6171414508d50604dc2dfc13e", -- "sha256": "0x43b85bc9941814b018065da5c6c8d40e2af49264d0d1f06bdefbfbe628e65ff8", -- "urls": [ -- "bzzr://b6283a40a65b321a0e88f61594fc8bed00fb21a53c7ac1bf5ae421706a372d01", -- "dweb:/ipfs/QmeXatGB9MdWA2NBLSNQbcKvuZpa4Sxem51vCrqyQGfXnU" -- ] -- }, -- { -- "path": "soljson-v0.5.15+commit.6a57276f.js", -- "version": "0.5.15", -- "build": "commit.6a57276f", -- "longVersion": "0.5.15+commit.6a57276f", -- "keccak256": "0x6f9251f86fd798a3ae25688307ffc7a9984dcf0d809a1aef54f5c68b6cf9fb6a", -- "sha256": "0x0d34e4ed048bbf67daacdf36cd5ce0f553a32962967b52edab6afccaa071878b", -- "urls": [ -- "bzzr://e866e6bdb31fea0646b44a8e57acc9505932ffe813028ce1330ca49fe3edc4d0", -- "dweb:/ipfs/Qmdx3AHUB8bN6ZZs1XsTV3Gz9FV3gAB7x7JbYeUsn43Azu" -- ] -- }, -- { -- "path": "soljson-v0.5.16+commit.9c3226ce.js", -- "version": "0.5.16", -- "build": "commit.9c3226ce", -- "longVersion": "0.5.16+commit.9c3226ce", -- "keccak256": "0x6abf17bdb1b934d072739e0e083ecfd579c523d200d45184b8d3987924ca0454", -- "sha256": "0xa09c9cc2672678d461dc71100600bb58802db87be4de9424769241712ccbec03", -- "urls": [ -- "bzzr://9b51780766b138ee36e2796cee7bdd4cb494da5d925c36cc6101202818d37e42", -- "dweb:/ipfs/QmQjodGav6KhMDjuoyJ1ag8osgKLBsFC1E9LmaGP7qCRZ2" -- ] -- }, -- { -- "path": "soljson-v0.5.17+commit.d19bba13.js", -- "version": "0.5.17", -- "build": "commit.d19bba13", -- "longVersion": "0.5.17+commit.d19bba13", -- "keccak256": "0x936e6bfbf4ea9ac32997adb893b0aeecd050cfef8b475f297dca1add0a1ff934", -- "sha256": "0x7fd1d3f1fddc615e117f7fb7586acabd60c649c390cf110c8fdc5ce159fa5734", -- "urls": [ -- "bzzr://949bfec63a83091f5d08d6d8df36fa34e674d75206e8a6476cc0ae18f3c57bb4", -- "dweb:/ipfs/QmNrRJwVHaJSZ3aAQZWZKjV9o8BqWKFP3RPYL6hKU65PAE" -- ] -- }, -- { -- "path": "soljson-v0.6.0+commit.26b70077.js", -- "version": "0.6.0", -- "build": "commit.26b70077", -- "longVersion": "0.6.0+commit.26b70077", -- "keccak256": "0xea559c55bf7046cb48378fe9b43eaab6e345700aa22d701fcf946a42ec6b1008", -- "sha256": "0xf22c63511a85230f7640ff5a77433db643d8d32be8b7c7f1dc24c1301a5158e9", -- "urls": [ -- "bzzr://471b0435c47963835dd0f70d67ec069fab5daadbe6c8bf760d2e50adfb839461", -- "dweb:/ipfs/QmTQPQb6br2VEzKTiXBEE6z69xRXEk24xi2R2gn8EsvGD9" -- ] -- }, -- { -- "path": "soljson-v0.6.1+commit.e6f7d5a4.js", -- "version": "0.6.1", -- "build": "commit.e6f7d5a4", -- "longVersion": "0.6.1+commit.e6f7d5a4", -- "keccak256": "0xb2657b5ce7a9b405a65e4a88845a51216cd7371e8f84861eef9cb0cb20d78081", -- "sha256": "0x3628fdefd6971ea9cc16acbf91e5f6d6cfb2079181784b47e4d24f4c5d92e4e4", -- "urls": [ -- "bzzr://7bc2dc95d81092991a4122b45aad03f9cc62bc98fa455f03fc9286445ef9de8e", -- "dweb:/ipfs/QmYWAkYAJo59kc5dHWaLuQqEm7xusESdu5meDzjpxnyXKt" -- ] -- }, -- { -- "path": "soljson-v0.6.2+commit.bacdbe57.js", -- "version": "0.6.2", -- "build": "commit.bacdbe57", -- "longVersion": "0.6.2+commit.bacdbe57", -- "keccak256": "0x7dc96455c864b49abc7dd5f38ba6a47904709ad132ea36babbfce98d42e962e6", -- "sha256": "0x25f564cbecc5bfe95d6d358e0e7543c31ece0ab1332c555ff323ca163711bd2b", -- "urls": [ -- "bzzr://f61230aa01565c8c24aa2ed50eec7dfd26195be35f5bbe4445c6a3efceaa4b7d", -- "dweb:/ipfs/QmaLUM18c7ecA911ig5u2HY6fAu4AiUbhJpnZwwCMc9cWi" -- ] -- }, -- { -- "path": "soljson-v0.6.3+commit.8dda9521.js", -- "version": "0.6.3", -- "build": "commit.8dda9521", -- "longVersion": "0.6.3+commit.8dda9521", -- "keccak256": "0x39ae8b2f3ba05ed7d4a7c16f0a9f4f5118180a209379cfc9bdd2d4fb5d015dff", -- "sha256": "0xf89514dedd8cfb3c4d351580ff80b8444acde702f8be0e5fad710fe6e906c687", -- "urls": [ -- "bzzr://1d6deff5623d883b8d0b3a3a5539e4604925ce4c1677defb86e0e37838ea70c5", -- "dweb:/ipfs/Qmd9JfFpUXsUQrJad1u2QDuMxBMeVrcG8mrpfJVV9jiBXB" -- ] -- }, -- { -- "path": "soljson-v0.6.4+commit.1dca32f3.js", -- "version": "0.6.4", -- "build": "commit.1dca32f3", -- "longVersion": "0.6.4+commit.1dca32f3", -- "keccak256": "0x435820544c2598d4ffbfb6f11003364c883a0766c8ac2a03215dd73022b34679", -- "sha256": "0xa4fd5bb021259cdde001b03dac0e66353a3b066b47eb2476acb58b2610a224ca", -- "urls": [ -- "bzzr://62ef2a9bf7dbb8fd596b7c6ca6848d9b1a6c8562d10239659f0a56ee27c110ce", -- "dweb:/ipfs/QmTxzbPN4HwcK5YX7n3PNkb1BzKFiRwStsmBfgC9VwrtFt" -- ] -- }, -- { -- "path": "soljson-v0.6.5+commit.f956cc89.js", -- "version": "0.6.5", -- "build": "commit.f956cc89", -- "longVersion": "0.6.5+commit.f956cc89", -- "keccak256": "0x6262768243c1ceaf91418e52dc6f52d2ce94d19c6e1065d54499b7bc4d6e14dc", -- "sha256": "0xf8f83757e73f33f44389d1fa72d013fb266454a8dd9bb6897c7776f8fc3b0231", -- "urls": [ -- "bzzr://ed91c1114615572c10a34f0ab28a3a159d2d433fabbcec9eae7253c25ecac8b4", -- "dweb:/ipfs/QmRUoBQeA5zpun1NK7BvBhQk6pTT4uZw7Jn2wZnWQETH9W" -- ] -- }, -- { -- "path": "soljson-v0.6.6+commit.6c089d02.js", -- "version": "0.6.6", -- "build": "commit.6c089d02", -- "longVersion": "0.6.6+commit.6c089d02", -- "keccak256": "0x3c9cfccc78bf352f4c7901d7af76757bd228f93af2634af4cd16b4916c13e44e", -- "sha256": "0x09f6098026622c5c334c7798c3ad2b8f7c0ebc62f87846c7d5e7e725c3d1cbc2", -- "urls": [ -- "bzzr://ab23bd0e01952ee485f0426c9c4e47fcf6a508bc4919e83be31c0f9ea6e396ca", -- "dweb:/ipfs/QmRj2pxXxvmJ96i57maVjLMfs4DUtCuptM8vSVvvDweJ74" -- ] -- }, -- { -- "path": "soljson-v0.6.7+commit.b8d736ae.js", -- "version": "0.6.7", -- "build": "commit.b8d736ae", -- "longVersion": "0.6.7+commit.b8d736ae", -- "keccak256": "0xb463b6a61fc027247655a32cbfd50bf543eafa3a6b42ceacdda7293e3ada8866", -- "sha256": "0xb795f1b20f065a0aee492c24071fc1efa1633c3caab77cff20278a9ae822f04e", -- "urls": [ -- "bzzr://c82fea785ae31fb4847f5640e6305edc05d1a5b0b47552f60325c25cce280f75", -- "dweb:/ipfs/QmShUrNZf1dZFjziorJYE8fMGNUSMFsbaR3ipSvsCMvExM" -- ] -- }, -- { -- "path": "soljson-v0.6.8+commit.0bbfe453.js", -- "version": "0.6.8", -- "build": "commit.0bbfe453", -- "longVersion": "0.6.8+commit.0bbfe453", -- "keccak256": "0x537cefc0579dd9631ec952cae951b3df0a50a3e557b5638107a67275f7aacc07", -- "sha256": "0x3e8b01cbd194e40971b41017ada7c8b2fa941b0458cb701bdfb6a82257ca971b", -- "urls": [ -- "bzzr://130bff47eed9546c6a4d019c6281896186cf2368b766b16bc49b3d489b6cdb92", -- "dweb:/ipfs/Qmdq9AfwdmKfEGP8u7H9E4VYrKLVinRZPZD1EWRnXSn1oe" -- ] -- }, -- { -- "path": "soljson-v0.6.9+commit.3e3065ac.js", -- "version": "0.6.9", -- "build": "commit.3e3065ac", -- "longVersion": "0.6.9+commit.3e3065ac", -- "keccak256": "0xa2d4d3ebe5d52bfa7ddf1a1fcd9bfed81eaa8678e6a1dd5a1c84954dd064422c", -- "sha256": "0xf1724fd46b7a353561b3f8d473b0dc8c855b6d84b5af559d7e3326ac79b9d758", -- "urls": [ -- "bzzr://2c5fff6b816edb78adb2220f175591c9f4f6d38cfd27a83afb1849191cf9a524", -- "dweb:/ipfs/Qmad6iesaR5FQ45RRtMrt2Fa1EYDuq1oGoMJJB6beMHESn" -- ] -- }, -- { -- "path": "soljson-v0.6.10+commit.00c0fcaf.js", -- "version": "0.6.10", -- "build": "commit.00c0fcaf", -- "longVersion": "0.6.10+commit.00c0fcaf", -- "keccak256": "0x620163da7ee7b2622c9ee48b06110a52739f633189555148a3b5ecf767e60cfb", -- "sha256": "0xfa27ce9d23bddaa76a4aefbafa48e48affde9a1ee7c8a5e8784cf8d4c390f655", -- "urls": [ -- "bzzr://823b4efe3ca2964d660348214fd1a44579e13e1e8ce69a81f447372a11d60316", -- "dweb:/ipfs/QmUinsRZvs2zFNG6FMWy7ngTYUnZccXq7MRtgpj1dPfxu4" -- ] -- }, -- { -- "path": "soljson-v0.6.11+commit.5ef660b1.js", -- "version": "0.6.11", -- "build": "commit.5ef660b1", -- "longVersion": "0.6.11+commit.5ef660b1", -- "keccak256": "0xf0abd02c495a0b4c5c9a7ff20de8b932e11fc3066d0b754422035ecd96fcdbbc", -- "sha256": "0x9778e4a7667d5fd7632caf3ef3791d390a7cc217f94f96e919a31e3be332386a", -- "urls": [ -- "bzzr://9f9244a3605543a67f5ff35f21e3d6d3331a6e1361f09b271c37f396b5b89bd5", -- "dweb:/ipfs/QmXyjgFNMyFD4fdf8wt9uvUU92MGdDVGmcPdMZhNEo1g8N" -- ] -- }, -- { -- "path": "soljson-v0.6.12+commit.27d51765.js", -- "version": "0.6.12", -- "build": "commit.27d51765", -- "longVersion": "0.6.12+commit.27d51765", -- "keccak256": "0xe1412d909a0dae79b13c0066b9bf08831c522daec00b273bbc19a799af213d6a", -- "sha256": "0x3e1956c550ca48e289044c7c0bd892403081b4b5e17e77ce707c815ce6c4228f", -- "urls": [ -- "bzzr://b69ab6704a1e42fddb326e91f331e35fdf071b158e8754e2c887c0e607aee7b0", -- "dweb:/ipfs/QmTs8PnAGr1ijXtWvMjoWraefAtVv2Y5ZnwkArz6NqJ93w" -- ] -- }, -- { -- "path": "soljson-v0.7.0+commit.9e61f92b.js", -- "version": "0.7.0", -- "build": "commit.9e61f92b", -- "longVersion": "0.7.0+commit.9e61f92b", -- "keccak256": "0x0c7a4386781683c327fde95363535f377941e14feffad5bb1134c7aa7eba726f", -- "sha256": "0xe7e1be3d0a67469f6a37cd676a22314c4faa8a22ff9d5ebde11302db754453eb", -- "urls": [ -- "bzzr://65dc33e3d9ef94defff1b24e66f093d9d15a92c59778c8eb26e76fd8b64bd3da", -- "dweb:/ipfs/QmQFhTptWdDzhemjGpa7Q65HKWGphs4nKKS13nzkcVE8pM" -- ] -- }, -- { -- "path": "soljson-v0.7.1+commit.f4a555be.js", -- "version": "0.7.1", -- "build": "commit.f4a555be", -- "longVersion": "0.7.1+commit.f4a555be", -- "keccak256": "0x3502cf7933fbce9f1fe1d87a83d5b9df12eee36c03997c3b9821493ce03fcf3e", -- "sha256": "0x7fcc983c5149840a47b946fc51fc14f1c21cda07c01d650e4a1f814319cb1423", -- "urls": [ -- "bzzr://617dff84fd7dc06b476f93a95c015a561662d9ff1d3356ac6a3e5f5b09a636f0", -- "dweb:/ipfs/Qmdw9c3usmqgdV2w4JoNWJqscHzscKNVWsWtos1engJa1o" -- ] -- }, -- { -- "path": "soljson-v0.7.2+commit.51b20bc0.js", -- "version": "0.7.2", -- "build": "commit.51b20bc0", -- "longVersion": "0.7.2+commit.51b20bc0", -- "keccak256": "0x0c80a0bf9e17700249a04a80d7729ccb012a55a82cb0f9e412fa32cc14b09c2b", -- "sha256": "0xdfa3f2bb4589bdc9c054292173c82ee70e65af8d1971598f6e13b9b79ba94185", -- "urls": [ -- "bzzr://a45264806fb74fd38c19704070c83053972270b63bf7b09ddff3c3e15cd1baa0", -- "dweb:/ipfs/QmTNWY4vkVLgtNdfGXyH6CY8URmzr33VzMJNN37z5dsAgu" -- ] -- }, -- { -- "path": "soljson-v0.7.3+commit.9bfce1f6.js", -- "version": "0.7.3", -- "build": "commit.9bfce1f6", -- "longVersion": "0.7.3+commit.9bfce1f6", -- "keccak256": "0xcf099e7057d6c3d5acac1f4e349798ad5a581b6cb7ffcebdf5b37b86eac4872d", -- "sha256": "0xcaf4b1f3e01fcf946aad2d22bbe046b9dc4fd50049a05c3458ff239e2c93a785", -- "urls": [ -- "bzzr://2f8ec45d2d7298ab1fa49f3568ada6c6e030c7dd7f490a1505ed9d4713d86dc8", -- "dweb:/ipfs/QmQMH2o7Nz3DaQ31hNYyHVAgejqTyZouvA35Zzzwe2UBPt" -- ] -- }, -- { -- "path": "soljson-v0.7.4+commit.3f05b770.js", -- "version": "0.7.4", -- "build": "commit.3f05b770", -- "longVersion": "0.7.4+commit.3f05b770", -- "keccak256": "0x300330ecd127756b824aa13e843cb1f43c473cb22eaf3750d5fb9c99279af8c3", -- "sha256": "0x2b55ed5fec4d9625b6c7b3ab1abd2b7fb7dd2a9c68543bf0323db2c7e2d55af2", -- "urls": [ -- "bzzr://16c5f09109c793db99fe35f037c6092b061bd39260ee7a677c8a97f18c955ab1", -- "dweb:/ipfs/QmTLs5MuLEWXQkths41HiACoXDiH8zxyqBHGFDRSzVE5CS" -- ] -- }, -- { -- "path": "soljson-v0.7.5+commit.eb77ed08.js", -- "version": "0.7.5", -- "build": "commit.eb77ed08", -- "longVersion": "0.7.5+commit.eb77ed08", -- "keccak256": "0xfe223dd264421f9b96c3dd3c835a3d0d4d9cfa4c61f75ca0761860c9ae8906ca", -- "sha256": "0x2ee1c6434a32a40b137ac28be12ceeba64701bfad5e80239690803d9c139908e", -- "urls": [ -- "bzzr://d67cf500345ceca523e9bbe55dab9399e27321fd9005704a5b16bab82185260c", -- "dweb:/ipfs/Qmf5fpJmeHdwgmSjQPqdu25XtA9akTotakkNmrh4axgo8N" -- ] -- }, -- { -- "path": "soljson-v0.7.6+commit.7338295f.js", -- "version": "0.7.6", -- "build": "commit.7338295f", -- "longVersion": "0.7.6+commit.7338295f", -- "keccak256": "0xc68517effed7163db0c7f4559931a4c5530fe6f2a8a20596361640d9d7eff655", -- "sha256": "0xb94e69dfb056b3e26080f805ab43b668afbc0ac70bf124bfb7391ecfc0172ad2", -- "urls": [ -- "bzzr://523852f3e01b02ce947771e0279ffb6154d12700f809ba3606d908ba6271431c", -- "dweb:/ipfs/QmWjG6PLzF5M6kxkHujhEMg5znQCgf2m1cM1UptKA719Hy" -- ] -- }, -- { -- "path": "soljson-v0.8.0+commit.c7dfd78e.js", -- "version": "0.8.0", -- "build": "commit.c7dfd78e", -- "longVersion": "0.8.0+commit.c7dfd78e", -- "keccak256": "0x08dd57a5cf5fd59accbd5b601909ffa22d28da756b5367c29b523ff17bbc2f99", -- "sha256": "0xc596765f9b3dce486cf596ea35676f37124d54f3ada0fcbc02f094c392066a59", -- "urls": [ -- "bzzr://7047ade6879aab4c825594dab0914b8ec673bb907eecc6dfbd68f63086e5a36e", -- "dweb:/ipfs/QmYh5C2rgDAx452f7HyHA8soLhnoL1GeeNNEWEuw9jKY8w" -- ] -- }, -- { -- "path": "soljson-v0.8.1+commit.df193b15.js", -- "version": "0.8.1", -- "build": "commit.df193b15", -- "longVersion": "0.8.1+commit.df193b15", -- "keccak256": "0x84a0e9282047512eeec499d55c83dbb6981430b08692d81d6c09730bb18e6cd8", -- "sha256": "0xf77f141e5fed9594b28342e2c630ac6d48f2a724e4383a457881acd7fa62b1cf", -- "urls": [ -- "bzzr://da8c5ea3f2ecd33d3f83ac2c276871f4ee41370fb55ae62c6c29835c9376bdec", -- "dweb:/ipfs/QmQ6W5VedQpZAwuGTtp1BhmNkvVheLnJq4xwN9Qmt9bAbH" -- ] -- }, -- { -- "path": "soljson-v0.8.2+commit.661d1103.js", -- "version": "0.8.2", -- "build": "commit.661d1103", -- "longVersion": "0.8.2+commit.661d1103", -- "keccak256": "0xd0c15275c5b0d03871332719def9b0f17e8860c7db60e0e71f18b971458a7391", -- "sha256": "0x015e83fb0b72ccdafb0c217961b21a0321adb2d3f2ad992f5e79635c2086e6dd", -- "urls": [ -- "bzzr://629ae5ad84c45c248144b5eec7827a9cd5b2f2779ef84ab251c8cd876347a098", -- "dweb:/ipfs/QmdfVfa2mhyosaJVeV7rbfnvQ95GTHPeRPzmvxcds7RYej" -- ] -- }, -- { -- "path": "soljson-v0.8.3+commit.8d00100c.js", -- "version": "0.8.3", -- "build": "commit.8d00100c", -- "longVersion": "0.8.3+commit.8d00100c", -- "keccak256": "0x51777116af58223a41aa3016d0bf733bbb0f78ad9ba4bcc36487eba175f65015", -- "sha256": "0xb5cedfa8de5f9421fbdaccf9fd5038652c2632344b3b68e5278de81e9aeac210", -- "urls": [ -- "bzzr://c7d43da1bc5529d2cc311e00579c36dcff258c42b8ed240b6c4e97bd85492a64", -- "dweb:/ipfs/QmWbNMzJryhiZmyifLDQteGPwN4aTgXQB6barBvXYVw975" -- ] -- }, -- { -- "path": "soljson-v0.8.4+commit.c7e474f2.js", -- "version": "0.8.4", -- "build": "commit.c7e474f2", -- "longVersion": "0.8.4+commit.c7e474f2", -- "keccak256": "0x7e0bca960d11fb095798ff65d029436f23358ac060b25a0938acfcb4652da2ec", -- "sha256": "0x4a14c7bcaf0d988a829db2174b8f7731898aa8633216490603ad74bff64eca3c", -- "urls": [ -- "bzzr://7f33fe204160253c7ec23cb0ac83224bde3aca9f91a7a686cb67d99248c5fbb6", -- "dweb:/ipfs/QmPYDf4qYtZLNEAicW7hcvpUJ69FoHiXmUypipDpTKo9hU" -- ] -- }, -- { -- "path": "soljson-v0.8.5+commit.a4f2e591.js", -- "version": "0.8.5", -- "build": "commit.a4f2e591", -- "longVersion": "0.8.5+commit.a4f2e591", -- "keccak256": "0x6d6d75b033717aae0a728e527005d8d2cc7dbd0a835c8873c630a2a9689a2976", -- "sha256": "0x4af595f976235d33a22ffe223e9e3210b4ca510f6a93f153b3daed60f2b11fbc", -- "urls": [ -- "bzzr://d501ee8c460db75379b5716bcb5ae10e3e32625d6c9b08e319822a110f178906", -- "dweb:/ipfs/QmNWkyirqXy3gDHNXpPuVUbExMGWjMqPR82Xzs64RzgQzy" -- ] -- }, -- { -- "path": "soljson-v0.8.6+commit.11564f7e.js", -- "version": "0.8.6", -- "build": "commit.11564f7e", -- "longVersion": "0.8.6+commit.11564f7e", -- "keccak256": "0x070e41c7f761ff1a8383a2c0d54c22aab0f115ca8c3790ecea27d6dde11611ca", -- "sha256": "0x06a671efd8865a6ecc0ad648076177b35abcd06a7059888ea65111272e33a57f", -- "urls": [ -- "bzzr://e4f8176cdb3a0f3ba0b7061079dd9d3495f6a2288bd724780337cacd96515148", -- "dweb:/ipfs/QmQre11ZPgWSx79Jzca1tkTYFyMbXz8H4kcrhfpWSj4qs8" -- ] -- }, -- { -- "path": "soljson-v0.8.7+commit.e28d00a7.js", -- "version": "0.8.7", -- "build": "commit.e28d00a7", -- "longVersion": "0.8.7+commit.e28d00a7", -- "keccak256": "0x8d6be9e58c33d265b5a8b1132a27fce126067419f3f4f15d3ef6b7147593b61d", -- "sha256": "0x663ba99f7c7ee907f0f03227502d48a78256c3c292ace3b79a5d3eb510665306", -- "urls": [ -- "bzzr://0bdbad1bdcc3a9775f16f20a35556be4baa0e6c9a9b9d820e8e2cdea80667c6a", -- "dweb:/ipfs/QmYv3Rsi9pL6PZAtc4XLHezPqti8yCRGEdDBqzEsQv57GV" -- ] -- }, -- { -- "path": "soljson-v0.8.8+commit.dddeac2f.js", -- "version": "0.8.8", -- "build": "commit.dddeac2f", -- "longVersion": "0.8.8+commit.dddeac2f", -- "keccak256": "0x56cb2f6978bf1213982ef217ee76b39dc97b6e66c92a7be7a1b44079c0236e5c", -- "sha256": "0x534b7d4079d13bb4cd10b7559dc105c2adec625df4105f20ebce47e6da60bfda", -- "urls": [ -- "bzzr://7543aa16521848b06a1359afcb9dbd7be1dd09a36f4ca53edd3ed3a512a475e9", -- "dweb:/ipfs/QmZaSrn3TPvPVoShtjSonQLFd3BV6RdgRMqw8GTzhnKYpm" -- ] -- }, -- { -- "path": "soljson-v0.8.9+commit.e5eed63a.js", -- "version": "0.8.9", -- "build": "commit.e5eed63a", -- "longVersion": "0.8.9+commit.e5eed63a", -- "keccak256": "0xbc470ab3442e78bb4d3f16c01c39b2f160f4f34eb4373efed11c234e1c7f6ca0", -- "sha256": "0x5b25f987aae32a0275fdc6c1be36cc47cf126024a04dafd8e4be39a1d1d1422c", -- "urls": [ -- "bzzr://83bf64f11a09845a6eb732da08283a58f877e9227190f489c9852f790c81d0c4", -- "dweb:/ipfs/QmfFq3MvisCSUJy8N8EVsBribgPbdpTZb7tQ2eHYw7dwag" -- ] -- }, -- { -- "path": "soljson-v0.8.10+commit.fc410830.js", -- "version": "0.8.10", -- "build": "commit.fc410830", -- "longVersion": "0.8.10+commit.fc410830", -- "keccak256": "0x3820aae0de50f10f62819d65f0b5a236ccffed11ab465a3295a5408fa47e24f5", -- "sha256": "0x5eaee3240a06891abf5ac70c75caf9a0c33ebe9a2736abdaa22a337f86c22933", -- "urls": [ -- "bzzr://5124a21890d6b0ae70bfd031f741d7edc74cff70a26ca74750d446b15a8efb06", -- "dweb:/ipfs/QmcsfYpEWbPXfVptzi1YvGokxi2FYCUzUr8rQYJCc5fEiB" -- ] -- }, -- { -- "path": "soljson-v0.8.11+commit.d7f03943.js", -- "version": "0.8.11", -- "build": "commit.d7f03943", -- "longVersion": "0.8.11+commit.d7f03943", -- "keccak256": "0x798b23086ce1339e3d47b3648a1f3ae40561e2c9f66ffcc98e71fc14a7f77584", -- "sha256": "0x64117d4b13bfc5bc6e5f80823519b140e753a0c09e99edd756772dc3029bc1f8", -- "urls": [ -- "bzzr://0fd1c8db6338b2143ab0e49a33edaa133108ba77f1238408018b5b2a0ecdeb62", -- "dweb:/ipfs/QmNQTFQmfnjxnDmbguVSnZ5DiHGFQHCsffccW5c2DMcSsT" -- ] -- }, -- { -- "path": "soljson-v0.8.12+commit.f00d7308.js", -- "version": "0.8.12", -- "build": "commit.f00d7308", -- "longVersion": "0.8.12+commit.f00d7308", -- "keccak256": "0xdd4ae95607655404b769fab5f949ac95c6a1a506330f512aef0d92974c390431", -- "sha256": "0xc2c4738c96ad329cbb9baea615ed50ffb5a53d93fed8e00785e47242581d3c60", -- "urls": [ -- "bzzr://38f396377d5a5a60d0b9d8c4dc1343485517ff31bcd281d531f98534dc79d811", -- "dweb:/ipfs/QmVdW2ygaT2vecoSUog3HUn8hZqXU4XXQZvuRSdpV6DJPL" -- ] -- }, -- { -- "path": "soljson-v0.8.13+commit.abaa5c0e.js", -- "version": "0.8.13", -- "build": "commit.abaa5c0e", -- "longVersion": "0.8.13+commit.abaa5c0e", -- "keccak256": "0x9afa714859d1c8f8ed2fded497b83a7a420474282494d25d4c9f592667729f21", -- "sha256": "0x387343bcf8f2b77fe4cdcddcaa84361fabf8e1c3508f874fbbcbb9c313542f56", -- "urls": [ -- "bzzr://ade0fd040981c4e8c7adfe366296e452687c7bb6421de8546a0678be4add016a", -- "dweb:/ipfs/Qma9V9dJwmkim98H6DQX4f7RH395vsUuqHCDxbKetcbj18" -- ] -- }, -- { -- "path": "soljson-v0.8.14+commit.80d49f37.js", -- "version": "0.8.14", -- "build": "commit.80d49f37", -- "longVersion": "0.8.14+commit.80d49f37", -- "keccak256": "0xb0f7f19a8590e5c0aaf779019c1deaafed170d8c26bec9bfd782d212e097619e", -- "sha256": "0x7c3b3d0066fd381283b1d8d9a86153b2ddb5c01da14a1ae015c05cfa484e81b6", -- "urls": [ -- "bzzr://fa438d41ed52c9e0cca556efee61486fc77e60df06081921abb0a0f19b602d35", -- "dweb:/ipfs/QmcM1TcDB4ta8ttNLWZ4d24M4Qs35rc91sQkdNmJMNbuvV" -- ] -- }, -- { -- "path": "soljson-v0.8.15+commit.e14f2714.js", -- "version": "0.8.15", -- "build": "commit.e14f2714", -- "longVersion": "0.8.15+commit.e14f2714", -- "keccak256": "0x4f6cdc0f25e734bcb977bb6a3e22fa41d8a82cbd5f220a2e4238c2d233526d1a", -- "sha256": "0x71135e459d691767ce3453bab4564ef4a640dd50182da36517cbc1f96c1d4c7c", -- "urls": [ -- "bzzr://ac5baefba32f4779a03d1207d9f1ed69365280c702fd73002a729b7a3d52c425", -- "dweb:/ipfs/QmPiBrYZxxpNZPQ98GNyL7Xa1F9Dq7uHtdt9ESwhPNkHhc" -- ] -- }, -- { -- "path": "soljson-v0.8.16+commit.07a7930e.js", -- "version": "0.8.16", -- "build": "commit.07a7930e", -- "longVersion": "0.8.16+commit.07a7930e", -- "keccak256": "0x331f4bc6de3d44d87b68629e83f711105325b482da7e9ca9bdbdd01371fee438", -- "sha256": "0x27b2820ef93805a65c76b7945a49432582d306fd17a28985709a51e6403677c2", -- "urls": [ -- "bzzr://af0d70945c85865298732ac2bfdacdf2774fb4daf793c94fafe135b839a60a5c", -- "dweb:/ipfs/QmWzBJ8gdccvRSSB5YsMKiF2qt3RFmAP2X25QEWqqQnR4y" -- ] -- }, -- { -- "path": "soljson-v0.8.17+commit.8df45f5f.js", -- "version": "0.8.17", -- "build": "commit.8df45f5f", -- "longVersion": "0.8.17+commit.8df45f5f", -- "keccak256": "0x3f2be218cf4545b4d2e380417c6da1e008fdc4255ab38c9ee12f64c0e3f55ea9", -- "sha256": "0x617828e63be485c7cc2dbcbdd5a22b582b40fafaa41016ad595637b83c90656c", -- "urls": [ -- "bzzr://fe8da5b2531d31e4b67acdce09c81eccba1100550a7222722152ffdb16ea85ef", -- "dweb:/ipfs/QmTedx1wBKSUaLatuqXYngjfKQLD2cGqPKjdLYCnbMYwiz" -- ] -- }, -- { -- "path": "soljson-v0.8.18+commit.87f61d96.js", -- "version": "0.8.18", -- "build": "commit.87f61d96", -- "longVersion": "0.8.18+commit.87f61d96", -- "keccak256": "0x9a8fa4183ef95496045189b80dfb39f745db89a903b398e40131f500953e5d57", -- "sha256": "0xd82bdcba2c386d60b33aca148a9cfdf097551f68c5e45d8ec01aebbafacf5075", -- "urls": [ -- "bzzr://338117c2130fcb6bce3006330712b6e7ee99875b56ce4bb6182312f76e4a6bac", -- "dweb:/ipfs/QmcKzrqRBy7PeFQxzJDs1AZZzNHKaKbJces6zUDysXZofJ" -- ] -- }, -- { -- "path": "soljson-v0.8.19+commit.7dd6d404.js", -- "version": "0.8.19", -- "build": "commit.7dd6d404", -- "longVersion": "0.8.19+commit.7dd6d404", -- "keccak256": "0x6be35b86f5656c06ae897ef311c28da375bdcbded68c4a81e124f2cb36adf830", -- "sha256": "0xe0b74e0a16e783a35169f74d1a615ecb48d07c30f97346b83cd587949268681e", -- "urls": [ -- "bzzr://434c17a0cc3bf371e5b9baa7f804b37ffd2dc141a98c59b2ba6021fc419a39c0", -- "dweb:/ipfs/QmPnhNtzrEBeWWQMXdAByQTDPoKXXV9NFXLk3YL4QbghMP" -- ] -- }, -- { -- "path": "soljson-v0.8.20+commit.a1b79de6.js", -- "version": "0.8.20", -- "build": "commit.a1b79de6", -- "longVersion": "0.8.20+commit.a1b79de6", -- "keccak256": "0x3a420fa9963772eee5b9221ebb8cf9548eea8f88b09537390960ea9b440f333c", -- "sha256": "0x5c509f760dc110a695c8b39bbc21e08c17dee431aa14d606f59e623d7c3cc657", -- "urls": [ -- "bzzr://fdc05062e4c7ec85ed18ab17b6f04f3274a4b7caf0be483eb86007d708825fb0", -- "dweb:/ipfs/QmciAxUX2kfuoxitmMdkKSfWn2SfxQdieLRa3S5S2munot" -- ] -- }, -- { -- "path": "soljson-v0.8.21+commit.d9974bed.js", -- "version": "0.8.21", -- "build": "commit.d9974bed", -- "longVersion": "0.8.21+commit.d9974bed", -- "keccak256": "0x370efd28e2d28b6d0ba55e20d8994f3d286c3772552ed63586b5fe157c0d3c57", -- "sha256": "0x45bea352b41d04039e19439962ddef1d3e10cf2bc9526feba39f2cc79e3c5a17", -- "urls": [ -- "bzzr://5e66947c220c91a6cd39bc22965dcf861015b8613a6e09aa7fb7dc10f367b5d7", -- "dweb:/ipfs/QmXLgy6oexvCBWYS5pTpJWohsDNGqgdNFLRKX7JrE3NxYt" -- ] -- }, -- { -- "path": "soljson-v0.8.22+commit.4fc1097e.js", -- "version": "0.8.22", -- "build": "commit.4fc1097e", -- "longVersion": "0.8.22+commit.4fc1097e", -- "keccak256": "0x907eeba6e6e0d6977ac5a8f50e4dd2762539ca827ceab1afb1f5a4f0f3ce3e0c", -- "sha256": "0x92d283c545395b91a656fa1ec94d567a464bca55aebcdbb99debf42b43026845", -- "urls": [ -- "bzzr://63ec828814e2b57db2a7a146061a96cc39797ba39a0063a7b664421a48f21c00", -- "dweb:/ipfs/Qma6o4e57YtWj8cQLQs12r2Enx9qmRA7VHtupCauXjYTAk" -- ] -- }, -- { -- "path": "soljson-v0.8.23+commit.f704f362.js", -- "version": "0.8.23", -- "build": "commit.f704f362", -- "longVersion": "0.8.23+commit.f704f362", -- "keccak256": "0x743aaafac24d9740a0b71215f55a132f89336a662487944767ca4bfd66400769", -- "sha256": "0x9c681b165c8647867589c0a5ecdc8692637a935928a2b1bbea2ff4a1f4976985", -- "urls": [ -- "bzzr://6e70fe6bfe8c3fc63f8a3eba733731aab129e6e58828b78058e53bb50440709b", -- "dweb:/ipfs/QmZy5ho8W943FMGwppXZFS1WFrVwV3UXhUUwcD7oH5vrYe" -- ] -- }, -- { -- "path": "soljson-v0.8.24+commit.e11b9ed9.js", -- "version": "0.8.24", -- "build": "commit.e11b9ed9", -- "longVersion": "0.8.24+commit.e11b9ed9", -- "keccak256": "0x1b6ceeabad21bbb2011ba13373160f7c4d46c11371a354243ee1be07159345f3", -- "sha256": "0x11b054b55273ec55f6ab3f445eb0eb2c83a23fed43d10079d34ac3eabe6ed8b1", -- "urls": [ -- "bzzr://c604bdd6384bf73594cd0e5cfbe979048191549ebc88e70996346f3b744c0680", -- "dweb:/ipfs/QmW2SQbEhiz3n2qV5iL8WBgzapv6cXjkLStvTMpCZhvr2x" -- ] -- } -- ], -- "releases": { -- "0.8.24": "soljson-v0.8.24+commit.e11b9ed9.js", -- "0.8.23": "soljson-v0.8.23+commit.f704f362.js", -- "0.8.22": "soljson-v0.8.22+commit.4fc1097e.js", -- "0.8.21": "soljson-v0.8.21+commit.d9974bed.js", -- "0.8.20": "soljson-v0.8.20+commit.a1b79de6.js", -- "0.8.19": "soljson-v0.8.19+commit.7dd6d404.js", -- "0.8.18": "soljson-v0.8.18+commit.87f61d96.js", -- "0.8.17": "soljson-v0.8.17+commit.8df45f5f.js", -- "0.8.16": "soljson-v0.8.16+commit.07a7930e.js", -- "0.8.15": "soljson-v0.8.15+commit.e14f2714.js", -- "0.8.14": "soljson-v0.8.14+commit.80d49f37.js", -- "0.8.13": "soljson-v0.8.13+commit.abaa5c0e.js", -- "0.8.12": "soljson-v0.8.12+commit.f00d7308.js", -- "0.8.11": "soljson-v0.8.11+commit.d7f03943.js", -- "0.8.10": "soljson-v0.8.10+commit.fc410830.js", -- "0.8.9": "soljson-v0.8.9+commit.e5eed63a.js", -- "0.8.8": "soljson-v0.8.8+commit.dddeac2f.js", -- "0.8.7": "soljson-v0.8.7+commit.e28d00a7.js", -- "0.8.6": "soljson-v0.8.6+commit.11564f7e.js", -- "0.8.5": "soljson-v0.8.5+commit.a4f2e591.js", -- "0.8.4": "soljson-v0.8.4+commit.c7e474f2.js", -- "0.8.3": "soljson-v0.8.3+commit.8d00100c.js", -- "0.8.2": "soljson-v0.8.2+commit.661d1103.js", -- "0.8.1": "soljson-v0.8.1+commit.df193b15.js", -- "0.8.0": "soljson-v0.8.0+commit.c7dfd78e.js", -- "0.7.6": "soljson-v0.7.6+commit.7338295f.js", -- "0.7.5": "soljson-v0.7.5+commit.eb77ed08.js", -- "0.7.4": "soljson-v0.7.4+commit.3f05b770.js", -- "0.7.3": "soljson-v0.7.3+commit.9bfce1f6.js", -- "0.7.2": "soljson-v0.7.2+commit.51b20bc0.js", -- "0.7.1": "soljson-v0.7.1+commit.f4a555be.js", -- "0.7.0": "soljson-v0.7.0+commit.9e61f92b.js", -- "0.6.12": "soljson-v0.6.12+commit.27d51765.js", -- "0.6.11": "soljson-v0.6.11+commit.5ef660b1.js", -- "0.6.10": "soljson-v0.6.10+commit.00c0fcaf.js", -- "0.6.9": "soljson-v0.6.9+commit.3e3065ac.js", -- "0.6.8": "soljson-v0.6.8+commit.0bbfe453.js", -- "0.6.7": "soljson-v0.6.7+commit.b8d736ae.js", -- "0.6.6": "soljson-v0.6.6+commit.6c089d02.js", -- "0.6.5": "soljson-v0.6.5+commit.f956cc89.js", -- "0.6.4": "soljson-v0.6.4+commit.1dca32f3.js", -- "0.6.3": "soljson-v0.6.3+commit.8dda9521.js", -- "0.6.2": "soljson-v0.6.2+commit.bacdbe57.js", -- "0.6.1": "soljson-v0.6.1+commit.e6f7d5a4.js", -- "0.6.0": "soljson-v0.6.0+commit.26b70077.js", -- "0.5.17": "soljson-v0.5.17+commit.d19bba13.js", -- "0.5.16": "soljson-v0.5.16+commit.9c3226ce.js", -- "0.5.15": "soljson-v0.5.15+commit.6a57276f.js", -- "0.5.14": "soljson-v0.5.14+commit.01f1aaa4.js", -- "0.5.13": "soljson-v0.5.13+commit.5b0b510c.js", -- "0.5.12": "soljson-v0.5.12+commit.7709ece9.js", -- "0.5.11": "soljson-v0.5.11+commit.c082d0b4.js", -- "0.5.10": "soljson-v0.5.10+commit.5a6ea5b1.js", -- "0.5.9": "soljson-v0.5.9+commit.e560f70d.js", -- "0.5.8": "soljson-v0.5.8+commit.23d335f2.js", -- "0.5.7": "soljson-v0.5.7+commit.6da8b019.js", -- "0.5.6": "soljson-v0.5.6+commit.b259423e.js", -- "0.5.5": "soljson-v0.5.5+commit.47a71e8f.js", -- "0.5.4": "soljson-v0.5.4+commit.9549d8ff.js", -- "0.5.3": "soljson-v0.5.3+commit.10d17f24.js", -- "0.5.2": "soljson-v0.5.2+commit.1df8f40c.js", -- "0.5.1": "soljson-v0.5.1+commit.c8a2cb62.js", -- "0.5.0": "soljson-v0.5.0+commit.1d4f565a.js", -- "0.4.26": "soljson-v0.4.26+commit.4563c3fc.js", -- "0.4.25": "soljson-v0.4.25+commit.59dbf8f1.js", -- "0.4.24": "soljson-v0.4.24+commit.e67f0147.js", -- "0.4.23": "soljson-v0.4.23+commit.124ca40d.js", -- "0.4.22": "soljson-v0.4.22+commit.4cb486ee.js", -- "0.4.21": "soljson-v0.4.21+commit.dfe3193c.js", -- "0.4.20": "soljson-v0.4.20+commit.3155dd80.js", -- "0.4.19": "soljson-v0.4.19+commit.c4cbbb05.js", -- "0.4.18": "soljson-v0.4.18+commit.9cf6e910.js", -- "0.4.17": "soljson-v0.4.17+commit.bdeb9e52.js", -- "0.4.16": "soljson-v0.4.16+commit.d7661dd9.js", -- "0.4.15": "soljson-v0.4.15+commit.bbb8e64f.js", -- "0.4.14": "soljson-v0.4.14+commit.c2215d46.js", -- "0.4.13": "soljson-v0.4.13+commit.0fb4cb1a.js", -- "0.4.12": "soljson-v0.4.12+commit.194ff033.js", -- "0.4.11": "soljson-v0.4.11+commit.68ef5810.js", -- "0.4.10": "soljson-v0.4.10+commit.f0d539ae.js", -- "0.4.9": "soljson-v0.4.9+commit.364da425.js", -- "0.4.8": "soljson-v0.4.8+commit.60cc1668.js", -- "0.4.7": "soljson-v0.4.7+commit.822622cf.js", -- "0.4.6": "soljson-v0.4.6+commit.2dabbdf0.js", -- "0.4.5": "soljson-v0.4.5+commit.b318366e.js", -- "0.4.4": "soljson-v0.4.4+commit.4633f3de.js", -- "0.4.3": "soljson-v0.4.3+commit.2353da71.js", -- "0.4.2": "soljson-v0.4.2+commit.af6afb04.js", -- "0.4.1": "soljson-v0.4.1+commit.4fc6fc2c.js", -- "0.4.0": "soljson-v0.4.0+commit.acd334c9.js", -- "0.3.6": "soljson-v0.3.6+commit.3fc68da5.js" -- }, -- "latestRelease": "0.8.24" --} -\ No newline at end of file -diff --git a/apps/remix-ide/src/blockchain/providers/injected.ts b/apps/remix-ide/src/blockchain/providers/injected.ts -index 32b4938f7..76c211a0f 100644 ---- a/apps/remix-ide/src/blockchain/providers/injected.ts -+++ b/apps/remix-ide/src/blockchain/providers/injected.ts -@@ -29,8 +29,7 @@ export class InjectedProvider { - - async getBalanceInEther (address) { - const balance = await this.executionContext.web3().eth.getBalance(address) -- const balInString = balance.toString(10) -- return balInString === '0' ? balInString : Web3.utils.fromWei(balInString, 'ether') -+ return Web3.utils.fromWei(balance.toString(10), 'ether') - } - - getGasPrice (cb) { -diff --git a/apps/remix-ide/src/blockchain/providers/node.ts b/apps/remix-ide/src/blockchain/providers/node.ts -index c77421e04..1dcf1b6c4 100644 ---- a/apps/remix-ide/src/blockchain/providers/node.ts -+++ b/apps/remix-ide/src/blockchain/providers/node.ts -@@ -35,8 +35,7 @@ export class NodeProvider { - - async getBalanceInEther (address) { - const balance = await this.executionContext.web3().eth.getBalance(address) -- const balInString = balance.toString(10) -- return balInString === '0' ? balInString : Web3.utils.fromWei(balInString, 'ether') -+ return Web3.utils.fromWei(balance.toString(10), 'ether') - } - - getGasPrice (cb) { -diff --git a/apps/remix-ide/src/blockchain/providers/vm.ts b/apps/remix-ide/src/blockchain/providers/vm.ts -index 67357b347..3ae7f6a15 100644 ---- a/apps/remix-ide/src/blockchain/providers/vm.ts -+++ b/apps/remix-ide/src/blockchain/providers/vm.ts -@@ -97,8 +97,7 @@ export class VMProvider { - - async getBalanceInEther (address) { - const balance = await this.web3.eth.getBalance(address, undefined, { number: FMT_NUMBER.HEX, bytes: FMT_BYTES.HEX }) -- const balInString = toBigInt(balance).toString(10) -- return balInString === '0' ? balInString : fromWei(balInString, 'ether') -+ return fromWei(toBigInt(balance).toString(10), 'ether') - } - - getGasPrice (cb) { -diff --git a/apps/remix-ide/src/remixAppManager.js b/apps/remix-ide/src/remixAppManager.js -index 8fa3fb15d..d55a27a56 100644 ---- a/apps/remix-ide/src/remixAppManager.js -+++ b/apps/remix-ide/src/remixAppManager.js -@@ -77,6 +77,7 @@ let requiredModules = [ // services + layout views + system views - 'contractflattener', - 'solidity-script', - 'openaigpt', -+ 'solcoder', - 'home', - 'doc-viewer', - 'doc-gen', -@@ -153,7 +154,7 @@ export class RemixAppManager extends PluginManager { - if (Registry.getInstance().get('platform').api.isDesktop()) { - requiredModules = [...requiredModules, 'fs', 'electronTemplates', 'isogit', 'remix-templates', 'electronconfig', 'xterm', 'compilerloader', 'ripgrep'] - } -- -+ - } - - async canActivatePlugin(from, to) { -@@ -331,17 +332,6 @@ export class RemixAppManager extends PluginManager { - sticky: true, - group: 7 - }) -- await this.call('filePanel', 'registerContextMenuItem', { -- id: 'vyper', -- name: 'vyperCompileCustomAction', -- label: 'Compile for Vyper', -- type: [], -- extension: ['.vy'], -- path: [], -- pattern: [], -- sticky: true, -- group: 7 -- }) - if (Registry.getInstance().get('platform').api.isDesktop()) { - await this.call('filePanel', 'registerContextMenuItem', { - id: 'fs', -diff --git a/apps/remix-ide/src/remixEngine.js b/apps/remix-ide/src/remixEngine.js -index 6b96d4478..1e416d006 100644 ---- a/apps/remix-ide/src/remixEngine.js -+++ b/apps/remix-ide/src/remixEngine.js -@@ -25,8 +25,8 @@ export class RemixEngine extends Engine { - if (name === 'circuit-compiler') return { queueTimeout: 60000 * 4 } - if (name === 'compilerloader') return { queueTimeout: 60000 * 4 } - if (name === 'filePanel') return { queueTimeout: 60000 * 20 } -- if (name === 'fileManager') return { queueTimeout: 60000 * 20 } - if (name === 'openaigpt') return { queueTimeout: 60000 * 2 } -+ if (name === 'solcoder') return { queueTimeout: 60000 * 2 } - if (name === 'cookbookdev') return { queueTimeout: 60000 * 2 } - return { queueTimeout: 10000 } - } -diff --git a/apps/vyper/src/app/app.css b/apps/vyper/src/app/app.css -index f299c4d37..7e4107ba6 100644 ---- a/apps/vyper/src/app/app.css -+++ b/apps/vyper/src/app/app.css -@@ -113,112 +113,3 @@ html, body, #root, main { - height: 100%; - width: 100%; - } -- -- -- --.remixui_copyButton { -- padding: 6px; -- font-weight: bold; -- font-size: 11px; -- line-height: 15px; --} -- --.remixui_contractHelperButtons { -- margin-top: 6px; -- display: flex; -- align-items: center; -- justify-content: space-between; -- float: right; --} --.remixui_copyToClipboard { -- font-size: 1rem; --} --.remixui_copyIcon { -- margin-right: 5px; --} --.remixui_log { -- display: flex; -- flex-direction: column; -- margin-bottom: 0.5rem; -- overflow: visible; --} --.remixui_key { -- margin-right: 5px; -- text-transform: uppercase; -- width: 100%; --} --.remixui_value { -- display: flex; -- width: 100%; -- margin-top: 1.5%; --} --.remixui_questionMark { -- margin-left: 2%; -- cursor: pointer; --} -- --@keyframes spin { -- 0% { transform: rotate(0deg); } -- 100% { transform: rotate(360deg); } --} --@-webkit-keyframes spin { -- 0% { transform: rotate(0deg); } -- 100% { transform: rotate(360deg); } --} --@-moz-keyframes spin { -- 0% { transform: rotate(0deg); } -- 100% { transform: rotate(360deg); } --} --@-o-keyframes spin { -- 0% { transform: rotate(0deg); } -- 100% { transform: rotate(360deg); } --} --@-ms-keyframes spin { -- 0% { transform: rotate(0deg); } -- 100% { transform: rotate(360deg); } --} -- --.remixui_bouncingIcon { -- display: inline-block; -- position: relative; -- -moz-animation: bounce 2s infinite linear; -- -o-animation: bounce 2s infinite linear; -- -webkit-animation: bounce 2s infinite linear; -- animation: bounce 2s infinite linear; --} -- --@-webkit-keyframes bounce { -- 0% { top: 0; } -- 50% { top: -0.2em; } -- 70% { top: -0.3em; } -- 100% { top: 0; } --} --@-moz-keyframes bounce { -- 0% { top: 0; } -- 50% { top: -0.2em; } -- 70% { top: -0.3em; } -- 100% { top: 0; } --} --@-o-keyframes bounce { -- 0% { top: 0; } -- 50% { top: -0.2em; } -- 70% { top: -0.3em; } -- 100% { top: 0; } --} --@-ms-keyframes bounce { -- 0% { top: 0; } -- 50% { top: -0.2em; } -- 70% { top: -0.3em; } -- 100% { top: 0; } --} --@keyframes bounce { -- 0% { top: 0; } -- 50% { top: -0.2em; } -- 70% { top: -0.3em; } -- 100% { top: 0; } --} -- --#compileDetails { -- margin: 15px; -- padding: 15px; --} -diff --git a/apps/vyper/src/app/app.tsx b/apps/vyper/src/app/app.tsx -index f09dc06cd..ebcfdd3aa 100644 ---- a/apps/vyper/src/app/app.tsx -+++ b/apps/vyper/src/app/app.tsx -@@ -13,9 +13,7 @@ import ToggleButton from 'react-bootstrap/ToggleButton' - import Button from 'react-bootstrap/Button' - - import './app.css' --import {CustomTooltip} from '@remix-ui/helper' --import {Form} from 'react-bootstrap' --import {CompileErrorCard} from './components/CompileErrorCard' -+import { CustomTooltip } from '@remix-ui/helper' - - interface AppState { - status: 'idle' | 'inProgress' -@@ -30,13 +28,14 @@ interface OutputMap { - - const App = () => { - const [contract, setContract] = useState() -- const [output, setOutput] = useState(remixClient.compilerOutput) -+ const [output, setOutput] = useState({}) - const [state, setState] = useState({ - status: 'idle', - environment: 'remote', -- localUrl: 'http://localhost:8000/', -+ localUrl: 'http://localhost:8000/' - }) - -+ - useEffect(() => { - async function start() { - try { -@@ -54,33 +53,6 @@ const App = () => { - start() - }, []) - -- useEffect(() => { -- remixClient.eventEmitter.on('resetCompilerState', () => { -- resetCompilerResultState() -- }) -- -- return () => { -- remixClient.eventEmitter.off('resetCompilerState', () => { -- resetCompilerResultState() -- }) -- } -- }, []) -- -- useEffect(() => { -- remixClient.eventEmitter.on('setOutput', (payload) => { -- if (payload.status === 'failed') { -- console.error('Error in the compiler', payload) -- } -- setOutput(payload) -- }) -- -- return () => { -- remixClient.eventEmitter.off('setOutput', (payload) => { -- setOutput(payload) -- }) -- } -- }, []) -- - /** Update the environment state value */ - function setEnvironment(environment: 'local' | 'remote') { - setState({...state, environment}) -@@ -95,48 +67,48 @@ const App = () => { - } - - function resetCompilerResultState() { -- setOutput(remixClient.compilerOutput) -+ setOutput({}) - } - - return ( -
--
--
-- Vyper logo --

yper Compiler

--
-- -- -- --
-
-
-- -- - -
--
--
-- setEnvironment('remote')} label="Remote Compiler" style={{cursor: state.environment === 'remote' ? 'default' : 'pointer'}} className="d-flex mr-4" /> -- setEnvironment('local')} label="Local Compiler" style={{cursor: state.environment === 'local' ? 'default' : 'pointer'}} /> --
--
-- Specify the compiler version & EVM version in the .vy file -+ -+ -+ Remote Compiler -+ -+ -+ Local Compiler -+ -+ - -
-- setOutput({...output, [name]: update})} resetCompilerState={resetCompilerResultState} /> -+ setOutput({...output, [name]: update})} -+ resetCompilerState={resetCompilerResultState} -+ /> -
- -
-- {output && Object.keys(output).length > 0 && output.status !== 'failed' ? ( -- <> -- -- -- ) : output.status === 'failed' ? ( -- -- ) : null} -+ { -+ output && Object.keys(output).length > 0 && output.status !== 'failed' ? ( -+ <> -+ -+ -+ ) : null -+ } -
-
-
-diff --git a/apps/vyper/src/app/components/CompileErrorCard.tsx b/apps/vyper/src/app/components/CompileErrorCard.tsx -deleted file mode 100644 -index 4c8d1128b..000000000 ---- a/apps/vyper/src/app/components/CompileErrorCard.tsx -+++ /dev/null -@@ -1,19 +0,0 @@ --import Reaact from 'react' -- --export function CompileErrorCard(props: any) { -- return ( --
-- -- -- {props.output.message.trim()} -- --
-- ) --} -diff --git a/apps/vyper/src/app/components/CompilerButton.tsx b/apps/vyper/src/app/components/CompilerButton.tsx -index f7d233134..ad04d0ba0 100644 ---- a/apps/vyper/src/app/components/CompilerButton.tsx -+++ b/apps/vyper/src/app/components/CompilerButton.tsx -@@ -1,6 +1,7 @@ - import React, { Fragment, useState } from 'react' --import {isVyper, compile, toStandardOutput, isCompilationError, remixClient, normalizeContractPath, compileContract} from '../utils' -+import {isVyper, compile, toStandardOutput, isCompilationError, remixClient, normalizeContractPath} from '../utils' - import Button from 'react-bootstrap/Button' -+import _ from 'lodash' - - interface Props { - compilerUrl: string -@@ -20,14 +21,112 @@ function CompilerButton({contract, setOutput, compilerUrl, resetCompilerState}: - } - - /** Compile a Contract */ -+ async function compileContract() { -+ resetCompilerState() -+ setLoadingSpinnerState(true) -+ try { -+ // await remixClient.discardHighlight() -+ let _contract: any -+ try { -+ _contract = await remixClient.getContract() -+ } catch (e: any) { -+ setOutput('', {status: 'failed', message: e.message}) -+ return -+ } -+ remixClient.changeStatus({ -+ key: 'loading', -+ type: 'info', -+ title: 'Compiling' -+ }) -+ let output -+ try { -+ output = await compile(compilerUrl, _contract) -+ } catch (e: any) { -+ remixClient.changeStatus({ -+ key: 'failed', -+ type: 'error', -+ title: e.message -+ }) -+ return -+ } -+ const compileReturnType = () => { -+ const t: any = toStandardOutput(contract, output) -+ const temp = _.merge(t['contracts'][contract]) -+ const normal = normalizeContractPath(contract)[2] -+ const abi = temp[normal]['abi'] -+ const evm = _.merge(temp[normal]['evm']) -+ const dpb = evm.deployedBytecode -+ const runtimeBytecode = evm.bytecode -+ const methodIdentifiers = evm.methodIdentifiers -+ -+ const result = { -+ contractName: normal, -+ abi: abi, -+ bytecode: dpb, -+ runtimeBytecode: runtimeBytecode, -+ ir: '', -+ methodIdentifiers: methodIdentifiers -+ } -+ return result -+ } -+ -+ // ERROR -+ if (isCompilationError(output)) { -+ const line = output.line -+ if (line) { -+ const lineColumnPos = { -+ start: {line: line - 1, column: 10}, -+ end: {line: line - 1, column: 10} -+ } -+ // remixClient.highlight(lineColumnPos as any, _contract.name, '#e0b4b4') -+ } else { -+ const regex = output?.message?.match(/line ((\d+):(\d+))+/g) -+ const errors = output?.message?.split(/line ((\d+):(\d+))+/g) // extract error message -+ if (regex) { -+ let errorIndex = 0 -+ regex.map((errorLocation) => { -+ const location = errorLocation?.replace('line ', '').split(':') -+ let message = errors[errorIndex] -+ errorIndex = errorIndex + 4 -+ if (message && message?.split('\n\n').length > 0) { -+ try { -+ message = message?.split('\n\n')[message.split('\n\n').length - 1] -+ } catch (e) {} -+ } -+ if (location?.length > 0) { -+ const lineColumnPos = { -+ start: {line: parseInt(location[0]) - 1, column: 10}, -+ end: {line: parseInt(location[0]) - 1, column: 10} -+ } -+ // remixClient.highlight(lineColumnPos as any, _contract.name, message) -+ } -+ }) -+ } -+ } -+ throw new Error(output.message) -+ } -+ // SUCCESS -+ // remixClient.discardHighlight() -+ remixClient.changeStatus({ -+ key: 'succeed', -+ type: 'success', -+ title: 'success' -+ }) -+ const data = toStandardOutput(_contract.name, output) -+ remixClient.compilationFinish(_contract.name, _contract.content, data) -+ setOutput(_contract.name, compileReturnType()) -+ } catch (err: any) { -+ remixClient.changeStatus({ -+ key: 'failed', -+ type: 'error', -+ title: err.message -+ }) -+ } -+ } - - return ( - -- --
--
--
-- (Object.values(output)[0] as OutputType).abi} direction="bottom" icon="far fa-copy"> -- -- -- (Object.values(output)[0] as OutputType).bytecode.object} direction="bottom" icon="far fa-copy"> -- -- --
--
--
-
- - ) -diff --git a/apps/vyper/src/app/utils/compiler.tsx b/apps/vyper/src/app/utils/compiler.tsx -index fcb32a5b7..ed1cc80b5 100644 ---- a/apps/vyper/src/app/utils/compiler.tsx -+++ b/apps/vyper/src/app/utils/compiler.tsx -@@ -1,8 +1,5 @@ - import { ABIDescription} from '@remixproject/plugin-api' - import axios from 'axios' --import { remixClient } from './remix-client' --import _ from 'lodash' -- - - export interface Contract { - name: string -@@ -170,134 +167,6 @@ export function toStandardOutput(fileName: string, compilationResult: any): any - } - } - } -- -- --export async function compileContract(contract: string, compilerUrl: string, setOutput?: any) { -- remixClient.eventEmitter.emit('resetCompilerState', {}) -- -- try { -- // await remixClient.discardHighlight() -- let _contract: any -- try { -- _contract = await remixClient.getContract() -- } catch (e: any) { -- // if (setOutput === null || setOutput === undefined) { -- const compileResult = { -- status: 'failed', -- message: e.message -- } -- remixClient.eventEmitter.emit('setOutput', compileResult) -- // } else { -- // setOutput('', {status: 'failed', message: e.message}) -- // } -- return -- } -- remixClient.changeStatus({ -- key: 'loading', -- type: 'info', -- title: 'Compiling' -- }) -- let output -- try { -- output = await compile(compilerUrl, _contract) -- console.log('checking compile result', output) -- remixClient.eventEmitter.emit('setOutput', output) -- } catch (e: any) { -- remixClient.changeStatus({ -- key: 'failed', -- type: 'error', -- title: `${e.message} debugging` -- }) -- // setOutput !== null || setOutput !== undefined && setOutput('', {status: 'failed', message: e.message}) -- remixClient.eventEmitter.emit('setOutput', {status: 'failed', message: e.message}) -- return -- } -- const compileReturnType = () => { -- const t: any = toStandardOutput(contract, output) -- const temp = _.merge(t['contracts'][contract]) -- const normal = normalizeContractPath(contract)[2] -- const abi = temp[normal]['abi'] -- const evm = _.merge(temp[normal]['evm']) -- const dpb = evm.deployedBytecode -- const runtimeBytecode = evm.bytecode -- const methodIdentifiers = evm.methodIdentifiers -- -- const result = { -- contractName: normal, -- abi: abi, -- bytecode: dpb, -- runtimeBytecode: runtimeBytecode, -- ir: '', -- methodIdentifiers: methodIdentifiers -- } -- return result -- } -- -- // ERROR -- if (isCompilationError(output)) { -- const line = output.line -- if (line) { -- const lineColumnPos = { -- start: {line: line - 1, column: 10}, -- end: {line: line - 1, column: 10} -- } -- // remixClient.highlight(lineColumnPos as any, _contract.name, '#e0b4b4') -- } else { -- const regex = output?.message?.match(/line ((\d+):(\d+))+/g) -- const errors = output?.message?.split(/line ((\d+):(\d+))+/g) // extract error message -- if (regex) { -- let errorIndex = 0 -- regex.map((errorLocation) => { -- const location = errorLocation?.replace('line ', '').split(':') -- let message = errors[errorIndex] -- errorIndex = errorIndex + 4 -- if (message && message?.split('\n\n').length > 0) { -- try { -- message = message?.split('\n\n')[message.split('\n\n').length - 1] -- } catch (e) {} -- } -- if (location?.length > 0) { -- const lineColumnPos = { -- start: {line: parseInt(location[0]) - 1, column: 10}, -- end: {line: parseInt(location[0]) - 1, column: 10} -- } -- // remixClient.highlight(lineColumnPos as any, _contract.name, message) -- } -- }) -- } -- } -- throw new Error(output.message) -- } -- // SUCCESS -- // remixClient.discardHighlight() -- remixClient.changeStatus({ -- key: 'succeed', -- type: 'success', -- title: 'success' -- }) -- -- const data = toStandardOutput(_contract.name, output) -- remixClient.compilationFinish(_contract.name, _contract.content, data) -- if (setOutput === null || setOutput === undefined) { -- const contractName = _contract['name'] -- const compileResult = compileReturnType() -- remixClient.eventEmitter.emit('setOutput', { contractName, compileResult }) -- } else { -- setOutput(_contract.name, compileReturnType()) -- } -- } catch (err: any) { -- remixClient.changeStatus({ -- key: 'failed', -- type: 'error', -- title: err.message -- }) -- remixClient.eventEmitter.emit('setOutput', {status: 'failed', message: err.message}) -- } --} -- -- -- -- - export type StandardOutput = { - sources: { - [fileName: string]: { -diff --git a/apps/vyper/src/app/utils/remix-client.tsx b/apps/vyper/src/app/utils/remix-client.tsx -index 4f0c45a09..a4fda680c 100644 ---- a/apps/vyper/src/app/utils/remix-client.tsx -+++ b/apps/vyper/src/app/utils/remix-client.tsx -@@ -1,23 +1,12 @@ --import {HighlightPosition, CompilationResult, RemixApi, customAction} from '@remixproject/plugin-api' -+import {HighlightPosition, CompilationResult, RemixApi} from '@remixproject/plugin-api' - import {Api, Status} from '@remixproject/plugin-utils' - import {createClient} from '@remixproject/plugin-webview' - import {PluginClient} from '@remixproject/plugin' --import {Contract, compileContract} from './compiler' -+import {Contract} from './compiler' - import {ExampleContract} from '../components/VyperResult' --import EventEmitter from 'events' - -- --export type VyperComplierAddress = 'https://vyper2.remixproject.org/' | 'http://localhost:8000/' - export class RemixClient extends PluginClient { - private client = createClient>(this) -- compilerUrl: VyperComplierAddress = 'https://vyper2.remixproject.org/' -- compilerOutput: any -- eventEmitter = new EventEmitter() -- -- constructor() { -- super() -- this.compilerOutput = {} -- } - - loaded() { - return this.client.onload() -@@ -37,18 +26,6 @@ export class RemixClient extends PluginClient { - }) - } - -- resetCompilerState() { -- this.compilerOutput = {} -- this.eventEmitter.emit('resetCompilerState', {}) -- } -- -- async vyperCompileCustomAction(action: customAction) { -- //read selected contract from file explorer and create contract type -- const contract = await this.getContract() -- //compile contract -- await compileContract(contract.name, this.compilerUrl) -- } -- - /** Load Ballot contract example into the file manager */ - async loadContract({name, address}: ExampleContract) { - try { -diff --git a/apps/vyper/src/assets/vyperLogo_v2.webp b/apps/vyper/src/assets/vyperLogo_v2.webp -deleted file mode 100644 -index fc8599362..000000000 -Binary files a/apps/vyper/src/assets/vyperLogo_v2.webp and /dev/null differ -diff --git a/apps/vyper/src/profile.json b/apps/vyper/src/profile.json -index 8ed04d3cb..456772071 100644 ---- a/apps/vyper/src/profile.json -+++ b/apps/vyper/src/profile.json -@@ -1,7 +1,7 @@ - { - "name": "vyper", -- "displayName": "Vyper", -- "methods": ["getCompilationResult", "compile", "vyperCompileCustomAction"], -+ "displayName": "Vyper Plugin", -+ "methods": ["getCompilationResult", "compile"], - "url": "https://ipfs-cluster.ethdevops.io/ipfs/QmbmPzUg7ghTKcF2eo64zm1k1LKdibYfqYmiqXkHKXks8r", - "documentation": "https://remix-ide.readthedocs.io/en/latest/plugin_list.html", - "description": "Compile vyper contracts", -diff --git a/apps/walletconnect/src/app/app.tsx b/apps/walletconnect/src/app/app.tsx -index dd9626956..3aef77cf8 100644 ---- a/apps/walletconnect/src/app/app.tsx -+++ b/apps/walletconnect/src/app/app.tsx -@@ -1,16 +1,33 @@ -+import React, {useEffect, useState} from 'react' - import '../css/app.css' - import '@fortawesome/fontawesome-free/css/all.css' -+import type {EthereumClient} from '@web3modal/ethereum' - import {WalletConnectRemixClient} from '../services/WalletConnectRemixClient' - import {WalletConnectUI} from './walletConnectUI' - - const remix = new WalletConnectRemixClient() --remix.initClient() - - function App() { -+ const [ethereumClient, setEthereumClient] = useState(null) -+ const [wagmiConfig, setWagmiConfig] = useState(null) -+ const [theme, setTheme] = useState('dark') -+ -+ useEffect(() => { -+ ;(async () => { -+ await remix.initClient() -+ remix.internalEvents.on('themeChanged', (theme: string) => { -+ setTheme(theme) -+ }) -+ -+ setWagmiConfig(remix.wagmiConfig) -+ setEthereumClient(remix.ethereumClient) -+ })() -+ }, []) -+ - return ( -
-

WalletConnect

-- -+ {ethereumClient && wagmiConfig && } -
- ) - } -diff --git a/apps/walletconnect/src/app/walletConnectUI.tsx b/apps/walletconnect/src/app/walletConnectUI.tsx -index 655faa4d7..38c205000 100644 ---- a/apps/walletconnect/src/app/walletConnectUI.tsx -+++ b/apps/walletconnect/src/app/walletConnectUI.tsx -@@ -1,7 +1,16 @@ --export function WalletConnectUI() { -+import {Web3Button, Web3Modal} from '@web3modal/react' -+import {WagmiConfig} from 'wagmi' -+import {PROJECT_ID} from '../services/constant' -+ -+export function WalletConnectUI({ethereumClient, wagmiConfig, theme}) { - return ( --
-- -+
-+
-+ -+ -+ -+
-+ -
- ) - } -diff --git a/apps/walletconnect/src/services/WalletConnectRemixClient.ts b/apps/walletconnect/src/services/WalletConnectRemixClient.ts -index d8e8656cc..0a4ccc004 100644 ---- a/apps/walletconnect/src/services/WalletConnectRemixClient.ts -+++ b/apps/walletconnect/src/services/WalletConnectRemixClient.ts -@@ -1,18 +1,30 @@ - import {PluginClient} from '@remixproject/plugin' - import {createClient} from '@remixproject/plugin-webview' --import { createWeb3Modal, defaultConfig } from '@web3modal/ethers5/react' --import { constants } from '../utils/constants' -+import {w3mConnectors, w3mProvider} from '@web3modal/ethereum' -+import {createConfig, configureChains} from 'wagmi' -+import { -+ arbitrum, -+ arbitrumGoerli, -+ mainnet, -+ polygon, -+ polygonMumbai, -+ optimism, -+ optimismGoerli, -+ Chain, -+ goerli, -+ sepolia -+} from 'viem/chains' -+import {EthereumClient} from '@web3modal/ethereum' - import EventManager from 'events' --import {PROJECT_ID as projectId, METADATA as metadata} from './constant' --import { Chain, RequestArguments } from '../types' -+import {PROJECT_ID} from './constant' - - export class WalletConnectRemixClient extends PluginClient { -- web3modal: ReturnType -- ethersConfig: ReturnType -+ wagmiConfig -+ ethereumClient: EthereumClient - chains: Chain[] - currentChain: number - internalEvents: EventManager -- currentAccount: string -+ currentAcount: string - - constructor() { - super() -@@ -33,59 +45,74 @@ export class WalletConnectRemixClient extends PluginClient { - console.log('initializing walletconnect plugin...') - } - -- initClient() { -+ async initClient() { - try { -- const ethersConfig = defaultConfig({ -- metadata, -- rpcUrl: 'https://cloudflare-eth.com' -+ this.chains = [ -+ mainnet, -+ arbitrum, -+ arbitrumGoerli, -+ polygon, -+ polygonMumbai, -+ optimism, -+ optimismGoerli, -+ goerli, -+ sepolia -+ ] -+ const {publicClient} = configureChains(this.chains, [ -+ w3mProvider({projectId: PROJECT_ID}) -+ ], { -+ pollingInterval: 5000 - }) -- -- this.web3modal = createWeb3Modal({ projectId, chains: constants.chains, metadata, ethersConfig }) -- this.ethersConfig = ethersConfig -- this.chains = constants.chains -+ -+ this.wagmiConfig = createConfig({ -+ autoConnect: false, -+ connectors: w3mConnectors({projectId: PROJECT_ID, chains: this.chains}), -+ publicClient -+ }) -+ this.ethereumClient = new EthereumClient(this.wagmiConfig, this.chains) - } catch (e) { - return console.error('Could not get a wallet connection', e) - } - } - - subscribeToEvents() { -- this.web3modal.subscribeProvider(({ address, isConnected, chainId })=>{ -- if(isConnected){ -- if (address !== this.currentAccount) { -- this.currentAccount = address -- this.emit('accountsChanged', [address]) -+ this.wagmiConfig.subscribe((event) => { -+ if (event.status === 'connected') { -+ if (event.data.account !== this.currentAcount) { -+ this.currentAcount = event.data.account -+ this.emit('accountsChanged', [event.data.account]) - } -- if (this.currentChain !== chainId) { -- this.currentChain = chainId -- this.emit('chainChanged', chainId) -+ if (this.currentChain !== event.data.chain.id) { -+ this.currentChain = event.data.chain.id -+ this.emit('chainChanged', event.data.chain.id) - } -- }else{ -+ } else if (event.status === 'disconnected') { - this.emit('accountsChanged', []) -- this.currentAccount = '' -+ this.currentAcount = '' - this.emit('chainChanged', 0) - this.currentChain = 0 - } -- },) -+ }) - this.on('theme', 'themeChanged', (theme: any) => { -- this.web3modal.setThemeMode(theme.quality) -+ this.internalEvents.emit('themeChanged', theme.quality) - }) - } - -- async sendAsync(data: RequestArguments) { -- const address = this.web3modal.getAddress() -- const provider = this.web3modal.getWalletProvider() -- if (address && provider) { -+ async sendAsync(data: {method: string; params: string; id: string}) { -+ if (this.wagmiConfig.status === 'connected') { - if (data.method === 'eth_accounts') { - return { - jsonrpc: '2.0', -- result: [address], -+ result: [this.wagmiConfig.data.account], - id: data.id - } - } else { -- //@ts-expect-error this flag does not correspond to EIP-1193 but was introduced by MetaMask -- if (provider.isMetamask && provider.sendAsync) { -+ const provider = await this.wagmiConfig.connector.getProvider({ -+ chainId: this.wagmiConfig.data.chain.id -+ }) -+ -+ if (provider.isMetaMask) { - return new Promise((resolve) => { -- //@ts-expect-error sendAsync is a legacy function we know MetaMask supports it - provider.sendAsync(data, (error, response) => { - if (error) { - if (error.data && error.data.originalError && error.data.originalError.data) { -@@ -129,6 +156,6 @@ export class WalletConnectRemixClient extends PluginClient { - - async deactivate() { - console.log('deactivating walletconnect plugin...') -- await this.web3modal.disconnect() -+ await this.ethereumClient.disconnect() - } - } -diff --git a/apps/walletconnect/src/services/constant.ts b/apps/walletconnect/src/services/constant.ts -index 5ffe34340..497ddc535 100644 ---- a/apps/walletconnect/src/services/constant.ts -+++ b/apps/walletconnect/src/services/constant.ts -@@ -1,8 +1,2 @@ - // @ts-ignore --export const PROJECT_ID = WALLET_CONNECT_PROJECT_ID --export const METADATA = { -- name: 'Remix IDE', -- description: 'The Native IDE for Web3 Development.', -- url: 'https://remix.ethereum.org/', -- icons: ['https://remix.ethereum.org/favicon.ico'], --} -\ No newline at end of file -+export const PROJECT_ID = WALLET_CONNECT_PROJECT_ID -\ No newline at end of file -diff --git a/apps/walletconnect/src/types.ts b/apps/walletconnect/src/types.ts -deleted file mode 100644 -index 0ae3233f7..000000000 ---- a/apps/walletconnect/src/types.ts -+++ /dev/null -@@ -1,13 +0,0 @@ --export interface RequestArguments { -- readonly method: string -- readonly params?: readonly unknown[] | object -- readonly id?: string --} -- --export type Chain = { -- chainId: number -- name: string -- currency: string -- explorerUrl: string -- rpcUrl: string --} -\ No newline at end of file -diff --git a/apps/walletconnect/src/utils/chains.ts b/apps/walletconnect/src/utils/chains.ts -deleted file mode 100644 -index 783fed703..000000000 ---- a/apps/walletconnect/src/utils/chains.ts -+++ /dev/null -@@ -1,151 +0,0 @@ --export const mainnet = { -- chainId: 1, -- name: 'Ethereum', -- currency: 'ETH', -- explorerUrl: 'https://etherscan.io', -- rpcUrl: 'https://cloudflare-eth.com' --} -- --export const sepolia = { -- chainId: 11155111, -- name: 'Sepolia', -- currency: 'ETH', -- explorerUrl: 'https://sepolia.etherscan.io', -- rpcUrl: 'https://rpc.sepolia.org' --} -- --export const goerli = { -- chainId: 5, -- name: 'Goerli', -- currency: 'ETH', -- explorerUrl: 'https://goerli.etherscan.io', -- rpcUrl: 'https://rpc.ankr.com/eth_goerli' --} -- --export const arbitrum = { -- chainId: 42161, -- name: 'Arbitrum', -- currency: 'ETH', -- explorerUrl: 'https://arbiscan.io', -- rpcUrl: 'https://arb1.arbitrum.io/rpc' --} -- --export const arbitrumGoerli = { -- chainId: 421613, -- name: 'Arbitrum Goerli', -- currency: 'ETH', -- explorerUrl: 'https://goerli.arbiscan.io', -- rpcUrl: 'https://goerli-rollup.arbitrum.io/rpc' --} -- --export const avalanche = { -- chainId: 43114, -- name: 'Avalanche', -- currency: 'AVAX', -- explorerUrl: 'https://snowtrace.io', -- rpcUrl: 'https://api.avax.network/ext/bc/C/rpc' --} -- --export const bsc = { -- chainId: 56, -- name: 'Binance Smart Chain', -- currency: 'BNB', -- explorerUrl: 'https://bscscan.com', -- rpcUrl: 'https://rpc.ankr.com/bsc' --} -- --export const optimism = { -- chainId: 10, -- name: 'Optimism', -- currency: 'ETH', -- explorerUrl: 'https://optimistic.etherscan.io', -- rpcUrl: 'https://mainnet.optimism.io' --} -- --export const optimismGoerli = { -- chainId: 420, -- name: 'Optimism Goerli', -- currency: 'ETH', -- explorerUrl: 'https://goerli-optimism.etherscan.io', -- rpcUrl: 'https://goerli.optimism.io' --} -- --export const polygon = { -- chainId: 137, -- name: 'Polygon', -- currency: 'MATIC', -- explorerUrl: 'https://polygonscan.com', -- rpcUrl: 'https://polygon-rpc.com' --} -- --export const polygonMumbai = { -- chainId: 80001, -- name: 'Polygon Mumbai', -- currency: 'MATIC', -- explorerUrl: 'https://mumbai.polygonscan.com', -- rpcUrl: 'https://rpc.ankr.com/polygon_mumbai' --} -- --export const gnosis = { -- chainId: 100, -- name: 'Gnosis', -- currency: 'xDAI', -- explorerUrl: 'https://gnosis.blockscout.com', -- rpcUrl: 'https://rpc.gnosischain.com' --} -- --export const zkSync = { -- chainId: 324, -- name: 'ZkSync', -- currency: 'ETH', -- explorerUrl: 'https://explorer.zksync.io', -- rpcUrl: 'https://mainnet.era.zksync.io' --} -- --export const zora = { -- chainId: 7777777, -- name: 'Zora', -- currency: 'ETH', -- explorerUrl: 'https://explorer.zora.energy', -- rpcUrl: 'https://rpc.zora.energy' --} -- --export const celo = { -- chainId: 42220, -- name: 'Celo', -- currency: 'CELO', -- explorerUrl: 'https://explorer.celo.org/mainnet', -- rpcUrl: 'https://forno.celo.org' --} -- --export const base = { -- chainId: 8453, -- name: 'Base', -- currency: 'BASE', -- explorerUrl: 'https://basescan.org', -- rpcUrl: 'https://mainnet.base.org' --} -- --export const aurora = { -- chainId: 1313161554, -- name: 'Aurora', -- currency: 'ETH', -- explorerUrl: 'https://explorer.aurora.dev', -- rpcUrl: 'https://mainnet.aurora.dev' --} -- --export const ronin = { -- chainId: 2020, -- name: 'Ronin', -- currency: 'RON', -- explorerUrl: 'https://app.roninchain.com', -- rpcUrl: 'https://api.roninchain.com/rpc' --} -- --export const saigon = { -- chainId: 2021, -- name: 'Saigon Testnet', -- currency: 'RON', -- explorerUrl: 'https://saigon-explorer.roninchain.com', -- rpcUrl: 'https://saigon-testnet.roninchain.com/rpc' --} -\ No newline at end of file -diff --git a/apps/walletconnect/src/utils/constants.ts b/apps/walletconnect/src/utils/constants.ts -deleted file mode 100644 -index 84e806591..000000000 ---- a/apps/walletconnect/src/utils/constants.ts -+++ /dev/null -@@ -1,45 +0,0 @@ --import { -- arbitrum, -- arbitrumGoerli, -- mainnet, -- polygon, -- polygonMumbai, -- optimism, -- optimismGoerli, -- goerli, -- sepolia, -- ronin, -- saigon, -- aurora, -- avalanche, -- base, -- bsc, -- celo, -- gnosis, -- zkSync, -- zora, --} from './chains' -- --export const constants = { -- chains: [ -- arbitrum, -- arbitrumGoerli, -- mainnet, -- polygon, -- polygonMumbai, -- optimism, -- optimismGoerli, -- goerli, -- sepolia, -- ronin, -- saigon, -- aurora, -- avalanche, -- base, -- bsc, -- celo, -- gnosis, -- zkSync, -- zora, -- ] --} -\ No newline at end of file -diff --git a/libs/ghaction-helper/package.json b/libs/ghaction-helper/package.json -index 2678c622e..ee415e405 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.22", -+ "version": "0.1.21", - "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.28", -+ "@remix-project/remix-solidity": "^0.5.27", - "@types/chai": "^4.3.4", - "typescript": "^4.9.3" - }, - "dependencies": { - "@ethereum-waffle/chai": "^3.4.4", -- "@remix-project/remix-simulator": "^0.2.42", -+ "@remix-project/remix-simulator": "^0.2.41", - "chai": "^4.3.7", - "ethers": "^5.7.2", - "web3": "^4.1.1" - }, - "types": "./src/index.d.ts", -- "gitHead": "817089ab1f206f5e195756a4051afb812ec26901" -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca" - } -\ No newline at end of file -diff --git a/libs/remix-analyzer/package.json b/libs/remix-analyzer/package.json -index 0e0c3930b..4c9a3e3fa 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.51", -+ "version": "0.5.50", - "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.72", -- "@remix-project/remix-lib": "^0.5.49", -+ "@remix-project/remix-astwalker": "^0.0.71", -+ "@remix-project/remix-lib": "^0.5.48", - "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": "817089ab1f206f5e195756a4051afb812ec26901", -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca", - "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 ff25025c3..baee8905e 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.72", -+ "version": "0.0.71", - "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.49", -+ "@remix-project/remix-lib": "^0.5.48", - "@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": "817089ab1f206f5e195756a4051afb812ec26901", -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca", - "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 fd0d5544a..766d8144e 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.42", -+ "version": "0.5.41", - "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.72", -- "@remix-project/remix-lib": "^0.5.49", -- "@remix-project/remix-simulator": "^0.2.42", -- "@remix-project/remix-solidity": "^0.5.28", -+ "@remix-project/remix-astwalker": "^0.0.71", -+ "@remix-project/remix-lib": "^0.5.48", -+ "@remix-project/remix-simulator": "^0.2.41", -+ "@remix-project/remix-solidity": "^0.5.27", - "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": "817089ab1f206f5e195756a4051afb812ec26901", -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca", - "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 72a280844..e61e74a26 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.49", -+ "version": "0.5.48", - "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": "817089ab1f206f5e195756a4051afb812ec26901", -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca", - "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 4a2f5299b..bb62895a6 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.42", -+ "version": "0.2.41", - "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.49", -+ "@remix-project/remix-lib": "^0.5.48", - "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": "817089ab1f206f5e195756a4051afb812ec26901", -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca", - "types": "./src/index.d.ts" - } -\ No newline at end of file -diff --git a/libs/remix-simulator/src/methods/accounts.ts b/libs/remix-simulator/src/methods/accounts.ts -index 62a8411a0..00b8701da 100644 ---- a/libs/remix-simulator/src/methods/accounts.ts -+++ b/libs/remix-simulator/src/methods/accounts.ts -@@ -71,8 +71,7 @@ export class Web3Accounts { - return { - eth_accounts: this.eth_accounts.bind(this), - eth_getBalance: this.eth_getBalance.bind(this), -- eth_sign: this.eth_sign.bind(this), -- eth_chainId: this.eth_chainId.bind(this) -+ eth_sign: this.eth_sign.bind(this) - } - } - -@@ -104,8 +103,4 @@ export class Web3Accounts { - - cb(null, data.signature) - } -- -- eth_chainId (_payload, cb) { -- return cb(null, '0x539') // 0x539 is hex of 1337 -- } - } -diff --git a/libs/remix-solidity/package.json b/libs/remix-solidity/package.json -index e2192d252..43ef21624 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.28", -+ "version": "0.5.27", - "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.49", -+ "@remix-project/remix-lib": "^0.5.48", - "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": "817089ab1f206f5e195756a4051afb812ec26901" -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca" - } -\ No newline at end of file -diff --git a/libs/remix-solidity/src/index.ts b/libs/remix-solidity/src/index.ts -index eba07bb04..b9db8be3b 100644 ---- a/libs/remix-solidity/src/index.ts -+++ b/libs/remix-solidity/src/index.ts -@@ -1,6 +1,6 @@ - export { Compiler } from './compiler/compiler' - export { compile } from './compiler/compiler-helpers' --export { default as compilerInputFactory, getValidLanguage } from './compiler/compiler-input' -+export { default as CompilerInput, getValidLanguage } from './compiler/compiler-input' - export { CompilerAbstract } from './compiler/compiler-abstract' - export * from './compiler/types' - export { pathToURL, baseURLBin, baseURLWasm, canUseWorker, urlFromVersion } from './compiler/compiler-utils' -diff --git a/libs/remix-tests/package.json b/libs/remix-tests/package.json -index 98d1e1c9e..a2980f4d1 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.42", -+ "version": "0.2.41", - "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.49", -- "@remix-project/remix-simulator": "^0.2.42", -- "@remix-project/remix-solidity": "^0.5.28", -+ "@remix-project/remix-lib": "^0.5.48", -+ "@remix-project/remix-simulator": "^0.2.41", -+ "@remix-project/remix-solidity": "^0.5.27", - "@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": "817089ab1f206f5e195756a4051afb812ec26901" -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca" - } -\ No newline at end of file -diff --git a/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts b/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts -index 7f047833e..86fef067e 100644 ---- a/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts -+++ b/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts -@@ -1,6 +1,9 @@ - /* eslint-disable no-control-regex */ - import { EditorUIProps, monacoTypes } from '@remix-ui/editor'; - import axios, {AxiosResponse} from 'axios' -+import { slice } from 'lodash'; -+const _paq = (window._paq = window._paq || []) -+ - const controller = new AbortController(); - const { signal } = controller; - const result: string = '' -@@ -8,9 +11,11 @@ const result: string = '' - export class RemixInLineCompletionProvider implements monacoTypes.languages.InlineCompletionsProvider { - props: EditorUIProps - monaco: any -+ running:boolean - constructor(props: any, monaco: any) { - this.props = props - this.monaco = monaco -+ this.running = false - } - - async provideInlineCompletions(model: monacoTypes.editor.ITextModel, position: monacoTypes.Position, context: monacoTypes.languages.InlineCompletionContext, token: monacoTypes.CancellationToken): Promise> { -@@ -25,7 +30,11 @@ export class RemixInLineCompletionProvider implements monacoTypes.languages.Inli - endColumn: position.column, - }); - -- if (!word.endsWith(' ') && !word.endsWith('\n') && !word.endsWith(';') && !word.endsWith('.')) { -+ -+ if (!word.endsWith('\n') && -+ !word.endsWith(';') && -+ !word.endsWith('.') && -+ !word.endsWith('(')) { - return; - } - -@@ -40,13 +49,16 @@ export class RemixInLineCompletionProvider implements monacoTypes.languages.Inli - const split = word.split('\n') - if (split.length < 2) return - const ask = split[split.length - 2].trimStart() -- if (split[split.length - 1].trim() === '' && ask.startsWith('///')) { -- // use the code generation model -- const {data} = await axios.post('https://gpt-chat.remixproject.org/infer', {comment: ask.replace('///', '')}) -- const parsedData = JSON.parse(data).trimStart() -+ if (split[split.length - 1].trim() === '' && ask.startsWith('///') && (!this.running)) { -+ // use the code generation model, only take max 1000 word as context -+ this.running = true -+ const data = await this.props.plugin.call('solcoder', 'code_completion', word) -+ console.log("solcoder completion data", data) -+ const parsedData = data[0].trimStart() //JSON.parse(data).trimStart() - const item: monacoTypes.languages.InlineCompletion = { - insertText: parsedData - }; -+ this.running =false - return { - items: [item], - enableForwardStability: true -@@ -55,6 +67,15 @@ export class RemixInLineCompletionProvider implements monacoTypes.languages.Inli - } catch (e) { - console.error(e) - } -+ -+ if (word.split('\n').at(-1).trimStart().startsWith('//') || -+ word.split('\n').at(-1).trimStart().startsWith('/*') || -+ word.split('\n').at(-1).trimStart().startsWith('*') || -+ word.split('\n').at(-1).trimStart().startsWith('*/') -+ ){ -+ return; // do not do completion on single and multiline comment -+ } -+ - - // abort if there is a signal - if (token.isCancellationRequested) { -@@ -63,21 +84,23 @@ export class RemixInLineCompletionProvider implements monacoTypes.languages.Inli - - let result - try { -- result = await this.props.plugin.call('copilot-suggestion', 'suggest', word) -+ if (!this.running){ -+ result = await this.props.plugin.call('copilot-suggestion', 'suggest', word) -+ this.running = true -+ } - } catch (err) { -+ this.running=false - return - } - - const generatedText = (result as any).output[0].generated_text as string -- // the generated text remove a space from the context... -- let clean = generatedText -- if (generatedText.indexOf('@custom:dev-run-script./') !== -1) { -- clean = generatedText.replace('@custom:dev-run-script', '@custom:dev-run-script ') -- } -- clean = clean.replace(word, '') -+ const clean = generatedText -+ console.log('solcoder inline data:\n', clean) -+ - const item: monacoTypes.languages.InlineCompletion = { - insertText: clean - }; -+ this.running=false - - // abort if there is a signal - if (token.isCancellationRequested) { -diff --git a/libs/remix-ui/editor/src/lib/remix-ui-editor.tsx b/libs/remix-ui/editor/src/lib/remix-ui-editor.tsx -index 300d41836..adc5aadf8 100644 ---- a/libs/remix-ui/editor/src/lib/remix-ui-editor.tsx -+++ b/libs/remix-ui/editor/src/lib/remix-ui-editor.tsx -@@ -3,7 +3,7 @@ import { FormattedMessage, useIntl } from 'react-intl' - import { isArray } from 'lodash' - import Editor, { loader, Monaco } from '@monaco-editor/react' - import { AlertModal } from '@remix-ui/app' --import { QueryParams } from '@remix-project/remix-lib' -+import { ConsoleLogs, QueryParams } from '@remix-project/remix-lib' - import { reducerActions, reducerListener, initialState } from './actions/editor' - import { solidityTokensProvider, solidityLanguageConfig } from './syntaxes/solidity' - import { cairoTokensProvider, cairoLanguageConfig } from './syntaxes/cairo' -@@ -741,6 +741,24 @@ export const EditorUI = (props: EditorUIProps) => { - }, - } - -+ let solgptExplainFunctionAction -+ const executeSolgptExplainFunctionAction = { -+ id: 'explainFunction', -+ label: intl.formatMessage({id: 'editor.explainFunctionSol'}), -+ contextMenuOrder: 1, // choose the order -+ contextMenuGroupId: 'sol-gtp', // create a new grouping -+ keybindings: [], -+ run: async () => { -+ const file = await props.plugin.call('fileManager', 'getCurrentFile') -+ const content = await props.plugin.call('fileManager', 'readFile', file) -+ const selectedCode = editor.getModel().getValueInRange(editor.getSelection()) -+ -+ await props.plugin.call('solcoder', 'code_explaining', selectedCode) -+ _paq.push(['trackEvent', 'ai', 'solcoder', 'explainFunction']) -+ }, -+ } -+ -+ - const freeFunctionCondition = editor.createContextKey('freeFunctionCondition', false) - let freeFunctionAction - const executeFreeFunctionAction = { -@@ -775,6 +793,7 @@ export const EditorUI = (props: EditorUIProps) => { - freeFunctionAction = editor.addAction(executeFreeFunctionAction) - gptGenerateDocumentationAction = editor.addAction(executeGptGenerateDocumentationAction) - gptExplainFunctionAction = editor.addAction(executegptExplainFunctionAction) -+ solgptExplainFunctionAction = editor.addAction(executeSolgptExplainFunctionAction) - - // we have to add the command because the menu action isn't always available (see onContextMenuHandlerForFreeFunction) - editor.addCommand(monacoRef.current.KeyMod.Shift | monacoRef.current.KeyMod.Alt | monacoRef.current.KeyCode.KeyR, () => executeFreeFunctionAction.run()) -@@ -794,6 +813,10 @@ export const EditorUI = (props: EditorUIProps) => { - gptExplainFunctionAction.dispose() - gptExplainFunctionAction = null - } -+ if (solgptExplainFunctionAction) { -+ solgptExplainFunctionAction.dispose() -+ solgptExplainFunctionAction = null -+ } - - const file = await props.plugin.call('fileManager', 'getCurrentFile') - if (!file.endsWith('.sol')) { -@@ -811,8 +834,11 @@ export const EditorUI = (props: EditorUIProps) => { - currentFunction.current = functionImpl.name - executeGptGenerateDocumentationAction.label = intl.formatMessage({id: 'editor.generateDocumentation2'}, {name: functionImpl.name}) - gptGenerateDocumentationAction = editor.addAction(executeGptGenerateDocumentationAction) -- executegptExplainFunctionAction.label = intl.formatMessage({id: 'editor.explainFunction2'}, {name: functionImpl.name}) -+ executegptExplainFunctionAction.label = intl.formatMessage({id: 'editor.explainFunction'}, {name: functionImpl.name}) - gptExplainFunctionAction = editor.addAction(executegptExplainFunctionAction) -+ }else{ -+ executeSolgptExplainFunctionAction.label = intl.formatMessage({id: 'editor.explainFunctionSol'}) -+ solgptExplainFunctionAction = editor.addAction(executeSolgptExplainFunctionAction) - } - freeFunctionCondition.set(!!freeFunctionNode) - } -diff --git a/libs/remix-ui/editor/src/lib/suggestion-service/suggestion-service.ts b/libs/remix-ui/editor/src/lib/suggestion-service/suggestion-service.ts -new file mode 100644 -index 000000000..9f6b9db75 ---- /dev/null -+++ b/libs/remix-ui/editor/src/lib/suggestion-service/suggestion-service.ts -@@ -0,0 +1,89 @@ -+import EventEmitter from 'events' -+ -+export class SuggestionService { -+ worker: Worker -+ responses: Array -+ events: EventEmitter -+ constructor() { -+ console.log('SuggestionService instanciate worker') -+ this.worker = new Worker(new URL('./worker.js', import.meta.url), { -+ type: 'module' -+ }); -+ this.init() -+ this.events = new EventEmitter() -+ this.responses = [] -+ } -+ -+ async init() { -+ const onMessageReceived = (e) => { -+ switch (e.data.status) { -+ case 'initiate': -+ console.log(e.data) -+ this.events.emit(e.data.status, e.data) -+ // Model file start load: add a new progress item to the list. -+ break; -+ -+ case 'progress': -+ this.events.emit(e.data.status, e.data) -+ console.log(e.data) -+ // Model file progress: update one of the progress items. -+ break; -+ -+ case 'done': -+ this.events.emit(e.data.status, e.data) -+ console.log(e.data) -+ // Model file loaded: remove the progress item from the list. -+ break; -+ -+ case 'ready': -+ this.events.emit(e.data.status, e.data) -+ console.log(e.data) -+ // Pipeline ready: the worker is ready to accept messages. -+ break; -+ -+ case 'update': -+ this.events.emit(e.data.status, e.data) -+ console.log(e.data) -+ // Generation update: update the output text. -+ break; -+ -+ case 'complete': -+ console.log(e.data) -+ if (this.responses[e.data.id]) { -+ this.responses[e.data.id](null, e.data) -+ } else { -+ console.log('no callback for', e.data) -+ } -+ -+ // Generation complete: re-enable the "Generate" button -+ break; -+ } -+ }; -+ -+ // Attach the callback function as an event listener. -+ this.worker.addEventListener('message', onMessageReceived) -+ -+ this.worker.postMessage({ -+ cmd: 'init', -+ model: 'Pipper/solstarcoder' -+ }) -+ } -+ -+ suggest (content: string, max_new_tokens: number, temperature: number, top_k: number, do_sample: boolean) { -+ return new Promise((resolve, reject) => { -+ this.worker.postMessage({ -+ id: this.responses.length, -+ cmd: 'suggest', -+ text: content, -+ max_new_tokens, -+ temperature, -+ top_k, -+ do_sample -+ }) -+ this.responses.push((error, result) => { -+ if (error) return reject(error) -+ resolve(result) -+ }) -+ }) -+ } -+} -\ No newline at end of file -diff --git a/libs/remix-ui/home-tab/src/lib/components/pluginButton.tsx b/libs/remix-ui/home-tab/src/lib/components/pluginButton.tsx -index ca27c846c..a0d22eb06 100644 ---- a/libs/remix-ui/home-tab/src/lib/components/pluginButton.tsx -+++ b/libs/remix-ui/home-tab/src/lib/components/pluginButton.tsx -@@ -30,14 +30,11 @@ function PluginButton({imgPath, envID, envText, callback, l2, description, remix -
- - {l2 && } -- {remixMaintained ? ( -+ {remixMaintained && ( - }> - -- ) -- : (}> -- -- ) -- } -+ -+ )} - - ) - } -diff --git a/libs/remix-ui/home-tab/src/lib/remix-ui-home-tab.css b/libs/remix-ui/home-tab/src/lib/remix-ui-home-tab.css -index 4ceded21f..a7fa9b4da 100644 ---- a/libs/remix-ui/home-tab/src/lib/remix-ui-home-tab.css -+++ b/libs/remix-ui/home-tab/src/lib/remix-ui-home-tab.css -@@ -102,7 +102,7 @@ - right: 180px; - } - .remixui_home_maintainedLabel { -- top: 118px; -+ top: 120px; - right: 180px; - } - -diff --git a/libs/remix-ui/panel/src/lib/plugins/panel-header.tsx b/libs/remix-ui/panel/src/lib/plugins/panel-header.tsx -index 6037ef583..4f9c35801 100644 ---- a/libs/remix-ui/panel/src/lib/plugins/panel-header.tsx -+++ b/libs/remix-ui/panel/src/lib/plugins/panel-header.tsx -@@ -35,14 +35,11 @@ const RemixUIPanelHeader = (props: RemixPanelProps) => { - -
-
-- {plugin?.profile?.maintainedBy?.toLowerCase() === 'remix' ? ( -+ {plugin?.profile?.maintainedBy?.toLowerCase() === 'remix' && ( - }> - -- ) -- : (}> -- -- ) -- } -+ -+ )} -
-
- } tooltipId="pluginInfoTooltip" tooltipClasses="text-nowrap"> -diff --git a/libs/remix-ui/plugin-manager/src/lib/components/ActivePluginCard.tsx b/libs/remix-ui/plugin-manager/src/lib/components/ActivePluginCard.tsx -index 2c0b61c9a..a8fb287d0 100644 ---- a/libs/remix-ui/plugin-manager/src/lib/components/ActivePluginCard.tsx -+++ b/libs/remix-ui/plugin-manager/src/lib/components/ActivePluginCard.tsx -@@ -17,7 +17,7 @@ function ActivePluginCard({profile, buttonText, deactivatePlugin}: PluginCardPro -
-
- {profile.displayName || profile.name} -- {profile?.maintainedBy?.toLowerCase() == 'remix' ? ( -+ {profile?.maintainedBy?.toLowerCase() == 'remix' && ( - } - > - -- ) -- : (} -- > -- -- ) -- } -+ -+ )} - {profile.documentation && ( - -
- {profile.displayName || profile.name} -- {profile?.maintainedBy?.toLowerCase() == 'remix' ? ( -+ {profile?.maintainedBy?.toLowerCase() == 'remix' && ( - } - > - -- ) -- : (} -- > -- -- ) -- } -+ -+ )} - {profile.documentation && ( - ) => { - const accounts = plugin.REACT_API.accounts.loadedAccounts -@@ -18,12 +18,17 @@ export const updateAccountBalances = async (plugin: RunTab, dispatch: React.Disp - export const fillAccountsList = async (plugin: RunTab, dispatch: React.Dispatch) => { - try { - dispatch(fetchAccountsListRequest()) -- try { -- let accounts = await plugin.blockchain.getAccounts() -- if (!accounts) accounts = [] -+ const promise = plugin.blockchain.getAccounts() - -+ promise.then(async (accounts: string[]) => { - const loadedAccounts = {} -- -+ -+ if (!accounts) accounts = [] -+ // allSettled is undefined.. -+ // so the current promise (all) will finish when: -+ // - all the promises resolve -+ // - at least one reject -+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all - for (const account of accounts) { - const balance = await plugin.blockchain.getBalanceInEther(account) - loadedAccounts[account] = shortenAddress(account, balance) -@@ -32,12 +37,13 @@ export const fillAccountsList = async (plugin: RunTab, dispatch: React.Dispatch< - - if (provider === 'injected') { - const selectedAddress = plugin.blockchain.getInjectedWeb3Address() -- if (!(Object.keys(loadedAccounts).includes(toChecksumAddress(selectedAddress)))) setAccount(dispatch, null) -+ -+ if (!(Object.keys(loadedAccounts).includes(selectedAddress))) setAccount(dispatch, null) - } - dispatch(fetchAccountsListSuccess(loadedAccounts)) -- } catch (e) { -+ }).catch((e) => { - dispatch(fetchAccountsListFailed(e.message)) -- } -+ }) - } catch (e) { - dispatch(displayPopUp(`Cannot get account list: ${e}`)) - } -diff --git a/libs/remix-ui/run-tab/src/lib/actions/events.ts b/libs/remix-ui/run-tab/src/lib/actions/events.ts -index fddd67988..bc8833172 100644 ---- a/libs/remix-ui/run-tab/src/lib/actions/events.ts -+++ b/libs/remix-ui/run-tab/src/lib/actions/events.ts -@@ -33,6 +33,7 @@ export const setupEvents = (plugin: RunTab, dispatch: React.Dispatch) => { - } - setFinalContext(plugin, dispatch) - fillAccountsList(plugin, dispatch) -+ updateAccountBalances(plugin, dispatch) - }) - - plugin.blockchain.event.register('networkStatus', ({ error, network }) => { -diff --git a/libs/remix-ui/run-tab/src/lib/actions/index.ts b/libs/remix-ui/run-tab/src/lib/actions/index.ts -index a2b44f989..411180b34 100644 ---- a/libs/remix-ui/run-tab/src/lib/actions/index.ts -+++ b/libs/remix-ui/run-tab/src/lib/actions/index.ts -@@ -20,7 +20,7 @@ declare global { - } - - const _paq = window._paq = window._paq || [] //eslint-disable-line --let plugin: RunTab, dispatch: React.Dispatch = () => {} -+let plugin: RunTab, dispatch: React.Dispatch - - export const initRunTab = (udapp: RunTab) => async (reducerDispatch: React.Dispatch) => { - plugin = udapp -diff --git a/libs/remix-ui/run-tab/src/lib/components/account.tsx b/libs/remix-ui/run-tab/src/lib/components/account.tsx -index 1ea87b2d1..86e6132ca 100644 ---- a/libs/remix-ui/run-tab/src/lib/components/account.tsx -+++ b/libs/remix-ui/run-tab/src/lib/components/account.tsx -@@ -8,7 +8,6 @@ import {CustomTooltip} from '@remix-ui/helper' - - export function AccountUI(props: AccountProps) { - const {selectedAccount, loadedAccounts} = props.accounts -- const {selectExEnv, personalMode} = props - const accounts = Object.keys(loadedAccounts) - const [plusOpt, setPlusOpt] = useState({ - classList: '', -@@ -19,14 +18,11 @@ export function AccountUI(props: AccountProps) { - const intl = useIntl() - - useEffect(() => { -- if (accounts.length > 0 && !accounts.includes(selectedAccount)) { -- props.setAccount(accounts[0]) -- } -+ if (!selectedAccount && accounts.length > 0) props.setAccount(accounts[0]) - }, [accounts, selectedAccount]) - - useEffect(() => { -- props.setAccount('') -- switch (selectExEnv) { -+ switch (props.selectExEnv) { - case 'injected': - setPlusOpt({ - classList: 'udapp_disableMouseEvents', -@@ -63,7 +59,7 @@ export function AccountUI(props: AccountProps) { - break - - case 'web3': -- if (!personalMode) { -+ if (!props.personalMode) { - setPlusOpt({ - classList: 'disableMouseEvents', - title: intl.formatMessage({id: 'udapp.web3Title'}) -@@ -79,10 +75,11 @@ export function AccountUI(props: AccountProps) { - default: - setPlusOpt({ - classList: 'disableMouseEvents', -- title: intl.formatMessage({id: 'udapp.defaultTitle'}, {selectExEnv}) -+ title: intl.formatMessage({id: 'udapp.defaultTitle'}, {selectExEnv: props.selectExEnv}) - }) - } -- }, [selectExEnv, personalMode]) -+ // this._deps.config.get('settings/personal-mode') -+ }, [props.selectExEnv, props.personalMode]) - - const newAccount = () => { - props.createNewBlockchainAccount(passphraseCreationPrompt()) -@@ -93,7 +90,7 @@ export function AccountUI(props: AccountProps) { - return props.tooltip(intl.formatMessage({id: 'udapp.tooltipText1'})) - } - -- if (selectExEnv === 'web3') { -+ if (props.selectExEnv === 'web3') { - return props.modal( - intl.formatMessage({id: 'udapp.modalTitle1'}), - , -diff --git a/libs/remix-ui/run-tab/src/lib/components/contractGUI.tsx b/libs/remix-ui/run-tab/src/lib/components/contractGUI.tsx -index c43aafc27..c1a3e65c0 100644 ---- a/libs/remix-ui/run-tab/src/lib/components/contractGUI.tsx -+++ b/libs/remix-ui/run-tab/src/lib/components/contractGUI.tsx -@@ -296,12 +296,13 @@ export function ContractGUI(props: ContractGUIProps) { - : buttonOptions.title - } - > --
-+
- -diff --git a/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx b/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx -index 34bac7624..54c064424 100644 ---- a/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx -+++ b/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx -@@ -36,6 +36,7 @@ export interface RemixUiSettingsProps { - editor: any - _deps: any - useMatomoAnalytics: boolean -+ useCopilot: boolean - themeModule: ThemeModule - localeModule: LocaleModule - } -@@ -134,41 +135,15 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { - copilotActivate(props.config, event.target.checked, dispatch) - props.plugin.call('copilot-suggestion', 'uninstall') - return -- } -- const message =
Please wait while the copilot is downloaded. 0/100 .
-- props.plugin.on('copilot-suggestion', 'loading', (data) => { -- if (!copilotDownload.current) return -- const loaded = ((data.loaded / data.total) * 100).toString() -- const dot = loaded.match(/(.*)\./g) -- copilotDownload.current.innerText = dot ? dot[0].replace('.', '') : loaded -- }) -- const modalActivate: AppModal = { -- id: 'loadcopilotActivate', -- title: 'Download Solidity copilot', -- modalType: ModalTypes.default, -- okLabel: 'Close', -- message, -- okFn: async() => { -- props.plugin.off('copilot-suggestion', 'loading') -- if (await props.plugin.call('copilot-suggestion', 'status')) { -- copilotActivate(props.config, true, dispatch) -- } else { -- props.plugin.call('copilot-suggestion', 'uninstall') -- copilotActivate(props.config, false, dispatch) -- } -- }, -- hideFn: async () => { -- props.plugin.off('copilot-suggestion', 'loading') -- if (await props.plugin.call('copilot-suggestion', 'status')) { -- copilotActivate(props.config, true, dispatch) -- } else { -- props.plugin.call('copilot-suggestion', 'uninstall') -- copilotActivate(props.config, false, dispatch) -- } -- } -+ } -+ if (await props.plugin.call('copilot-suggestion', 'status')) { -+ copilotActivate(props.config, true, dispatch) -+ } else { -+ props.plugin.call('copilot-suggestion', 'uninstall') -+ copilotActivate(props.config, false, dispatch) - } -+ - props.plugin.call('copilot-suggestion', 'init') -- props.plugin.call('notification', 'modal', modalActivate) - - } - -diff --git a/libs/remix-ui/solidity-compiler/src/lib/logic/flattenerUtilities.ts b/libs/remix-ui/solidity-compiler/src/lib/logic/flattenerUtilities.ts -index 7dadf6fa5..b4b0824eb 100644 ---- a/libs/remix-ui/solidity-compiler/src/lib/logic/flattenerUtilities.ts -+++ b/libs/remix-ui/solidity-compiler/src/lib/logic/flattenerUtilities.ts -@@ -1,14 +1,11 @@ --import type {CompilationSource, AstNode} from '@remix-project/remix-solidity' -- - const IMPORT_SOLIDITY_REGEX = /^\s*import(\s+).*$/gm; - const SPDX_SOLIDITY_REGEX = /^\s*\/\/ SPDX-License-Identifier:.*$/gm; - --type Visited = { [key: string]: number } --export function getDependencyGraph(ast: { [name: string]: CompilationSource }, target: string, remappings: string[]) { -+export function getDependencyGraph(ast, target) { - const graph = tsort(); - const visited = {}; - visited[target] = 1; -- _traverse(graph, visited, ast, target, remappings); -+ _traverse(graph, visited, ast, target); - return graph; - } - -@@ -24,31 +21,32 @@ export function concatSourceFiles(files: any[], sources: any) { - return concat; - } - --function _traverse(graph: Graph, visited: Visited, ast: { [name: string]: CompilationSource }, name: string, remappings: string[]) { -+function _traverse(graph, visited, ast, name) { - let currentAst = null - currentAst = ast[name].ast - const dependencies = _getDependencies(currentAst); - for (const dependency of dependencies) { -- const path = resolve(name, dependency, remappings); -+ const path = resolve(name, dependency); - if (path in visited) { - // continue; // fixes wrong ordering of source in flattened file - } - visited[path] = 1; - graph.add(name, path); -- _traverse(graph, visited, ast, path, remappings); -+ _traverse(graph, visited, ast, path); - } - } - --function _getDependencies(ast: AstNode) { -+function _getDependencies(ast) { - const dependencies = ast?.nodes - .filter(node => node?.nodeType === 'ImportDirective') - .map(node => node?.file); - return dependencies; - } - -+ - // TSORT - --function tsort(initial?: any): Graph { -+function tsort(initial?: any) { - const graph = new Graph(); - - if (initial) { -@@ -60,88 +58,78 @@ function tsort(initial?: any): Graph { - return graph; - } - --class Graph { -- nodes: { [key: string]: any} -- constructor() { -- this.nodes = {} -- } - -- // Add sorted items to the graph -- add (name, path) { -- const self = this; -- // eslint-disable-next-line prefer-rest-params -- let items = [].slice.call(arguments); -- -- if (items.length === 1 && Array.isArray(items[0])) -- items = items[0]; -- -- items.forEach(function (item) { -- if (!self.nodes[item]) { -- self.nodes[item] = []; -- } -- }); -- -- for (let i = 1; i < items.length; i++) { -- const from = items[i]; -- const to = items[i - 1]; -- -- self.nodes[from].push(to); -+function Graph() { -+ this.nodes = {}; -+} -+ -+// Add sorted items to the graph -+Graph.prototype.add = function () { -+ const self = this; -+ // eslint-disable-next-line prefer-rest-params -+ let items = [].slice.call(arguments); -+ -+ if (items.length === 1 && Array.isArray(items[0])) -+ items = items[0]; -+ -+ items.forEach(function (item) { -+ if (!self.nodes[item]) { -+ self.nodes[item] = []; - } -- -- return self; -+ }); -+ -+ for (let i = 1; i < items.length; i++) { -+ const from = items[i]; -+ const to = items[i - 1]; -+ -+ self.nodes[from].push(to); - } - -- // Depth first search -- // As given in http://en.wikipedia.org/wiki/Topological_sorting -- sort () { -- const self = this; -- const nodes = Object.keys(this.nodes); -- -- const sorted = []; -- const marks = {}; -- -- for (let i = 0; i < nodes.length; i++) { -- const node = nodes[i]; -- -- if (!marks[node]) { -- visit(node); -- } -- } -- -- return sorted; -- -- function visit(node) { -- if (marks[node] === 'temp') -- throw new Error("There is a cycle in the graph. It is not possible to derive a topological sort."); -- else if (marks[node]) -- return; -- -- marks[node] = 'temp'; -- self.nodes[node].forEach(visit); -- marks[node] = 'perm'; -- -- sorted.push(node); -+ return self; -+}; -+ -+// Depth first search -+// As given in http://en.wikipedia.org/wiki/Topological_sorting -+Graph.prototype.sort = function () { -+ const self = this; -+ const nodes = Object.keys(this.nodes); -+ -+ const sorted = []; -+ const marks = {}; -+ -+ for (let i = 0; i < nodes.length; i++) { -+ const node = nodes[i]; -+ -+ if (!marks[node]) { -+ visit(node); - } - } - -- isEmpty () { -- const nodes = Object.keys(this.nodes); -- return nodes.length === 0; -+ return sorted; -+ -+ function visit(node) { -+ if (marks[node] === 'temp') -+ throw new Error("There is a cycle in the graph. It is not possible to derive a topological sort."); -+ else if (marks[node]) -+ return; -+ -+ marks[node] = 'temp'; -+ self.nodes[node].forEach(visit); -+ marks[node] = 'perm'; -+ -+ sorted.push(node); - } -+}; -+ -+Graph.prototype.isEmpty = function () { -+ const nodes = Object.keys(this.nodes); -+ return nodes.length === 0; - } - --// PATH - --function resolve(parentPath, childPath, remappings: string[]) { -- if (remappings && remappings.length) { -- for (const mapping of remappings) { -- if (mapping.indexOf('=') !== -1) { -- const split = mapping.split('=') -- childPath = childPath.replace(split[0].trim(), split[1].trim()) -- } -- } -- } -+// PATH - -+function resolve(parentPath, childPath) { - if (_isAbsolute(childPath)) { - return childPath; - } -diff --git a/libs/remix-ui/solidity-uml-gen/src/types/index.ts b/libs/remix-ui/solidity-uml-gen/src/types/index.ts -index a90b9340d..435930264 100644 ---- a/libs/remix-ui/solidity-uml-gen/src/types/index.ts -+++ b/libs/remix-ui/solidity-uml-gen/src/types/index.ts -@@ -1,6 +1,5 @@ - import { ViewPlugin } from '@remixproject/engine-web' - import { customAction } from '@remixproject/plugin-api' --import type {CompilerInput} from '@remix-project/remix-solidity' - import React from 'react' - - export interface ISolidityUmlGen extends ViewPlugin { -@@ -18,7 +17,7 @@ export interface ISolidityUmlGen extends ViewPlugin { - updateComponent(state: any): JSX.Element - setDispatch(dispatch: React.Dispatch): void - generateCustomAction(action: customAction): Promise -- flattenContract (source: any, filePath: string, data: any, input: CompilerInput): Promise -+ flattenContract (source: any, filePath: string, data: any): Promise - hideSpinner(): void - renderComponent (): void - triggerGenerateUml: boolean -diff --git a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx -index 6ea63767d..95dcedbbd 100644 ---- a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx -+++ b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx -@@ -62,6 +62,7 @@ export const TabsUI = (props: TabsUIProps) => { - const currentIndexRef = useRef(-1) - const tabsRef = useRef({}) - const tabsElement = useRef(null) -+ const [ai_switch, setAI_switch] = useState(false) - - const tabs = useRef(props.tabs) - tabs.current = props.tabs // we do this to pass the tabs list to the onReady callbacks -@@ -203,6 +204,65 @@ export const TabsUI = (props: TabsUIProps) => { - - - -+ -+ -+ - }> - props.onZoomOut()}> - -diff --git a/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx b/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx -index 2f5caaf9a..768a8c67c 100644 ---- a/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx -+++ b/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx -@@ -44,6 +44,7 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { - const [cmdHistory, cmdHistoryDispatch] = useReducer(addCommandHistoryReducer, initialState) - const [, scriptRunnerDispatch] = useReducer(registerScriptRunnerReducer, initialState) - const [toaster, setToaster] = useState(false) -+ const [aiLoading, setAILoading] = useState(false) - const [toastProvider, setToastProvider] = useState({ - show: false, - fileName: '', -@@ -103,6 +104,14 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { - setIsVM(provider.startsWith('vm-')) - }) - -+ props.plugin.on('solcoder', 'aiInfering', () => { -+ setAILoading(true) -+ }) -+ -+ props.plugin.on('solcoder', 'aiInferingDone', () => { -+ setAILoading(false) -+ }) -+ - props.onReady({ - logHtml: (html) => { - scriptRunnerDispatch({ -@@ -239,7 +248,11 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { - call('terminal', 'log',{ type: 'warn', value: `> ${script}` }) - await call('openaigpt', 'message', script) - _paq.push(['trackEvent', 'ai', 'openai', 'askFromTerminal']) -- } else { -+ } else if (script.trim().startsWith('sol-gpt')) { -+ call('terminal', 'log',{ type: 'warn', value: `> ${script}` }) -+ await call('solcoder', 'solidity_answer', script) -+ _paq.push(['trackEvent', 'ai', 'solcoder', 'askFromTerminal']) -+ }else { - await call('scriptRunner', 'execute', script) - } - done() -@@ -645,6 +658,11 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { - data-id="terminalInputSearch" - /> -
-+ {aiLoading &&
-+ -+ AI Running ... -+
} -+ -
-
-
-diff --git a/libs/remix-ui/terminal/src/lib/terminalWelcome.tsx b/libs/remix-ui/terminal/src/lib/terminalWelcome.tsx -index 24c37b400..3531b9ede 100644 ---- a/libs/remix-ui/terminal/src/lib/terminalWelcome.tsx -+++ b/libs/remix-ui/terminal/src/lib/terminalWelcome.tsx -@@ -57,6 +57,9 @@ const TerminalWelcomeMessage = ({packageJson, storage}) => { -
  • - gpt <your question here> {' '} -
  • -+
  • -+ sol-gpt <your Solidity question here> {' '} -+
  • - -
    - . -diff --git a/libs/remix-ui/terminal/src/lib/utils/wrapScript.ts b/libs/remix-ui/terminal/src/lib/utils/wrapScript.ts -index 26ded2f58..41d027b12 100644 ---- a/libs/remix-ui/terminal/src/lib/utils/wrapScript.ts -+++ b/libs/remix-ui/terminal/src/lib/utils/wrapScript.ts -@@ -1,5 +1,5 @@ - export const wrapScript = (script) => { -- const isKnownScript = ['remix.', 'console.', 'git', 'gpt'].some(prefix => script.trim().startsWith(prefix)) -+ const isKnownScript = ['remix.', 'console.', 'git', 'gpt', 'sol-gpt'].some(prefix => script.trim().startsWith(prefix)) - if (isKnownScript) return script - return ` - try { -diff --git a/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx b/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx -index cbb7353fb..63da76b41 100644 ---- a/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx -+++ b/libs/remix-ui/vyper-compile-details/src/lib/vyper-compile-details.tsx -@@ -10,13 +10,12 @@ interface RemixUiVyperCompileDetailsProps { - } - - export function RemixUiVyperCompileDetails({ payload, theme, themeStyle }: RemixUiVyperCompileDetailsProps) { -- const compileResult = payload['compileResult'] ?? {} -- console.log('compileResult', compileResult, payload) -- const bcode = compileResult.bytecode ? compileResult.bytecode.object : '' -- const runtimeBcode = compileResult.runtimeBytecode ? compileResult.runtimeBytecode.object : '' -- const ir = compileResult.ir -- const methodIdentifiers= compileResult.methodIdentifiers -- const abi= compileResult.abi -+ const dpayload = Object.values(payload) as any ?? {} -+ const bcode = dpayload[0].bytecode ? dpayload[0].bytecode.object : '' -+ const runtimeBcode = dpayload[0].runtimeBytecode ? dpayload[0].runtimeBytecode.object : '' -+ const ir = dpayload[0].ir -+ const methodIdentifiers= dpayload[0].methodIdentifiers -+ const abi= dpayload[0].abi - return ( - <> - ('abi') - const tabContent = [ - { -diff --git a/libs/remix-ui/workspace/src/lib/components/file-explorer-hovericons.tsx b/libs/remix-ui/workspace/src/lib/components/file-explorer-hovericons.tsx -deleted file mode 100644 -index c6b299f66..000000000 ---- a/libs/remix-ui/workspace/src/lib/components/file-explorer-hovericons.tsx -+++ /dev/null -@@ -1,100 +0,0 @@ --import React, { useState } from 'react' --import { CustomTooltip } from '@remix-ui/helper' --import { FormattedMessage } from 'react-intl' -- --export type FileHoverIconsProps = { -- file: any -- handleNewFolderOp?: any -- handleNewFileOp?: any -- renamePathOp?: (path: string, type: string, isNew?: boolean) => void -- deletePathOp?: (path: string | string[]) => void | Promise --} -- --export function FileHoverIcons(props: FileHoverIconsProps) { -- const [mouseOver, setMouseOver] = useState(false) -- return ( -- <> -- {
    -- { -- props.file.isDirectory ? ( -- <> -- } -- tooltipId={`filePanel.createNewFolder.${props.file.path}`} -- tooltipClasses="text-nowrap" -- > -- { -- e.stopPropagation() -- await props.handleNewFolderOp(props.file.path) -- }} -- style={{ cursor: mouseOver ? 'pointer' : 'default' }} -- onMouseEnter={(e) => setMouseOver(true)} -- onMouseLeave={(e) => setMouseOver(false)} -- > -- -- } -- tooltipId={`fileExplorer.createNewFile.${props.file.path}`} -- tooltipClasses="text-nowrap" -- > -- { -- e.stopPropagation() -- await props.handleNewFileOp(props.file.path) -- }} -- style={{ cursor: mouseOver ? 'pointer' : 'default' }} -- onMouseEnter={(e) => setMouseOver(true)} -- onMouseLeave={(e) => setMouseOver(false)} -- > -- -- -- ) : null -- } -- } -- tooltipId={`filePanel.rename.${props.file.path}`} -- tooltipClasses="text-nowrap" -- > -- { -- e.stopPropagation() -- props.renamePathOp(props.file.path, props.file.type) -- }} -- style={{ cursor: mouseOver ? 'pointer' : 'default' }} -- onMouseEnter={(e) => setMouseOver(true)} -- onMouseLeave={(e) => setMouseOver(false)} -- > -- -- } -- tooltipId={`filePanel.deleteItem.${props.file.path}`} -- tooltipClasses="text-nowrap" -- > -- { -- e.stopPropagation() -- await props.deletePathOp(props.file.path) -- }} -- style={{ cursor: mouseOver ? 'pointer' : 'default' }} -- onMouseEnter={(e) => setMouseOver(true)} -- onMouseLeave={(e) => setMouseOver(false)} -- > -- --
    -- } -- -- ) --} -diff --git a/libs/remix-ui/workspace/src/lib/components/file-explorer.tsx b/libs/remix-ui/workspace/src/lib/components/file-explorer.tsx -index 6e2010f80..39e20428d 100644 ---- a/libs/remix-ui/workspace/src/lib/components/file-explorer.tsx -+++ b/libs/remix-ui/workspace/src/lib/components/file-explorer.tsx -@@ -1,4 +1,4 @@ --import React, { useEffect, useState, useRef, SyntheticEvent } from 'react' // eslint-disable-line -+import React, { useEffect, useState, useRef, SyntheticEvent, useTransition } from 'react' // eslint-disable-line - import { useIntl } from 'react-intl' - import { TreeView } from '@remix-ui/tree-view' // eslint-disable-line - import { FileExplorerMenu } from './file-explorer-menu' // eslint-disable-line -@@ -27,13 +27,12 @@ export const FileExplorer = (props: FileExplorerProps) => { - handleContextMenu, - handleNewFileInput, - handleNewFolderInput, -- deletePath, - uploadFile, - uploadFolder, - fileState - } = props - const [state, setState] = useState(workspaceState) -- // const [isPending, startTransition] = useTransition(); -+ const [isPending, startTransition] = useTransition(); - const treeRef = useRef(null) - - useEffect(() => { -@@ -131,7 +130,6 @@ export const FileExplorer = (props: FileExplorerProps) => { - - const renamePath = async (oldPath: string, newPath: string) => { - try { -- if (oldPath === newPath) return - props.dispatchRenamePath(oldPath, newPath) - } catch (error) { - props.modal( -@@ -406,10 +404,6 @@ export const FileExplorer = (props: FileExplorerProps) => { - moveFile={handleFileMove} - moveFolder={handleFolderMove} - handleClickFolder={handleClickFolder} -- createNewFile={props.createNewFile} -- createNewFolder={props.createNewFolder} -- deletePath={deletePath} -- editPath={props.editModeOn} - /> -
    -
    -diff --git a/libs/remix-ui/workspace/src/lib/components/flat-tree-drop.tsx b/libs/remix-ui/workspace/src/lib/components/flat-tree-drop.tsx -index de274562f..e1d7fc72c 100644 ---- a/libs/remix-ui/workspace/src/lib/components/flat-tree-drop.tsx -+++ b/libs/remix-ui/workspace/src/lib/components/flat-tree-drop.tsx -@@ -1,4 +1,4 @@ --import React, { SyntheticEvent, useEffect, useRef, useState } from 'react' -+import React, { SyntheticEvent, startTransition, useEffect, useRef, useState } from 'react' - import { FileType } from '../types' - import { getEventTarget } from '../utils/getEventTarget' - import { extractParentFromKey } from '@remix-ui/helper' -@@ -23,6 +23,7 @@ export const FlatTreeDrop = (props: FlatTreeDropProps) => { - const onDragOver = async (e: SyntheticEvent) => { - e.preventDefault() - const target = await getEventTarget(e) -+ - if (!target || !target.path) { - clearTimeout(timer) - setFolderToOpen(null) -@@ -35,7 +36,7 @@ export const FlatTreeDrop = (props: FlatTreeDropProps) => { - setFolderToOpen(null) - } - if (dragDestination && dragDestination.isDirectory && !expandPath.includes(dragDestination.path) && folderToOpen !== dragDestination.path && props.handleClickFolder) { -- -+ - setFolderToOpen(dragDestination.path) - timer && clearTimeout(timer) - setTimer( -@@ -60,6 +61,7 @@ export const FlatTreeDrop = (props: FlatTreeDropProps) => { - } else { - dragDestination = getFlatTreeItem(target.path) - } -+ - if (dragDestination.isDirectory) { - if (dragSource.isDirectory) { - moveFolder(dragDestination.path, dragSource.path) -@@ -82,4 +84,4 @@ export const FlatTreeDrop = (props: FlatTreeDropProps) => { - onDrop={onDrop} onDragOver={onDragOver} - className="d-flex h-100" - >{props.children}
    ) --} -+} -\ No newline at end of file -diff --git a/libs/remix-ui/workspace/src/lib/components/flat-tree.tsx b/libs/remix-ui/workspace/src/lib/components/flat-tree.tsx -index 4bdddffe5..f86cd2873 100644 ---- a/libs/remix-ui/workspace/src/lib/components/flat-tree.tsx -+++ b/libs/remix-ui/workspace/src/lib/components/flat-tree.tsx -@@ -7,8 +7,6 @@ import { FlatTreeItemInput } from './flat-tree-item-input'; - import { FlatTreeDrop } from './flat-tree-drop'; - import { getEventTarget } from '../utils/getEventTarget'; - import { fileDecoration, FileDecorationIcons } from '@remix-ui/file-decorators'; --import { FileHoverIcons } from './file-explorer-hovericons'; --import { deletePath } from '../actions'; - - export default function useOnScreen(ref: RefObject) { - -@@ -38,10 +36,6 @@ interface FlatTreeProps { - moveFile: (dest: string, src: string) => void - moveFolder: (dest: string, src: string) => void - fileState: fileDecoration[] -- createNewFile?: any -- createNewFolder?: any -- deletePath?: (path: string | string[]) => void | Promise -- editPath?: (path: string, type: string, isNew?: boolean) => void - } - - let mouseTimer: any = { -@@ -50,7 +44,7 @@ let mouseTimer: any = { - } - - export const FlatTree = (props: FlatTreeProps) => { -- const { files, flatTree, expandPath, focusEdit, editModeOff, handleTreeClick, moveFile, moveFolder, fileState, focusElement, handleClickFolder, deletePath, editPath } = props -+ const { files, flatTree, expandPath, focusEdit, editModeOff, handleTreeClick, moveFile, moveFolder, fileState, focusElement, handleClickFolder } = props - const [hover, setHover] = useState('') - const [mouseOverTarget, setMouseOverTarget] = useState<{ - path: string, -@@ -184,62 +178,42 @@ export const FlatTree = (props: FlatTreeProps) => { - } - }, [focusEdit]) - -- const showIcons = (file: FileType) => -- file.path === hover && !isDragging ? ( --
    -- --
    -- ) : null - - const Row = (index: number) => { - const node = Object.keys(flatTree)[index] - const file = flatTree[node] -- return ( --
  • { -- setHover(file.path) -- }} -- onMouseOut={() => { -- setHover('') -- }} -- data-type={file.isDirectory ? 'folder' : 'file'} -- data-path={`${file.path}`} -- data-id={`treeViewLitreeViewItem${file.path}`} -- > --
    -- {getIndentLevelDiv(file.path)} -+ return (
  • setHover(file.path)} -+ onMouseOut={() => setHover(file.path)} -+ data-type={file.isDirectory ? 'folder' : 'file'} -+ data-path={`${file.path}`} -+ data-id={`treeViewLitreeViewItem${file.path}`} -+ > -+
    -+ {getIndentLevelDiv(file.path)} - --
    -- {focusEdit && file.path && focusEdit.element === file.path ? -- : -- <>
    -- {file.name} --
    --
    -- {showIcons(file)} -- {getFileStateIcons(file)} --
    -- -- } --
    --
  • ) -+
    -+ {focusEdit && file.path && focusEdit.element === file.path ? -+ : -+ <>
    -+ {file.name} -+ -+
    -+ {getFileStateIcons(file)} -+ -+ } -+
    -+ ) - } - - return (<> -diff --git a/libs/remix-ui/workspace/src/lib/css/file-explorer.css b/libs/remix-ui/workspace/src/lib/css/file-explorer.css -index 16f0ffca5..c49a0a54a 100644 ---- a/libs/remix-ui/workspace/src/lib/css/file-explorer.css -+++ b/libs/remix-ui/workspace/src/lib/css/file-explorer.css -@@ -60,12 +60,4 @@ ul { - [contenteditable] { - -webkit-user-select: text; - user-select: text; --} -- --.remixui_icons { -- --} -- --.remixui_icons:hover { -- color: var(--text); --} -+} -\ No newline at end of file -diff --git a/libs/remix-ui/workspace/src/lib/remix-ui-workspace.tsx b/libs/remix-ui/workspace/src/lib/remix-ui-workspace.tsx -index e71d94ffd..400aa1de2 100644 ---- a/libs/remix-ui/workspace/src/lib/remix-ui-workspace.tsx -+++ b/libs/remix-ui/workspace/src/lib/remix-ui-workspace.tsx -@@ -796,7 +796,7 @@ export function Workspace() { - - -+ - -
    -
    - {(platform !== appPlatformTypes.desktop) ? ( -@@ -1063,7 +1063,7 @@ export function Workspace() { -
    - - -- -+ -
    { -@@ -1077,7 +1077,7 @@ export function Workspace() { -
    - )} - {!(global.fs.browser.isRequestingWorkspace || global.fs.browser.isRequestingCloning) && global.fs.mode === 'browser' && currentWorkspace !== NO_WORKSPACE && ( -- -+ - -- -+ - )} - {global.fs.localhost.isRequestingLocalhost && ( -
    -@@ -1192,10 +1188,6 @@ export function Workspace() { - editModeOn={editModeOn} - handleNewFileInput={handleNewFileInput} - handleNewFolderInput={handleNewFolderInput} -- createNewFile={handleNewFileInput} -- createNewFolder={handleNewFolderInput} -- deletePath={deletePath} -- renamePath={editModeOn} - dragStatus={dragStatus} - /> - )} -@@ -1207,11 +1199,11 @@ export function Workspace() { -
    -
    -
    GIT
    -- {selectedWorkspace.hasGitSubmodules? -+ {selectedWorkspace.hasGitSubmodules? -
    - {global.fs.browser.isRequestingCloning ?
    updating submodules
    : -
    update submodules
    } --
    -+
    - : null} -
    - -diff --git a/libs/remix-ui/workspace/src/lib/types/index.ts b/libs/remix-ui/workspace/src/lib/types/index.ts -index 313f7a5dd..14ff7864d 100644 ---- a/libs/remix-ui/workspace/src/lib/types/index.ts -+++ b/libs/remix-ui/workspace/src/lib/types/index.ts -@@ -130,10 +130,6 @@ export interface FileExplorerProps { - toGist: (path?: string, type?: string) => void - handleNewFileInput: (parentFolder?: string) => Promise - handleNewFolderInput: (parentFolder?: string) => Promise -- deletePath?: (path: string[]) => Promise -- createNewFile:(parentFolder?: string) => Promise -- createNewFolder:(parentFolder?: string) => Promise -- renamePath:(path: string, type: string, isNew?: boolean) => void - dragStatus: (status: boolean) => void - } - -diff --git a/libs/remix-url-resolver/package.json b/libs/remix-url-resolver/package.json -index faa7e61e0..0609c7ddb 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.71", -+ "version": "0.0.70", - "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": "817089ab1f206f5e195756a4051afb812ec26901" -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca" - } -\ No newline at end of file -diff --git a/libs/remix-ws-templates/package.json b/libs/remix-ws-templates/package.json -index ad6b73cc0..6b511fa80 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.36", -+ "version": "1.0.35", - "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": "817089ab1f206f5e195756a4051afb812ec26901" -+ "gitHead": "24416dcc55a6c0d26ee589ec10e4fce98daf2aca" - } -\ No newline at end of file -diff --git a/libs/remixd/package.json b/libs/remixd/package.json -index d75083115..8272a24d2 100644 ---- a/libs/remixd/package.json -+++ b/libs/remixd/package.json -@@ -1,6 +1,6 @@ - { - "name": "@remix-project/remixd", -- "version": "0.6.26", -+ "version": "0.6.24", - "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", -diff --git a/package.json b/package.json -index fdef679bf..f90be37d0 100644 ---- a/package.json -+++ b/package.json -@@ -1,6 +1,6 @@ - { - "name": "remix-project", -- "version": "0.44.0-dev", -+ "version": "0.43.0-dev", - "license": "MIT", - "description": "Ethereum Remix Monorepo", - "main": "index.js", -@@ -136,6 +136,7 @@ - "@ethereumjs/util": "^8.0.5", - "@ethereumjs/vm": "^6.4.1", - "@ethersphere/bee-js": "^3.2.0", -+ "@gradio/client": "^0.10.1", - "@isomorphic-git/lightning-fs": "^4.4.1", - "@microlink/react-json-view": "^1.23.0", - "@openzeppelin/contracts": "^5.0.0", -@@ -152,7 +153,8 @@ - "@remixproject/plugin-ws": "0.3.42", - "@ricarso/react-image-magnifiers": "^1.9.0", - "@types/nightwatch": "^2.3.1", -- "@web3modal/ethers5": "^4.0.1", -+ "@web3modal/ethereum": "^2.7.1", -+ "@web3modal/react": "^2.6.2", - "@xenova/transformers": "^2.7.0", - "ansi-gray": "^0.1.1", - "assert": "^2.1.0", -@@ -233,6 +235,8 @@ - "tree-kill": "^1.2.2", - "ts-loader": "^9.2.6", - "tslib": "^2.3.0", -+ "viem": "^1.6.0", -+ "wagmi": "^1.3.10", - "web3": "^4.1.0", - "winston": "^3.3.3", - "ws": "^7.3.0", -diff --git a/releaseDetails.json b/releaseDetails.json -index dd4041968..e6cf4b762 100644 ---- a/releaseDetails.json -+++ b/releaseDetails.json -@@ -1,10 +1,10 @@ - { -- "version": "v0.43.0", -+ "version": "v0.42.0", - "title": "RELEASE HIGHLIGHTS", -- "highlight1": "File Explorer and Vyper compiler comes with a better user interface", -- "highlight2": "Update Wallet Connect to the latest version", -- "highlight3": "", -+ "highlight1": "Ask GPT for circom ZKP compiler errors/warnings", -+ "highlight2": "Default Solidity compiler set to 0.8.24 with support of 'Cancun' EVM", -+ "highlight3": "Workspace Template 'Uniswap v4 Periphery' renamed to 'Uniswap v4 Template'", - "highlight4": "", - "more": "Read More", -- "moreLink": "https://medium.com/remix-ide/remix-release-v0-43-0-1150e59a81df?source=friends_link&sk=4965f88ef43b297c4350f3a749083cfb" -- } -+ "moreLink": "https://medium.com/remix-ide/remix-release-v0-42-0-56ec48a49ae0" -+ } -\ No newline at end of file -diff --git a/yarn.lock b/yarn.lock -index ce81affdb..06c0741ba 100644 ---- a/yarn.lock -+++ b/yarn.lock -@@ -7,6 +7,11 @@ - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" - integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== - -+"@adraffy/ens-normalize@1.9.0": -+ version "1.9.0" -+ resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.9.0.tgz#223572538f6bea336750039bb43a4016dcc8182d" -+ integrity sha512-iowxq3U30sghZotgl4s/oJRci6WPBfNO5YYgk2cIOMCHr3LeGPcsZjCEr+33Q4N+oV3OABDAtA+pyvWjbvBifQ== -+ - "@adraffy/ens-normalize@^1.8.8": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.9.4.tgz#aae21cb858bbb0411949d5b7b3051f4209043f62" -@@ -729,11 +734,6 @@ - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" - integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== - --"@babel/parser@^7.23.6": -- version "7.23.6" -- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.6.tgz#ba1c9e512bda72a47e285ae42aff9d2a635a9e3b" -- integrity sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ== -- - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" -@@ -1670,6 +1670,13 @@ - dependencies: - regenerator-runtime "^0.13.4" - -+"@babel/runtime@^7.17.2": -+ version "7.21.0" -+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673" -+ integrity sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw== -+ dependencies: -+ regenerator-runtime "^0.13.11" -+ - "@babel/runtime@^7.18.9": - version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.4.tgz#a42f814502ee467d55b38dd1c256f53a7b885c78" -@@ -1871,20 +1878,28 @@ - "@chainsafe/persistent-merkle-tree" "^0.4.2" - case "^1.6.3" - --"@coinbase/wallet-sdk@3.9.1": -- version "3.9.1" -- resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-3.9.1.tgz#503a14671bb392d653623ef2340934e213ac971f" -- integrity sha512-cGUE8wm1/cMI8irRMVOqbFWYcnNugqCtuy2lnnHfgloBg+GRLs9RsrkOUDMdv/StfUeeKhCDyYudsXXvcL1xIA== -+"@coinbase/wallet-sdk@^3.6.6": -+ version "3.7.1" -+ resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-3.7.1.tgz#44b3b7a925ff5cc974e4cbf7a44199ffdcf03541" -+ integrity sha512-LjyoDCB+7p0waQXfK+fUgcAs3Ezk6S6e+LYaoFjpJ6c9VTop3NyZF40Pi7df4z7QJohCwzuIDjz0Rhtig6Y7Pg== - dependencies: -- bn.js "^5.2.1" -+ "@metamask/safe-event-emitter" "2.0.0" -+ "@solana/web3.js" "^1.70.1" -+ bind-decorator "^1.0.11" -+ bn.js "^5.1.1" - buffer "^6.0.3" -- clsx "^1.2.1" -- eth-block-tracker "^7.1.0" -- eth-json-rpc-filters "^6.0.0" -- eventemitter3 "^5.0.1" -- keccak "^3.0.3" -- preact "^10.16.0" -+ clsx "^1.1.0" -+ eth-block-tracker "6.1.0" -+ eth-json-rpc-filters "5.1.0" -+ eth-rpc-errors "4.0.2" -+ json-rpc-engine "6.1.0" -+ keccak "^3.0.1" -+ preact "^10.5.9" -+ qs "^6.10.3" -+ rxjs "^6.6.3" - sha.js "^2.4.11" -+ stream-browserify "^3.0.0" -+ util "^0.12.4" - - "@cspotcode/source-map-support@^0.8.0": - version "0.8.1" -@@ -2323,14 +2338,6 @@ - "@ethereumjs/util" "^8.0.6" - crc-32 "^1.2.0" - --"@ethereumjs/common@^3.2.0": -- version "3.2.0" -- resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-3.2.0.tgz#b71df25845caf5456449163012074a55f048e0a0" -- integrity sha512-pksvzI0VyLgmuEF2FA/JR/4/y6hcPq8OUail3/AvycBaW1d5VSauOZzqGvJ3RTmR4MU35lWE8KseKOsEhrFRBA== -- dependencies: -- "@ethereumjs/util" "^8.1.0" -- crc-32 "^1.2.0" -- - "@ethereumjs/ethash@^2.0.5": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-2.0.5.tgz#577b9d470eea6b61f77d624b58ac90929d6e857d" -@@ -2396,16 +2403,6 @@ - "@ethereumjs/util" "^8.0.6" - ethereum-cryptography "^2.0.0" - --"@ethereumjs/tx@^4.2.0": -- version "4.2.0" -- resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-4.2.0.tgz#5988ae15daf5a3b3c815493bc6b495e76009e853" -- integrity sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw== -- dependencies: -- "@ethereumjs/common" "^3.2.0" -- "@ethereumjs/rlp" "^4.0.1" -- "@ethereumjs/util" "^8.1.0" -- ethereum-cryptography "^2.0.0" -- - "@ethereumjs/util@^8.0.5", "@ethereumjs/util@^8.0.6": - version "8.0.6" - resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.0.6.tgz#f9716ed34235ea05eff8353bc5d483e5a6455989" -@@ -2416,15 +2413,6 @@ - ethereum-cryptography "^2.0.0" - micro-ftch "^0.3.1" - --"@ethereumjs/util@^8.1.0": -- version "8.1.0" -- resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.1.0.tgz#299df97fb6b034e0577ce9f94c7d9d1004409ed4" -- integrity sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA== -- dependencies: -- "@ethereumjs/rlp" "^4.0.1" -- ethereum-cryptography "^2.0.0" -- micro-ftch "^0.3.1" -- - "@ethereumjs/vm@^6.4.1": - version "6.4.2" - resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-6.4.2.tgz#9898105a96f0975d561db69319331944db4bfafc" -@@ -2964,6 +2952,15 @@ - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" - integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== - -+"@gradio/client@^0.10.1": -+ version "0.10.1" -+ resolved "https://registry.yarnpkg.com/@gradio/client/-/client-0.10.1.tgz#cdd90efbc0156d8e338af61031d2c88f21134f11" -+ integrity sha512-C3uWIWEqlpTuG3sfPw3K3+26Fkr+jXPL8U2lC1u7DlBm25rHdGMVX17o8ApW7XcFtznfaLceVtpnDPkDpQTJlw== -+ dependencies: -+ bufferutil "^4.0.7" -+ semiver "^1.1.0" -+ ws "^8.13.0" -+ - "@humanwhocodes/config-array@^0.11.10": - version "0.11.10" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2" -@@ -2996,11 +2993,6 @@ - fastfile "0.0.20" - ffjavascript "^0.2.48" - --"@ioredis/commands@^1.1.1": -- version "1.2.0" -- resolved "https://registry.yarnpkg.com/@ioredis/commands/-/commands-1.2.0.tgz#6d61b3097470af1fdbbe622795b8921d42018e11" -- integrity sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg== -- - "@isomorphic-git/idb-keyval@3.3.2": - version "3.3.2" - resolved "https://registry.yarnpkg.com/@isomorphic-git/idb-keyval/-/idb-keyval-3.3.2.tgz#c0509a6c5987d8a62efb3e47f2815bcc5eda2489" -@@ -3259,11 +3251,6 @@ - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - --"@jridgewell/sourcemap-codec@^1.4.15": -- version "1.4.15" -- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" -- integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -- - "@jridgewell/trace-mapping@0.3.9": - version "0.3.9" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" -@@ -3295,6 +3282,11 @@ - dependencies: - glob-to-regexp "^0.4.1" - -+"@ledgerhq/connect-kit-loader@^1.1.0": -+ version "1.1.0" -+ resolved "https://registry.yarnpkg.com/@ledgerhq/connect-kit-loader/-/connect-kit-loader-1.1.0.tgz#10343b78ef13436818bf3453568a559c0eeb9d48" -+ integrity sha512-HUy12FEczoWY2FPubnsm1uOA8tkVWc0j90i47suThV3C9NL2xx69ZAIEU3Ytzs2bwLek9S1Q2S1VQJvA+3Ygkg== -+ - "@leichtgewicht/ip-codec@^2.0.1": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" -@@ -3985,25 +3977,23 @@ - npmlog "^4.1.2" - write-file-atomic "^2.3.0" - --"@lit-labs/ssr-dom-shim@^1.0.0", "@lit-labs/ssr-dom-shim@^1.1.0", "@lit-labs/ssr-dom-shim@^1.1.2": -- version "1.1.2" -- resolved "https://registry.yarnpkg.com/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.2.tgz#d693d972974a354034454ec1317eb6afd0b00312" -- integrity sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g== -+"@lit-labs/ssr-dom-shim@^1.0.0": -+ version "1.0.0" -+ resolved "https://registry.yarnpkg.com/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.0.0.tgz#427e19a2765681fd83411cd72c55ba80a01e0523" -+ integrity sha512-ic93MBXfApIFTrup4a70M/+ddD8xdt2zxxj9sRwHQzhS9ag/syqkD8JPdTXsc1gUy2K8TTirhlCqyTEM/sifNw== -+ -+"@lit-labs/ssr-dom-shim@^1.1.0": -+ version "1.1.1" -+ resolved "https://registry.yarnpkg.com/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.1.tgz#64df34e2f12e68e78ac57e571d25ec07fa460ca9" -+ integrity sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ== - - "@lit/reactive-element@^1.3.0", "@lit/reactive-element@^1.6.0": -- version "1.6.3" -- resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-1.6.3.tgz#25b4eece2592132845d303e091bad9b04cdcfe03" -- integrity sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ== -+ version "1.6.1" -+ resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-1.6.1.tgz#0d958b6d479d0e3db5fc1132ecc4fa84be3f0b93" -+ integrity sha512-va15kYZr7KZNNPZdxONGQzpUr+4sxVu7V/VG7a8mRfPPXUyhEYj5RzXCQmGrlP3tAh0L3HHm5AjBMFYRqlM9SA== - dependencies: - "@lit-labs/ssr-dom-shim" "^1.0.0" - --"@lit/reactive-element@^2.0.0": -- version "2.0.3" -- resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-2.0.3.tgz#29d7d4ee8d9b00804be957cc6937577eb4d3db63" -- integrity sha512-e067EuTNNgOHm1tZcc0Ia7TCzD/9ZpoPegHKgesrGK6pSDRGkGDAQbYuQclqLPIoJ9eC8Kb9mYtGryWcM5AywA== -- dependencies: -- "@lit-labs/ssr-dom-shim" "^1.1.2" -- - "@malept/cross-spawn-promise@^1.1.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz#504af200af6b98e198bce768bc1730c6936ae01d" -@@ -4018,15 +4008,6 @@ - dependencies: - cross-spawn "^7.0.1" - --"@metamask/eth-json-rpc-provider@^1.0.0": -- version "1.0.1" -- resolved "https://registry.yarnpkg.com/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-1.0.1.tgz#3fd5316c767847f4ca107518b611b15396a5a32c" -- integrity sha512-whiUMPlAOrVGmX8aKYVPvlKyG4CpQXiNNyt74vE1xb5sPvmx5oA7B/kOi/JdBvhGQq97U1/AVdXEdk2zkP8qyA== -- dependencies: -- "@metamask/json-rpc-engine" "^7.0.0" -- "@metamask/safe-event-emitter" "^3.0.0" -- "@metamask/utils" "^5.0.1" -- - "@metamask/eth-sig-util@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz#3ad61f6ea9ad73ba5b19db780d40d9aae5157088" -@@ -4038,58 +4019,21 @@ - tweetnacl "^1.0.3" - tweetnacl-util "^0.15.1" - --"@metamask/json-rpc-engine@^7.0.0": -- version "7.3.2" -- resolved "https://registry.yarnpkg.com/@metamask/json-rpc-engine/-/json-rpc-engine-7.3.2.tgz#e8f0695811619eef7b7c894ba5cf782db9f1c2cb" -- integrity sha512-dVjBPlni4CoiBpESVqrxh6k4OR14w6GRXKSSXHFuITjuhALE42gNCkXTpL4cjNeOBUgTba3eGe5EI8cyc2QLRg== -- dependencies: -- "@metamask/rpc-errors" "^6.1.0" -- "@metamask/safe-event-emitter" "^3.0.0" -- "@metamask/utils" "^8.3.0" -- --"@metamask/rpc-errors@^6.1.0": -- version "6.1.0" -- resolved "https://registry.yarnpkg.com/@metamask/rpc-errors/-/rpc-errors-6.1.0.tgz#dfdef7cba4b9ad01ca3f99e990b5980575b89b4f" -- integrity sha512-JQElKxai26FpDyRKO/yH732wI+BV90i1u6pOuDOpdADSbppB2g1pPh3AGST1zkZqEE9eIKIUw8UdBQ4rp3VTSg== -- dependencies: -- "@metamask/utils" "^8.1.0" -- fast-safe-stringify "^2.0.6" -- --"@metamask/safe-event-emitter@^2.0.0": -+"@metamask/safe-event-emitter@2.0.0", "@metamask/safe-event-emitter@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz#af577b477c683fad17c619a78208cede06f9605c" - integrity sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q== - --"@metamask/safe-event-emitter@^3.0.0": -- version "3.0.0" -- resolved "https://registry.yarnpkg.com/@metamask/safe-event-emitter/-/safe-event-emitter-3.0.0.tgz#8c2b9073fe0722d48693143b0dc8448840daa3bd" -- integrity sha512-j6Z47VOmVyGMlnKXZmL0fyvWfEYtKWCA9yGZkU3FCsGZUT5lHGmvaV9JA5F2Y+010y7+ROtR3WMXIkvl/nVzqQ== -- --"@metamask/utils@^5.0.1": -- version "5.0.2" -- resolved "https://registry.yarnpkg.com/@metamask/utils/-/utils-5.0.2.tgz#140ba5061d90d9dac0280c19cab101bc18c8857c" -- integrity sha512-yfmE79bRQtnMzarnKfX7AEJBwFTxvTyw3nBQlu/5rmGXrjAeAMltoGxO62TFurxrQAFMNa/fEjIHNvungZp0+g== -+"@metamask/utils@^3.0.1": -+ version "3.6.0" -+ resolved "https://registry.yarnpkg.com/@metamask/utils/-/utils-3.6.0.tgz#b218b969a05ca7a8093b5d1670f6625061de707d" -+ integrity sha512-9cIRrfkWvHblSiNDVXsjivqa9Ak0RYo/1H6tqTqTbAx+oBK2Sva0lWDHxGchOqA7bySGUJKAWSNJvH6gdHZ0gQ== - dependencies: -- "@ethereumjs/tx" "^4.1.2" - "@types/debug" "^4.1.7" - debug "^4.3.4" - semver "^7.3.8" - superstruct "^1.0.3" - --"@metamask/utils@^8.1.0", "@metamask/utils@^8.3.0": -- version "8.3.0" -- resolved "https://registry.yarnpkg.com/@metamask/utils/-/utils-8.3.0.tgz#a20de447aeb9ffb75924d822a186a597033984b6" -- integrity sha512-WFVcMPEkKKRCJ8DDkZUTVbLlpwgRn98F4VM/WzN89HM8PmHMnCyk/oG0AmK/seOxtik7uC7Bbi2YBC5Z5XB2zw== -- dependencies: -- "@ethereumjs/tx" "^4.2.0" -- "@noble/hashes" "^1.3.1" -- "@scure/base" "^1.1.3" -- "@types/debug" "^4.1.7" -- debug "^4.3.4" -- pony-cause "^2.1.10" -- semver "^7.5.4" -- superstruct "^1.0.3" -- - "@microlink/react-json-view@^1.23.0": - version "1.23.0" - resolved "https://registry.yarnpkg.com/@microlink/react-json-view/-/react-json-view-1.23.0.tgz#641c2483b1a0014818303d4e9cce634d5dacc7e9" -@@ -4114,73 +4058,73 @@ - dependencies: - "@monaco-editor/loader" "^1.4.0" - --"@motionone/animation@^10.15.1", "@motionone/animation@^10.17.0": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/animation/-/animation-10.17.0.tgz#7633c6f684b5fee2b61c405881b8c24662c68fca" -- integrity sha512-ANfIN9+iq1kGgsZxs+Nz96uiNcPLGTXwfNo2Xz/fcJXniPYpaz/Uyrfa+7I5BPLxCP82sh7quVDudf1GABqHbg== -+"@motionone/animation@^10.15.1": -+ version "10.15.1" -+ resolved "https://registry.yarnpkg.com/@motionone/animation/-/animation-10.15.1.tgz#4a85596c31cbc5100ae8eb8b34c459fb0ccf6807" -+ integrity sha512-mZcJxLjHor+bhcPuIFErMDNyrdb2vJur8lSfMCsuCB4UyV8ILZLvK+t+pg56erv8ud9xQGK/1OGPt10agPrCyQ== - dependencies: -- "@motionone/easing" "^10.17.0" -- "@motionone/types" "^10.17.0" -- "@motionone/utils" "^10.17.0" -+ "@motionone/easing" "^10.15.1" -+ "@motionone/types" "^10.15.1" -+ "@motionone/utils" "^10.15.1" - tslib "^2.3.1" - --"@motionone/dom@^10.16.2", "@motionone/dom@^10.16.4": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/dom/-/dom-10.17.0.tgz#519dd78aab0750a94614c69a82da5290cd617383" -- integrity sha512-cMm33swRlCX/qOPHWGbIlCl0K9Uwi6X5RiL8Ma6OrlJ/TP7Q+Np5GE4xcZkFptysFjMTi4zcZzpnNQGQ5D6M0Q== -+"@motionone/dom@^10.16.2": -+ version "10.16.2" -+ resolved "https://registry.yarnpkg.com/@motionone/dom/-/dom-10.16.2.tgz#0c44df8ee3d1cfc50ee11d27050b27824355a61a" -+ integrity sha512-bnuHdNbge1FutZXv+k7xub9oPWcF0hsu8y1HTH/qg6av58YI0VufZ3ngfC7p2xhMJMnoh0LXFma2EGTgPeCkeg== - dependencies: -- "@motionone/animation" "^10.17.0" -- "@motionone/generators" "^10.17.0" -- "@motionone/types" "^10.17.0" -- "@motionone/utils" "^10.17.0" -+ "@motionone/animation" "^10.15.1" -+ "@motionone/generators" "^10.15.1" -+ "@motionone/types" "^10.15.1" -+ "@motionone/utils" "^10.15.1" - hey-listen "^1.0.8" - tslib "^2.3.1" - --"@motionone/easing@^10.17.0": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/easing/-/easing-10.17.0.tgz#d66cecf7e3ee30104ad00389fb3f0b2282d81aa9" -- integrity sha512-Bxe2wSuLu/qxqW4rBFS5m9tMLOw+QBh8v5A7Z5k4Ul4sTj5jAOfZG5R0bn5ywmk+Fs92Ij1feZ5pmC4TeXA8Tg== -+"@motionone/easing@^10.15.1": -+ version "10.15.1" -+ resolved "https://registry.yarnpkg.com/@motionone/easing/-/easing-10.15.1.tgz#95cf3adaef34da6deebb83940d8143ede3deb693" -+ integrity sha512-6hIHBSV+ZVehf9dcKZLT7p5PEKHGhDwky2k8RKkmOvUoYP3S+dXsKupyZpqx5apjd9f+php4vXk4LuS+ADsrWw== - dependencies: -- "@motionone/utils" "^10.17.0" -+ "@motionone/utils" "^10.15.1" - tslib "^2.3.1" - --"@motionone/generators@^10.17.0": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/generators/-/generators-10.17.0.tgz#878d292539c41434c13310d5f863a87a94e6e689" -- integrity sha512-T6Uo5bDHrZWhIfxG/2Aut7qyWQyJIWehk6OB4qNvr/jwA/SRmixwbd7SOrxZi1z5rH3LIeFFBKK1xHnSbGPZSQ== -+"@motionone/generators@^10.15.1": -+ version "10.15.1" -+ resolved "https://registry.yarnpkg.com/@motionone/generators/-/generators-10.15.1.tgz#dc6abb11139d1bafe758a41c134d4c753a9b871c" -+ integrity sha512-67HLsvHJbw6cIbLA/o+gsm7h+6D4Sn7AUrB/GPxvujse1cGZ38F5H7DzoH7PhX+sjvtDnt2IhFYF2Zp1QTMKWQ== - dependencies: -- "@motionone/types" "^10.17.0" -- "@motionone/utils" "^10.17.0" -+ "@motionone/types" "^10.15.1" -+ "@motionone/utils" "^10.15.1" - tslib "^2.3.1" - - "@motionone/svelte@^10.16.2": -- version "10.16.4" -- resolved "https://registry.yarnpkg.com/@motionone/svelte/-/svelte-10.16.4.tgz#5daf117cf5b2576fc6dd487c5e0500938a742470" -- integrity sha512-zRVqk20lD1xqe+yEDZhMYgftsuHc25+9JSo+r0a0OWUJFocjSV9D/+UGhX4xgJsuwB9acPzXLr20w40VnY2PQA== -+ version "10.16.2" -+ resolved "https://registry.yarnpkg.com/@motionone/svelte/-/svelte-10.16.2.tgz#0b37c3b12927814d31d24941d1ca0ff49981b444" -+ integrity sha512-38xsroKrfK+aHYhuQlE6eFcGy0EwrB43Q7RGjF73j/kRUTcLNu/LAaKiLLsN5lyqVzCgTBVt4TMT/ShWbTbc5Q== - dependencies: -- "@motionone/dom" "^10.16.4" -+ "@motionone/dom" "^10.16.2" - tslib "^2.3.1" - --"@motionone/types@^10.15.1", "@motionone/types@^10.17.0": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/types/-/types-10.17.0.tgz#179571ce98851bac78e19a1c3974767227f08ba3" -- integrity sha512-EgeeqOZVdRUTEHq95Z3t8Rsirc7chN5xFAPMYFobx8TPubkEfRSm5xihmMUkbaR2ErKJTUw3347QDPTHIW12IA== -+"@motionone/types@^10.15.1": -+ version "10.15.1" -+ resolved "https://registry.yarnpkg.com/@motionone/types/-/types-10.15.1.tgz#89441b54285012795cbba8612cbaa0fa420db3eb" -+ integrity sha512-iIUd/EgUsRZGrvW0jqdst8st7zKTzS9EsKkP+6c6n4MPZoQHwiHuVtTQLD6Kp0bsBLhNzKIBlHXponn/SDT4hA== - --"@motionone/utils@^10.15.1", "@motionone/utils@^10.17.0": -- version "10.17.0" -- resolved "https://registry.yarnpkg.com/@motionone/utils/-/utils-10.17.0.tgz#cc0ba8acdc6848ff48d8c1f2d0d3e7602f4f942e" -- integrity sha512-bGwrki4896apMWIj9yp5rAS2m0xyhxblg6gTB/leWDPt+pb410W8lYWsxyurX+DH+gO1zsQsfx2su/c1/LtTpg== -+"@motionone/utils@^10.15.1": -+ version "10.15.1" -+ resolved "https://registry.yarnpkg.com/@motionone/utils/-/utils-10.15.1.tgz#6b5f51bde75be88b5411e084310299050368a438" -+ integrity sha512-p0YncgU+iklvYr/Dq4NobTRdAPv9PveRDUXabPEeOjBLSO/1FNB2phNTZxOxpi1/GZwYpAoECEa0Wam+nsmhSw== - dependencies: -- "@motionone/types" "^10.17.0" -+ "@motionone/types" "^10.15.1" - hey-listen "^1.0.8" - tslib "^2.3.1" - - "@motionone/vue@^10.16.2": -- version "10.16.4" -- resolved "https://registry.yarnpkg.com/@motionone/vue/-/vue-10.16.4.tgz#07d09e3aa5115ca0bcc0076cb9e5322775277c09" -- integrity sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg== -+ version "10.16.2" -+ resolved "https://registry.yarnpkg.com/@motionone/vue/-/vue-10.16.2.tgz#faf13afc27620a2df870c71c58a04ee8de8dea65" -+ integrity sha512-7/dEK/nWQXOkJ70bqb2KyNfSWbNvWqKKq1C8juj+0Mg/AorgD8O5wE3naddK0G+aXuNMqRuc4jlsYHHWHtIzVw== - dependencies: -- "@motionone/dom" "^10.16.4" -+ "@motionone/dom" "^10.16.2" - tslib "^2.3.1" - - "@mrmlnc/readdir-enhanced@^2.2.1": -@@ -4220,22 +4164,34 @@ - dependencies: - "@noble/hashes" "1.3.0" - -+"@noble/curves@1.1.0": -+ version "1.1.0" -+ resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.1.0.tgz#f13fc667c89184bc04cccb9b11e8e7bae27d8c3d" -+ integrity sha512-091oBExgENk/kGj3AZmtBDMpxQPDtxQABR2B9lb1JbVTs6ytdzZNwvhxQ4MWasRNEzlbEH8jCWFCwhF/Obj5AA== -+ dependencies: -+ "@noble/hashes" "1.3.1" -+ -+"@noble/ed25519@^1.7.0": -+ version "1.7.3" -+ resolved "https://registry.yarnpkg.com/@noble/ed25519/-/ed25519-1.7.3.tgz#57e1677bf6885354b466c38e2b620c62f45a7123" -+ integrity sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ== -+ - "@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.2.0.tgz#a3150eeb09cc7ab207ebf6d7b9ad311a9bdbed12" - integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== - --"@noble/hashes@1.3.0", "@noble/hashes@^1.3.0", "@noble/hashes@~1.3.0": -+"@noble/hashes@1.3.0", "@noble/hashes@^1.1.2", "@noble/hashes@^1.3.0", "@noble/hashes@~1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.0.tgz#085fd70f6d7d9d109671090ccae1d3bec62554a1" - integrity sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg== - --"@noble/hashes@^1.3.1": -- version "1.3.3" -- resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.3.tgz#39908da56a4adc270147bb07968bf3b16cfe1699" -- integrity sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA== -+"@noble/hashes@1.3.1": -+ version "1.3.1" -+ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.1.tgz#8831ef002114670c603c458ab8b11328406953a9" -+ integrity sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA== - --"@noble/secp256k1@1.7.1", "@noble/secp256k1@~1.7.0": -+"@noble/secp256k1@1.7.1", "@noble/secp256k1@^1.6.3", "@noble/secp256k1@~1.7.0": - version "1.7.1" - resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.1.tgz#b251c70f824ce3ca7f8dc3df08d58f005cc0507c" - integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== -@@ -5144,75 +5100,6 @@ - dependencies: - array.prototype.flatmap "^1.2.4" - --"@parcel/watcher-android-arm64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.0.tgz#9c93763794153e4f76920994a423b6ea3257059d" -- integrity sha512-+fPtO/GsbYX1LJnCYCaDVT3EOBjvSFdQN9Mrzh9zWAOOfvidPWyScTrHIZHHfJBvlHzNA0Gy0U3NXFA/M7PHUA== -- --"@parcel/watcher-darwin-arm64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.0.tgz#2c79c2abde16aa24cac67e555b60802fd13fe210" -- integrity sha512-T/At5pansFuQ8VJLRx0C6C87cgfqIYhW2N/kBfLCUvDhCah0EnLLwaD/6MW3ux+rpgkpQAnMELOCTKlbwncwiA== -- --"@parcel/watcher-darwin-x64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.0.tgz#23d82f198c5d033f047467c68d7c335f3df49b46" -- integrity sha512-vZMv9jl+szz5YLsSqEGCMSllBl1gU1snfbRL5ysJU03MEa6gkVy9OMcvXV1j4g0++jHEcvzhs3Z3LpeEbVmY6Q== -- --"@parcel/watcher-freebsd-x64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.0.tgz#7310cc86abc27dacd57624bcdba1f0ba092e76df" -- integrity sha512-dHTRMIplPDT1M0+BkXjtMN+qLtqq24sLDUhmU+UxxLP2TEY2k8GIoqIJiVrGWGomdWsy5IO27aDV1vWyQ6gfHA== -- --"@parcel/watcher-linux-arm-glibc@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.0.tgz#c31b76e695027eeb1078d3d6f1d641d0b900c335" -- integrity sha512-9NQXD+qk46RwATNC3/UB7HWurscY18CnAPMTFcI9Y8CTbtm63/eex1SNt+BHFinEQuLBjaZwR2Lp+n7pmEJPpQ== -- --"@parcel/watcher-linux-arm64-glibc@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.0.tgz#56e09b86e9d8a4096f606be118b588da6e965080" -- integrity sha512-QuJTAQdsd7PFW9jNGaV9Pw+ZMWV9wKThEzzlY3Lhnnwy7iW23qtQFPql8iEaSFMCVI5StNNmONUopk+MFKpiKg== -- --"@parcel/watcher-linux-arm64-musl@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.0.tgz#27ffd5ca5f510ecd638f9ad22e2e813049db54e7" -- integrity sha512-oyN+uA9xcTDo/45bwsd6TFHa7Lc7hKujyMlvwrCLvSckvWogndCEoVYFNfZ6JJ2KNL/6fFiGPcbjp8jJmEh5Ng== -- --"@parcel/watcher-linux-x64-glibc@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.0.tgz#44cbbb1e5884a1ca900655f47a0775218318f934" -- integrity sha512-KphV8awJmxU3q52JQvJot0QMu07CIyEjV+2Tb2ZtbucEgqyRcxOBDMsqp1JNq5nuDXtcCC0uHQICeiEz38dPBQ== -- --"@parcel/watcher-linux-x64-musl@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.0.tgz#4c33993618c8d5113722852806239cb80360494b" -- integrity sha512-7jzcOonpXNWcSijPpKD5IbC6xC7yTibjJw9jviVzZostYLGxbz8LDJLUnLzLzhASPlPGgpeKLtFUMjAAzM+gSA== -- --"@parcel/watcher-wasm@2.3.0": -- version "2.3.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-wasm/-/watcher-wasm-2.3.0.tgz#73b66c6fbd2a3326ae86a1ec77eab7139d0dd725" -- integrity sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA== -- dependencies: -- is-glob "^4.0.3" -- micromatch "^4.0.5" -- napi-wasm "^1.1.0" -- --"@parcel/watcher-win32-arm64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.0.tgz#2a172fd2fda95fe5389298ca3e70b5a96316162a" -- integrity sha512-NOej2lqlq8bQNYhUMnOD0nwvNql8ToQF+1Zhi9ULZoG+XTtJ9hNnCFfyICxoZLXor4bBPTOnzs/aVVoefYnjIg== -- --"@parcel/watcher-win32-ia32@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.0.tgz#279225b2ebe1fadd3c5137c9b2365ad422656904" -- integrity sha512-IO/nM+K2YD/iwjWAfHFMBPz4Zqn6qBDqZxY4j2n9s+4+OuTSRM/y/irksnuqcspom5DjkSeF9d0YbO+qpys+JA== -- --"@parcel/watcher-win32-x64@2.4.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.0.tgz#93e0bd0ad1bda2c9a688764b9b30b71dc5b72a71" -- integrity sha512-pAUyUVjfFjWaf/pShmJpJmNxZhbMvJASUpdes9jL6bTEJ+gDxPRSpXTIemNyNsb9AtbiGXs9XduP1reThmd+dA== -- - "@parcel/watcher@2.0.4": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b" -@@ -5221,29 +5108,6 @@ - node-addon-api "^3.2.1" - node-gyp-build "^4.3.0" - --"@parcel/watcher@^2.3.0": -- version "2.4.0" -- resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.4.0.tgz#2d3c4ef8832a5cdfdbb76b914f022489933e664f" -- integrity sha512-XJLGVL0DEclX5pcWa2N9SX1jCGTDd8l972biNooLFtjneuGqodupPQh6XseXIBBeVIMaaJ7bTcs3qGvXwsp4vg== -- dependencies: -- detect-libc "^1.0.3" -- is-glob "^4.0.3" -- micromatch "^4.0.5" -- node-addon-api "^7.0.0" -- optionalDependencies: -- "@parcel/watcher-android-arm64" "2.4.0" -- "@parcel/watcher-darwin-arm64" "2.4.0" -- "@parcel/watcher-darwin-x64" "2.4.0" -- "@parcel/watcher-freebsd-x64" "2.4.0" -- "@parcel/watcher-linux-arm-glibc" "2.4.0" -- "@parcel/watcher-linux-arm64-glibc" "2.4.0" -- "@parcel/watcher-linux-arm64-musl" "2.4.0" -- "@parcel/watcher-linux-x64-glibc" "2.4.0" -- "@parcel/watcher-linux-x64-musl" "2.4.0" -- "@parcel/watcher-win32-arm64" "2.4.0" -- "@parcel/watcher-win32-ia32" "2.4.0" -- "@parcel/watcher-win32-x64" "2.4.0" -- - "@phenomnomnominal/tsquery@4.1.1": - version "4.1.1" - resolved "https://registry.yarnpkg.com/@phenomnomnominal/tsquery/-/tsquery-4.1.1.tgz#42971b83590e9d853d024ddb04a18085a36518df" -@@ -5511,10 +5375,28 @@ - estree-walker "^2.0.1" - picomatch "^2.2.2" - --"@scure/base@^1.1.3": -- version "1.1.5" -- resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.5.tgz#1d85d17269fe97694b9c592552dd9e5e33552157" -- integrity sha512-Brj9FiG2W1MRQSTB212YVPRrcbjkv48FoZi/u4l/zds/ieRrqsh7aUf6CLwkAq61oKXr/ZlTzlY66gLIj3TFTQ== -+"@safe-global/safe-apps-provider@^0.17.1": -+ version "0.17.1" -+ resolved "https://registry.yarnpkg.com/@safe-global/safe-apps-provider/-/safe-apps-provider-0.17.1.tgz#72df2a66be5343940ed505efe594ed3b0f2f7015" -+ integrity sha512-lYfRqrbbK1aKU1/UGkYWc/X7PgySYcumXKc5FB2uuwAs2Ghj8uETuW5BrwPqyjBknRxutFbTv+gth/JzjxAhdQ== -+ dependencies: -+ "@safe-global/safe-apps-sdk" "8.0.0" -+ events "^3.3.0" -+ -+"@safe-global/safe-apps-sdk@8.0.0", "@safe-global/safe-apps-sdk@^8.0.0": -+ version "8.0.0" -+ resolved "https://registry.yarnpkg.com/@safe-global/safe-apps-sdk/-/safe-apps-sdk-8.0.0.tgz#9bdfe0e0d85e1b2d279bb840f40c4b930aaf8bc1" -+ integrity sha512-gYw0ki/EAuV1oSyMxpqandHjnthZjYYy+YWpTAzf8BqfXM3ItcZLpjxfg+3+mXW8HIO+3jw6T9iiqEXsqHaMMw== -+ dependencies: -+ "@safe-global/safe-gateway-typescript-sdk" "^3.5.3" -+ viem "^1.0.0" -+ -+"@safe-global/safe-gateway-typescript-sdk@^3.5.3": -+ version "3.7.0" -+ resolved "https://registry.yarnpkg.com/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.7.0.tgz#2af52f1bc73759b1b6a549fed598781c8c5fce72" -+ integrity sha512-3BvlUgp0oZ1Zkn7nG3wY1jvCEE4t530BjKcaa3r0qsf0whf/ez/0gmQwk7DTOGmVmvOfjj6HHikxnrUCCX+/3Q== -+ dependencies: -+ cross-fetch "^3.1.5" - - "@scure/base@~1.1.0": - version "1.1.1" -@@ -5657,6 +5539,35 @@ - dependencies: - "@sinonjs/commons" "^1.7.0" - -+"@solana/buffer-layout@^4.0.0": -+ version "4.0.1" -+ resolved "https://registry.yarnpkg.com/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz#b996235eaec15b1e0b5092a8ed6028df77fa6c15" -+ integrity sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA== -+ dependencies: -+ buffer "~6.0.3" -+ -+"@solana/web3.js@^1.70.1": -+ version "1.74.0" -+ resolved "https://registry.yarnpkg.com/@solana/web3.js/-/web3.js-1.74.0.tgz#dbcbeabb830dd7cbbcf5e31404ca79c9785cbf2d" -+ integrity sha512-RKZyPqizPCxmpMGfpu4fuplNZEWCrhRBjjVstv5QnAJvgln1jgOfgui+rjl1ExnqDnWKg9uaZ5jtGROH/cwabg== -+ dependencies: -+ "@babel/runtime" "^7.12.5" -+ "@noble/ed25519" "^1.7.0" -+ "@noble/hashes" "^1.1.2" -+ "@noble/secp256k1" "^1.6.3" -+ "@solana/buffer-layout" "^4.0.0" -+ agentkeepalive "^4.2.1" -+ bigint-buffer "^1.1.5" -+ bn.js "^5.0.0" -+ borsh "^0.7.0" -+ bs58 "^4.0.1" -+ buffer "6.0.1" -+ fast-stable-stringify "^1.0.0" -+ jayson "^3.4.4" -+ node-fetch "^2.6.7" -+ rpc-websockets "^7.5.1" -+ superstruct "^0.14.2" -+ - "@solidity-parser/parser@^0.14.3": - version "0.14.3" - resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.3.tgz#0d627427b35a40d8521aaa933cc3df7d07bfa36f" -@@ -5925,6 +5836,40 @@ - dependencies: - defer-to-connect "^2.0.0" - -+"@tanstack/query-core@4.29.19": -+ version "4.29.19" -+ resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-4.29.19.tgz#49ccbd0606633d1e55baf3b91ab7cc7aef411b1d" -+ integrity sha512-uPe1DukeIpIHpQi6UzIgBcXsjjsDaLnc7hF+zLBKnaUlh7jFE/A+P8t4cU4VzKPMFB/C970n/9SxtpO5hmIRgw== -+ -+"@tanstack/query-persist-client-core@4.29.19": -+ version "4.29.19" -+ resolved "https://registry.yarnpkg.com/@tanstack/query-persist-client-core/-/query-persist-client-core-4.29.19.tgz#c0cd03eca74d33e5aa40c95cadd5585620ff2320" -+ integrity sha512-rr6p3xwEZCz3cEDZsj3QGePf6PG44WxRUGQVcm2JFPZOq9TkG/0i5+hQ3STiHm1Fj6qwCH8xIi62L8kG0zRj/Q== -+ dependencies: -+ "@tanstack/query-core" "4.29.19" -+ -+"@tanstack/query-sync-storage-persister@^4.27.1": -+ version "4.29.19" -+ resolved "https://registry.yarnpkg.com/@tanstack/query-sync-storage-persister/-/query-sync-storage-persister-4.29.19.tgz#292d33cdc9b38b11127f2f07b1935a73039cbba4" -+ integrity sha512-B3wDl3D3YBFTlY2yeXecEh4NEG/8Hr8pqsxnWJijRwBqvOKlqD4bUgk5kl5nbn1mShD2vnQ+yvH900/11X29Zw== -+ dependencies: -+ "@tanstack/query-persist-client-core" "4.29.19" -+ -+"@tanstack/react-query-persist-client@^4.28.0": -+ version "4.29.19" -+ resolved "https://registry.yarnpkg.com/@tanstack/react-query-persist-client/-/react-query-persist-client-4.29.19.tgz#27b24ec5c8983894d6f23450e2f922d07f47706f" -+ integrity sha512-LfcasTosdnI9K66HTP0Rk72Ypza3tCgrcF9bc2qFlKsBleYOYo8bz7/GiiOHj1SQH4GRQlKB+P4+/it+qlJg4g== -+ dependencies: -+ "@tanstack/query-persist-client-core" "4.29.19" -+ -+"@tanstack/react-query@^4.28.0": -+ version "4.29.19" -+ resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-4.29.19.tgz#6ba187f2d0ea36ae83ff1f67068f53c88ce7b228" -+ integrity sha512-XiTIOHHQ5Cw1WUlHaD4fmVUMhoWjuNJlAeJGq7eM4BraI5z7y8WkZO+NR8PSuRnQGblpuVdjClQbDFtwxTtTUw== -+ dependencies: -+ "@tanstack/query-core" "4.29.19" -+ use-sync-external-store "^1.2.0" -+ - "@testing-library/dom@^8.5.0": - version "8.19.0" - resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.19.0.tgz#bd3f83c217ebac16694329e413d9ad5fdcfd785f" -@@ -6117,27 +6062,20 @@ - "@types/express-serve-static-core" "*" - "@types/node" "*" - --"@types/connect@*": -+"@types/connect@*", "@types/connect@^3.4.33": - version "3.4.35" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" - integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== - dependencies: - "@types/node" "*" - --"@types/debug@^4.0.0": -+"@types/debug@^4.0.0", "@types/debug@^4.1.7": - version "4.1.7" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82" - integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg== - dependencies: - "@types/ms" "*" - --"@types/debug@^4.1.7": -- version "4.1.12" -- resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" -- integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== -- dependencies: -- "@types/ms" "*" -- - "@types/eslint-scope@^3.7.3": - version "3.7.4" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" -@@ -6396,6 +6334,11 @@ - dependencies: - undici-types "~5.26.4" - -+"@types/node@^12.12.54": -+ version "12.20.55" -+ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" -+ integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -+ - "@types/node@^18.11.18": - version "18.16.16" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.16.tgz#3b64862856c7874ccf7439e6bab872d245c86d8e" -@@ -6650,9 +6593,9 @@ - integrity sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg== - - "@types/trusted-types@^2.0.2": -- version "2.0.7" -- resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11" -- integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw== -+ version "2.0.3" -+ resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.3.tgz#a136f83b0758698df454e328759dbd3d44555311" -+ integrity sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g== - - "@types/unist@*", "@types/unist@^2.0.0": - version "2.0.6" -@@ -6671,13 +6614,20 @@ - dependencies: - "@types/node" "*" - --"@types/ws@^7.2.4": -+"@types/ws@^7.2.4", "@types/ws@^7.4.4": - version "7.4.7" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.7.tgz#f7c390a36f7a0679aa69de2d501319f4f8d9b702" - integrity sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww== - dependencies: - "@types/node" "*" - -+"@types/ws@^8.5.4": -+ version "8.5.5" -+ resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.5.tgz#af587964aa06682702ee6dcbc7be41a80e4b28eb" -+ integrity sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg== -+ dependencies: -+ "@types/node" "*" -+ - "@types/yargs-parser@*": - version "20.2.1" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" -@@ -6801,108 +6751,91 @@ - dependencies: - resolve "^1.10.0" - --"@vue/compiler-core@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.15.tgz#be20d1bbe19626052500b48969302cb6f396d36e" -- integrity sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw== -- dependencies: -- "@babel/parser" "^7.23.6" -- "@vue/shared" "3.4.15" -- entities "^4.5.0" -- estree-walker "^2.0.2" -- source-map-js "^1.0.2" -- --"@vue/compiler-dom@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.15.tgz#753f5ed55f78d33dff04701fad4d76ff0cf81ee5" -- integrity sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ== -- dependencies: -- "@vue/compiler-core" "3.4.15" -- "@vue/shared" "3.4.15" -- --"@vue/compiler-sfc@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.15.tgz#4e5811e681955fcec886cebbec483f6ae463a64b" -- integrity sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA== -- dependencies: -- "@babel/parser" "^7.23.6" -- "@vue/compiler-core" "3.4.15" -- "@vue/compiler-dom" "3.4.15" -- "@vue/compiler-ssr" "3.4.15" -- "@vue/shared" "3.4.15" -- estree-walker "^2.0.2" -- magic-string "^0.30.5" -- postcss "^8.4.33" -- source-map-js "^1.0.2" -- --"@vue/compiler-ssr@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.15.tgz#a910a5b89ba4f0a776e40b63d69bdae2f50616cf" -- integrity sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw== -- dependencies: -- "@vue/compiler-dom" "3.4.15" -- "@vue/shared" "3.4.15" -- --"@vue/reactivity@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.4.15.tgz#ad9d9b83f5398d2e8660ad5cfc0f171e7679a9a1" -- integrity sha512-55yJh2bsff20K5O84MxSvXKPHHt17I2EomHznvFiJCAZpJTNW8IuLj1xZWMLELRhBK3kkFV/1ErZGHJfah7i7w== -- dependencies: -- "@vue/shared" "3.4.15" -+"@wagmi/chains@1.2.0": -+ version "1.2.0" -+ resolved "https://registry.yarnpkg.com/@wagmi/chains/-/chains-1.2.0.tgz#d59eaa70ec51a5fdcd113975926992acfb17ab12" -+ integrity sha512-dmDRipsE54JfyudOBkuhEexqQWcrZqxn/qiujG8SBzMh/az/AH5xlJSA+j1CPWTx9+QofSMF3B7A4gb6XRmSaQ== - --"@vue/runtime-core@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.4.15.tgz#f81e2fd2108ea41a6d5c61c2462b11dfb754fdf0" -- integrity sha512-6E3by5m6v1AkW0McCeAyhHTw+3y17YCOKG0U0HDKDscV4Hs0kgNT5G+GCHak16jKgcCDHpI9xe5NKb8sdLCLdw== -- dependencies: -- "@vue/reactivity" "3.4.15" -- "@vue/shared" "3.4.15" -+"@wagmi/chains@1.6.0": -+ version "1.6.0" -+ resolved "https://registry.yarnpkg.com/@wagmi/chains/-/chains-1.6.0.tgz#eb992ad28dbaaab729b5bcab3e5b461e8a035656" -+ integrity sha512-5FRlVxse5P4ZaHG3GTvxwVANSmYJas1eQrTBHhjxVtqXoorm0aLmCHbhmN8Xo1yu09PaWKlleEvfE98yH4AgIw== - --"@vue/runtime-dom@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.4.15.tgz#108ef86aa7334ead5d6b9c56a7d93679e1e45406" -- integrity sha512-EVW8D6vfFVq3V/yDKNPBFkZKGMFSvZrUQmx196o/v2tHKdwWdiZjYUBS+0Ez3+ohRyF8Njwy/6FH5gYJ75liUw== -- dependencies: -- "@vue/runtime-core" "3.4.15" -- "@vue/shared" "3.4.15" -- csstype "^3.1.3" -+"@wagmi/chains@1.7.0": -+ version "1.7.0" -+ resolved "https://registry.yarnpkg.com/@wagmi/chains/-/chains-1.7.0.tgz#8f6ad81cf867e1788417f7c978ca92bc083ecaf6" -+ integrity sha512-TKVeHv0GqP5sV1yQ8BDGYToAFezPnCexbbBpeH14x7ywi5a1dDStPffpt9x+ytE6LJWkZ6pAMs/HNWXBQ5Nqmw== - --"@vue/server-renderer@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.4.15.tgz#34438f998e6f6370fac78883a75efe136631957f" -- integrity sha512-3HYzaidu9cHjrT+qGUuDhFYvF/j643bHC6uUN9BgM11DVy+pM6ATsG6uPBLnkwOgs7BpJABReLmpL3ZPAsUaqw== -+"@wagmi/connectors@2.7.0": -+ version "2.7.0" -+ resolved "https://registry.yarnpkg.com/@wagmi/connectors/-/connectors-2.7.0.tgz#547972502cbe6719217043fe5b610ac48534dc93" -+ integrity sha512-1KOL0HTJl5kzSC/YdKwFwiokr6poUQn1V/tcT0TpG3iH2x0lSM7FTkvCjVVY/6lKzTXrLlo9y2aE7AsOPnkvqg== -+ dependencies: -+ "@coinbase/wallet-sdk" "^3.6.6" -+ "@ledgerhq/connect-kit-loader" "^1.1.0" -+ "@safe-global/safe-apps-provider" "^0.17.1" -+ "@safe-global/safe-apps-sdk" "^8.0.0" -+ "@walletconnect/ethereum-provider" "2.9.2" -+ "@walletconnect/legacy-provider" "^2.0.0" -+ "@walletconnect/modal" "2.6.1" -+ "@walletconnect/utils" "2.9.2" -+ abitype "0.8.7" -+ eventemitter3 "^4.0.7" -+ -+"@wagmi/core@1.3.9": -+ version "1.3.9" -+ resolved "https://registry.yarnpkg.com/@wagmi/core/-/core-1.3.9.tgz#16bac164fe74203fde68abe7991b947d3a26e6ab" -+ integrity sha512-SrnABCrsDvhiMCLLLyzyHnZbEumsFT/XWlJJQZeyEDcixL95R7XQwOaaoRI4MpNilCtMtu3jzN57tA5Z2iA+kw== - dependencies: -- "@vue/compiler-ssr" "3.4.15" -- "@vue/shared" "3.4.15" -+ "@wagmi/chains" "1.7.0" -+ "@wagmi/connectors" "2.7.0" -+ abitype "0.8.7" -+ eventemitter3 "^4.0.7" -+ zustand "^4.3.1" - --"@vue/shared@3.4.15": -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.15.tgz#e7d2ea050c667480cb5e1a6df2ac13bcd03a8f30" -- integrity sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g== -- --"@walletconnect/core@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.11.1.tgz#da2be26b8b6514c74f06dc9a5ffb450bdec3456d" -- integrity sha512-T57Vd7YdbHPsy3tthBuwrhaZNafN0+PqjISFRNeJy/bsKdXxpJg2hGSARuOTpCO7V6VcaatqlaSMuG3DrnG5rA== -+"@walletconnect/core@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.9.2.tgz#c46734ca63771b28fd77606fd521930b7ecfc5e1" -+ integrity sha512-VARMPAx8sIgodeyngDHbealP3B621PQqjqKsByFUTOep8ZI1/R/20zU+cmq6j9RCrL+kLKZcrZqeVzs8Z7OlqQ== - dependencies: - "@walletconnect/heartbeat" "1.2.1" - "@walletconnect/jsonrpc-provider" "1.0.13" - "@walletconnect/jsonrpc-types" "1.0.3" - "@walletconnect/jsonrpc-utils" "1.0.8" -- "@walletconnect/jsonrpc-ws-connection" "1.0.14" -- "@walletconnect/keyvaluestorage" "^1.1.1" -+ "@walletconnect/jsonrpc-ws-connection" "1.0.13" -+ "@walletconnect/keyvaluestorage" "^1.0.2" - "@walletconnect/logger" "^2.0.1" - "@walletconnect/relay-api" "^1.0.9" - "@walletconnect/relay-auth" "^1.0.4" - "@walletconnect/safe-json" "^1.0.2" - "@walletconnect/time" "^1.0.2" -- "@walletconnect/types" "2.11.1" -- "@walletconnect/utils" "2.11.1" -+ "@walletconnect/types" "2.9.2" -+ "@walletconnect/utils" "2.9.2" - events "^3.3.0" -- isomorphic-unfetch "3.1.0" - lodash.isequal "4.5.0" - uint8arrays "^3.1.0" - -+"@walletconnect/crypto@^1.0.3": -+ version "1.0.3" -+ resolved "https://registry.yarnpkg.com/@walletconnect/crypto/-/crypto-1.0.3.tgz#7b8dd4d7e2884fe3543c7c07aea425eef5ef9dd4" -+ integrity sha512-+2jdORD7XQs76I2Odgr3wwrtyuLUXD/kprNVsjWRhhhdO9Mt6WqVzOPu0/t7OHSmgal8k7SoBQzUc5hu/8zL/g== -+ dependencies: -+ "@walletconnect/encoding" "^1.0.2" -+ "@walletconnect/environment" "^1.0.1" -+ "@walletconnect/randombytes" "^1.0.3" -+ aes-js "^3.1.2" -+ hash.js "^1.1.7" -+ tslib "1.14.1" -+ -+"@walletconnect/encoding@^1.0.2": -+ version "1.0.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/encoding/-/encoding-1.0.2.tgz#cb3942ad038d6a6bf01158f66773062dd25724da" -+ integrity sha512-CrwSBrjqJ7rpGQcTL3kU+Ief+Bcuu9PH6JLOb+wM6NITX1GTxR/MfNwnQfhLKK6xpRAyj2/nM04OOH6wS8Imag== -+ dependencies: -+ is-typedarray "1.0.0" -+ tslib "1.14.1" -+ typedarray-to-buffer "3.1.5" -+ - "@walletconnect/environment@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@walletconnect/environment/-/environment-1.0.1.tgz#1d7f82f0009ab821a2ba5ad5e5a7b8ae3b214cd7" -@@ -6910,20 +6843,19 @@ - dependencies: - tslib "1.14.1" - --"@walletconnect/ethereum-provider@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/ethereum-provider/-/ethereum-provider-2.11.1.tgz#6e0174ec9026940eaadeedc53417e222eb45f5aa" -- integrity sha512-UfQH0ho24aa2M1xYmanbJv2ggQPebKmQytp2j20QEvURJ2R0v7YKWZ+0PfwOs6o6cuGw6gGxy/0WQXQRZSAsfg== -+"@walletconnect/ethereum-provider@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/ethereum-provider/-/ethereum-provider-2.9.2.tgz#fb3a6fca279bb4e98e75baa2fb9730545d41bb99" -+ integrity sha512-eO1dkhZffV1g7vpG19XUJTw09M/bwGUwwhy1mJ3AOPbOSbMPvwiCuRz2Kbtm1g9B0Jv15Dl+TvJ9vTgYF8zoZg== - dependencies: - "@walletconnect/jsonrpc-http-connection" "^1.0.7" - "@walletconnect/jsonrpc-provider" "^1.0.13" - "@walletconnect/jsonrpc-types" "^1.0.3" - "@walletconnect/jsonrpc-utils" "^1.0.8" -- "@walletconnect/modal" "^2.6.2" -- "@walletconnect/sign-client" "2.11.1" -- "@walletconnect/types" "2.11.1" -- "@walletconnect/universal-provider" "2.11.1" -- "@walletconnect/utils" "2.11.1" -+ "@walletconnect/sign-client" "2.9.2" -+ "@walletconnect/types" "2.9.2" -+ "@walletconnect/universal-provider" "2.9.2" -+ "@walletconnect/utils" "2.9.2" - events "^3.3.0" - - "@walletconnect/events@^1.0.1": -@@ -6943,6 +6875,16 @@ - "@walletconnect/time" "^1.0.2" - tslib "1.14.1" - -+"@walletconnect/jsonrpc-http-connection@^1.0.4": -+ version "1.0.6" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.6.tgz#48c41cf3e5ac9add9425420b345615dc438594cd" -+ integrity sha512-/3zSqDi7JDN06E4qm0NmVYMitngXfh21UWwy8zeJcBeJc+Jcs094EbLsIxtziIIKTCCbT88lWuTjl1ZujxN7cw== -+ dependencies: -+ "@walletconnect/jsonrpc-utils" "^1.0.6" -+ "@walletconnect/safe-json" "^1.0.1" -+ cross-fetch "^3.1.4" -+ tslib "1.14.1" -+ - "@walletconnect/jsonrpc-http-connection@^1.0.7": - version "1.0.7" - resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.7.tgz#a6973569b8854c22da707a759d241e4f5c2d5a98" -@@ -6962,7 +6904,16 @@ - "@walletconnect/safe-json" "^1.0.2" - tslib "1.14.1" - --"@walletconnect/jsonrpc-types@1.0.3", "@walletconnect/jsonrpc-types@^1.0.2", "@walletconnect/jsonrpc-types@^1.0.3": -+"@walletconnect/jsonrpc-provider@^1.0.6": -+ version "1.0.10" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.10.tgz#8351a06b70faa8f8c0e77dc2c6d9b0190d17d407" -+ integrity sha512-g0ffPSpY3P6GqGjWGHsr3yqvQUhj7q2k6pAikoXv5XTXWaJRzFvrlbFkSgxziXsBrwrMZn0qvPufvpN4mMZ5FA== -+ dependencies: -+ "@walletconnect/jsonrpc-utils" "^1.0.6" -+ "@walletconnect/safe-json" "^1.0.1" -+ tslib "1.14.1" -+ -+"@walletconnect/jsonrpc-types@1.0.3", "@walletconnect/jsonrpc-types@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.3.tgz#65e3b77046f1a7fa8347ae02bc1b841abe6f290c" - integrity sha512-iIQ8hboBl3o5ufmJ8cuduGad0CQm3ZlsHtujv9Eu16xq89q+BG7Nh5VLxxUgmtpnrePgFkTwXirCTkwJH1v+Yw== -@@ -6970,7 +6921,15 @@ - keyvaluestorage-interface "^1.0.0" - tslib "1.14.1" - --"@walletconnect/jsonrpc-utils@1.0.8", "@walletconnect/jsonrpc-utils@^1.0.6", "@walletconnect/jsonrpc-utils@^1.0.7", "@walletconnect/jsonrpc-utils@^1.0.8": -+"@walletconnect/jsonrpc-types@^1.0.2": -+ version "1.0.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.2.tgz#b79519f679cd6a5fa4a1bea888f27c1916689a20" -+ integrity sha512-CZe8tjJX73OWdHjrBHy7HtAapJ2tT0Q3TYhPBhRxi3643lwPIQWC9En45ldY14TZwgSewkbZ0FtGBZK0G7Bbyg== -+ dependencies: -+ keyvaluestorage-interface "^1.0.0" -+ tslib "1.14.1" -+ -+"@walletconnect/jsonrpc-utils@1.0.8", "@walletconnect/jsonrpc-utils@^1.0.8": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz#82d0cc6a5d6ff0ecc277cb35f71402c91ad48d72" - integrity sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw== -@@ -6979,24 +6938,102 @@ - "@walletconnect/jsonrpc-types" "^1.0.3" - tslib "1.14.1" - --"@walletconnect/jsonrpc-ws-connection@1.0.14": -- version "1.0.14" -- resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.14.tgz#eec700e74766c7887de2bd76c91a0206628732aa" -- integrity sha512-Jsl6fC55AYcbkNVkwNM6Jo+ufsuCQRqViOQ8ZBPH9pRREHH9welbBiszuTLqEJiQcO/6XfFDl6bzCJIkrEi8XA== -+"@walletconnect/jsonrpc-utils@^1.0.4", "@walletconnect/jsonrpc-utils@^1.0.6": -+ version "1.0.6" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.6.tgz#7fa58e6671247e64e189828103282e6258f5330f" -+ integrity sha512-snp0tfkjPiDLQp/jrBewI+9SM33GPV4+Gjgldod6XQ7rFyQ5FZjnBxUkY4xWH0+arNxzQSi6v5iDXjCjSaorpg== -+ dependencies: -+ "@walletconnect/environment" "^1.0.1" -+ "@walletconnect/jsonrpc-types" "^1.0.2" -+ tslib "1.14.1" -+ -+"@walletconnect/jsonrpc-utils@^1.0.7": -+ version "1.0.7" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.7.tgz#1812d17c784f1ec0735bf03d0884287f60bfa2ce" -+ integrity sha512-zJziApzUF/Il4VcwabnaU+0yo1QI4eUkYX99zmCVTHJvZOf2l0zjADf/OpKqWyeNFC3Io56Z/8uJHVtcNVvyFA== -+ dependencies: -+ "@walletconnect/environment" "^1.0.1" -+ "@walletconnect/jsonrpc-types" "^1.0.2" -+ tslib "1.14.1" -+ -+"@walletconnect/jsonrpc-ws-connection@1.0.13": -+ version "1.0.13" -+ resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.13.tgz#23b0cdd899801bfbb44a6556936ec2b93ef2adf4" -+ integrity sha512-mfOM7uFH4lGtQxG+XklYuFBj6dwVvseTt5/ahOkkmpcAEgz2umuzu7fTR+h5EmjQBdrmYyEBOWADbeaFNxdySg== - dependencies: - "@walletconnect/jsonrpc-utils" "^1.0.6" - "@walletconnect/safe-json" "^1.0.2" - events "^3.3.0" -+ tslib "1.14.1" - ws "^7.5.1" - --"@walletconnect/keyvaluestorage@^1.1.1": -- version "1.1.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz#dd2caddabfbaf80f6b8993a0704d8b83115a1842" -- integrity sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA== -+"@walletconnect/keyvaluestorage@^1.0.2": -+ version "1.0.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.0.2.tgz#92f5ca0f54c1a88a093778842ce0c874d86369c8" -+ integrity sha512-U/nNG+VLWoPFdwwKx0oliT4ziKQCEoQ27L5Hhw8YOFGA2Po9A9pULUYNWhDgHkrb0gYDNt//X7wABcEWWBd3FQ== -+ dependencies: -+ safe-json-utils "^1.1.1" -+ tslib "1.14.1" -+ -+"@walletconnect/legacy-client@^2.0.0": -+ version "2.0.0" -+ resolved "https://registry.yarnpkg.com/@walletconnect/legacy-client/-/legacy-client-2.0.0.tgz#9f2c09694789fd4b6c5d68d6423b44bac55aed30" -+ integrity sha512-v5L7rYk9loVnfvUf0mF+76bUPFaU5/Vh7mzL6/950CD/yoGdzYZ3Kj+L7mkC6HPMEGeQsBP1+sqBuiVGZ/aODA== -+ dependencies: -+ "@walletconnect/crypto" "^1.0.3" -+ "@walletconnect/encoding" "^1.0.2" -+ "@walletconnect/jsonrpc-utils" "^1.0.4" -+ "@walletconnect/legacy-types" "^2.0.0" -+ "@walletconnect/legacy-utils" "^2.0.0" -+ "@walletconnect/safe-json" "^1.0.1" -+ "@walletconnect/window-getters" "^1.0.1" -+ "@walletconnect/window-metadata" "^1.0.1" -+ detect-browser "^5.3.0" -+ query-string "^6.13.5" -+ -+"@walletconnect/legacy-modal@^2.0.0": -+ version "2.0.0" -+ resolved "https://registry.yarnpkg.com/@walletconnect/legacy-modal/-/legacy-modal-2.0.0.tgz#d0fab01a1337a8f5d88cdb1430cbef2d46072bbf" -+ integrity sha512-jckNd8lMhm4X7dX9TDdxM3bXKJnaqkRs6K2Mo5j6GmbIF9Eyx40jZ5+q457RVxvM6ciZEDT5s1wBHWdWoOo+9Q== -+ dependencies: -+ "@walletconnect/legacy-types" "^2.0.0" -+ "@walletconnect/legacy-utils" "^2.0.0" -+ copy-to-clipboard "^3.3.3" -+ preact "^10.12.0" -+ qrcode "^1.5.1" -+ -+"@walletconnect/legacy-provider@^2.0.0": -+ version "2.0.0" -+ resolved "https://registry.yarnpkg.com/@walletconnect/legacy-provider/-/legacy-provider-2.0.0.tgz#08e2db1e4c234743b2f30422bc8100bc42e8fc44" -+ integrity sha512-A8xPebMI1A+50HbWwTpFCbwP7G+1NGKdTKyg8BUUg3h3Y9JucpC1W6w/x0v1Xw7qFEqQnz74LoIN/A3ytH9xrQ== -+ dependencies: -+ "@walletconnect/jsonrpc-http-connection" "^1.0.4" -+ "@walletconnect/jsonrpc-provider" "^1.0.6" -+ "@walletconnect/legacy-client" "^2.0.0" -+ "@walletconnect/legacy-modal" "^2.0.0" -+ "@walletconnect/legacy-types" "^2.0.0" -+ "@walletconnect/legacy-utils" "^2.0.0" -+ -+"@walletconnect/legacy-types@^2.0.0": -+ version "2.0.0" -+ resolved "https://registry.yarnpkg.com/@walletconnect/legacy-types/-/legacy-types-2.0.0.tgz#224278ae2874c6a2ca805c2d1d062a511dcf7227" -+ integrity sha512-sOVrA7HUdbI1OwKyPOQU0/DdvTSVFlsXWpAk2K2WvP2erTkBWPMTJq6cv2BmKdoJ3p6gLApT7sd+jHi3OF71uw== -+ dependencies: -+ "@walletconnect/jsonrpc-types" "^1.0.2" -+ -+"@walletconnect/legacy-utils@^2.0.0": -+ version "2.0.0" -+ resolved "https://registry.yarnpkg.com/@walletconnect/legacy-utils/-/legacy-utils-2.0.0.tgz#e3a637c00783f9cd2ae139b640f82223ab78ed9d" -+ integrity sha512-CPWxSVVXw0kgNCxvU126g4GiV3mzXmC8IPJ15twE46aJ1FX+RHEIfAzFMFz2F2+fEhBxL63A7dwNQKDXorRPcQ== - dependencies: -+ "@walletconnect/encoding" "^1.0.2" -+ "@walletconnect/jsonrpc-utils" "^1.0.4" -+ "@walletconnect/legacy-types" "^2.0.0" - "@walletconnect/safe-json" "^1.0.1" -- idb-keyval "^6.2.1" -- unstorage "^1.9.0" -+ "@walletconnect/window-getters" "^1.0.1" -+ "@walletconnect/window-metadata" "^1.0.1" -+ detect-browser "^5.3.0" -+ query-string "^6.13.5" - - "@walletconnect/logger@^2.0.1": - version "2.0.1" -@@ -7006,30 +7043,40 @@ - pino "7.11.0" - tslib "1.14.1" - --"@walletconnect/modal-core@2.6.2": -- version "2.6.2" -- resolved "https://registry.yarnpkg.com/@walletconnect/modal-core/-/modal-core-2.6.2.tgz#d73e45d96668764e0c8668ea07a45bb8b81119e9" -- integrity sha512-cv8ibvdOJQv2B+nyxP9IIFdxvQznMz8OOr/oR/AaUZym4hjXNL/l1a2UlSQBXrVjo3xxbouMxLb3kBsHoYP2CA== -+"@walletconnect/modal-core@2.6.1": -+ version "2.6.1" -+ resolved "https://registry.yarnpkg.com/@walletconnect/modal-core/-/modal-core-2.6.1.tgz#bc76055d0b644a2d4b98024324825c108a700905" -+ integrity sha512-f2hYlJ5pwzGvjyaZ6BoGR5uiMgXzWXt6w6ktt1N8lmY6PiYp8whZgqx2hTxVWwVlsGnaIfh6UHp1hGnANx0eTQ== - dependencies: -- valtio "1.11.2" -+ valtio "1.11.0" - --"@walletconnect/modal-ui@2.6.2": -- version "2.6.2" -- resolved "https://registry.yarnpkg.com/@walletconnect/modal-ui/-/modal-ui-2.6.2.tgz#fa57c087c57b7f76aaae93deab0f84bb68b59cf9" -- integrity sha512-rbdstM1HPGvr7jprQkyPggX7rP4XiCG85ZA+zWBEX0dVQg8PpAgRUqpeub4xQKDgY7pY/xLRXSiCVdWGqvG2HA== -+"@walletconnect/modal-ui@2.6.1": -+ version "2.6.1" -+ resolved "https://registry.yarnpkg.com/@walletconnect/modal-ui/-/modal-ui-2.6.1.tgz#200c54c8dfe3c71321abb2724e18bb357dfd6371" -+ integrity sha512-RFUOwDAMijSK8B7W3+KoLKaa1l+KEUG0LCrtHqaB0H0cLnhEGdLR+kdTdygw+W8+yYZbkM5tXBm7MlFbcuyitA== - dependencies: -- "@walletconnect/modal-core" "2.6.2" -- lit "2.8.0" -+ "@walletconnect/modal-core" "2.6.1" -+ lit "2.7.6" - motion "10.16.2" - qrcode "1.5.3" - --"@walletconnect/modal@^2.6.2": -- version "2.6.2" -- resolved "https://registry.yarnpkg.com/@walletconnect/modal/-/modal-2.6.2.tgz#4b534a836f5039eeb3268b80be7217a94dd12651" -- integrity sha512-eFopgKi8AjKf/0U4SemvcYw9zlLpx9njVN8sf6DAkowC2Md0gPU/UNEbH1Wwj407pEKnEds98pKWib1NN1ACoA== -+"@walletconnect/modal@2.6.1": -+ version "2.6.1" -+ resolved "https://registry.yarnpkg.com/@walletconnect/modal/-/modal-2.6.1.tgz#066fdbfcff83b58c8a9da66ab4af0eb93e3626de" -+ integrity sha512-G84tSzdPKAFk1zimgV7JzIUFT5olZUVtI3GcOk77OeLYjlMfnDT23RVRHm5EyCrjkptnvpD0wQScXePOFd2Xcw== -+ dependencies: -+ "@walletconnect/modal-core" "2.6.1" -+ "@walletconnect/modal-ui" "2.6.1" -+ -+"@walletconnect/randombytes@^1.0.3": -+ version "1.0.3" -+ resolved "https://registry.yarnpkg.com/@walletconnect/randombytes/-/randombytes-1.0.3.tgz#e795e4918367fd1e6a2215e075e64ab93e23985b" -+ integrity sha512-35lpzxcHFbTN3ABefC9W+uBpNZl1GC4Wpx0ed30gibfO/y9oLdy1NznbV96HARQKSBV9J9M/rrtIvf6a23jfYw== - dependencies: -- "@walletconnect/modal-core" "2.6.2" -- "@walletconnect/modal-ui" "2.6.2" -+ "@walletconnect/encoding" "^1.0.2" -+ "@walletconnect/environment" "^1.0.1" -+ randombytes "^2.1.0" -+ tslib "1.14.1" - - "@walletconnect/relay-api@^1.0.9": - version "1.0.9" -@@ -7051,26 +7098,33 @@ - tslib "1.14.1" - uint8arrays "^3.0.0" - --"@walletconnect/safe-json@^1.0.1", "@walletconnect/safe-json@^1.0.2": -+"@walletconnect/safe-json@^1.0.1": -+ version "1.0.1" -+ resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.1.tgz#9813fa0a7a544b16468730c2d7bed046ed160957" -+ integrity sha512-Fm7e31oSYY15NQr8SsLJheKAy5L744udZf2lJKcz6wFmPJEzf7hOF0866o/rrldRzJnjZ4H2GJ45pFudsnLW5A== -+ dependencies: -+ tslib "1.14.1" -+ -+"@walletconnect/safe-json@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.2.tgz#7237e5ca48046e4476154e503c6d3c914126fa77" - integrity sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA== - dependencies: - tslib "1.14.1" - --"@walletconnect/sign-client@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.11.1.tgz#c073b8d2d594e792bb783d36c8b021bd37a9d4f6" -- integrity sha512-s3oKSx6/F5X2WmkV1jfJImBFACf9Km5HpTb+n5q+mobJVpUQw/clvoVyIrNNppLhm1V1S/ylHXh0qCrDppDpCA== -+"@walletconnect/sign-client@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.9.2.tgz#ff4c81c082c2078878367d07f24bcb20b1f7ab9e" -+ integrity sha512-anRwnXKlR08lYllFMEarS01hp1gr6Q9XUgvacr749hoaC/AwGVlxYFdM8+MyYr3ozlA+2i599kjbK/mAebqdXg== - dependencies: -- "@walletconnect/core" "2.11.1" -+ "@walletconnect/core" "2.9.2" - "@walletconnect/events" "^1.0.1" - "@walletconnect/heartbeat" "1.2.1" - "@walletconnect/jsonrpc-utils" "1.0.8" - "@walletconnect/logger" "^2.0.1" - "@walletconnect/time" "^1.0.2" -- "@walletconnect/types" "2.11.1" -- "@walletconnect/utils" "2.11.1" -+ "@walletconnect/types" "2.9.2" -+ "@walletconnect/utils" "2.9.2" - events "^3.3.0" - - "@walletconnect/time@^1.0.2": -@@ -7080,37 +7134,37 @@ - dependencies: - tslib "1.14.1" - --"@walletconnect/types@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.11.1.tgz#4f705b43ddc286b69eb9bf91bb6e9496d20de0e3" -- integrity sha512-UbdbX+d6MOK0AXKxt5imV3KvAcLVpZUHylaRDIP5ffwVylM/p4DHnKppil1Qq5N+IGDr3RsUwLGFkKjqsQYRKw== -+"@walletconnect/types@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.9.2.tgz#d5fd5a61dc0f41cbdca59d1885b85207ac7bf8c5" -+ integrity sha512-7Rdn30amnJEEal4hk83cdwHUuxI1SWQ+K7fFFHBMqkuHLGi3tpMY6kpyfDxnUScYEZXqgRps4Jo5qQgnRqVM7A== - dependencies: - "@walletconnect/events" "^1.0.1" - "@walletconnect/heartbeat" "1.2.1" - "@walletconnect/jsonrpc-types" "1.0.3" -- "@walletconnect/keyvaluestorage" "^1.1.1" -+ "@walletconnect/keyvaluestorage" "^1.0.2" - "@walletconnect/logger" "^2.0.1" - events "^3.3.0" - --"@walletconnect/universal-provider@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/universal-provider/-/universal-provider-2.11.1.tgz#988f2a78325eb52ef7481a220851a56efb209d64" -- integrity sha512-BJvPYByIfbBYF4x8mqDV79ebQX0tD54pp8itsqrHWn0qKZeJyIH8sQ69yY0GnbJrzoFS3ZLULdC0yDxWDeuRGw== -+"@walletconnect/universal-provider@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/universal-provider/-/universal-provider-2.9.2.tgz#40e54e98bc48b1f2f5f77eb5b7f05462093a8506" -+ integrity sha512-JmaolkO8D31UdRaQCHwlr8uIFUI5BYhBzqYFt54Mc6gbIa1tijGOmdyr6YhhFO70LPmS6gHIjljwOuEllmlrxw== - dependencies: - "@walletconnect/jsonrpc-http-connection" "^1.0.7" - "@walletconnect/jsonrpc-provider" "1.0.13" - "@walletconnect/jsonrpc-types" "^1.0.2" - "@walletconnect/jsonrpc-utils" "^1.0.7" - "@walletconnect/logger" "^2.0.1" -- "@walletconnect/sign-client" "2.11.1" -- "@walletconnect/types" "2.11.1" -- "@walletconnect/utils" "2.11.1" -+ "@walletconnect/sign-client" "2.9.2" -+ "@walletconnect/types" "2.9.2" -+ "@walletconnect/utils" "2.9.2" - events "^3.3.0" - --"@walletconnect/utils@2.11.1": -- version "2.11.1" -- resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.11.1.tgz#56116d9c410c6f2ae8d562017cf6876cccb366f1" -- integrity sha512-wRFDHN86dZ05mCET1H3912odIeQa8j7cZKxl1FlWRpV2YsILj9HCYSX6Uq2brwO02Kv2vryke44G1r8XI/LViA== -+"@walletconnect/utils@2.9.2": -+ version "2.9.2" -+ resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.9.2.tgz#035bdb859ee81a4bcc6420f56114cc5ec3e30afb" -+ integrity sha512-D44hwXET/8JhhIjqljY6qxSu7xXnlPrf63UN/Qfl98vDjWlYVcDl2+JIQRxD9GPastw0S8XZXdRq59XDXLuZBg== - dependencies: - "@stablelib/chacha20poly1305" "1.0.1" - "@stablelib/hkdf" "1.0.1" -@@ -7120,7 +7174,7 @@ - "@walletconnect/relay-api" "^1.0.9" - "@walletconnect/safe-json" "^1.0.2" - "@walletconnect/time" "^1.0.2" -- "@walletconnect/types" "2.11.1" -+ "@walletconnect/types" "2.9.2" - "@walletconnect/window-getters" "^1.0.1" - "@walletconnect/window-metadata" "^1.0.1" - detect-browser "5.3.0" -@@ -7142,108 +7196,37 @@ - "@walletconnect/window-getters" "^1.0.1" - tslib "1.14.1" - --"@web3modal/common@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/common/-/common-4.0.1.tgz#633054870ecbc01622dd9c18b7d70378260aa391" -- integrity sha512-JsZk4KEr9pomSi2yY6ONLKnIPfiwH7AD1rYwU53EuCr/p6pfge8BXp+kIlinRPuJVeFAwWffYGdVr8oMKPBp7A== -- dependencies: -- dayjs "1.11.10" -- --"@web3modal/core@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/core/-/core-4.0.1.tgz#e41c33fd49b7d515db6938fee58de4a463e205a2" -- integrity sha512-A2bQuwC+HIx3511Vs0V+ramno8UYHmqpFJ2K8s8akRolsFsvRPXyClzJFP0eSEiKnGaRhrzaeVrgVni4Ef3D8A== -- dependencies: -- "@web3modal/common" "4.0.1" -- "@web3modal/wallet" "4.0.1" -- valtio "1.11.2" -- --"@web3modal/ethers5@^4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/ethers5/-/ethers5-4.0.1.tgz#6f0099e766c6d5d95882b775791df3b1fbc411f4" -- integrity sha512-GYPPntTm5TIbOoE6aP7UmmJMruc7qhK8g6+pkzSnkTLSn4d25K10O640sAncYSZx3WlCXb9OWSGwNaJoyGsI2w== -- dependencies: -- "@coinbase/wallet-sdk" "3.9.1" -- "@walletconnect/ethereum-provider" "2.11.1" -- "@web3modal/polyfills" "4.0.1" -- "@web3modal/scaffold" "4.0.1" -- "@web3modal/scaffold-react" "4.0.1" -- "@web3modal/scaffold-utils" "4.0.1" -- "@web3modal/scaffold-vue" "4.0.1" -- valtio "1.11.2" -- optionalDependencies: -- "@web3modal/siwe" "4.0.1" -- react ">=17" -- react-dom ">=17" -- vue ">=3" -- --"@web3modal/polyfills@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/polyfills/-/polyfills-4.0.1.tgz#ac0a386c75baeb997013ea61d4fecbb5ea1bd7ac" -- integrity sha512-9IRH4t4NKsiWAKj88JunrP/vq8yt4m/YjX4FcCvVv1+oQB0pLFNNhPz6SWPqRbQp0wVC6WvPQQfR4uz4HDpNLQ== -+"@web3modal/core@2.6.2": -+ version "2.6.2" -+ resolved "https://registry.yarnpkg.com/@web3modal/core/-/core-2.6.2.tgz#776f18b3014eab1d99c257cba7acd426d786d981" -+ integrity sha512-7gi618Z+bFOwEzhdxROt4AC8N45oiPHJFEA0AX3PxhB+ni5Usc1VQ03jQhk7DnQLDnQq+3hCY71F1escdxkdBA== - dependencies: - buffer "6.0.3" -+ valtio "1.10.6" - --"@web3modal/scaffold-react@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/scaffold-react/-/scaffold-react-4.0.1.tgz#891dd60e32cbbcfe39865cf304c77c23d44a80f3" -- integrity sha512-UF+aUysx/4EbCMguAIeyJ3icx2vYW/STJjjNYFbY9S9EujZSkAY5F86nBo/R7YPrcnFohM6OK4owLfc1oyCpFw== -- dependencies: -- "@web3modal/scaffold" "4.0.1" -- --"@web3modal/scaffold-utils@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/scaffold-utils/-/scaffold-utils-4.0.1.tgz#d120f479ed9d0fc2863d91ccf2b5b314d2ee5d94" -- integrity sha512-IXdv1kf9DLhXpXhSElKEA4CYBjCgdnQv3EW8PQfhOiXPTYaXdPMSESKw+q/xrDg0f/mGNo1gkpUnnSY2RUtWpw== -- dependencies: -- "@web3modal/polyfills" "4.0.1" -- "@web3modal/scaffold" "4.0.1" -- valtio "1.11.2" -- --"@web3modal/scaffold-vue@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/scaffold-vue/-/scaffold-vue-4.0.1.tgz#33d1e27673c54fb9fe82a1314ccbe5e1d475b077" -- integrity sha512-p7rb6K3SrUmHErccyDNfzmKvp7GsyJFAXsz47I6J0L+wiYaOu6+1vLYbI0ymWJnBH8+LdUpdQztnHv8XNNoDvw== -- dependencies: -- "@web3modal/scaffold" "4.0.1" -+"@web3modal/ethereum@^2.7.1": -+ version "2.7.1" -+ resolved "https://registry.yarnpkg.com/@web3modal/ethereum/-/ethereum-2.7.1.tgz#464dbc1d00d075c16961b77e9a353b1966538653" -+ integrity sha512-1x3qhYh9qgtvw1MDQD4VeDf2ZOsVANKRPtUty4lF+N4L8xnAIwvNKUAMA4j6T5xSsjqUfq5Tdy5mYsNxLmsWMA== - --"@web3modal/scaffold@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/scaffold/-/scaffold-4.0.1.tgz#1eb10ca5a3869c2154105eb726d4e1510bf75194" -- integrity sha512-njZtEv2zzJbfnKEY+IXUG7L4F5MCACBq3gMu6Zq8N9iBquTTEAxM6v5T7PJfgr/5Z9jRQXuthX3ZAHVCmNbJVA== -+"@web3modal/react@^2.6.2": -+ version "2.6.2" -+ resolved "https://registry.yarnpkg.com/@web3modal/react/-/react-2.6.2.tgz#1c65cd3a2a51b767c1287cb04dc20fc0c94ee998" -+ integrity sha512-Fi4rFCFI5L0w2Mx8hmY6Nwh4fQapGfKZA2JgXT8cduTk9N+Qov+clwyt9bhRC/60F1g8Kq+/L8a3T1OoEFvHyg== - dependencies: -- "@web3modal/common" "4.0.1" -- "@web3modal/core" "4.0.1" -- "@web3modal/ui" "4.0.1" -- lit "3.1.0" -+ "@web3modal/core" "2.6.2" -+ "@web3modal/ui" "2.6.2" - --"@web3modal/siwe@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/siwe/-/siwe-4.0.1.tgz#ab6664ff91807854b0bce84c4596b345ba88dc7d" -- integrity sha512-P5Xc4Kat674ZlhrTKdaYNSt2N/fWzAFvgCTGUleJegwNrPfD2i7pNqulqjl3Z2fo5VrOC+YZfWtK5Dx0KwNs0w== -- dependencies: -- "@web3modal/core" "4.0.1" -- "@web3modal/scaffold-utils" "4.0.1" -- optionalDependencies: -- react ">=17" -- react-dom ">=17" -- vue ">=3" -- --"@web3modal/ui@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/ui/-/ui-4.0.1.tgz#36cf1d44ecd6c051a676e670a56fb85837407a97" -- integrity sha512-W7uD0p7CFraKcrK4DcPU6PDvMNtbjR7a2Qk2gIcWHLrDHxSuSPnWFX/HX2R4Zh6OXs914vCfnmZmQdifSiGoeQ== -+"@web3modal/ui@2.6.2": -+ version "2.6.2" -+ resolved "https://registry.yarnpkg.com/@web3modal/ui/-/ui-2.6.2.tgz#ed88f06e9c83bd0b3bb22437a5a8ffc460ef21db" -+ integrity sha512-bhBNsookaqkTdLjyERBA7XM9KV8XPQ2bWAGd3roIgAFxLlaoWqrV0pPZHLtp+C97AglV4mbeqvFsHZ0jwpm8lw== - dependencies: -- lit "3.1.0" -+ "@web3modal/core" "2.6.2" -+ lit "2.7.5" -+ motion "10.16.2" - qrcode "1.5.3" - --"@web3modal/wallet@4.0.1": -- version "4.0.1" -- resolved "https://registry.yarnpkg.com/@web3modal/wallet/-/wallet-4.0.1.tgz#b9f3e3f606bf430bfc073d2a23626d443796d3cd" -- integrity sha512-rzrXk3nW9sm3W/Kf0kXEX7S/FqbZVdzck25SJnqzaKWZDVIFwc8Mn8y88rlu6OFD4vArx7gSFSnPTHu6TtzriQ== -- dependencies: -- zod "3.22.4" -- - "@webassemblyjs/ast@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" -@@ -7436,7 +7419,7 @@ - resolved "https://registry.yarnpkg.com/@zxing/text-encoding/-/text-encoding-0.9.0.tgz#fb50ffabc6c7c66a0c96b4c03e3d9be74864b70b" - integrity sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA== - --JSONStream@^1.0.3, JSONStream@^1.0.4, JSONStream@^1.3.4: -+JSONStream@^1.0.3, JSONStream@^1.0.4, JSONStream@^1.3.4, JSONStream@^1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" - integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== -@@ -7472,6 +7455,21 @@ abitype@0.7.1: - resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.7.1.tgz#16db20abe67de80f6183cf75f3de1ff86453b745" - integrity sha512-VBkRHTDZf9Myaek/dO3yMmOzB/y2s3Zo6nVU7yaw1G+TvCHAjwaJzNGN9yo4K5D8bU/VZXKP1EJpRhFr862PlQ== - -+abitype@0.8.11: -+ version "0.8.11" -+ resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.8.11.tgz#66e1cf2cbf46f48d0e57132d7c1c392447536cc1" -+ integrity sha512-bM4v2dKvX08sZ9IU38IN5BKmN+ZkOSd2oI4a9f0ejHYZQYV6cDr7j+d95ga0z2XHG36Y4jzoG5Z7qDqxp7fi/A== -+ -+abitype@0.8.7: -+ version "0.8.7" -+ resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.8.7.tgz#e4b3f051febd08111f486c0cc6a98fa72d033622" -+ integrity sha512-wQ7hV8Yg/yKmGyFpqrNZufCxbszDe5es4AZGYPBitocfSqXtjrTG9JMWFcc4N30ukl2ve48aBTwt7NJxVQdU3w== -+ -+abitype@0.9.3: -+ version "0.9.3" -+ resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.9.3.tgz#294d25288ee683d72baf4e1fed757034e3c8c277" -+ integrity sha512-dz4qCQLurx97FQhnb/EIYTk/ldQ+oafEDUqC0VVIeQS1Q48/YWt/9YNfMmp9SLFqN41ktxny3c8aYxHjmFIB/w== -+ - abort-controller@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" -@@ -7589,11 +7587,6 @@ acorn@^8.0.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1: - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" - integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== - --acorn@^8.11.3: -- version "8.11.3" -- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" -- integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== -- - acorn@^8.9.0: - version "8.9.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.9.0.tgz#78a16e3b2bcc198c10822786fa6679e245db5b59" -@@ -7609,6 +7602,11 @@ aes-js@3.0.0: - resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" - integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== - -+aes-js@^3.1.2: -+ version "3.1.2" -+ resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.1.2.tgz#db9aabde85d5caabbfc0d4f2a4446960f627146a" -+ integrity sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ== -+ - agent-base@4, agent-base@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" -@@ -7876,7 +7874,7 @@ anymatch@^2.0.0: - micromatch "^3.1.4" - normalize-path "^2.1.1" - --anymatch@^3.0.3, anymatch@^3.1.3: -+anymatch@^3.0.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== -@@ -9233,6 +9231,13 @@ big.js@^5.2.2: - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - -+bigint-buffer@^1.1.5: -+ version "1.1.5" -+ resolved "https://registry.yarnpkg.com/bigint-buffer/-/bigint-buffer-1.1.5.tgz#d038f31c8e4534c1f8d0015209bf34b4fa6dd442" -+ integrity sha512-trfYco6AoZ+rKhKnxA0hgX0HAbVP/s808/EuDSe2JDzUnCp/xAsli35Orvk67UrTEcwuxZqYZDmfA2RXJgxVvA== -+ dependencies: -+ bindings "^1.3.0" -+ - bigint-crypto-utils@^3.0.23: - version "3.1.6" - resolved "https://registry.yarnpkg.com/bigint-crypto-utils/-/bigint-crypto-utils-3.1.6.tgz#3a52a660423416856342d0d9981935fa9856f177" -@@ -9265,7 +9270,12 @@ binary-extensions@^2.0.0: - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - --bindings@^1.5.0: -+bind-decorator@^1.0.11: -+ version "1.0.11" -+ resolved "https://registry.yarnpkg.com/bind-decorator/-/bind-decorator-1.0.11.tgz#e41bc06a1f65dd9cec476c91c5daf3978488252f" -+ integrity sha512-yzkH0uog6Vv/vQ9+rhSKxecnqGUZHYncg7qS7voz3Q76+TAi1SGiOKk2mlOvusQnFz9Dc4BC/NMkeXu11YgjJg== -+ -+bindings@^1.3.0, bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== -@@ -9333,7 +9343,7 @@ bn.js@^4.11.0, bn.js@^4.11.1: - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.9.tgz#26d556829458f9d1e81fc48952493d0ba3507828" - integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== - --bn.js@^5.0.0, bn.js@^5.1.2, bn.js@^5.2.0: -+bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== -@@ -9424,6 +9434,15 @@ borc@^2.1.2: - json-text-sequence "~0.1.0" - readable-stream "^3.6.0" - -+borsh@^0.7.0: -+ version "0.7.0" -+ resolved "https://registry.yarnpkg.com/borsh/-/borsh-0.7.0.tgz#6e9560d719d86d90dc589bca60ffc8a6c51fec2a" -+ integrity sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA== -+ dependencies: -+ bn.js "^5.2.0" -+ bs58 "^4.0.0" -+ text-encoding-utf-8 "^1.0.2" -+ - bottleneck@^2.15.3: - version "2.19.5" - resolved "https://registry.yarnpkg.com/bottleneck/-/bottleneck-2.19.5.tgz#5df0b90f59fd47656ebe63c78a98419205cadd91" -@@ -9768,7 +9787,7 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4 - node-releases "^2.0.6" - update-browserslist-db "^1.0.9" - --bs58@^4.0.0: -+bs58@^4.0.0, bs58@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" - integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== -@@ -9849,7 +9868,15 @@ buffer-xor@^1.0.3: - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== - --buffer@6.0.3, buffer@^6.0.3: -+buffer@6.0.1: -+ version "6.0.1" -+ resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.1.tgz#3cbea8c1463e5a0779e30b66d4c88c6ffa182ac2" -+ integrity sha512-rVAXBwEcEoYtxnHSO5iWyhzV/O1WMtkUYWlfdLS7FjU4PnSJJHEfHXi/uHPI5EwltmOA794gN3bm3/pzuctWjQ== -+ dependencies: -+ base64-js "^1.3.1" -+ ieee754 "^1.2.1" -+ -+buffer@6.0.3, buffer@^6.0.3, buffer@~6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" - integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== -@@ -9873,7 +9900,7 @@ buffer@~5.2.1: - base64-js "^1.0.2" - ieee754 "^1.1.4" - --bufferutil@4.0.5, bufferutil@^4.0.3: -+bufferutil@4.0.5, bufferutil@^4.0.1, bufferutil@^4.0.3: - version "4.0.5" - resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.5.tgz#da9ea8166911cc276bf677b8aed2d02d31f59028" - integrity sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A== -@@ -9887,6 +9914,13 @@ bufferutil@4.0.7: - dependencies: - node-gyp-build "^4.3.0" - -+bufferutil@^4.0.7: -+ version "4.0.8" -+ resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.8.tgz#1de6a71092d65d7766c4d8a522b261a6e787e8ea" -+ integrity sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw== -+ dependencies: -+ node-gyp-build "^4.3.0" -+ - builtin-modules@^1.0.0, builtin-modules@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -@@ -10529,13 +10563,6 @@ circular-json@^0.3.0: - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== - --citty@^0.1.5: -- version "0.1.5" -- resolved "https://registry.yarnpkg.com/citty/-/citty-0.1.5.tgz#fe37ceae5dc764af75eb2fece99d2bf527ea4e50" -- integrity sha512-AS7n5NSc0OQVMV9v6wt3ByujNIrne0/cTjiC2MYqhvao57VNfiuVksTSr2p17nVOhEr2KtqiAkGwHcgMC/qUuQ== -- dependencies: -- consola "^3.2.3" -- - cjs-module-lexer@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" -@@ -10658,15 +10685,6 @@ cli-width@^2.0.0: - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - --clipboardy@^4.0.0: -- version "4.0.0" -- resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-4.0.0.tgz#e73ced93a76d19dd379ebf1f297565426dffdca1" -- integrity sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w== -- dependencies: -- execa "^8.0.1" -- is-wsl "^3.1.0" -- is64bit "^2.0.0" -- - cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" -@@ -10775,12 +10793,12 @@ cloneable-readable@^1.0.0: - process-nextick-args "^2.0.0" - readable-stream "^2.3.5" - --clsx@^1.0.4, clsx@^1.2.1: -+clsx@^1.0.4: - version "1.2.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" - integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== - --clsx@^1.1.1: -+clsx@^1.1.0, clsx@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== -@@ -10790,11 +10808,6 @@ clsx@^2.0.0: - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b" - integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q== - --cluster-key-slot@^1.1.0: -- version "1.1.2" -- resolved "https://registry.yarnpkg.com/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz#88ddaa46906e303b5de30d3153b7d9fe0a0c19ac" -- integrity sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA== -- - cmd-shim@~2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-2.0.2.tgz#6fcbda99483a8fd15d7d30a196ca69d688a2efdb" -@@ -10998,7 +11011,7 @@ commander@^10.0.0: - resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" - integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== - --commander@^2.12.1, commander@^2.15.0, commander@^2.20.0, commander@^2.9.0: -+commander@^2.12.1, commander@^2.15.0, commander@^2.20.0, commander@^2.20.3, commander@^2.9.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -@@ -11160,11 +11173,6 @@ connect-history-api-fallback@^2.0.0: - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz#647264845251a0daf25b97ce87834cace0f5f1c8" - integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA== - --consola@^3.2.3: -- version "3.2.3" -- resolved "https://registry.yarnpkg.com/consola/-/consola-3.2.3.tgz#0741857aa88cfa0d6fd53f1cff0375136e98502f" -- integrity sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ== -- - console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" -@@ -11324,11 +11332,6 @@ convert-svg-to-png@^0.6.4: - dependencies: - convert-svg-core "^0.6.4" - --cookie-es@^1.0.0: -- version "1.0.0" -- resolved "https://registry.yarnpkg.com/cookie-es/-/cookie-es-1.0.0.tgz#4759684af168dfc54365b2c2dda0a8d7ee1e4865" -- integrity sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ== -- - cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" -@@ -11376,6 +11379,13 @@ copy-to-clipboard@^3.3.1: - dependencies: - toggle-selection "^1.0.6" - -+copy-to-clipboard@^3.3.3: -+ version "3.3.3" -+ resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz#55ac43a1db8ae639a4bd99511c148cdd1b83a1b0" -+ integrity sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA== -+ dependencies: -+ toggle-selection "^1.0.6" -+ - copy-webpack-plugin@^10.2.4: - version "10.2.4" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz#6c854be3fdaae22025da34b9112ccf81c63308fe" -@@ -11538,20 +11548,13 @@ cross-blob@^2.0.1: - blob-polyfill "^5.0.20210201" - fetch-blob "^2.1.2" - --cross-fetch@3.1.5, cross-fetch@^3.1.5: -+cross-fetch@3.1.5, cross-fetch@^3.1.4, cross-fetch@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" - integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== - dependencies: - node-fetch "2.6.7" - --cross-fetch@^3.1.4: -- version "3.1.8" -- resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.8.tgz#0327eba65fd68a7d119f8fb2bf9334a1a7956f82" -- integrity sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg== -- dependencies: -- node-fetch "^2.6.12" -- - cross-fetch@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-4.0.0.tgz#f037aef1580bb3a1a35164ea2a848ba81b445983" -@@ -11923,11 +11926,6 @@ csstype@^3.0.2: - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" - integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== - --csstype@^3.1.3: -- version "3.1.3" -- resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" -- integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== -- - currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" -@@ -11992,11 +11990,6 @@ dateformat@^3.0.0: - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" - integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== - --dayjs@1.11.10: -- version "1.11.10" -- resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" -- integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== -- - deasync@^0.1.9: - version "0.1.24" - resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.24.tgz#6ecc9c6ff9eba64a4f4572ae3c4db77fed09268a" -@@ -12293,11 +12286,6 @@ defined@~1.0.0: - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= - --defu@^6.1.3, defu@^6.1.4: -- version "6.1.4" -- resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.4.tgz#4e0c9cf9ff68fe5f3d7f2765cc1a012dfdcb0479" -- integrity sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg== -- - degenerator@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-5.0.1.tgz#9403bf297c6dad9a1ece409b37db27954f91f2f5" -@@ -12307,6 +12295,11 @@ degenerator@^5.0.0: - escodegen "^2.1.0" - esprima "^4.0.1" - -+delay@^5.0.0: -+ version "5.0.0" -+ resolved "https://registry.yarnpkg.com/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" -+ integrity sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw== -+ - delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" -@@ -12322,11 +12315,6 @@ delimit-stream@0.1.0: - resolved "https://registry.yarnpkg.com/delimit-stream/-/delimit-stream-0.1.0.tgz#9b8319477c0e5f8aeb3ce357ae305fc25ea1cd2b" - integrity sha1-m4MZR3wOX4rrPONXrjBfwl6hzSs= - --denque@^2.1.0: -- version "2.1.0" -- resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" -- integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== -- - depd@2.0.0, depd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" -@@ -12365,17 +12353,12 @@ des.js@^1.0.0: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - --destr@^2.0.1, destr@^2.0.2: -- version "2.0.2" -- resolved "https://registry.yarnpkg.com/destr/-/destr-2.0.2.tgz#8d3c0ee4ec0a76df54bc8b819bca215592a8c218" -- integrity sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg== -- - destroy@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - --detect-browser@5.3.0: -+detect-browser@5.3.0, detect-browser@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/detect-browser/-/detect-browser-5.3.0.tgz#9705ef2bddf46072d0f7265a1fe300e36fe7ceca" - integrity sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w== -@@ -12390,11 +12373,6 @@ detect-indent@^5.0.0: - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= - --detect-libc@^1.0.3: -- version "1.0.3" -- resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" -- integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== -- - detect-libc@^2.0.0, detect-libc@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d" -@@ -12487,9 +12465,9 @@ diffie-hellman@^5.0.0: - randombytes "^2.0.0" - - dijkstrajs@^1.0.1: -- version "1.0.3" -- resolved "https://registry.yarnpkg.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz#4c8dbdea1f0f6478bff94d9c49c784d623e4fc23" -- integrity sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA== -+ version "1.0.2" -+ resolved "https://registry.yarnpkg.com/dijkstrajs/-/dijkstrajs-1.0.2.tgz#2e48c0d3b825462afe75ab4ad5e829c8ece36257" -+ integrity sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg== - - dir-compare@^3.0.0: - version "3.3.0" -@@ -12968,11 +12946,6 @@ entities@^4.2.0, entities@^4.3.0, entities@^4.4.0: - resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" - integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== - --entities@^4.5.0: -- version "4.5.0" -- resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" -- integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== -- - env-paths@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" -@@ -13635,7 +13608,7 @@ estree-walker@^1.0.1: - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" - integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== - --estree-walker@^2.0.1, estree-walker@^2.0.2: -+estree-walker@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" - integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== -@@ -13650,23 +13623,22 @@ etag@~1.8.1: - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - --eth-block-tracker@^7.1.0: -- version "7.1.0" -- resolved "https://registry.yarnpkg.com/eth-block-tracker/-/eth-block-tracker-7.1.0.tgz#dfc16085c6817cc30caabba381deb8d204c1c766" -- integrity sha512-8YdplnuE1IK4xfqpf4iU7oBxnOYAc35934o083G8ao+8WM8QQtt/mVlAY6yIAdY1eMeLqg4Z//PZjJGmWGPMRg== -+eth-block-tracker@6.1.0: -+ version "6.1.0" -+ resolved "https://registry.yarnpkg.com/eth-block-tracker/-/eth-block-tracker-6.1.0.tgz#0481f97bbb88a100b9d45806fe7e37af741cbefc" -+ integrity sha512-K9SY8+/xMBi4M5HHTDdxnpEqEEGjbNpzHFqvxyjMZej8InV/B+CkFRKM6W+uvrFJ7m8Zd1E0qUkseU3vdIDFYQ== - dependencies: -- "@metamask/eth-json-rpc-provider" "^1.0.0" -- "@metamask/safe-event-emitter" "^3.0.0" -- "@metamask/utils" "^5.0.1" -+ "@metamask/safe-event-emitter" "^2.0.0" -+ "@metamask/utils" "^3.0.1" - json-rpc-random-id "^1.0.1" - pify "^3.0.0" - --eth-json-rpc-filters@^6.0.0: -- version "6.0.1" -- resolved "https://registry.yarnpkg.com/eth-json-rpc-filters/-/eth-json-rpc-filters-6.0.1.tgz#0b3e370f017f5c6f58d3e7bd0756d8099ed85c56" -- integrity sha512-ITJTvqoCw6OVMLs7pI8f4gG92n/St6x80ACtHodeS+IXmO0w+t1T5OOzfSt7KLSMLRkVUoexV7tztLgDxg+iig== -+eth-json-rpc-filters@5.1.0: -+ version "5.1.0" -+ resolved "https://registry.yarnpkg.com/eth-json-rpc-filters/-/eth-json-rpc-filters-5.1.0.tgz#f0c2aeaec2a45e2dc6ca1b9843d8e85447821427" -+ integrity sha512-fos+9xmoa1A2Ytsc9eYof17r81BjdJOUcGcgZn4K/tKdCCTb+a8ytEtwlu1op5qsXFDlgGmstTELFrDEc89qEQ== - dependencies: -- "@metamask/safe-event-emitter" "^3.0.0" -+ "@metamask/safe-event-emitter" "^2.0.0" - async-mutex "^0.2.6" - eth-query "^2.1.2" - json-rpc-engine "^6.1.0" -@@ -13680,6 +13652,13 @@ eth-query@^2.1.2: - json-rpc-random-id "^1.0.0" - xtend "^4.0.1" - -+eth-rpc-errors@4.0.2: -+ version "4.0.2" -+ resolved "https://registry.yarnpkg.com/eth-rpc-errors/-/eth-rpc-errors-4.0.2.tgz#11bc164e25237a679061ac05b7da7537b673d3b7" -+ integrity sha512-n+Re6Gu8XGyfFy1it0AwbD1x0MUzspQs0D5UiPs1fFPCr6WAwZM+vbIhXheBFrpgosqN9bs5PqlB4Q61U/QytQ== -+ dependencies: -+ fast-safe-stringify "^2.0.6" -+ - eth-rpc-errors@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz#6ddb6190a4bf360afda82790bb7d9d5e724f423a" -@@ -13822,16 +13801,11 @@ eventemitter3@^3.1.0: - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" - integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== - --eventemitter3@^4.0.0, eventemitter3@^4.0.4: -+eventemitter3@^4.0.0, eventemitter3@^4.0.4, eventemitter3@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - --eventemitter3@^5.0.1: -- version "5.0.1" -- resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" -- integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== -- - events@3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379" -@@ -13923,21 +13897,6 @@ execa@^7.0.0: - signal-exit "^3.0.7" - strip-final-newline "^3.0.0" - --execa@^8.0.1: -- version "8.0.1" -- resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" -- integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== -- dependencies: -- cross-spawn "^7.0.3" -- get-stream "^8.0.1" -- human-signals "^5.0.0" -- is-stream "^3.0.0" -- merge-stream "^2.0.0" -- npm-run-path "^5.1.0" -- onetime "^6.0.0" -- signal-exit "^4.1.0" -- strip-final-newline "^3.0.0" -- - execr@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/execr/-/execr-1.0.1.tgz#79865e89a940f56f72be2dd6656ffffd7f2b7c8b" -@@ -14177,6 +14136,11 @@ extsprintf@1.0.2: - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" - integrity sha1-4QgOBljjALBilJkMxw4VAiNf1VA= - -+eyes@^0.1.8: -+ version "0.1.8" -+ resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" -+ integrity sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ== -+ - fancy-log@^1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" -@@ -14263,15 +14227,20 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - - fast-redact@^3.0.0: -- version "3.3.0" -- resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.3.0.tgz#7c83ce3a7be4898241a46560d51de10f653f7634" -- integrity sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ== -+ version "3.1.2" -+ resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" -+ integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== - - fast-safe-stringify@^2.0.6, fast-safe-stringify@^2.0.7: - version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" - integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== - -+fast-stable-stringify@^1.0.0: -+ version "1.0.0" -+ resolved "https://registry.yarnpkg.com/fast-stable-stringify/-/fast-stable-stringify-1.0.0.tgz#5c5543462b22aeeefd36d05b34e51c78cb86d313" -+ integrity sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag== -+ - fast-text-encoding@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz#ec02ac8e01ab8a319af182dae2681213cfe9ce53" -@@ -15259,11 +15228,6 @@ get-pkg-repo@^1.0.0: - parse-github-repo-url "^1.3.0" - through2 "^2.0.0" - --get-port-please@^3.1.2: -- version "3.1.2" -- resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-3.1.2.tgz#502795e56217128e4183025c89a48c71652f4e49" -- integrity sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ== -- - get-port@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" -@@ -15308,11 +15272,6 @@ get-stream@^6.0.0, get-stream@^6.0.1: - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - --get-stream@^8.0.1: -- version "8.0.1" -- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" -- integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== -- - get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" -@@ -15869,20 +15828,6 @@ gzip-size@^6.0.0: - dependencies: - duplexer "^0.1.2" - --h3@^1.10.0, h3@^1.8.2: -- version "1.10.0" -- resolved "https://registry.yarnpkg.com/h3/-/h3-1.10.0.tgz#55ac36deb6e250ada5ff1940b6324bc6acc4085f" -- integrity sha512-Tw1kcIC+AeimwRmviiObaD5EB430Yt+lTgOxLJxNr96Vd/fGRu04EF7aKfOAcpwKCI+U2JlbxOLhycD86p3Ciw== -- dependencies: -- cookie-es "^1.0.0" -- defu "^6.1.3" -- destr "^2.0.2" -- iron-webcrypto "^1.0.0" -- radix3 "^1.1.0" -- ufo "^1.3.2" -- uncrypto "^0.1.3" -- unenv "^1.8.0" -- - handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" -@@ -16381,11 +16326,6 @@ http-server@^14.1.0, http-server@^14.1.1: - union "~0.5.0" - url-join "^4.0.1" - --http-shutdown@^1.2.2: -- version "1.2.2" -- resolved "https://registry.yarnpkg.com/http-shutdown/-/http-shutdown-1.2.2.tgz#41bc78fc767637c4c95179bc492f312c0ae64c5f" -- integrity sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw== -- - http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" -@@ -16459,11 +16399,6 @@ human-signals@^4.3.0: - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" - integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== - --human-signals@^5.0.0: -- version "5.0.0" -- resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" -- integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== -- - humanize-ms@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" -@@ -16512,11 +16447,6 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== - --idb-keyval@^6.2.1: -- version "6.2.1" -- resolved "https://registry.yarnpkg.com/idb-keyval/-/idb-keyval-6.2.1.tgz#94516d625346d16f56f3b33855da11bfded2db33" -- integrity sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg== -- - identity-obj-proxy@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" -@@ -16839,21 +16769,6 @@ io-ts@1.10.4: - dependencies: - fp-ts "^1.0.0" - --ioredis@^5.3.2: -- version "5.3.2" -- resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-5.3.2.tgz#9139f596f62fc9c72d873353ac5395bcf05709f7" -- integrity sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA== -- dependencies: -- "@ioredis/commands" "^1.1.1" -- cluster-key-slot "^1.1.0" -- debug "^4.3.4" -- denque "^2.1.0" -- lodash.defaults "^4.2.0" -- lodash.isarguments "^3.1.0" -- redis-errors "^1.2.0" -- redis-parser "^3.0.0" -- standard-as-callback "^2.1.0" -- - ip-regex@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.3.0.tgz#687275ab0f57fa76978ff8f4dddc8a23d5990db5" -@@ -17003,11 +16918,6 @@ ipld-raw@^6.0.0: - multicodec "^2.0.0" - multihashing-async "^2.0.0" - --iron-webcrypto@^1.0.0: -- version "1.0.0" -- resolved "https://registry.yarnpkg.com/iron-webcrypto/-/iron-webcrypto-1.0.0.tgz#e3b689c0c61b434a0a4cb82d0aeabbc8b672a867" -- integrity sha512-anOK1Mktt8U1Xi7fCM3RELTuYbnFikQY5VtrDj7kPgpejV7d43tWKhzgioO0zpkazLEL/j/iayRqnJhrGfqUsg== -- - is-absolute@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" -@@ -17214,11 +17124,6 @@ is-docker@^2.0.0, is-docker@^2.1.1: - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - --is-docker@^3.0.0: -- version "3.0.0" -- resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" -- integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== -- - is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" -@@ -17323,13 +17228,6 @@ is-hex-prefixed@1.0.0: - resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" - integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= - --is-inside-container@^1.0.0: -- version "1.0.0" -- resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4" -- integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA== -- dependencies: -- is-docker "^3.0.0" -- - is-interactive@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" -@@ -17598,7 +17496,7 @@ is-typed-array@^1.1.3, is-typed-array@^1.1.7: - foreach "^2.0.5" - has-tostringtag "^1.0.0" - --is-typedarray@~1.0.0: -+is-typedarray@1.0.0, is-typedarray@^1.0.0, is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -@@ -17664,20 +17562,6 @@ is-wsl@^2.2.0: - dependencies: - is-docker "^2.0.0" - --is-wsl@^3.1.0: -- version "3.1.0" -- resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2" -- integrity sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw== -- dependencies: -- is-inside-container "^1.0.0" -- --is64bit@^2.0.0: -- version "2.0.0" -- resolved "https://registry.yarnpkg.com/is64bit/-/is64bit-2.0.0.tgz#198c627cbcb198bbec402251f88e5e1a51236c07" -- integrity sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw== -- dependencies: -- system-architecture "^0.1.0" -- - isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" -@@ -17756,24 +17640,16 @@ isomorphic-textencoder@1.0.1: - dependencies: - fast-text-encoding "^1.0.0" - --isomorphic-unfetch@3.1.0: -- version "3.1.0" -- resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" -- integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== -- dependencies: -- node-fetch "^2.6.1" -- unfetch "^4.2.0" -+isomorphic-ws@5.0.0, isomorphic-ws@^5.0.0: -+ version "5.0.0" -+ resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" -+ integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== - - isomorphic-ws@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" - integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== - --isomorphic-ws@^5.0.0: -- version "5.0.0" -- resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" -- integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== -- - isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -@@ -17971,6 +17847,25 @@ javascript-serialize@^1.6.1: - dom-serialize "^2.2.1" - fnjson "^1.3.0" - -+jayson@^3.4.4: -+ version "3.7.0" -+ resolved "https://registry.yarnpkg.com/jayson/-/jayson-3.7.0.tgz#b735b12d06d348639ae8230d7a1e2916cb078f25" -+ integrity sha512-tfy39KJMrrXJ+mFcMpxwBvFDetS8LAID93+rycFglIQM4kl3uNR3W4lBLE/FFhsoUCEox5Dt2adVpDm/XtebbQ== -+ dependencies: -+ "@types/connect" "^3.4.33" -+ "@types/node" "^12.12.54" -+ "@types/ws" "^7.4.4" -+ JSONStream "^1.3.5" -+ commander "^2.20.3" -+ delay "^5.0.0" -+ es6-promisify "^5.0.0" -+ eyes "^0.1.8" -+ isomorphic-ws "^4.0.1" -+ json-stringify-safe "^5.0.1" -+ lodash "^4.17.20" -+ uuid "^8.3.2" -+ ws "^7.4.5" -+ - jest-circus@^28.1.1: - version "28.1.3" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.3.tgz#d14bd11cf8ee1a03d69902dc47b6bd4634ee00e4" -@@ -18343,11 +18238,6 @@ jest-worker@^29.1.2: - merge-stream "^2.0.0" - supports-color "^8.0.0" - --jiti@^1.21.0: -- version "1.21.0" -- resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" -- integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== -- - jju@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jju/-/jju-1.3.0.tgz#dadd9ef01924bc728b03f2f7979bdbd62f7a2aaa" -@@ -18469,7 +18359,7 @@ json-parse-helpfulerror@^1.0.2: - dependencies: - jju "^1.1.0" - --json-rpc-engine@^6.1.0: -+json-rpc-engine@6.1.0, json-rpc-engine@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz#bf5ff7d029e1c1bf20cb6c0e9f348dcd8be5a393" - integrity sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ== -@@ -18550,11 +18440,6 @@ jsonc-parser@3.2.0: - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" - integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== - --jsonc-parser@^3.2.0: -- version "3.2.1" -- resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" -- integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== -- - jsonfile@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" -@@ -18731,7 +18616,7 @@ keccak@3.0.2, keccak@^3.0.0: - node-gyp-build "^4.2.0" - readable-stream "^3.6.0" - --keccak@^3.0.2: -+keccak@^3.0.1, keccak@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.3.tgz#4bc35ad917be1ef54ff246f904c2bbbf9ac61276" - integrity sha512-JZrLIAJWuZxKbCilMpNz5Vj7Vtb4scDG3dMXLOsbzBmQGyjwE61BbW7bJkfKKCShXiQZt3T6sBgALRtmd+nZaQ== -@@ -18740,15 +18625,6 @@ keccak@^3.0.2: - node-gyp-build "^4.2.0" - readable-stream "^3.6.0" - --keccak@^3.0.3: -- version "3.0.4" -- resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d" -- integrity sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q== -- dependencies: -- node-addon-api "^2.0.0" -- node-gyp-build "^4.2.0" -- readable-stream "^3.6.0" -- - keyv@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" -@@ -19098,29 +18974,6 @@ lint-staged@^13.2.3: - string-argv "^0.3.1" - yaml "^2.2.2" - --listhen@^1.5.5: -- version "1.5.6" -- resolved "https://registry.yarnpkg.com/listhen/-/listhen-1.5.6.tgz#8dc8cdccef225e39c69bcc6f6bd704447b499b51" -- integrity sha512-gTpEJhT5L85L0bFgmu+Boqu5rP4DwDtEb4Exq5gdQUxWRwx4jbzdInZkmyLONo5EwIcQB0k7ZpWlpCDPdL77EQ== -- dependencies: -- "@parcel/watcher" "^2.3.0" -- "@parcel/watcher-wasm" "2.3.0" -- citty "^0.1.5" -- clipboardy "^4.0.0" -- consola "^3.2.3" -- defu "^6.1.4" -- get-port-please "^3.1.2" -- h3 "^1.10.0" -- http-shutdown "^1.2.2" -- jiti "^1.21.0" -- mlly "^1.4.2" -- node-forge "^1.3.1" -- pathe "^1.1.1" -- std-env "^3.7.0" -- ufo "^1.3.2" -- untun "^0.1.3" -- uqr "^0.1.2" -- - listr2@^5.0.3, listr2@^5.0.7: - version "5.0.8" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-5.0.8.tgz#a9379ffeb4bd83a68931a65fb223a11510d6ba23" -@@ -19136,54 +18989,38 @@ listr2@^5.0.3, listr2@^5.0.7: - wrap-ansi "^7.0.0" - - lit-element@^3.3.0: -- version "3.3.3" -- resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-3.3.3.tgz#10bc19702b96ef5416cf7a70177255bfb17b3209" -- integrity sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA== -+ version "3.3.2" -+ resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-3.3.2.tgz#9913bf220b85065f0e5f1bb8878cc44f36b50cfa" -+ integrity sha512-xXAeVWKGr4/njq0rGC9dethMnYCq5hpKYrgQZYTzawt9YQhMiXfD+T1RgrdY3NamOxwq2aXlb0vOI6e29CKgVQ== - dependencies: - "@lit-labs/ssr-dom-shim" "^1.1.0" - "@lit/reactive-element" "^1.3.0" -- lit-html "^2.8.0" -- --lit-element@^4.0.0: -- version "4.0.3" -- resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-4.0.3.tgz#18239840a7c1a6a6e09c6ed3b5cd3db0512ebf15" -- integrity sha512-2vhidmC7gGLfnVx41P8UZpzyS0Fb8wYhS5RCm16cMW3oERO0Khd3EsKwtRpOnttuByI5rURjT2dfoA7NlInCNw== -- dependencies: -- "@lit-labs/ssr-dom-shim" "^1.1.2" -- "@lit/reactive-element" "^2.0.0" -- lit-html "^3.1.0" -- --lit-html@^2.8.0: -- version "2.8.0" -- resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-2.8.0.tgz#96456a4bb4ee717b9a7d2f94562a16509d39bffa" -- integrity sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q== -- dependencies: -- "@types/trusted-types" "^2.0.2" -+ lit-html "^2.7.0" - --lit-html@^3.1.0: -- version "3.1.1" -- resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-3.1.1.tgz#50c2e74a2074f85fc9816676ac11cf0c96f257c3" -- integrity sha512-x/EwfGk2D/f4odSFM40hcGumzqoKv0/SUh6fBO+1Ragez81APrcAMPo1jIrCDd9Sn+Z4CT867HWKViByvkDZUA== -+lit-html@^2.7.0: -+ version "2.7.5" -+ resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-2.7.5.tgz#0c1b9d381abe20c01475ae53ea4b07bf4c923eb8" -+ integrity sha512-YqUzpisJodwKIlbMFCtyrp58oLloKGnnPLMJ1t23cbfIJjg/H9pvLWK4XS69YeubK5HUs1UE4ys9w5dP1zg6IA== - dependencies: - "@types/trusted-types" "^2.0.2" - --lit@2.8.0: -- version "2.8.0" -- resolved "https://registry.yarnpkg.com/lit/-/lit-2.8.0.tgz#4d838ae03059bf9cafa06e5c61d8acc0081e974e" -- integrity sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA== -+lit@2.7.5: -+ version "2.7.5" -+ resolved "https://registry.yarnpkg.com/lit/-/lit-2.7.5.tgz#60bc82990cfad169d42cd786999356dcf79b035f" -+ integrity sha512-i/cH7Ye6nBDUASMnfwcictBnsTN91+aBjXoTHF2xARghXScKxpD4F4WYI+VLXg9lqbMinDfvoI7VnZXjyHgdfQ== - dependencies: - "@lit/reactive-element" "^1.6.0" - lit-element "^3.3.0" -- lit-html "^2.8.0" -+ lit-html "^2.7.0" - --lit@3.1.0: -- version "3.1.0" -- resolved "https://registry.yarnpkg.com/lit/-/lit-3.1.0.tgz#76429b85dc1f5169fed499a0f7e89e2e619010c9" -- integrity sha512-rzo/hmUqX8zmOdamDAeydfjsGXbbdtAFqMhmocnh2j9aDYqbu0fjXygjCa0T99Od9VQ/2itwaGrjZz/ZELVl7w== -+lit@2.7.6: -+ version "2.7.6" -+ resolved "https://registry.yarnpkg.com/lit/-/lit-2.7.6.tgz#810007b876ed43e0c70124de91831921598b1665" -+ integrity sha512-1amFHA7t4VaaDe+vdQejSVBklwtH9svGoG6/dZi9JhxtJBBlqY5D1RV7iLUYY0trCqQc4NfhYYZilZiVHt7Hxg== - dependencies: -- "@lit/reactive-element" "^2.0.0" -- lit-element "^4.0.0" -- lit-html "^3.1.0" -+ "@lit/reactive-element" "^1.6.0" -+ lit-element "^3.3.0" -+ lit-html "^2.7.0" - - load-json-file@^1.0.0: - version "1.1.0" -@@ -19401,11 +19238,6 @@ lodash.debounce@^4.0.8: - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - --lodash.defaults@^4.2.0: -- version "4.2.0" -- resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" -- integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== -- - lodash.defaultsdeep@4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz#512e9bd721d272d94e3d3a63653fa17516741ca6" -@@ -19436,7 +19268,7 @@ lodash.includes@^4.3.0: - resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== - --lodash.isarguments@^3.0.0, lodash.isarguments@^3.1.0: -+lodash.isarguments@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo= -@@ -19677,7 +19509,7 @@ lowercase-keys@^2.0.0: - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" - integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== - --lru-cache@^10.0.0, lru-cache@^10.0.2: -+lru-cache@^10.0.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.1.0.tgz#2098d41c2dc56500e6c88584aa656c84de7d0484" - integrity sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag== -@@ -19752,13 +19584,6 @@ magic-string@^0.25.7: - dependencies: - sourcemap-codec "^1.4.8" - --magic-string@^0.30.5: -- version "0.30.5" -- resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.5.tgz#1994d980bd1c8835dc6e78db7cbd4ae4f24746f9" -- integrity sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA== -- dependencies: -- "@jridgewell/sourcemap-codec" "^1.4.15" -- - make-dir@^1.0.0, make-dir@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" -@@ -20593,11 +20418,6 @@ mime@1.6.0, mime@^1.4.1, mime@^1.6.0: - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - --mime@^3.0.0: -- version "3.0.0" -- resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" -- integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== -- - mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" -@@ -20920,16 +20740,6 @@ mkpath@1.0.0: - resolved "https://registry.yarnpkg.com/mkpath/-/mkpath-1.0.0.tgz#ebb3a977e7af1c683ae6fda12b545a6ba6c5853d" - integrity sha1-67Opd+evHGg65v2hK1Raa6bFhT0= - --mlly@^1.2.0, mlly@^1.4.2: -- version "1.5.0" -- resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.5.0.tgz#8428a4617d54cc083d3009030ac79739a0e5447a" -- integrity sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ== -- dependencies: -- acorn "^8.11.3" -- pathe "^1.1.2" -- pkg-types "^1.0.3" -- ufo "^1.3.2" -- - mnemonist@^0.38.0: - version "0.38.5" - resolved "https://registry.yarnpkg.com/mnemonist/-/mnemonist-0.38.5.tgz#4adc7f4200491237fe0fa689ac0b86539685cade" -@@ -21093,7 +20903,7 @@ move-concurrently@^1.0.1, move-concurrently@~1.0.1: - rimraf "^2.5.4" - run-queue "^1.0.3" - --mri@^1.1.0, mri@^1.2.0: -+mri@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" - integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== -@@ -21324,11 +21134,6 @@ nanoid@^3.3.6: - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" - integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== - --nanoid@^3.3.7: -- version "3.3.7" -- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" -- integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== -- - nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" -@@ -21361,11 +21166,6 @@ napi-macros@~2.0.0: - resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" - integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== - --napi-wasm@^1.1.0: -- version "1.1.0" -- resolved "https://registry.yarnpkg.com/napi-wasm/-/napi-wasm-1.1.0.tgz#bbe617823765ae9c1bc12ff5942370eae7b2ba4e" -- integrity sha512-lHwIAJbmLSjF9VDRm9GoVOy9AGp3aIvkjv+Kvz9h16QR3uSVYH78PNQUnT2U4X53mhlnV2M7wrhibQ3GHicDmg== -- - native-fetch@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/native-fetch/-/native-fetch-3.0.0.tgz#06ccdd70e79e171c365c75117959cf4fe14a09bb" -@@ -21507,11 +21307,6 @@ node-addon-api@^6.1.0: - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-6.1.0.tgz#ac8470034e58e67d0c6f1204a18ae6995d9c0d76" - integrity sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA== - --node-addon-api@^7.0.0: -- version "7.1.0" -- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.0.tgz#71f609369379c08e251c558527a107107b5e0fdb" -- integrity sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g== -- - node-api-version@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/node-api-version/-/node-api-version-0.1.4.tgz#1ed46a485e462d55d66b5aa1fe2821720dedf080" -@@ -21526,11 +21321,6 @@ node-emoji@^1.4.1: - dependencies: - lodash "^4.17.21" - --node-fetch-native@^1.4.0, node-fetch-native@^1.4.1, node-fetch-native@^1.6.1: -- version "1.6.1" -- resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.6.1.tgz#f95c74917d3cebc794cdae0cd2a9c7594aad0cb4" -- integrity sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw== -- - node-fetch-npm@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4" -@@ -21569,7 +21359,7 @@ node-fetch@^2.6.7: - dependencies: - whatwg-url "^5.0.0" - --node-forge@^1, node-forge@^1.3.1: -+node-forge@^1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== -@@ -22419,15 +22209,6 @@ octokit@^3.1.2: - "@octokit/request-error" "^5.0.0" - "@octokit/types" "^12.0.0" - --ofetch@^1.3.3: -- version "1.3.3" -- resolved "https://registry.yarnpkg.com/ofetch/-/ofetch-1.3.3.tgz#588cb806a28e5c66c2c47dd8994f9059a036d8c0" -- integrity sha512-s1ZCMmQWXy4b5K/TW9i/DtiN8Ku+xCiHcjQ6/J/nDdssirrQNOoB165Zu8EqLMA2lln1JUth9a0aW9Ap2ctrUg== -- dependencies: -- destr "^2.0.1" -- node-fetch-native "^1.4.0" -- ufo "^1.3.0" -- - on-exit-leak-free@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-0.2.0.tgz#b39c9e3bf7690d890f4861558b0d7b90a442d209" -@@ -23227,11 +23008,6 @@ path-type@^4.0.0: - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - --pathe@^1.1.0, pathe@^1.1.1, pathe@^1.1.2: -- version "1.1.2" -- resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" -- integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== -- - pathval@1.1.1, pathval@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" -@@ -23377,15 +23153,6 @@ pkg-dir@^3.0.0: - dependencies: - find-up "^3.0.0" - --pkg-types@^1.0.3: -- version "1.0.3" -- resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.0.3.tgz#988b42ab19254c01614d13f4f65a2cfc7880f868" -- integrity sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A== -- dependencies: -- jsonc-parser "^3.2.0" -- mlly "^1.2.0" -- pathe "^1.1.0" -- - pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" -@@ -23421,11 +23188,6 @@ pollock@^0.2.0: - resolved "https://registry.yarnpkg.com/pollock/-/pollock-0.2.1.tgz#01273ae3542511492d07f1c10fa53f149b37c6ad" - integrity sha512-2Xy6LImSXm0ANKv9BKSVuCa6Z4ACbK7oUrl9gtUgqLkekL7n9C0mlWsOGYYuGbCG8xT0x3Q4F31C3ZMyVQjwsg== - --pony-cause@^2.1.10: -- version "2.1.10" -- resolved "https://registry.yarnpkg.com/pony-cause/-/pony-cause-2.1.10.tgz#828457ad6f13be401a075dbf14107a9057945174" -- integrity sha512-3IKLNXclQgkU++2fSi93sQ6BznFuxSLB11HdvZQ6JW/spahf/P1pAHBQEahr20rs0htZW0UDkM1HmA+nZkXKsw== -- - portfinder@^1.0.28: - version "1.0.32" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.32.tgz#2fe1b9e58389712429dc2bea5beb2146146c7f81" -@@ -23819,24 +23581,15 @@ postcss@^8.3.5, postcss@^8.4.14, postcss@^8.4.17, postcss@^8.4.7: - picocolors "^1.0.0" - source-map-js "^1.0.2" - --postcss@^8.4.33: -- version "8.4.33" -- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.33.tgz#1378e859c9f69bf6f638b990a0212f43e2aaa742" -- integrity sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg== -- dependencies: -- nanoid "^3.3.7" -- picocolors "^1.0.0" -- source-map-js "^1.0.2" -- - postinstall-build@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/postinstall-build/-/postinstall-build-2.1.3.tgz#9d1886ab2949619f4c206afbe1aea95debe45c94" - integrity sha1-nRiGqylJYZ9MIGr74a6pXevkXJQ= - --preact@^10.16.0: -- version "10.19.3" -- resolved "https://registry.yarnpkg.com/preact/-/preact-10.19.3.tgz#7a7107ed2598a60676c943709ea3efb8aaafa899" -- integrity sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ== -+preact@^10.12.0, preact@^10.5.9: -+ version "10.13.1" -+ resolved "https://registry.yarnpkg.com/preact/-/preact-10.13.1.tgz#d220bd8771b8fa197680d4917f3cefc5eed88720" -+ integrity sha512-KyoXVDU5OqTpG9LXlB3+y639JAGzl8JSBXLn1J9HTSB3gbKcuInga7bZnXLlxmK94ntTs1EFeZp0lrja2AuBYQ== - - prebuild-install@^7.1.1: - version "7.1.1" -@@ -24247,6 +24000,16 @@ qrcode@1.5.3: - pngjs "^5.0.0" - yargs "^15.3.1" - -+qrcode@^1.5.1: -+ version "1.5.1" -+ resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.5.1.tgz#0103f97317409f7bc91772ef30793a54cd59f0cb" -+ integrity sha512-nS8NJ1Z3md8uTjKtP+SGGhfqmTCs5flU/xR623oI0JX+Wepz9R8UrRVCTBTJm3qGw3rH6jJ6MUHjkDx15cxSSg== -+ dependencies: -+ dijkstrajs "^1.0.1" -+ encode-utf8 "^1.0.3" -+ pngjs "^5.0.0" -+ yargs "^15.3.1" -+ - qs@6.10.3: - version "6.10.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" -@@ -24261,6 +24024,13 @@ qs@6.11.0, qs@^6.4.0, qs@^6.7.0, qs@^6.9.4: - dependencies: - side-channel "^1.0.4" - -+qs@^6.10.3: -+ version "6.11.1" -+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" -+ integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== -+ dependencies: -+ side-channel "^1.0.4" -+ - qs@~6.4.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.1.tgz#2bad97710a5b661c366b378b1e3a44a592ff45e6" -@@ -24281,7 +24051,7 @@ query-string@7.1.3: - split-on-first "^1.0.0" - strict-uri-encode "^2.0.0" - --query-string@^6.13.8: -+query-string@^6.13.5, query-string@^6.13.8: - version "6.14.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" - integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== -@@ -24341,11 +24111,6 @@ r1csfile@0.0.45: - fastfile "0.0.20" - ffjavascript "0.2.57" - --radix3@^1.1.0: -- version "1.1.0" -- resolved "https://registry.yarnpkg.com/radix3/-/radix3-1.1.0.tgz#9745df67a49c522e94a33d0a93cf743f104b6e0d" -- integrity sha512-pNsHDxbGORSvuSScqNJ+3Km6QAVqk8CfsCBIEoDgpqLrkD2f3QM4I7d1ozJJ172OmIcoUcerZaNWqtLkRXTV3A== -- - raf-schd@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/raf-schd/-/raf-schd-4.0.3.tgz#5d6c34ef46f8b2a0e880a8fcdb743efc5bfdbc1a" -@@ -24483,7 +24248,7 @@ react-bootstrap@^1.6.4: - uncontrollable "^7.2.1" - warning "^4.0.3" - --react-dom@>=17, react-dom@^18.2.0: -+react-dom@^18.2.0: - version "18.2.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" - integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== -@@ -24681,7 +24446,7 @@ react-zoom-pan-pinch@^3.1.0: - resolved "https://registry.yarnpkg.com/react-zoom-pan-pinch/-/react-zoom-pan-pinch-3.3.0.tgz#873648438c5244d89fcc2127614046928429cbe0" - integrity sha512-vy1h8aenDzXye+HRqANZaSA8IPHoqOiuDPFBkswoyPUH8uMfsmbeH6gFI4r4BhEJa0xIlcA+FbvhidRWKGUrOg== - --react@>=17, react@^18.2.0: -+react@^18.2.0: - version "18.2.0" - resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" - integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== -@@ -25015,18 +24780,6 @@ redeyed@~2.1.0: - dependencies: - esprima "~4.0.0" - --redis-errors@^1.0.0, redis-errors@^1.2.0: -- version "1.2.0" -- resolved "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz#eb62d2adb15e4eaf4610c04afe1529384250abad" -- integrity sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w== -- --redis-parser@^3.0.0: -- version "3.0.0" -- resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz#b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4" -- integrity sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A== -- dependencies: -- redis-errors "^1.0.0" -- - redux@^4.0.0, redux@^4.0.4: - version "4.1.2" - resolved "https://registry.yarnpkg.com/redux/-/redux-4.1.2.tgz#140f35426d99bb4729af760afcf79eaaac407104" -@@ -25063,7 +24816,7 @@ regenerator-runtime@^0.11.0: - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - --regenerator-runtime@^0.13.7: -+regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.7: - version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" - integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== -@@ -25728,6 +25481,19 @@ rollup@^2.56.2: - optionalDependencies: - fsevents "~2.3.2" - -+rpc-websockets@^7.5.1: -+ version "7.5.1" -+ resolved "https://registry.yarnpkg.com/rpc-websockets/-/rpc-websockets-7.5.1.tgz#e0a05d525a97e7efc31a0617f093a13a2e10c401" -+ integrity sha512-kGFkeTsmd37pHPMaHIgN1LVKXMi0JD782v4Ds9ZKtLlwdTKjn+CxM9A9/gLT2LaOuEcEFGL98h1QWQtlOIdW0w== -+ dependencies: -+ "@babel/runtime" "^7.17.2" -+ eventemitter3 "^4.0.7" -+ uuid "^8.3.2" -+ ws "^8.5.0" -+ optionalDependencies: -+ bufferutil "^4.0.1" -+ utf-8-validate "^5.0.2" -+ - rss-parser@^3.12.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/rss-parser/-/rss-parser-3.12.0.tgz#b8888699ea46304a74363fbd8144671b2997984c" -@@ -25774,7 +25540,7 @@ rustbn.js@~0.2.0: - resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" - integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== - --rxjs@^6.4.0, rxjs@^6.5.4: -+rxjs@^6.4.0, rxjs@^6.5.4, rxjs@^6.6.3: - version "6.6.7" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" - integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== -@@ -25825,6 +25591,11 @@ safe-identifier@^0.4.2: - resolved "https://registry.yarnpkg.com/safe-identifier/-/safe-identifier-0.4.2.tgz#cf6bfca31c2897c588092d1750d30ef501d59fcb" - integrity sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w== - -+safe-json-utils@^1.1.1: -+ version "1.1.1" -+ resolved "https://registry.yarnpkg.com/safe-json-utils/-/safe-json-utils-1.1.1.tgz#0e883874467d95ab914c3f511096b89bfb3e63b1" -+ integrity sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ== -+ - safe-regex-test@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" -@@ -25982,6 +25753,11 @@ selfsigned@^2.1.1: - dependencies: - node-forge "^1" - -+semiver@^1.1.0: -+ version "1.1.0" -+ resolved "https://registry.yarnpkg.com/semiver/-/semiver-1.1.0.tgz#9c97fb02c21c7ce4fcf1b73e2c7a24324bdddd5f" -+ integrity sha512-QNI2ChmuioGC1/xjyYwyZYADILWyW6AmS1UH6gDj/SFUUUS4MBAWs/7mxnkRPc/F4iHezDP+O8t0dO8WHiEOdg== -+ - semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" -@@ -26032,14 +25808,14 @@ semver@^7.1.3, semver@^7.2.1, semver@^7.3.2: - dependencies: - lru-cache "^6.0.0" - --semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.4.0: -+semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.4.0: - version "7.5.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.2.tgz#5b851e66d1be07c1cdaf37dfc856f543325a2beb" - integrity sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ== - dependencies: - lru-cache "^6.0.0" - --semver@^7.3.8, semver@^7.5.4: -+semver@^7.5.4: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== -@@ -26296,11 +26072,6 @@ signal-exit@^3.0.7: - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - --signal-exit@^4.1.0: -- version "4.1.0" -- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" -- integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== -- - signale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/signale/-/signale-1.4.0.tgz#c4be58302fb0262ac00fc3d886a7c113759042f1" -@@ -26806,9 +26577,9 @@ split2@^3.0.0: - readable-stream "^3.0.0" - - split2@^4.0.0: -- version "4.2.0" -- resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" -- integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== -+ version "4.1.0" -+ resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" -+ integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== - - split@1.0.0: - version "1.0.0" -@@ -26898,11 +26669,6 @@ stacktrace-parser@^0.1.10: - dependencies: - type-fest "^0.7.1" - --standard-as-callback@^2.1.0: -- version "2.1.0" -- resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.1.0.tgz#8953fc05359868a77b5b9739a665c5977bb7df45" -- integrity sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A== -- - state-local@^1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/state-local/-/state-local-1.0.7.tgz#da50211d07f05748d53009bee46307a37db386d5" -@@ -26933,11 +26699,6 @@ statuses@2.0.1: - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - --std-env@^3.7.0: -- version "3.7.0" -- resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" -- integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== -- - stream-browserify@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" -@@ -27449,6 +27210,11 @@ sumchecker@^3.0.1: - dependencies: - debug "^4.1.0" - -+superstruct@^0.14.2: -+ version "0.14.2" -+ resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-0.14.2.tgz#0dbcdf3d83676588828f1cf5ed35cda02f59025b" -+ integrity sha512-nPewA6m9mR3d6k7WkZ8N8zpTWfenFH3q9pA2PkuiZxINr9DKB2+40wEQf0ixn8VaGuJ78AB6iWOtStI+/4FKZQ== -+ - superstruct@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-1.0.3.tgz#de626a5b49c6641ff4d37da3c7598e7a87697046" -@@ -27561,11 +27327,6 @@ syntax-error@^1.1.1: - dependencies: - acorn-node "^1.2.0" - --system-architecture@^0.1.0: -- version "0.1.0" -- resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" -- integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA== -- - tap-out@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tap-out/-/tap-out-2.1.0.tgz#c093079a915036de8b835bfa3297f14458b15358" -@@ -27766,6 +27527,11 @@ test-exclude@^6.0.0: - glob "^7.1.4" - minimatch "^3.0.4" - -+text-encoding-utf-8@^1.0.2: -+ version "1.0.2" -+ resolved "https://registry.yarnpkg.com/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz#585b62197b0ae437e3c7b5d0af27ac1021e10d13" -+ integrity sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg== -+ - text-extensions@^1.0.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" -@@ -28191,7 +27957,7 @@ tslib@2.4.0, tslib@^2.4.0: - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" - integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== - --tslib@^2.0.0: -+tslib@^2.0.0, tslib@^2.3.1: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" - integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== -@@ -28211,11 +27977,6 @@ tslib@^2.1.0: - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.2.tgz#1b6f07185c881557b0ffa84b111a0106989e8338" - integrity sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA== - --tslib@^2.3.1: -- version "2.6.2" -- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" -- integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -- - tslint@~6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-6.0.0.tgz#1c0148beac4779924216302f192cdaa153618310" -@@ -28402,6 +28163,13 @@ typed-assert@^1.0.8: - resolved "https://registry.yarnpkg.com/typed-assert/-/typed-assert-1.0.9.tgz#8af9d4f93432c4970ec717e3006f33f135b06213" - integrity sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg== - -+typedarray-to-buffer@3.1.5: -+ version "3.1.5" -+ resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" -+ integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== -+ dependencies: -+ is-typedarray "^1.0.0" -+ - typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -@@ -28417,11 +28185,6 @@ ua-parser-js@^1.0.35: - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.37.tgz#b5dc7b163a5c1f0c510b08446aed4da92c46373f" - integrity sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ== - --ufo@^1.3.0, ufo@^1.3.1, ufo@^1.3.2: -- version "1.3.2" -- resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.3.2.tgz#c7d719d0628a1c80c006d2240e0d169f6e3c0496" -- integrity sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA== -- - uglify-js@^2.8.16: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" -@@ -28534,11 +28297,6 @@ uncontrollable@^7.2.1: - invariant "^2.2.4" - react-lifecycles-compat "^3.0.4" - --uncrypto@^0.1.3: -- version "0.1.3" -- resolved "https://registry.yarnpkg.com/uncrypto/-/uncrypto-0.1.3.tgz#e1288d609226f2d02d8d69ee861fa20d8348ef2b" -- integrity sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q== -- - undeclared-identifiers@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz#9254c1d37bdac0ac2b52de4b6722792d2a91e30f" -@@ -28593,22 +28351,6 @@ undici@^5.14.0: - dependencies: - "@fastify/busboy" "^2.0.0" - --unenv@^1.8.0: -- version "1.9.0" -- resolved "https://registry.yarnpkg.com/unenv/-/unenv-1.9.0.tgz#469502ae85be1bd3a6aa60f810972b1a904ca312" -- integrity sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g== -- dependencies: -- consola "^3.2.3" -- defu "^6.1.3" -- mime "^3.0.0" -- node-fetch-native "^1.6.1" -- pathe "^1.1.1" -- --unfetch@^4.2.0: -- version "4.2.0" -- resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" -- integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== -- - unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" -@@ -28798,32 +28540,6 @@ unset-value@^1.0.0: - has-value "^0.3.1" - isobject "^3.0.0" - --unstorage@^1.9.0: -- version "1.10.1" -- resolved "https://registry.yarnpkg.com/unstorage/-/unstorage-1.10.1.tgz#bf8cc00a406e40a6293e893da9807057d95875b0" -- integrity sha512-rWQvLRfZNBpF+x8D3/gda5nUCQL2PgXy2jNG4U7/Rc9BGEv9+CAJd0YyGCROUBKs9v49Hg8huw3aih5Bf5TAVw== -- dependencies: -- anymatch "^3.1.3" -- chokidar "^3.5.3" -- destr "^2.0.2" -- h3 "^1.8.2" -- ioredis "^5.3.2" -- listhen "^1.5.5" -- lru-cache "^10.0.2" -- mri "^1.2.0" -- node-fetch-native "^1.4.1" -- ofetch "^1.3.3" -- ufo "^1.3.1" -- --untun@^0.1.3: -- version "0.1.3" -- resolved "https://registry.yarnpkg.com/untun/-/untun-0.1.3.tgz#5d10dee37a3a5737ff03d158be877dae0a0e58a6" -- integrity sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ== -- dependencies: -- citty "^0.1.5" -- consola "^3.2.3" -- pathe "^1.1.1" -- - unzip-response@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" -@@ -28875,11 +28591,6 @@ upper-case@^2.0.2: - dependencies: - tslib "^2.0.3" - --uqr@^0.1.2: -- version "0.1.2" -- resolved "https://registry.yarnpkg.com/uqr/-/uqr-0.1.2.tgz#5c6cd5dcff9581f9bb35b982cb89e2c483a41d7d" -- integrity sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA== -- - uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" -@@ -28941,7 +28652,7 @@ use-memo-one@^1.1.1: - resolved "https://registry.yarnpkg.com/use-memo-one/-/use-memo-one-1.1.2.tgz#0c8203a329f76e040047a35a1197defe342fab20" - integrity sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ== - --use-sync-external-store@1.2.0: -+use-sync-external-store@1.2.0, use-sync-external-store@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" - integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== -@@ -28959,7 +28670,7 @@ username@^5.1.0: - execa "^1.0.0" - mem "^4.3.0" - --utf-8-validate@5.0.7: -+utf-8-validate@5.0.7, utf-8-validate@^5.0.2: - version "5.0.7" - resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.7.tgz#c15a19a6af1f7ad9ec7ddc425747ca28c3644922" - integrity sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q== -@@ -29021,7 +28732,7 @@ util@^0.12.3: - safe-buffer "^5.1.2" - which-typed-array "^1.1.2" - --util@^0.12.5, util@~0.12.0: -+util@^0.12.4, util@^0.12.5, util@~0.12.0: - version "0.12.5" - resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" - integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== -@@ -29122,10 +28833,18 @@ validate-npm-package-name@^3.0.0, validate-npm-package-name@~3.0.0: - dependencies: - builtins "^1.0.3" - --valtio@1.11.2: -- version "1.11.2" -- resolved "https://registry.yarnpkg.com/valtio/-/valtio-1.11.2.tgz#b8049c02dfe65620635d23ebae9121a741bb6530" -- integrity sha512-1XfIxnUXzyswPAPXo1P3Pdx2mq/pIqZICkWN60Hby0d9Iqb+MEIpqgYVlbflvHdrp2YR/q3jyKWRPJJ100yxaw== -+valtio@1.10.6: -+ version "1.10.6" -+ resolved "https://registry.yarnpkg.com/valtio/-/valtio-1.10.6.tgz#80ed00198b949939863a0fa56ae687abb417fc4f" -+ integrity sha512-SxN1bHUmdhW6V8qsQTpCgJEwp7uHbntuH0S9cdLQtiohuevwBksbpXjwj5uDMA7bLwg1WKyq9sEpZrx3TIMrkA== -+ dependencies: -+ proxy-compare "2.5.1" -+ use-sync-external-store "1.2.0" -+ -+valtio@1.11.0: -+ version "1.11.0" -+ resolved "https://registry.yarnpkg.com/valtio/-/valtio-1.11.0.tgz#c029dcd17a0f99d2fbec933721fe64cfd32a31ed" -+ integrity sha512-65Yd0yU5qs86b5lN1eu/nzcTgQ9/6YnD6iO+DDaDbQLn1Zv2w12Gwk43WkPlUBxk5wL/6cD5YMFf7kj6HZ1Kpg== - dependencies: - proxy-compare "2.5.1" - use-sync-external-store "1.2.0" -@@ -29175,6 +28894,37 @@ vfile@^5.0.0: - unist-util-stringify-position "^3.0.0" - vfile-message "^3.0.0" - -+viem@^1.0.0: -+ version "1.2.12" -+ resolved "https://registry.yarnpkg.com/viem/-/viem-1.2.12.tgz#0342f52d05968bd1c2af5db0b9bc569926ae9151" -+ integrity sha512-TMhvqT2VaCaJyBfuNDyL1h8xPFyPDHeX6Qab66TjWscnNcTwkW0gojO4Uh+A4RuPzFxIlWSW+b5SjS8SJHlHpg== -+ dependencies: -+ "@adraffy/ens-normalize" "1.9.0" -+ "@noble/curves" "1.0.0" -+ "@noble/hashes" "1.3.0" -+ "@scure/bip32" "1.3.0" -+ "@scure/bip39" "1.2.0" -+ "@wagmi/chains" "1.2.0" -+ abitype "0.8.11" -+ isomorphic-ws "5.0.0" -+ ws "8.12.0" -+ -+viem@^1.6.0: -+ version "1.6.0" -+ resolved "https://registry.yarnpkg.com/viem/-/viem-1.6.0.tgz#8befa678c3ac79b9558dfd1708130b2ecb1994f4" -+ integrity sha512-ae9Twkd0q2Qlj4yYpWjb4DzYAhKY0ibEpRH8FJaTywZXNpTjFidSdBaT0CVn1BaH7O7cnX4/O47zvDUMGJD1AA== -+ dependencies: -+ "@adraffy/ens-normalize" "1.9.0" -+ "@noble/curves" "1.1.0" -+ "@noble/hashes" "1.3.0" -+ "@scure/bip32" "1.3.0" -+ "@scure/bip39" "1.2.0" -+ "@types/ws" "^8.5.4" -+ "@wagmi/chains" "1.6.0" -+ abitype "0.9.3" -+ isomorphic-ws "5.0.0" -+ ws "8.12.0" -+ - vinyl-fs@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" -@@ -29233,22 +28983,23 @@ void-elements@^2.0.0: - resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" - integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= - --vue@>=3: -- version "3.4.15" -- resolved "https://registry.yarnpkg.com/vue/-/vue-3.4.15.tgz#91f979844ffca9239dff622ba4c79c5d5524b88c" -- integrity sha512-jC0GH4KkWLWJOEQjOpkqU1bQsBwf4R1rsFtw5GQJbjHVKWDzO6P0nWWBTmjp1xSemAioDFj1jdaK1qa3DnMQoQ== -- dependencies: -- "@vue/compiler-dom" "3.4.15" -- "@vue/compiler-sfc" "3.4.15" -- "@vue/runtime-dom" "3.4.15" -- "@vue/server-renderer" "3.4.15" -- "@vue/shared" "3.4.15" -- - w3c-blob@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/w3c-blob/-/w3c-blob-0.0.1.tgz#b0cd352a1a50f515563420ffd5861f950f1d85b8" - integrity sha1-sM01KhpQ9RVWNCD/1YYflQ8dhbg= - -+wagmi@^1.3.10: -+ version "1.3.10" -+ resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-1.3.10.tgz#100aeaecf7a030e9e91118d366a734ec30c56551" -+ integrity sha512-MMGJcnxOmeUZWDmzUxgRGcB1cqxbJoSFSa+pNY4vBCWMz0n4ptpE5F8FKISLCx+BGoDwsaz2ldcMALcdJZ+29w== -+ dependencies: -+ "@tanstack/query-sync-storage-persister" "^4.27.1" -+ "@tanstack/react-query" "^4.28.0" -+ "@tanstack/react-query-persist-client" "^4.28.0" -+ "@wagmi/core" "1.3.9" -+ abitype "0.8.7" -+ use-sync-external-store "^1.2.0" -+ - walker@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" -@@ -30045,7 +29796,12 @@ ws@7.4.6: - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" - integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== - --ws@8.13.0, ws@^8.8.1: -+ws@8.12.0: -+ version "8.12.0" -+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" -+ integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== -+ -+ws@8.13.0, ws@^8.5.0, ws@^8.8.1: - version "8.13.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" - integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== -@@ -30073,11 +29829,16 @@ ws@^7.3.0, ws@^7.5.0: - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" - integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== - --ws@^7.3.1, ws@^7.4.6, ws@^7.5.1: -+ws@^7.3.1, ws@^7.4.5, ws@^7.4.6, ws@^7.5.1: - version "7.5.9" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - -+ws@^8.13.0: -+ version "8.16.0" -+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.16.0.tgz#d1cd774f36fbc07165066a60e40323eab6446fd4" -+ integrity sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ== -+ - ws@^8.4.2: - version "8.9.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e" -@@ -30407,11 +30168,18 @@ yocto-queue@^0.1.0: - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - --zod@3.22.4, zod@^3.21.4: -+zod@^3.21.4: - version "3.22.4" - resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.4.tgz#f31c3a9386f61b1f228af56faa9255e845cf3fff" - integrity sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg== - -+zustand@^4.3.1: -+ version "4.3.6" -+ resolved "https://registry.yarnpkg.com/zustand/-/zustand-4.3.6.tgz#ce7804eb75361af0461a2d0536b65461ec5de86f" -+ integrity sha512-6J5zDxjxLE+yukC2XZWf/IyWVKnXT9b9HUv09VJ/bwGCpKNcaTqp7Ws28Xr8jnbvnZcdRaidztAPsXFBIqufiw== -+ dependencies: -+ use-sync-external-store "1.2.0" -+ - zwitch@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" diff --git a/libs/remix-ui/renderer/src/lib/renderer.tsx b/libs/remix-ui/renderer/src/lib/renderer.tsx index 433c91f7ae..b580995d01 100644 --- a/libs/remix-ui/renderer/src/lib/renderer.tsx +++ b/libs/remix-ui/renderer/src/lib/renderer.tsx @@ -101,7 +101,20 @@ export const Renderer = ({message, opt = {}, plugin}: RendererProps) => { - { askGtp() }}>ASK GPT + + AI + + { askGtp() }} + style={{borderColor: "var(--ai)"}} + > + ASK GPT + +
    )} diff --git a/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx b/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx index ff41ef2cbc..aeaa5f8b22 100644 --- a/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx +++ b/libs/remix-ui/settings/src/lib/remix-ui-settings.tsx @@ -4,6 +4,12 @@ import React, {useState, useRef, useReducer, useEffect, useCallback} from 'react import {AppModal, AlertModal, ModalTypes} from '@remix-ui/app' import {labels, textDark, textSecondary} from './constants' +enum CONSENT { + GIVEN = 0, + NOT_GIVEN, + NOT_ASKED +} + import './remix-ui-settings.css' import { generateContractMetadat, @@ -56,6 +62,7 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { const [ipfsProjectSecret, setipfsProjectSecret] = useState('') const copilotDownload = useRef(null) + let consentGivenForAI = CONSENT.NOT_ASKED const intl = useIntl() const initValue = () => { const metadataConfig = props.config.get('settings/generate-contract-metadata') @@ -72,7 +79,7 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { } useEffect(() => initValue(), [resetState, props.config]) useEffect(() => initValue(), []) - + useEffect(() => { const token = props.config.get('settings/' + labels['gist'].key) if (token) { @@ -120,8 +127,17 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { useEffect(() => { if (props.useMatomoAnalytics !== null) useMatomoAnalytics(props.config, props.useMatomoAnalytics, dispatch) - }, [props.useMatomoAnalytics]) + }, [props.useMatomoAnalytics]) + useEffect(() => { + console.log("useEffect on useCopilot") + if (props.useCopilot !== null) copilotActivate(props.config, props.useCopilot, dispatch) + if (props.useCopilot) { + onchangeCopilotActivate() + } + console.log("useEffect on useCopilot finish") + }, [props.useCopilot]) + const onchangeGenerateContractMetadata = (event) => { generateContractMetadat(props.config, event.target.checked, dispatch) } @@ -130,9 +146,10 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { textWrapEventAction(props.config, props.editor, event.target.checked, dispatch) } - const onchangeCopilotActivate = async (event) => { - if (!event.target.checked) { - copilotActivate(props.config, event.target.checked, dispatch) + const onchangeCopilotActivate = () => { + console.log("onchangeCopilotActivate ", props.useCopilot) + if (!props.useCopilot) { + copilotActivate(props.config, props.useCopilot, dispatch) props.plugin.call('copilot-suggestion', 'uninstall') return } @@ -144,41 +161,54 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { const dot = loaded.match(/(.*)\./g) copilotDownload.current.innerText = dot ? dot[0].replace('.', '') : loaded }) + const startCopilot = async () => { + await props.plugin.call('copilot-suggestion', 'init') + props.plugin.off('copilot-suggestion', 'loading') + if (await props.plugin.call('copilot-suggestion', 'status')) { + copilotActivate(props.config, true, dispatch) + } else { + props.plugin.call('copilot-suggestion', 'uninstall') + copilotActivate(props.config, false, dispatch) + } + } const modalActivate: AppModal = { id: 'loadcopilotActivate', title: 'Download Solidity copilot', modalType: ModalTypes.default, - okLabel: 'Close', + okLabel: 'Hide', + cancelLabel: 'Cancel', message, okFn: async() => { - props.plugin.off('copilot-suggestion', 'loading') - if (await props.plugin.call('copilot-suggestion', 'status')) { - copilotActivate(props.config, true, dispatch) - } else { - props.plugin.call('copilot-suggestion', 'uninstall') - copilotActivate(props.config, false, dispatch) - } + consentGivenForAI = CONSENT.GIVEN + startCopilot() }, hideFn: async () => { + consentGivenForAI = CONSENT.NOT_GIVEN props.plugin.off('copilot-suggestion', 'loading') - if (await props.plugin.call('copilot-suggestion', 'status')) { - copilotActivate(props.config, true, dispatch) - } else { - props.plugin.call('copilot-suggestion', 'uninstall') - copilotActivate(props.config, false, dispatch) - } + // if (await props.plugin.call('copilot-suggestion', 'status')) { + // copilotActivate(props.config, true, dispatch) + // } else { + // props.plugin.call('copilot-suggestion', 'uninstall') + // copilotActivate(props.config, false, dispatch) + // } } } + + if (consentGivenForAI === CONSENT.NOT_ASKED) { + console.log("CONSENT.NOT_ASKED modal") + props.plugin.call('notification', 'modal', modalActivate) + } else if (consentGivenForAI === CONSENT.GIVEN) { + startCopilot() + } else { + // NOT_GIVEN + } - if (await props.plugin.call('copilot-suggestion', 'status')) { + if (props.plugin.call('copilot-suggestion', 'status')) { copilotActivate(props.config, true, dispatch) } else { props.plugin.call('copilot-suggestion', 'uninstall') copilotActivate(props.config, false, dispatch) } - - props.plugin.call('copilot-suggestion', 'init') - props.plugin.call('notification', 'modal', modalActivate) } const onchangeCopilotMaxNewToken = (event) => { @@ -456,7 +486,7 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { copilotTemperatureValue = 0.5 } - if (isCopilotActivated) props.plugin.call('copilot-suggestion', 'init') + //if (isCopilotActivated) props.plugin.call('copilot-suggestion', 'init') const copilotSettings = () => (
    @@ -464,19 +494,6 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => { -
    -
    -
    -
    - - -
    -
    -
    -
    -
    diff --git a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.css b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.css index e769523822..8ecd601f66 100644 --- a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.css +++ b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.css @@ -56,3 +56,26 @@ -ms-overflow-style: none; /* IE and Edge */ scrollbar-width: none; /* Firefox */ } + +.loadingExplanation { + animation: fancy-spin 2000ms; + animation-iteration-count: infinite; +} + +@keyframes fancy-spin { + 0% { + transform: scale(1); + } + 25% { + transform: scale(1); + } + 50% { + transform: scale(1.3); + } + 75% { + transform: scale(1.3); + } + 100% { + transform: scale(1); + } +} \ No newline at end of file diff --git a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx index d09166ce23..be957b5d47 100644 --- a/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx +++ b/libs/remix-ui/tabs/src/lib/remix-ui-tabs.tsx @@ -60,6 +60,7 @@ const tabsReducer = (state: ITabsState, action: ITabsAction) => { export const TabsUI = (props: TabsUIProps) => { const [tabsState, dispatch] = useReducer(tabsReducer, initialTabsState) const currentIndexRef = useRef(-1) + const [explaining, setExplaining] = useState(false) const tabsRef = useRef({}) const tabsElement = useRef(null) const [ai_switch, setAI_switch] = useState(false) @@ -167,104 +168,122 @@ export const TabsUI = (props: TabsUIProps) => {
    - - + + + {tabsState.currentExt === 'sol'? ( + + ) : ( + + )} + + } > - - {tabsState.currentExt === 'sol'? ( - - ) : ( - - )} - - } + - + + + { tabsState.currentExt === 'sol'? ( + !ai_switch ? ( + + ) : () + ) : ( + + )} + + } > - - - - } + + + + AI + + + }> props.onZoomOut()}> diff --git a/libs/remix-ui/terminal/src/lib/reducers/terminalReducer.ts b/libs/remix-ui/terminal/src/lib/reducers/terminalReducer.ts index c451abfbb8..760138fcd9 100644 --- a/libs/remix-ui/terminal/src/lib/reducers/terminalReducer.ts +++ b/libs/remix-ui/terminal/src/lib/reducers/terminalReducer.ts @@ -159,7 +159,7 @@ export const registerScriptRunnerReducer = (state, action) => { case TYPEWRITERWARNING: return { ...state, - journalBlocks: initialState.journalBlocks.push({ message: action.payload.message, typewriter: true, style: 'text-warning', provider: action.payload.provider }) + journalBlocks: initialState.journalBlocks.push({ message: action.payload.message, typewriter: true, style: 'text-ai', provider: action.payload.provider }) } case TYPEWRITERSUCCESS: return { diff --git a/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx b/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx index 62b37b4473..9197df00b5 100644 --- a/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx +++ b/libs/remix-ui/terminal/src/lib/remix-ui-terminal.tsx @@ -45,7 +45,6 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { const [cmdHistory, cmdHistoryDispatch] = useReducer(addCommandHistoryReducer, initialState) const [, scriptRunnerDispatch] = useReducer(registerScriptRunnerReducer, initialState) const [toaster, setToaster] = useState(false) - const [aiLoading, setAILoading] = useState(false) const [toastProvider, setToastProvider] = useState({ show: false, fileName: '', @@ -105,14 +104,6 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { setIsVM(provider.startsWith('vm-')) }) - props.plugin.on('solcoder', 'aiInfering', () => { - setAILoading(true) - }) - - props.plugin.on('solcoder', 'aiInferingDone', () => { - setAILoading(false) - }) - props.onReady({ logHtml: (html) => { scriptRunnerDispatch({ @@ -675,11 +666,6 @@ export const RemixUiTerminal = (props: RemixUiTerminalProps) => { data-id="terminalInputSearchTerminal" />
    - {aiLoading &&
    - - AI Running ... -
    } -