feat: phase 6: email sending implemented.

This commit is contained in:
Yusuf İpek
2025-12-27 14:42:56 +03:00
parent 226935e67d
commit 1c91a1fe9d
10 changed files with 389 additions and 89 deletions
+74
View File
@@ -20,6 +20,7 @@
"lucide-react": "^0.562.0",
"next": "^16.1.1",
"next-auth": "^4.24.13",
"nodemailer": "^7.0.12",
"pg": "^8.16.3",
"react": "^19.2.3",
"react-dom": "^19.2.3",
@@ -30,6 +31,7 @@
"devDependencies": {
"@tailwindcss/postcss": "^4",
"@types/node": "^20.19.27",
"@types/nodemailer": "^7.0.4",
"@types/pg": "^8.16.0",
"@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3",
@@ -391,6 +393,58 @@
"node": ">=18.0.0"
}
},
"node_modules/@aws-sdk/client-sesv2": {
"version": "3.958.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sesv2/-/client-sesv2-3.958.0.tgz",
"integrity": "sha512-3x3n8IIxIMAkdpt9wy9zS7MO2lqTcJwQTdHMn6BlD7YUohb+r5Q4KCOEQ2uHWd4WIJv2tlbXnfypHaXReO/WXA==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.957.0",
"@aws-sdk/credential-provider-node": "3.958.0",
"@aws-sdk/middleware-host-header": "3.957.0",
"@aws-sdk/middleware-logger": "3.957.0",
"@aws-sdk/middleware-recursion-detection": "3.957.0",
"@aws-sdk/middleware-user-agent": "3.957.0",
"@aws-sdk/region-config-resolver": "3.957.0",
"@aws-sdk/signature-v4-multi-region": "3.957.0",
"@aws-sdk/types": "3.957.0",
"@aws-sdk/util-endpoints": "3.957.0",
"@aws-sdk/util-user-agent-browser": "3.957.0",
"@aws-sdk/util-user-agent-node": "3.957.0",
"@smithy/config-resolver": "^4.4.5",
"@smithy/core": "^3.20.0",
"@smithy/fetch-http-handler": "^5.3.8",
"@smithy/hash-node": "^4.2.7",
"@smithy/invalid-dependency": "^4.2.7",
"@smithy/middleware-content-length": "^4.2.7",
"@smithy/middleware-endpoint": "^4.4.1",
"@smithy/middleware-retry": "^4.4.17",
"@smithy/middleware-serde": "^4.2.8",
"@smithy/middleware-stack": "^4.2.7",
"@smithy/node-config-provider": "^4.3.7",
"@smithy/node-http-handler": "^4.4.7",
"@smithy/protocol-http": "^5.3.7",
"@smithy/smithy-client": "^4.10.2",
"@smithy/types": "^4.11.0",
"@smithy/url-parser": "^4.2.7",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-body-length-browser": "^4.2.0",
"@smithy/util-body-length-node": "^4.2.1",
"@smithy/util-defaults-mode-browser": "^4.3.16",
"@smithy/util-defaults-mode-node": "^4.2.19",
"@smithy/util-endpoints": "^3.2.7",
"@smithy/util-middleware": "^4.2.7",
"@smithy/util-retry": "^4.2.7",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@aws-sdk/client-sso": {
"version": "3.958.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.958.0.tgz",
@@ -3740,6 +3794,17 @@
"undici-types": "~6.21.0"
}
},
"node_modules/@types/nodemailer": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/@types/nodemailer/-/nodemailer-7.0.4.tgz",
"integrity": "sha512-ee8fxWqOchH+Hv6MDDNNy028kwvVnLplrStm4Zf/3uHWw5zzo8FoYYeffpJtGs2wWysEumMH0ZIdMGMY1eMAow==",
"dev": true,
"license": "MIT",
"dependencies": {
"@aws-sdk/client-sesv2": "^3.839.0",
"@types/node": "*"
}
},
"node_modules/@types/pg": {
"version": "8.16.0",
"resolved": "https://registry.npmjs.org/@types/pg/-/pg-8.16.0.tgz",
@@ -7757,6 +7822,15 @@
"dev": true,
"license": "MIT"
},
"node_modules/nodemailer": {
"version": "7.0.12",
"resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-7.0.12.tgz",
"integrity": "sha512-H+rnK5bX2Pi/6ms3sN4/jRQvYSMltV6vqup/0SFOrxYYY/qoNvhXPlYq3e+Pm9RFJRwrMGbMIwi81M4dxpomhA==",
"license": "MIT-0",
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/nypm": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/nypm/-/nypm-0.6.2.tgz",