From c73c74ea364c38692388f04387434975f8521879 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Mon, 15 Jan 2024 10:26:34 +0000 Subject: [PATCH 1/6] Add test npm package for smtp test --- package-lock.json | 9 +++++---- package.json | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index bc90c96d99..8007e48721 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,7 +6,7 @@ "": { "name": "@appwrite/console", "dependencies": { - "@appwrite.io/console": "^0.5.0", + "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.0", "@appwrite.io/pink": "0.2.0", "@appwrite.io/pink-icons": "0.2.0", "@popperjs/core": "^2.11.8", @@ -159,9 +159,10 @@ "integrity": "sha512-TD+xbmsBLyYy/IxFimW/YL/9L2IEnM7/EoV9Aeh56U64Ify8o27HJcKjo38XY9Tcn0uOq1AX3thkKgvtWvwFQg==" }, "node_modules/@appwrite.io/console": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@appwrite.io/console/-/console-0.5.0.tgz", - "integrity": "sha512-WqjVc6lrmOwNGoyAGNx7z/sBJou1EgGbnGn87TuBvfhZ/zcYSdi+Nc010EwGpyUvPeNhL2ci8Jj3eYnelJVKwg==", + "name": "matej-appwrite.io-console", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/matej-appwrite.io-console/-/matej-appwrite.io-console-0.3.0.tgz", + "integrity": "sha512-uvw1wavv8ddbIGUjaoPD/6Pzi26PbdG0ftiBZ1dUoRXOCddTKMXCg6R4f2im4jr4Xd8VkKwsXeT1ojvfcTMlWQ==", "dependencies": { "cross-fetch": "3.1.5", "isomorphic-form-data": "2.0.0" diff --git a/package.json b/package.json index e84456270e..acb90b7bc0 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "e2e": "playwright test tests/e2e" }, "dependencies": { - "@appwrite.io/console": "^0.5.0", + "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.0", "@appwrite.io/pink": "0.2.0", "@appwrite.io/pink-icons": "0.2.0", "@popperjs/core": "^2.11.8", From 0fcd3447e495f4119fac65d9215b60163ebaa234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Wed, 17 Jan 2024 11:36:36 +0000 Subject: [PATCH 2/6] Rename SMTP endpoint method --- package-lock.json | 8 ++++---- package.json | 2 +- .../console/project-[project]/settings/smtp/+page.svelte | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8007e48721..b7296e4bbc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,7 +6,7 @@ "": { "name": "@appwrite/console", "dependencies": { - "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.0", + "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.1", "@appwrite.io/pink": "0.2.0", "@appwrite.io/pink-icons": "0.2.0", "@popperjs/core": "^2.11.8", @@ -160,9 +160,9 @@ }, "node_modules/@appwrite.io/console": { "name": "matej-appwrite.io-console", - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/matej-appwrite.io-console/-/matej-appwrite.io-console-0.3.0.tgz", - "integrity": "sha512-uvw1wavv8ddbIGUjaoPD/6Pzi26PbdG0ftiBZ1dUoRXOCddTKMXCg6R4f2im4jr4Xd8VkKwsXeT1ojvfcTMlWQ==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/matej-appwrite.io-console/-/matej-appwrite.io-console-0.3.1.tgz", + "integrity": "sha512-mpgBAZ9Y9kmR8nSA5J9Jal6fadm41p28/RwMErtmwAu/pbJ52iUDyhW+cuTSTFVILp2KisoVJShOvVthXN3DuQ==", "dependencies": { "cross-fetch": "3.1.5", "isomorphic-form-data": "2.0.0" diff --git a/package.json b/package.json index acb90b7bc0..234525ace0 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "e2e": "playwright test tests/e2e" }, "dependencies": { - "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.0", + "@appwrite.io/console": "npm:matej-appwrite.io-console@0.3.1", "@appwrite.io/pink": "0.2.0", "@appwrite.io/pink-icons": "0.2.0", "@popperjs/core": "^2.11.8", diff --git a/src/routes/console/project-[project]/settings/smtp/+page.svelte b/src/routes/console/project-[project]/settings/smtp/+page.svelte index e61255b171..a35ad9ea7b 100644 --- a/src/routes/console/project-[project]/settings/smtp/+page.svelte +++ b/src/routes/console/project-[project]/settings/smtp/+page.svelte @@ -58,7 +58,7 @@ username = undefined; password = undefined; } - await sdk.forConsole.projects.updateSmtpConfiguration( + await sdk.forConsole.projects.updateSmtp( $project.$id, enabled, senderName ? senderName : undefined, From e79d626d2700d02775af4af8f9b7261910c4c7b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Wed, 17 Jan 2024 17:35:05 +0100 Subject: [PATCH 3/6] Add SMTP test --- src/lib/actions/analytics.ts | 3 +- .../settings/smtp/+page.svelte | 29 ++++- .../settings/smtp/smtpTestModal.svelte | 119 ++++++++++++++++++ 3 files changed, 145 insertions(+), 6 deletions(-) create mode 100644 src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte diff --git a/src/lib/actions/analytics.ts b/src/lib/actions/analytics.ts index ad6f5ab71f..e765b799f9 100644 --- a/src/lib/actions/analytics.ts +++ b/src/lib/actions/analytics.ts @@ -171,6 +171,7 @@ export enum Submit { ProjectUpdateTeam = 'submit_project_update_team', ProjectService = 'submit_project_service', ProjectUpdateSMTP = 'submit_project_update_smtp', + ProjectTestSMTP = 'submit_project_test_smtp', MemberCreate = 'submit_member_create', MemberDelete = 'submit_member_delete', MembershipUpdateStatus = 'submit_membership_update_status', @@ -288,5 +289,5 @@ export enum Submit { SmsResetTemplate = 'submit_sms_reset_template', SmsUpdateInviteTemplate = 'submit_sms_update_invite_template', SmsUpdateLoginTemplate = 'submit_sms_update_login_template', - SmsUpdateVerificationTemplate = 'submit_sms_update_verification_template' + SmsUpdateVerificationTemplate = 'submit_sms_update_verification_template', } diff --git a/src/routes/console/project-[project]/settings/smtp/+page.svelte b/src/routes/console/project-[project]/settings/smtp/+page.svelte index a35ad9ea7b..b09a0f93f2 100644 --- a/src/routes/console/project-[project]/settings/smtp/+page.svelte +++ b/src/routes/console/project-[project]/settings/smtp/+page.svelte @@ -23,6 +23,7 @@ import { organization } from '$lib/stores/organization'; import { wizard } from '$lib/stores/wizard'; import ChangeOrganizationTierCloud from '$routes/console/changeOrganizationTierCloud.svelte'; + import SmtpTestModal from './smtpTestModal.svelte'; let enabled = false; let senderName: string; @@ -34,6 +35,8 @@ let password: string; let secure = false; + let showTestSMTPModal = false; + onMount(() => { enabled = $project.smtpEnabled ?? false; senderName = $project.smtpSenderName; @@ -198,13 +201,29 @@ {/if} - + + + + + + +{#if showTestSMTPModal} + + +{/if} diff --git a/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte b/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte new file mode 100644 index 0000000000..48a56fa889 --- /dev/null +++ b/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte @@ -0,0 +1,119 @@ + + + + + Send test email + +
+ +
+ + + sendToSelf = !sendToSelf} /> +

{$user.email}

+
+ +
+ sendToOthers = !sendToOthers} /> + +
+

Others

+

Enter the email address(es) to which the test message will be sent

+
+ +
+ +
+ +
+
+
+ + + + + +
From 6dfd7c4ff8a853cc96d2bfc702528ca15bf2eb5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Wed, 17 Jan 2024 17:35:25 +0100 Subject: [PATCH 4/6] Linter --- src/lib/actions/analytics.ts | 2 +- .../settings/smtp/+page.svelte | 37 ++++--- .../settings/smtp/smtpTestModal.svelte | 100 +++++++++--------- 3 files changed, 70 insertions(+), 69 deletions(-) diff --git a/src/lib/actions/analytics.ts b/src/lib/actions/analytics.ts index e765b799f9..a6f58b9114 100644 --- a/src/lib/actions/analytics.ts +++ b/src/lib/actions/analytics.ts @@ -289,5 +289,5 @@ export enum Submit { SmsResetTemplate = 'submit_sms_reset_template', SmsUpdateInviteTemplate = 'submit_sms_update_invite_template', SmsUpdateLoginTemplate = 'submit_sms_update_login_template', - SmsUpdateVerificationTemplate = 'submit_sms_update_verification_template', + SmsUpdateVerificationTemplate = 'submit_sms_update_verification_template' } diff --git a/src/routes/console/project-[project]/settings/smtp/+page.svelte b/src/routes/console/project-[project]/settings/smtp/+page.svelte index b09a0f93f2..6135a55a1e 100644 --- a/src/routes/console/project-[project]/settings/smtp/+page.svelte +++ b/src/routes/console/project-[project]/settings/smtp/+page.svelte @@ -202,28 +202,31 @@
- + - -
+ +
- - {#if showTestSMTPModal} - - + {/if} diff --git a/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte b/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte index 48a56fa889..4871894424 100644 --- a/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte +++ b/src/routes/console/project-[project]/settings/smtp/smtpTestModal.svelte @@ -31,8 +31,8 @@ async function handleTestEmail() { try { - const allMails = [ ...emails ]; - if(sendToSelf) { + const allMails = [...emails]; + if (sendToSelf) { allMails.push($user.email); } @@ -44,70 +44,68 @@ host ? host : undefined, replyTo ? replyTo : undefined, port ? port : undefined, - username ? username : undefined, + username ? username : undefined, password ? password : undefined, secure ? 'tls' : undefined - ) - close(); - if(allMails.length === 1) { - addNotification({ - type: 'success', - message: `Test email has been sent to ${allMails[0]}` - }); - } else { - addNotification({ - type: 'success', - message: `Test email has been sent to ${allMails[0]} and ${allMails.length - 1} others` - }); - - } + ); + close(); + if (allMails.length === 1) { + addNotification({ + type: 'success', + message: `Test email has been sent to ${allMails[0]}` + }); + } else { + addNotification({ + type: 'success', + message: `Test email has been sent to ${allMails[0]} and ${ + allMails.length - 1 + } others` + }); + } trackEvent(Submit.ProjectTestSMTP); } catch (e) { error = e.message; trackError(e, Submit.ProjectTestSMTP); } - } - - Send test email - + Send test email
- - - sendToSelf = !sendToSelf} /> -

{$user.email}

-
- -
- sendToOthers = !sendToOthers} /> - -
-

Others

-

Enter the email address(es) to which the test message will be sent

-
- -
- + (sendToSelf = !sendToSelf)} /> +

{$user.email}

- + +
+ (sendToOthers = !sendToOthers)} /> + +
+

Others

+

+ Enter the email address(es) to which the test message will be sent +

+
+ +
+
From 3a9a5dbd8812f71f862735948e233a492fbad07f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Fri, 26 Jan 2024 08:51:13 +0100 Subject: [PATCH 5/6] Prevent large line break --- src/lib/components/modal.svelte | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/lib/components/modal.svelte b/src/lib/components/modal.svelte index 816ce20466..c7506e98a8 100644 --- a/src/lib/components/modal.svelte +++ b/src/lib/components/modal.svelte @@ -64,11 +64,13 @@ {/if}
-

- - {description} - -

+ {#if description} +

+ + {description} + +

+ {/if}