From 3b9e2eb5e54069853486173143654771d04b26ac Mon Sep 17 00:00:00 2001 From: Frederik Bolding Date: Mon, 5 Jun 2023 14:31:11 +0200 Subject: [PATCH] [FLASK] Update snap tweaks (#19410) * Sort revoked permissions before existing permissions * Simplify update screen logic and update copy * Remove approve and update copy * Reduce nesting --- app/_locales/de/messages.json | 3 - app/_locales/el/messages.json | 3 - app/_locales/en/messages.json | 11 +--- app/_locales/es/messages.json | 3 - app/_locales/fr/messages.json | 3 - app/_locales/hi/messages.json | 3 - app/_locales/id/messages.json | 3 - app/_locales/it/messages.json | 3 - app/_locales/ja/messages.json | 3 - app/_locales/ko/messages.json | 3 - app/_locales/pt/messages.json | 3 - app/_locales/ru/messages.json | 3 - app/_locales/tl/messages.json | 3 - app/_locales/tr/messages.json | 3 - app/_locales/vi/messages.json | 3 - app/_locales/zh_CN/messages.json | 3 - test/e2e/snaps/test-snap-update.spec.js | 4 +- .../update-snap-permission-list.js | 64 +++++++++---------- .../snaps/snap-update/snap-update.js | 35 ++-------- 19 files changed, 38 insertions(+), 121 deletions(-) diff --git a/app/_locales/de/messages.json b/app/_locales/de/messages.json index e42405107..27b347e28 100644 --- a/app/_locales/de/messages.json +++ b/app/_locales/de/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Genehmigen und installieren" }, - "approveAndUpdate": { - "message": "Genehmigen & aktualisieren" - }, "approveButtonText": { "message": "Genehmigen" }, diff --git a/app/_locales/el/messages.json b/app/_locales/el/messages.json index 85c862b31..2bcb79798 100644 --- a/app/_locales/el/messages.json +++ b/app/_locales/el/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Έγκριση και Εγκατάσταση" }, - "approveAndUpdate": { - "message": "Έγκριση και ενημέρωση" - }, "approveButtonText": { "message": "Έγκριση" }, diff --git a/app/_locales/en/messages.json b/app/_locales/en/messages.json index da0872014..1647b6d2a 100644 --- a/app/_locales/en/messages.json +++ b/app/_locales/en/messages.json @@ -401,9 +401,6 @@ "approveAndInstall": { "message": "Approve & install" }, - "approveAndUpdate": { - "message": "Approve & update" - }, "approveButtonText": { "message": "Approve" }, @@ -3820,12 +3817,8 @@ "message": "Update snap" }, "snapUpdateRequest": { - "message": "$1 wants to update $2. Make sure you trust the authors before you proceed.", - "description": "$1 is the dApp origin requesting the snap and $2 is the snap name" - }, - "snapUpdateRequestsPermission": { - "message": "$1 wants to update $2, which is requesting the following permissions. Make sure you trust the authors before you proceed.", - "description": "$1 is the dApp origin requesting the snap and $2 is the snap name" + "message": "$1 wants to update $2 to $3 which gives it the following permissions. Only continue if you trust $2.", + "description": "$1 is the dApp origin requesting the snap, $2 is the snap name and $3 is the snap version." }, "snaps": { "message": "Snaps" diff --git a/app/_locales/es/messages.json b/app/_locales/es/messages.json index 8a406e5fb..5fe3898ae 100644 --- a/app/_locales/es/messages.json +++ b/app/_locales/es/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Aprobar e instalar" }, - "approveAndUpdate": { - "message": "Aprobar y actualizar" - }, "approveButtonText": { "message": "Aprobar" }, diff --git a/app/_locales/fr/messages.json b/app/_locales/fr/messages.json index 296b7e9fd..aff1b2a2d 100644 --- a/app/_locales/fr/messages.json +++ b/app/_locales/fr/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Approuver et installer" }, - "approveAndUpdate": { - "message": "Approuver et mettre à jour" - }, "approveButtonText": { "message": "Approuver" }, diff --git a/app/_locales/hi/messages.json b/app/_locales/hi/messages.json index 59db01bc8..ddfc2b327 100644 --- a/app/_locales/hi/messages.json +++ b/app/_locales/hi/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "स्वीकृत और इंस्टॉल करें" }, - "approveAndUpdate": { - "message": "स्वीकृत और अपडेट करें" - }, "approveButtonText": { "message": "अनुमोदित करें" }, diff --git a/app/_locales/id/messages.json b/app/_locales/id/messages.json index b1c80f8b4..77e6d4d40 100644 --- a/app/_locales/id/messages.json +++ b/app/_locales/id/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Setujui & instal" }, - "approveAndUpdate": { - "message": "Setujui dan perbarui" - }, "approveButtonText": { "message": "Setujui" }, diff --git a/app/_locales/it/messages.json b/app/_locales/it/messages.json index 4c594c6f8..4bede07dd 100644 --- a/app/_locales/it/messages.json +++ b/app/_locales/it/messages.json @@ -293,9 +293,6 @@ "approveAndInstall": { "message": "Approva & installa" }, - "approveAndUpdate": { - "message": "Approva & aggiorna" - }, "approveButtonText": { "message": "Approva" }, diff --git a/app/_locales/ja/messages.json b/app/_locales/ja/messages.json index 93f7ba7ae..938d0e20d 100644 --- a/app/_locales/ja/messages.json +++ b/app/_locales/ja/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "承認してインストール" }, - "approveAndUpdate": { - "message": "承認して更新" - }, "approveButtonText": { "message": "承認" }, diff --git a/app/_locales/ko/messages.json b/app/_locales/ko/messages.json index 12e7d4b74..03cbe4282 100644 --- a/app/_locales/ko/messages.json +++ b/app/_locales/ko/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "승인 및 설치" }, - "approveAndUpdate": { - "message": "승인 및 업데이트" - }, "approveButtonText": { "message": "승인" }, diff --git a/app/_locales/pt/messages.json b/app/_locales/pt/messages.json index 88bd6d699..2396adc61 100644 --- a/app/_locales/pt/messages.json +++ b/app/_locales/pt/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Aprovar e instalar" }, - "approveAndUpdate": { - "message": "Aprovar e atualizar" - }, "approveButtonText": { "message": "Aprovar" }, diff --git a/app/_locales/ru/messages.json b/app/_locales/ru/messages.json index 1365b7cb2..f02aa5c9a 100644 --- a/app/_locales/ru/messages.json +++ b/app/_locales/ru/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Одобрить и установить" }, - "approveAndUpdate": { - "message": "Утвердить и обновить" - }, "approveButtonText": { "message": "Одобрить" }, diff --git a/app/_locales/tl/messages.json b/app/_locales/tl/messages.json index 765ea453e..af6822cb6 100644 --- a/app/_locales/tl/messages.json +++ b/app/_locales/tl/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Aprubahan at I-install" }, - "approveAndUpdate": { - "message": "Aprubahan at i-update" - }, "approveButtonText": { "message": "Aprubahan" }, diff --git a/app/_locales/tr/messages.json b/app/_locales/tr/messages.json index e58872f25..3cde2ba49 100644 --- a/app/_locales/tr/messages.json +++ b/app/_locales/tr/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Onayla ve Yükle" }, - "approveAndUpdate": { - "message": "Onayla ve güncelle" - }, "approveButtonText": { "message": "Onayla" }, diff --git a/app/_locales/vi/messages.json b/app/_locales/vi/messages.json index 6f1395985..9be08a18c 100644 --- a/app/_locales/vi/messages.json +++ b/app/_locales/vi/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "Chấp nhận và cài đặt" }, - "approveAndUpdate": { - "message": "Phê duyệt và cập nhật" - }, "approveButtonText": { "message": "Phê duyệt" }, diff --git a/app/_locales/zh_CN/messages.json b/app/_locales/zh_CN/messages.json index 2902731db..89f2e6bbe 100644 --- a/app/_locales/zh_CN/messages.json +++ b/app/_locales/zh_CN/messages.json @@ -362,9 +362,6 @@ "approveAndInstall": { "message": "批准并安装" }, - "approveAndUpdate": { - "message": "批准并更新" - }, "approveButtonText": { "message": "批准" }, diff --git a/test/e2e/snaps/test-snap-update.spec.js b/test/e2e/snaps/test-snap-update.spec.js index ac80c18ff..0ee11e724 100644 --- a/test/e2e/snaps/test-snap-update.spec.js +++ b/test/e2e/snaps/test-snap-update.spec.js @@ -103,10 +103,10 @@ describe('Test Snap update', function () { windowHandles, ); - await driver.waitForSelector({ text: 'Approve & update' }); + await driver.waitForSelector({ text: 'Update' }); await driver.clickElement({ - text: 'Approve & update', + text: 'Update', tag: 'button', }); diff --git a/ui/components/app/snaps/update-snap-permission-list/update-snap-permission-list.js b/ui/components/app/snaps/update-snap-permission-list/update-snap-permission-list.js index 5ed3a6669..d0f47eaa1 100644 --- a/ui/components/app/snaps/update-snap-permission-list/update-snap-permission-list.js +++ b/ui/components/app/snaps/update-snap-permission-list/update-snap-permission-list.js @@ -16,25 +16,7 @@ export default function UpdateSnapPermissionList({ return ( {getWeightedPermissions(t, newPermissions, targetSubjectMetadata).map( - (permission, index) => { - return ( - - ); - }, - )} - {getWeightedPermissions( - t, - approvedPermissions, - targetSubjectMetadata, - ).map((permission, index) => { - return ( + (permission, index) => ( - ); - })} - {getWeightedPermissions(t, revokedPermissions, targetSubjectMetadata).map( - (permission, index) => { - return ( - - ); - }, + ), )} + {getWeightedPermissions(t, revokedPermissions, targetSubjectMetadata).map( + (permission, index) => ( + + ), + )} + {getWeightedPermissions( + t, + approvedPermissions, + targetSubjectMetadata, + ).map((permission, index) => ( + + ))} ); } diff --git a/ui/pages/permissions-connect/snaps/snap-update/snap-update.js b/ui/pages/permissions-connect/snaps/snap-update/snap-update.js index 02ad7964e..c87a34bc7 100644 --- a/ui/pages/permissions-connect/snaps/snap-update/snap-update.js +++ b/ui/pages/permissions-connect/snaps/snap-update/snap-update.js @@ -48,19 +48,11 @@ export default function SnapUpdate({ const approvedPermissions = requestState.approvedPermissions ?? {}; const revokedPermissions = requestState.unusedPermissions ?? {}; const newPermissions = requestState.newPermissions ?? {}; + const { newVersion } = requestState; const isLoading = requestState.loading; const hasError = !isLoading && requestState.error; - const hasPermissions = - !hasError && - Object.keys(approvedPermissions).length + - Object.keys(revokedPermissions).length + - Object.keys(newPermissions).length > - 0; - - const isEmpty = !isLoading && !hasError && !hasPermissions; - const warnings = getSnapInstallWarnings( newPermissions, targetSubjectMetadata, @@ -121,7 +113,7 @@ export default function SnapUpdate({ {hasError && ( )} - {hasPermissions && ( + {!hasError && !isLoading && ( <> - {t('snapUpdateRequestsPermission', [ + {t('snapUpdateRequest', [ {originMetadata?.hostname}, {snapName}, + v{newVersion}, ])} )} - {isEmpty && ( - - - {t('snapUpdateRequest', [ - {originMetadata?.hostname}, - {snapName}, - ])} - - - )} {isShowingWarning && (