From 3c0527bd3e67460e30827070fa6d3f822bb92b71 Mon Sep 17 00:00:00 2001 From: Kate Johnson Date: Thu, 16 May 2024 13:16:59 -0400 Subject: [PATCH 1/5] feat: added optional 'displayConfirmation' to AccountCreatedEventStruct --- .idea/.gitignore | 8 ++ .idea/checkstyle-idea.xml | 13 ++ .idea/codeStyles/Project.xml | 7 + .idea/codeStyles/codeStyleConfig.xml | 5 + .idea/cody_history.xml | 19 +++ .idea/discord.xml | 7 + .idea/icon.svg | 1 + .idea/inspectionProfiles/Project_Default.xml | 6 + .idea/intellij-javadocs-4.0.1.xml | 141 +++++++++++++++++++ .idea/keyring-api.iml | 9 ++ .idea/misc.xml | 6 + .idea/modules.xml | 8 ++ .idea/vcs.xml | 6 + src/internal/events.test.ts | 18 +++ src/internal/events.ts | 6 +- 15 files changed, 259 insertions(+), 1 deletion(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/checkstyle-idea.xml create mode 100644 .idea/codeStyles/Project.xml create mode 100644 .idea/codeStyles/codeStyleConfig.xml create mode 100644 .idea/cody_history.xml create mode 100644 .idea/discord.xml create mode 100644 .idea/icon.svg create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/intellij-javadocs-4.0.1.xml create mode 100644 .idea/keyring-api.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 000000000..13566b81b --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/checkstyle-idea.xml b/.idea/checkstyle-idea.xml new file mode 100644 index 000000000..37000cf57 --- /dev/null +++ b/.idea/checkstyle-idea.xml @@ -0,0 +1,13 @@ + + + + 10.12.3 + JavaOnly + + + \ No newline at end of file diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 000000000..919ce1f1f --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 000000000..b9d18bf59 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/cody_history.xml b/.idea/cody_history.xml new file mode 100644 index 000000000..954f4355c --- /dev/null +++ b/.idea/cody_history.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/discord.xml b/.idea/discord.xml new file mode 100644 index 000000000..d8e956166 --- /dev/null +++ b/.idea/discord.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/.idea/icon.svg b/.idea/icon.svg new file mode 100644 index 000000000..c307de803 --- /dev/null +++ b/.idea/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 000000000..03d9549ea --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/intellij-javadocs-4.0.1.xml b/.idea/intellij-javadocs-4.0.1.xml new file mode 100644 index 000000000..d6c33106c --- /dev/null +++ b/.idea/intellij-javadocs-4.0.1.xml @@ -0,0 +1,141 @@ + + + + + UPDATE + false + true + + FIELD + METHOD + TYPE + + + PUBLIC + PROTECTED + DEFAULT + + + + + + ^.*(public|protected|private)*.+interface\s+\w+.* + /**\n + * The interface ${name}.\n +<#if element.typeParameters?has_content> * \n +</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n +</#list> */ + + + ^.*(public|protected|private)*.+enum\s+\w+.* + /**\n + * The enum ${name}.\n + */ + + + ^.*(public|protected|private)*.+class\s+\w+.* + /**\n + * The type ${name}.\n +<#if element.typeParameters?has_content> * \n +</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n +</#list> */ + + + .+ + /**\n + * The type ${name}.\n + */ + + + + + .+ + /**\n + * Instantiates a new ${name}.\n +<#if element.parameterList.parameters?has_content> *\n +</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n +</#list><#if element.throwsList.referenceElements?has_content> *\n +</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n +</#list> */ + + + + + ^.*(public|protected|private)*\s*.*(\w(\s*<.+>)*)+\s+get\w+\s*\(.*\).+ + /**\n + * Gets ${partName}.\n +<#if element.typeParameters?has_content> * \n +</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n +</#list><#if element.parameterList.parameters?has_content> *\n +</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n +</#list><#if isNotVoid> *\n + * @return the ${partName}\n +</#if><#if element.throwsList.referenceElements?has_content> *\n +</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n +</#list> */ + + + ^.*(public|protected|private)*\s*.*(void|\w(\s*<.+>)*)+\s+set\w+\s*\(.*\).+ + /**\n + * Sets ${partName}.\n +<#if element.typeParameters?has_content> * \n +</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n +</#list><#if element.parameterList.parameters?has_content> *\n +</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n +</#list><#if isNotVoid> *\n + * @return the ${partName}\n +</#if><#if element.throwsList.referenceElements?has_content> *\n +</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n +</#list> */ + + + ^.*((public\s+static)|(static\s+public))\s+void\s+main\s*\(\s*String\s*(\[\s*\]|\.\.\.)\s+\w+\s*\).+ + /**\n + * The entry point of application.\n + + <#if element.parameterList.parameters?has_content> *\n +</#if> * @param ${element.parameterList.parameters[0].name} the input arguments\n +<#if element.throwsList.referenceElements?has_content> *\n +</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n +</#list> */ + + + .+ + /**\n + * ${name}<#if isNotVoid> ${return}</#if>.\n +<#if element.typeParameters?has_content> * \n +</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n +</#list><#if element.parameterList.parameters?has_content> *\n +</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n +</#list><#if isNotVoid> *\n + * @return the ${return}\n +</#if><#if element.throwsList.referenceElements?has_content> *\n +</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n +</#list> */ + + + + + ^.*(public|protected|private)*.+static.*(\w\s\w)+.+ + /**\n + * The constant ${element.getName()}.\n + */ + + + ^.*(public|protected|private)*.*(\w\s\w)+.+ + /**\n + <#if element.parent.isInterface()> * The constant ${element.getName()}.\n +<#else> * The ${name}.\n +</#if> */ + + + .+ + /**\n + <#if element.parent.isEnum()> *${name} ${typeName}.\n +<#else> * The ${name}.\n +</#if>*/ + + + + + \ No newline at end of file diff --git a/.idea/keyring-api.iml b/.idea/keyring-api.iml new file mode 100644 index 000000000..d6ebd4805 --- /dev/null +++ b/.idea/keyring-api.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 000000000..e0844bc7b --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 000000000..588e3f999 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 000000000..35eb1ddfb --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/internal/events.test.ts b/src/internal/events.test.ts index e2644ab25..feae5bae6 100644 --- a/src/internal/events.test.ts +++ b/src/internal/events.test.ts @@ -45,6 +45,24 @@ describe('events', () => { expect(is(event, AccountCreatedEventStruct)).toBe(false); }); + + it('should be a valid accountCreated event with displayConfirmation', () => { + const event = { + method: KeyringEvent.AccountCreated, + params: { + account: { + id: '11027d05-12f8-4ec0-b03f-151d86a8089e', + address: '0x0123', + methods: [], + options: {}, + type: EthAccountType.Eoa, + }, + displayConfirmation: true, + }, + }; + + expect(is(event, AccountCreatedEventStruct)).toBe(true); + }); }); describe('AccountUpdatedEventStruct', () => { diff --git a/src/internal/events.ts b/src/internal/events.ts index 87fb764f1..74b4c0b1f 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -1,5 +1,5 @@ import { JsonStruct } from '@metamask/utils'; -import { literal, object } from 'superstruct'; +import { boolean, literal, object, optional } from 'superstruct'; import { KeyringAccountStruct } from '../api'; import { KeyringEvent } from '../events'; @@ -12,6 +12,10 @@ export const AccountCreatedEventStruct = object({ * New account object. */ account: KeyringAccountStruct, + /** + * Display the add account confirmation in UI. + */ + displayConfirmation: optional(boolean()), }), }); From 71547164ec02635571bdf90f8f5598b8422304ac Mon Sep 17 00:00:00 2001 From: Kate Johnson Date: Thu, 16 May 2024 13:24:20 -0400 Subject: [PATCH 2/5] fix: added '.idea' folder to gitignore --- .gitignore | 3 + .idea/.gitignore | 8 -- .idea/checkstyle-idea.xml | 13 -- .idea/codeStyles/Project.xml | 7 - .idea/codeStyles/codeStyleConfig.xml | 5 - .idea/cody_history.xml | 19 --- .idea/discord.xml | 7 - .idea/icon.svg | 1 - .idea/inspectionProfiles/Project_Default.xml | 6 - .idea/intellij-javadocs-4.0.1.xml | 141 ------------------- .idea/keyring-api.iml | 9 -- .idea/misc.xml | 6 - .idea/modules.xml | 8 -- .idea/vcs.xml | 6 - 14 files changed, 3 insertions(+), 236 deletions(-) delete mode 100644 .idea/.gitignore delete mode 100644 .idea/checkstyle-idea.xml delete mode 100644 .idea/codeStyles/Project.xml delete mode 100644 .idea/codeStyles/codeStyleConfig.xml delete mode 100644 .idea/cody_history.xml delete mode 100644 .idea/discord.xml delete mode 100644 .idea/icon.svg delete mode 100644 .idea/inspectionProfiles/Project_Default.xml delete mode 100644 .idea/intellij-javadocs-4.0.1.xml delete mode 100644 .idea/keyring-api.iml delete mode 100644 .idea/misc.xml delete mode 100644 .idea/modules.xml delete mode 100644 .idea/vcs.xml diff --git a/.gitignore b/.gitignore index b143af1de..ddf294d45 100644 --- a/.gitignore +++ b/.gitignore @@ -75,3 +75,6 @@ node_modules/ !.yarn/releases !.yarn/sdks !.yarn/versions + +# IntelliJ +.idea/ diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 13566b81b..000000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/checkstyle-idea.xml b/.idea/checkstyle-idea.xml deleted file mode 100644 index 37000cf57..000000000 --- a/.idea/checkstyle-idea.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - 10.12.3 - JavaOnly - - - \ No newline at end of file diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml deleted file mode 100644 index 919ce1f1f..000000000 --- a/.idea/codeStyles/Project.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml deleted file mode 100644 index b9d18bf59..000000000 --- a/.idea/codeStyles/codeStyleConfig.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/cody_history.xml b/.idea/cody_history.xml deleted file mode 100644 index 954f4355c..000000000 --- a/.idea/cody_history.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/discord.xml b/.idea/discord.xml deleted file mode 100644 index d8e956166..000000000 --- a/.idea/discord.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/.idea/icon.svg b/.idea/icon.svg deleted file mode 100644 index c307de803..000000000 --- a/.idea/icon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml deleted file mode 100644 index 03d9549ea..000000000 --- a/.idea/inspectionProfiles/Project_Default.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/intellij-javadocs-4.0.1.xml b/.idea/intellij-javadocs-4.0.1.xml deleted file mode 100644 index d6c33106c..000000000 --- a/.idea/intellij-javadocs-4.0.1.xml +++ /dev/null @@ -1,141 +0,0 @@ - - - - - UPDATE - false - true - - FIELD - METHOD - TYPE - - - PUBLIC - PROTECTED - DEFAULT - - - - - - ^.*(public|protected|private)*.+interface\s+\w+.* - /**\n - * The interface ${name}.\n -<#if element.typeParameters?has_content> * \n -</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n -</#list> */ - - - ^.*(public|protected|private)*.+enum\s+\w+.* - /**\n - * The enum ${name}.\n - */ - - - ^.*(public|protected|private)*.+class\s+\w+.* - /**\n - * The type ${name}.\n -<#if element.typeParameters?has_content> * \n -</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n -</#list> */ - - - .+ - /**\n - * The type ${name}.\n - */ - - - - - .+ - /**\n - * Instantiates a new ${name}.\n -<#if element.parameterList.parameters?has_content> *\n -</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n -</#list><#if element.throwsList.referenceElements?has_content> *\n -</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n -</#list> */ - - - - - ^.*(public|protected|private)*\s*.*(\w(\s*<.+>)*)+\s+get\w+\s*\(.*\).+ - /**\n - * Gets ${partName}.\n -<#if element.typeParameters?has_content> * \n -</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n -</#list><#if element.parameterList.parameters?has_content> *\n -</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n -</#list><#if isNotVoid> *\n - * @return the ${partName}\n -</#if><#if element.throwsList.referenceElements?has_content> *\n -</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n -</#list> */ - - - ^.*(public|protected|private)*\s*.*(void|\w(\s*<.+>)*)+\s+set\w+\s*\(.*\).+ - /**\n - * Sets ${partName}.\n -<#if element.typeParameters?has_content> * \n -</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n -</#list><#if element.parameterList.parameters?has_content> *\n -</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n -</#list><#if isNotVoid> *\n - * @return the ${partName}\n -</#if><#if element.throwsList.referenceElements?has_content> *\n -</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n -</#list> */ - - - ^.*((public\s+static)|(static\s+public))\s+void\s+main\s*\(\s*String\s*(\[\s*\]|\.\.\.)\s+\w+\s*\).+ - /**\n - * The entry point of application.\n - - <#if element.parameterList.parameters?has_content> *\n -</#if> * @param ${element.parameterList.parameters[0].name} the input arguments\n -<#if element.throwsList.referenceElements?has_content> *\n -</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n -</#list> */ - - - .+ - /**\n - * ${name}<#if isNotVoid> ${return}</#if>.\n -<#if element.typeParameters?has_content> * \n -</#if><#list element.typeParameters as typeParameter> * @param <${typeParameter.name}> the type parameter\n -</#list><#if element.parameterList.parameters?has_content> *\n -</#if><#list element.parameterList.parameters as parameter> * @param ${parameter.name} the ${paramNames[parameter.name]}\n -</#list><#if isNotVoid> *\n - * @return the ${return}\n -</#if><#if element.throwsList.referenceElements?has_content> *\n -</#if><#list element.throwsList.referenceElements as exception> * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n -</#list> */ - - - - - ^.*(public|protected|private)*.+static.*(\w\s\w)+.+ - /**\n - * The constant ${element.getName()}.\n - */ - - - ^.*(public|protected|private)*.*(\w\s\w)+.+ - /**\n - <#if element.parent.isInterface()> * The constant ${element.getName()}.\n -<#else> * The ${name}.\n -</#if> */ - - - .+ - /**\n - <#if element.parent.isEnum()> *${name} ${typeName}.\n -<#else> * The ${name}.\n -</#if>*/ - - - - - \ No newline at end of file diff --git a/.idea/keyring-api.iml b/.idea/keyring-api.iml deleted file mode 100644 index d6ebd4805..000000000 --- a/.idea/keyring-api.iml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index e0844bc7b..000000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 588e3f999..000000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 35eb1ddfb..000000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file From c12553984bde91b656adbdc51a0b5471bc813bf2 Mon Sep 17 00:00:00 2001 From: Kate Johnson Date: Thu, 16 May 2024 16:35:41 -0400 Subject: [PATCH 3/5] feat: changed from 'optional' to 'exactOptional' type and updated jsdoc comment --- src/internal/events.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/internal/events.ts b/src/internal/events.ts index 74b4c0b1f..307c1431d 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -1,8 +1,9 @@ import { JsonStruct } from '@metamask/utils'; -import { boolean, literal, object, optional } from 'superstruct'; +import { boolean, literal, object } from 'superstruct'; import { KeyringAccountStruct } from '../api'; import { KeyringEvent } from '../events'; +import { exactOptional } from '../superstruct'; import { UuidStruct } from '../utils'; export const AccountCreatedEventStruct = object({ @@ -13,9 +14,10 @@ export const AccountCreatedEventStruct = object({ */ account: KeyringAccountStruct, /** - * Display the add account confirmation in UI. + * Instructs MetaMask to display the add account confirmation dialog in the UI. + * Not guaranteed to be honored by MetaMask client. */ - displayConfirmation: optional(boolean()), + displayConfirmation: exactOptional(boolean()), }), }); From 6e4000aac3e593aedf79cc53c532a791e3265d26 Mon Sep 17 00:00:00 2001 From: Kate Johnson <91970214+k-g-j@users.noreply.github.com> Date: Thu, 16 May 2024 16:37:34 -0400 Subject: [PATCH 4/5] feat: update KeyringAccountStruct to match other definitions Co-authored-by: Daniel Rocha --- src/internal/events.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/internal/events.ts b/src/internal/events.ts index 307c1431d..d94730e6a 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -13,6 +13,7 @@ export const AccountCreatedEventStruct = object({ * New account object. */ account: KeyringAccountStruct, + /** * Instructs MetaMask to display the add account confirmation dialog in the UI. * Not guaranteed to be honored by MetaMask client. From 3154b127d5732f7882108d47d542b28a3263a77a Mon Sep 17 00:00:00 2001 From: Kate Johnson Date: Fri, 17 May 2024 11:06:52 -0400 Subject: [PATCH 5/5] feat: put markdown bolding for JSDOC in 'displayConfirmation' --- src/internal/events.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/internal/events.ts b/src/internal/events.ts index d94730e6a..31579f76a 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -16,7 +16,7 @@ export const AccountCreatedEventStruct = object({ /** * Instructs MetaMask to display the add account confirmation dialog in the UI. - * Not guaranteed to be honored by MetaMask client. + * **Note:** This is not guaranteed to be honored by the MetaMask client. */ displayConfirmation: exactOptional(boolean()), }),