diff --git a/libs/remix-ui/editor/src/lib/providers/codeActionProvider.ts b/libs/remix-ui/editor/src/lib/providers/codeActionProvider.ts index fb6f339aa61..ce4549a748a 100644 --- a/libs/remix-ui/editor/src/lib/providers/codeActionProvider.ts +++ b/libs/remix-ui/editor/src/lib/providers/codeActionProvider.ts @@ -60,7 +60,17 @@ export class RemixCodeActionProvider implements monaco.languages.CodeActionProvi } else { for (const fix of fixes) { if (fix && nodeAtPosition && fix.nodeType !== nodeAtPosition.nodeType) continue - else + if (fix.id === 2) { + // To add specific pragma based on error + const startIndex = error.message.indexOf('pragma') + const endIndex = error.message.indexOf(';') + const msg = error.message.substring(startIndex, endIndex + 1) + this.addQuickFix(actions, error, model.uri, { + title: fix.title, + range: fix.range, + text: msg + }) + } else this.addQuickFix(actions, error, model.uri, { title: fix.title, range: fix.range || error, diff --git a/libs/remix-ui/editor/src/lib/providers/quickfixes.ts b/libs/remix-ui/editor/src/lib/providers/quickfixes.ts index 8897dc856d1..2edb137fd6b 100644 --- a/libs/remix-ui/editor/src/lib/providers/quickfixes.ts +++ b/libs/remix-ui/editor/src/lib/providers/quickfixes.ts @@ -55,7 +55,6 @@ export default { { id: 2, title: 'Add Solidity pragma', - message: 'pragma solidity ^0.*.*;', nodeType: 'PragmaDirective', range: { startLineNumber: 2,