feat(GODT-2767): setup wizard frame. WIP [skip-cli]

This commit is contained in:
Xavier Michelon
2023-07-24 20:26:05 +02:00
parent 7b96a07cf5
commit e5bac33a04
9 changed files with 177 additions and 44 deletions

View File

@ -49,6 +49,8 @@
<file>qml/icons/ic-success.svg</file>
<file>qml/icons/ic-three-dots-vertical.svg</file>
<file>qml/icons/ic-trash.svg</file>
<file>qml/icons/img-mail-logo-wordmark-dark.svg</file>
<file>qml/icons/img-mail-logo-wordmark.svg</file>
<file>qml/icons/img-proton-logos.png</file>
<file>qml/icons/img-proton-logos.svg</file>
<file>qml/icons/img-splash.png</file>
@ -107,6 +109,7 @@
<file>qml/SettingsItem.qml</file>
<file>qml/SettingsView.qml</file>
<file>qml/SetupGuide.qml</file>
<file>qml/SetupWizard/SetupWizard.qml</file>
<file>qml/SignIn.qml</file>
<file>qml/ConnectionModeSettings.qml</file>
<file>qml/SplashScreen.qml</file>

View File

@ -25,6 +25,7 @@ Item {
signal closeWindow
signal quitBridge
signal showSetupGuide(var user, string address)
signal showSetupWizard
function selectUser(userID) {
const users = Backend.users;
@ -283,7 +284,7 @@ Item {
onClicked: {
signIn.username = "";
rightContent.showSignIn();
root.showSetupWizard();
}
}
}

View File

@ -17,6 +17,7 @@ import QtQuick.Layouts
import QtQuick.Controls
import Proton
import Notifications
import "SetupWizard"
ApplicationWindow {
id: root
@ -129,7 +130,8 @@ ApplicationWindow {
currentIndex: {
// show welcome when there are no users
if (Backend.users.count === 0) {
return 1;
setupWizard.start();
return 0;
}
const u = Backend.users.get(0);
if (!u) {
@ -167,6 +169,9 @@ ApplicationWindow {
onShowSetupGuide: function (user, address) {
root.showSetup(user, address);
}
onShowSetupWizard: {
setupWizard.start();
}
}
WelcomeGuide {
Layout.fillHeight: true
@ -191,7 +196,6 @@ ApplicationWindow {
}
}
}
WebView {
id: webViewOverlay
anchors.fill: parent
@ -200,7 +204,12 @@ ApplicationWindow {
url: ""
visible: false
}
SetupWizard {
id: setupWizard
anchors.fill: parent
colorScheme: root.colorScheme
visible: false
}
NotificationPopups {
colorScheme: root.colorScheme
mainWindow: root

View File

@ -48,6 +48,7 @@ QtObject {
property color interaction_weak_active
property color interaction_weak_hover
property string logo_img
property string mail_logo_with_wordmark
// Primary
property color primary_norm

View File

@ -72,6 +72,7 @@ QtObject {
interaction_weak_active: "#6D697D"
interaction_weak_hover: "#5B576B"
logo_img: "/qml/icons/product_logos_dark.svg"
mail_logo_with_wordmark: "/qml/icons/img-mail-logo-wordmark-dark.svg"
// Primary
primary_norm: "#8A6EFF"
@ -145,6 +146,7 @@ QtObject {
interaction_weak_active: "#6D697D"
interaction_weak_hover: "#5B576B"
logo_img: "/qml/icons/product_logos_dark.svg"
mail_logo_with_wordmark: "/qml/icons/img-mail-logo-wordmark-dark.svg"
// Primary
primary_norm: "#8A6EFF"
@ -245,6 +247,7 @@ QtObject {
interaction_weak_active: "#8A6EFF"
interaction_weak_hover: "#6D4AFF"
logo_img: "/qml/icons/product_logos_dark.svg"
mail_logo_with_wordmark: "/qml/icons/img-mail-logo-wordmark-dark.svg"
// Primary
primary_norm: "#8A6EFF"
@ -325,6 +328,7 @@ QtObject {
interaction_weak_active: "#A8A6A3"
interaction_weak_hover: "#C2BFBC"
logo_img: "/qml/icons/product_logos.svg"
mail_logo_with_wordmark: "/qml/icons/img-mail-logo-wordmark.svg"
// Primary
primary_norm: "#6D4AFF"
@ -371,10 +375,10 @@ QtObject {
// WebView overlay styling
property real web_view_button_width: 320 * root.px
property real web_view_corner_radius: 10 * root.px
property real web_view_overlay_horizontal_margin: 10 * root.px
property real web_view_overlay_vertical_margin: web_view_corner_radius
property real web_view_overlay_opacity: 0.6
property real web_view_overlay_button_vertical_margin: 10 * root.px
property real web_view_overlay_horizontal_margin: 10 * root.px
property real web_view_overlay_margin: 50 * root.px
property real web_view_overlay_opacity: 0.6
property real web_view_overlay_vertical_margin: web_view_corner_radius
property real web_view_overley_border_width: 1 * root.px
}

View File

@ -0,0 +1,102 @@
// Copyright (c) 2023 Proton AG
// This file is part of Proton Mail Bridge.
// Proton Mail Bridge is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// Proton Mail Bridge is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with Proton Mail Bridge. If not, see <https://www.gnu.org/licenses/>.
import QtQml
import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
import QtQuick.Controls.impl
import "." as Proton
Item {
id: root
property ColorScheme colorScheme
function start() {
root.visible = true
}
RowLayout {
anchors.fill: parent
spacing: 0
Rectangle {
id: leftHalf
Layout.fillHeight: true
Layout.fillWidth: true
color: root.colorScheme.background_norm
Rectangle {
id: leftContent
anchors.bottom: parent.bottom
anchors.bottomMargin: 96
anchors.horizontalCenter: parent.horizontalCenter
anchors.top: parent.top
anchors.topMargin: 96
color: "#ff0000"
width: 444
}
Image {
id: mailLogoWithWordmark
anchors.bottom: parent.bottom
anchors.bottomMargin: 48
anchors.horizontalCenter: parent.horizontalCenter
antialiasing: true
fillMode: Image.PreserveAspectFit
height: 24
smooth: true
source: root.colorScheme.mail_logo_with_wordmark
sourceSize.height: 24
sourceSize.width: 142
}
}
Rectangle {
id: rightHalf
Layout.fillHeight: true
Layout.fillWidth: true
color: root.colorScheme.background_weak
Rectangle {
id: rightContent
anchors.bottom: parent.bottom
anchors.bottomMargin: 96
anchors.horizontalCenter: parent.horizontalCenter
anchors.top: parent.top
anchors.topMargin: 96
color: "#ff0000"
width: 444
}
Label {
id: reportProblemLink
anchors.bottom: parent.bottom
anchors.bottomMargin: 48
anchors.horizontalCenter: parent.horizontalCenter
colorScheme: root.colorScheme
horizontalAlignment: Text.AlignRight
text: link("#", "Report problem")
width: 444
onLinkActivated: {
root.visible = false;
}
HoverHandler {
id: mouse
acceptedDevices: PointerDevice.Mouse
cursorShape: Qt.PointingHandCursor
}
}
}
}
}

View File

@ -1,37 +0,0 @@
// Copyright (c) 2022 Proton AG
//
// This file is part of Proton Mail Bridge.
//
// Proton Mail Bridge is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Proton Mail Bridge is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Proton Mail Bridge. If not, see <https://www.gnu.org/licenses/>.
import QmlProject 1.1
Project {
mainFile: "./MainWindow.qml"
/* Include .qml, .js, and image files from current directory and subdirectories */
QmlFiles {
directory: "./"
}
JavaScriptFiles {
directory: "./"
}
ImageFiles {
directory: "./"
}
/* List of plugin directories passed to QML runtime */
importPaths: [
"./"
]
}

View File

@ -0,0 +1,25 @@
<svg width="1646" height="289" viewBox="0 0 1646 289" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0 17.2662C0 10.4899 7.89794 6.78253 13.111 11.1118L151 125.623C164.334 136.697 183.666 136.697 197 125.623L334.889 11.1118C340.102 6.78254 348 10.4899 348 17.2662V252.224C348 272.106 331.882 288.224 312 288.224H36C16.1177 288.224 0 272.106 0 252.224V17.2662Z" fill="#6D4AFF"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M220.981 105.681L221 105.696L151.558 167.037C139.728 177.487 122.046 177.75 109.911 167.658L0 76.2495V17.2389C0 10.4625 7.89794 6.75518 13.111 11.0844L151 125.596C164.334 136.669 183.666 136.669 197 125.596L220.981 105.681Z" fill="url(#paint0_linear_8236_33972)"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M274 61.6512V288.196H312C331.882 288.196 348 272.077 348 252.196V17.2391C348 10.4628 340.102 6.75476 334.889 11.0848L274 61.6512Z" fill="url(#paint1_linear_8236_33972)"/>
<path d="M1207.68 231.475V58.813H1252.49L1294.5 162.346C1298.23 171.011 1301.45 179.888 1304.14 188.931H1304.56C1307.26 179.894 1310.48 171.017 1314.19 162.346L1356.2 58.813H1401.02V231.475H1368.54V115.786C1368.5 111.976 1368.68 108.167 1369.07 104.378H1368.54C1367.54 108.459 1366.19 112.444 1364.49 116.284L1317.93 229.449H1291.09L1244.39 116.284C1242.71 112.409 1241.27 108.432 1240.09 104.378H1239.59C1239.95 108.17 1240.12 111.977 1240.09 115.786V231.475H1207.68Z" fill="#8A6EFF"/>
<path d="M1512.13 117.564C1521.54 122.499 1529.31 130.054 1534.52 139.315C1540.1 149.373 1542.92 160.728 1542.69 172.227V231.475H1514.26L1512.23 213.704C1508.53 220.147 1503.08 225.418 1496.52 228.916C1489.5 232.569 1481.66 234.391 1473.74 234.212C1463.63 234.314 1453.69 231.607 1445.02 226.393C1436.26 221.071 1429.12 213.45 1424.38 204.357C1419.2 194.349 1416.59 183.209 1416.8 171.943C1416.66 160.854 1419.5 149.931 1425.01 140.311C1430.41 130.96 1438.25 123.255 1447.69 118.026C1457.47 112.593 1468.49 109.8 1479.68 109.922C1490.96 109.727 1502.12 112.353 1512.13 117.564ZM1501.71 197.284C1507.9 191.384 1510.95 183.067 1510.95 171.978C1511.34 162.915 1508.17 154.061 1502.1 147.312C1499.22 144.296 1495.75 141.896 1491.91 140.257C1488.07 138.617 1483.94 137.772 1479.77 137.772C1475.59 137.772 1471.46 138.617 1467.62 140.257C1463.78 141.896 1460.32 144.296 1457.43 147.312C1451.66 154.225 1448.51 162.941 1448.51 171.943C1448.51 180.944 1451.66 189.66 1457.43 196.573C1460.27 199.654 1463.74 202.093 1467.6 203.729C1471.46 205.366 1475.63 206.161 1479.82 206.063C1483.87 206.131 1487.89 205.389 1491.65 203.882C1495.41 202.374 1498.83 200.131 1501.71 197.284Z" fill="#8A6EFF"/>
<path d="M1560.21 87.8157C1558.3 86.0691 1556.78 83.9371 1555.75 81.5602C1554.72 79.1833 1554.21 76.6154 1554.24 74.0255C1554.21 71.4156 1554.73 68.8286 1555.76 66.4296C1556.79 64.0306 1558.3 61.8725 1560.21 60.0931C1563.99 56.334 1569.1 54.2236 1574.43 54.2236C1579.76 54.2236 1584.87 56.334 1588.65 60.0931C1590.54 61.8797 1592.05 64.04 1593.07 66.4378C1594.09 68.8357 1594.61 71.4192 1594.58 74.0255C1594.61 76.6117 1594.1 79.176 1593.08 81.5518C1592.06 83.9275 1590.55 86.0617 1588.65 87.8157C1584.83 91.4906 1579.73 93.5433 1574.43 93.5433C1569.13 93.5433 1564.03 91.4906 1560.21 87.8157ZM1590.46 231.475H1558.47V112.482H1590.46V231.475Z" fill="#8A6EFF"/>
<path d="M1645.76 231.475H1613.78V58.813H1645.76V231.475Z" fill="#8A6EFF"/>
<path d="M543.756 58.3843H464V231.153H495.597V188.289C495.597 184.104 497.259 180.09 500.219 177.131C503.178 174.171 507.192 172.509 511.377 172.509H543.756C558.838 172.509 573.302 166.518 583.967 155.853C594.631 145.188 600.622 130.724 600.622 115.642C600.674 108.141 599.241 100.705 596.406 93.76C593.572 86.8154 589.391 80.5002 584.105 75.1782C578.82 69.8561 572.533 65.6323 565.608 62.7501C558.683 59.8679 551.257 58.3841 543.756 58.3843ZM568.635 115.251C568.607 122.39 565.746 129.226 560.681 134.257C555.617 139.289 548.762 142.104 541.623 142.085H495.419V88.0972H541.623C545.166 88.0972 548.674 88.7949 551.947 90.1506C555.219 91.5063 558.193 93.4934 560.698 95.9983C563.203 98.5033 565.19 101.477 566.546 104.75C567.902 108.023 568.599 111.531 568.599 115.073L568.635 115.251Z" fill="white"/>
<path d="M605.598 231.155V162.63C605.598 134.659 621.947 112.374 654.61 112.374C659.863 112.298 665.105 112.883 670.213 114.116V142.336C666.481 142.087 663.104 142.087 661.789 142.087C644.48 142.087 636.91 149.977 636.91 166.078V231.155H605.598Z" fill="white"/>
<path d="M679.598 173.009C679.598 138.605 705.579 112.375 741.725 112.375C777.871 112.375 803.816 138.534 803.816 173.009C803.816 207.485 777.835 233.892 741.725 233.892C705.614 233.892 679.598 207.414 679.598 173.009ZM772.895 173.009C772.895 153.461 759.78 139.6 741.725 139.6C723.669 139.6 710.519 153.461 710.519 173.009C710.519 192.557 723.634 206.418 741.725 206.418C759.815 206.418 772.895 192.806 772.895 173.009Z" fill="white"/>
<path d="M894.874 139.847H861.003V183.137C861.003 198.242 866.44 205.173 882.008 205.173C883.501 205.173 887.232 205.173 891.924 204.924V230.408C885.976 232.149 879.817 233.07 873.62 233.144C847.39 233.144 829.548 217.293 829.548 187.367V139.847H808.543V114.968H813.768C817.953 114.968 821.967 113.305 824.926 110.346C827.886 107.387 829.548 103.373 829.548 99.1874V75.5166H861.003V114.861H894.874V139.847Z" fill="white"/>
<path d="M904.291 173.009C904.291 138.605 930.272 112.375 966.383 112.375C1002.49 112.375 1028.51 138.534 1028.51 173.009C1028.51 207.485 1002.53 233.892 966.383 233.892C930.237 233.892 904.291 207.414 904.291 173.009ZM997.588 173.009C997.588 153.461 984.473 139.6 966.383 139.6C948.292 139.6 935.212 153.461 935.212 173.009C935.212 192.557 948.327 206.418 966.383 206.418C984.438 206.418 997.588 192.806 997.588 173.009Z" fill="white"/>
<path d="M1044.82 231.156V165.083C1044.82 134.411 1064.37 112.375 1099.27 112.375C1134.18 112.375 1153.48 134.411 1153.48 165.083V231.156H1122.31V167.571C1122.31 150.476 1114.63 139.849 1099.27 139.849C1083.92 139.849 1076.28 150.511 1076.28 167.571V231.156H1044.82Z" fill="white"/>
<defs>
<linearGradient id="paint0_linear_8236_33972" x1="262.5" y1="145.696" x2="183.177" y2="-192.945" gradientUnits="userSpaceOnUse">
<stop stop-color="#E2DBFF"/>
<stop offset="1" stop-color="#6D4AFF"/>
</linearGradient>
<linearGradient id="paint1_linear_8236_33972" x1="454" y1="471.696" x2="183.302" y2="-106.573" gradientUnits="userSpaceOnUse">
<stop offset="0.271019" stop-color="#E2DBFF"/>
<stop offset="1" stop-color="#6D4AFF"/>
</linearGradient>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -0,0 +1,25 @@
<svg width="1646" height="289" viewBox="0 0 1646 289" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0 17.2662C0 10.4899 7.89794 6.78253 13.111 11.1118L151 125.623C164.334 136.697 183.666 136.697 197 125.623L334.889 11.1118C340.102 6.78254 348 10.4899 348 17.2662V252.224C348 272.106 331.882 288.224 312 288.224H36C16.1177 288.224 0 272.106 0 252.224V17.2662Z" fill="#6D4AFF"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M220.981 105.681L221 105.696L151.558 167.037C139.728 177.487 122.046 177.75 109.911 167.658L0 76.2495V17.2389C0 10.4625 7.89794 6.75518 13.111 11.0844L151 125.596C164.334 136.669 183.666 136.669 197 125.596L220.981 105.681Z" fill="url(#paint0_linear_4917_3609)"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M274 61.6512V288.196H312C331.882 288.196 348 272.077 348 252.196V17.2391C348 10.4628 340.102 6.75476 334.889 11.0848L274 61.6512Z" fill="url(#paint1_linear_4917_3609)"/>
<path d="M1207.68 231.475V58.813H1252.49L1294.5 162.346C1298.23 171.011 1301.45 179.888 1304.14 188.931H1304.56C1307.26 179.894 1310.48 171.017 1314.19 162.346L1356.2 58.813H1401.02V231.475H1368.54V115.786C1368.5 111.976 1368.68 108.167 1369.07 104.378H1368.54C1367.54 108.459 1366.19 112.444 1364.49 116.284L1317.93 229.449H1291.09L1244.39 116.284C1242.71 112.409 1241.27 108.432 1240.09 104.378H1239.59C1239.95 108.17 1240.12 111.977 1240.09 115.786V231.475H1207.68Z" fill="#6D4AFF"/>
<path d="M1512.13 117.564C1521.54 122.499 1529.31 130.054 1534.52 139.315C1540.1 149.373 1542.92 160.728 1542.69 172.227V231.475H1514.26L1512.23 213.704C1508.53 220.147 1503.08 225.418 1496.52 228.916C1489.5 232.569 1481.66 234.391 1473.74 234.212C1463.63 234.314 1453.69 231.607 1445.02 226.393C1436.26 221.071 1429.12 213.45 1424.38 204.357C1419.2 194.349 1416.59 183.209 1416.8 171.943C1416.66 160.854 1419.5 149.931 1425.01 140.311C1430.41 130.96 1438.25 123.255 1447.69 118.026C1457.47 112.593 1468.49 109.8 1479.68 109.922C1490.96 109.727 1502.12 112.353 1512.13 117.564ZM1501.71 197.284C1507.9 191.384 1510.95 183.067 1510.95 171.978C1511.34 162.915 1508.17 154.061 1502.1 147.312C1499.22 144.296 1495.75 141.896 1491.91 140.257C1488.07 138.617 1483.94 137.772 1479.77 137.772C1475.59 137.772 1471.46 138.617 1467.62 140.257C1463.78 141.896 1460.32 144.296 1457.43 147.312C1451.66 154.225 1448.51 162.941 1448.51 171.943C1448.51 180.944 1451.66 189.66 1457.43 196.573C1460.27 199.654 1463.74 202.093 1467.6 203.729C1471.46 205.366 1475.63 206.161 1479.82 206.063C1483.87 206.131 1487.89 205.389 1491.65 203.882C1495.41 202.374 1498.83 200.131 1501.71 197.284Z" fill="#6D4AFF"/>
<path d="M1560.21 87.8157C1558.3 86.0691 1556.78 83.9371 1555.75 81.5602C1554.72 79.1833 1554.21 76.6154 1554.24 74.0255C1554.21 71.4156 1554.73 68.8286 1555.76 66.4296C1556.79 64.0306 1558.3 61.8725 1560.21 60.0931C1563.99 56.334 1569.1 54.2236 1574.43 54.2236C1579.76 54.2236 1584.87 56.334 1588.65 60.0931C1590.54 61.8797 1592.05 64.04 1593.07 66.4378C1594.09 68.8357 1594.61 71.4192 1594.58 74.0255C1594.61 76.6117 1594.1 79.176 1593.08 81.5518C1592.06 83.9275 1590.55 86.0617 1588.65 87.8157C1584.83 91.4906 1579.73 93.5433 1574.43 93.5433C1569.13 93.5433 1564.03 91.4906 1560.21 87.8157ZM1590.46 231.475H1558.47V112.482H1590.46V231.475Z" fill="#6D4AFF"/>
<path d="M1645.76 231.475H1613.78V58.813H1645.76V231.475Z" fill="#6D4AFF"/>
<path d="M543.756 58.3843H464V231.153H495.597V188.289C495.597 184.104 497.259 180.09 500.219 177.131C503.178 174.171 507.192 172.509 511.377 172.509H543.756C558.838 172.509 573.302 166.518 583.967 155.853C594.631 145.188 600.622 130.724 600.622 115.642C600.674 108.141 599.241 100.705 596.406 93.76C593.572 86.8154 589.391 80.5002 584.105 75.1782C578.82 69.8561 572.533 65.6323 565.608 62.7501C558.683 59.8679 551.257 58.3841 543.756 58.3843ZM568.635 115.251C568.607 122.39 565.746 129.226 560.681 134.257C555.617 139.289 548.762 142.104 541.623 142.085H495.419V88.0972H541.623C545.166 88.0972 548.674 88.7949 551.947 90.1506C555.219 91.5063 558.193 93.4934 560.698 95.9983C563.203 98.5033 565.19 101.477 566.546 104.75C567.902 108.023 568.599 111.531 568.599 115.073L568.635 115.251Z" fill="#1B1340"/>
<path d="M605.598 231.155V162.63C605.598 134.659 621.947 112.374 654.61 112.374C659.863 112.298 665.105 112.883 670.213 114.116V142.336C666.481 142.087 663.104 142.087 661.789 142.087C644.48 142.087 636.91 149.977 636.91 166.078V231.155H605.598Z" fill="#1B1340"/>
<path d="M679.598 173.009C679.598 138.605 705.579 112.375 741.725 112.375C777.871 112.375 803.816 138.534 803.816 173.009C803.816 207.485 777.835 233.892 741.725 233.892C705.614 233.892 679.598 207.414 679.598 173.009ZM772.895 173.009C772.895 153.461 759.78 139.6 741.725 139.6C723.669 139.6 710.519 153.461 710.519 173.009C710.519 192.557 723.634 206.418 741.725 206.418C759.815 206.418 772.895 192.806 772.895 173.009Z" fill="#1B1340"/>
<path d="M894.874 139.847H861.003V183.137C861.003 198.242 866.44 205.173 882.008 205.173C883.501 205.173 887.232 205.173 891.924 204.924V230.408C885.976 232.149 879.817 233.07 873.62 233.144C847.39 233.144 829.548 217.293 829.548 187.367V139.847H808.543V114.968H813.768C817.953 114.968 821.967 113.305 824.926 110.346C827.886 107.387 829.548 103.373 829.548 99.1874V75.5166H861.003V114.861H894.874V139.847Z" fill="#1B1340"/>
<path d="M904.291 173.009C904.291 138.605 930.272 112.375 966.383 112.375C1002.49 112.375 1028.51 138.534 1028.51 173.009C1028.51 207.485 1002.53 233.892 966.383 233.892C930.237 233.892 904.291 207.414 904.291 173.009ZM997.588 173.009C997.588 153.461 984.473 139.6 966.383 139.6C948.292 139.6 935.212 153.461 935.212 173.009C935.212 192.557 948.327 206.418 966.383 206.418C984.438 206.418 997.588 192.806 997.588 173.009Z" fill="#1B1340"/>
<path d="M1044.82 231.156V165.083C1044.82 134.411 1064.37 112.375 1099.27 112.375C1134.18 112.375 1153.48 134.411 1153.48 165.083V231.156H1122.31V167.571C1122.31 150.476 1114.63 139.849 1099.27 139.849C1083.92 139.849 1076.28 150.511 1076.28 167.571V231.156H1044.82Z" fill="#1B1340"/>
<defs>
<linearGradient id="paint0_linear_4917_3609" x1="262.5" y1="145.696" x2="183.177" y2="-192.945" gradientUnits="userSpaceOnUse">
<stop stop-color="#E2DBFF"/>
<stop offset="1" stop-color="#6D4AFF"/>
</linearGradient>
<linearGradient id="paint1_linear_4917_3609" x1="454" y1="471.696" x2="183.302" y2="-106.573" gradientUnits="userSpaceOnUse">
<stop offset="0.271019" stop-color="#E2DBFF"/>
<stop offset="1" stop-color="#6D4AFF"/>
</linearGradient>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 6.3 KiB