{"_id":"@aopslabs/xf-mail","_rev":"2-e3b5602560b51115d27e5c9b47fcdada","name":"@aopslabs/xf-mail","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@aopslabs/xf-mail","version":"0.2.0","keywords":["email","smtp","sendgrid","nodemailer"],"author":{"name":"Mehmet Zeki Sönmez"},"license":"SEE LICENSE IN LICENSE","_id":"@aopslabs/xf-mail@0.2.0","maintainers":[{"name":"mzsonmez","email":"mzsonmez2@hotmail.com"}],"homepage":"https://github.com/eeemzs/xf-packages#readme","bugs":{"url":"https://github.com/eeemzs/xf-packages/issues"},"dist":{"shasum":"4432eabe20d0514d9c0fc6b9a0d45f59dfab1a11","tarball":"https://registry.npmjs.org/@aopslabs/xf-mail/-/xf-mail-0.2.0.tgz","fileCount":46,"integrity":"sha512-/SQhFVAvBGpFckv22xa8ttJGC/lqylL30XV05HnfgL4KuMMQHY7vJfJufNb87n/unOeKTwXYJnglTnYf21XRKQ==","signatures":[{"sig":"MEQCIC6UmY7KEADEq3gAB75ZSwN8EKHYWW35lK4HxmF2sOq6AiBmmP3s4T2vq7rAQL2Y6bRQqIDi2FlycV2Z/CYKUOnisg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41287},"main":"./dist/index.js","type":"module","_from":"file:S:/dev-js2/artifacts/aopslabs-xf-mail-0.2.0-review/aopslabs-xf-mail-0.2.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"build":"tsc -p tsconfig.lib.json"},"_npmUser":{"name":"mzsonmez","email":"mzsonmez2@hotmail.com"},"_resolved":"S:\\dev-js2\\artifacts\\aopslabs-xf-mail-0.2.0-review\\aopslabs-xf-mail-0.2.0.tgz","_integrity":"sha512-/SQhFVAvBGpFckv22xa8ttJGC/lqylL30XV05HnfgL4KuMMQHY7vJfJufNb87n/unOeKTwXYJnglTnYf21XRKQ==","repository":{"url":"git+https://github.com/eeemzs/xf-packages.git","type":"git"},"_npmVersion":"11.6.4","description":"Provider-neutral email delivery services with SMTP, SendGrid, retry, timeout, and Eta template support.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"eta":"^3.5.0","tslib":"^2.3.0","nodemailer":"9.0.3","@aopslabs/xf-core":"^0.2.0","@aopslabs/xf-logger":"^0.2.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.3.0","@types/nodemailer":"8.0.1"},"_npmOperationalInternal":{"tmp":"tmp/xf-mail_0.2.0_1785927720009_0.1388483899260029","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@aopslabs/xf-mail","version":"0.2.1","description":"Provider-neutral email delivery services with SMTP, SendGrid, retry, timeout, and Eta template support.","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{"./package.json":"./package.json",".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"dependencies":{"eta":"^3.5.0","nodemailer":"9.0.3","tslib":"^2.3.0","@aopslabs/xf-logger":"^0.2.2","@aopslabs/xf-core":"^0.2.1"},"devDependencies":{"@types/node":"25.3.0","@types/nodemailer":"8.0.1","eslint":"9.39.5","typescript":"5.9.3","vitest":"4.0.18","@aopslabs/eslint-config":"0.0.0","@aopslabs/typescript-config":"0.0.0"},"private":false,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/eeemzs/tsapps.git","directory":"packages/xf-packages/xf-mail"},"author":{"name":"Mehmet Zeki Sönmez"},"keywords":["email","smtp","sendgrid","nodemailer"],"license":"SEE LICENSE IN LICENSE","scripts":{"build":"tsc -p tsconfig.lib.json","test:unit":"vitest run --config vitest.unit.config.ts","typecheck:integration":"tsc -p tsconfig.integration.json --noEmit --incremental false","test:integration":"node ./test/integration-preflight.mjs && vitest run --config vitest.integration.config.ts","lint":"eslint . --max-warnings=0"},"_id":"@aopslabs/xf-mail@0.2.1","bugs":{"url":"https://github.com/eeemzs/tsapps/issues"},"homepage":"https://github.com/eeemzs/tsapps#readme","_integrity":"sha512-/N9Gs3wJhTJGZIttjJe+DmT3Yq4J3XmCpgCNtxesVknvb5aZXOVurjxuumAVd3MTu86snFFVeZ4M6zBAFe9xDw==","_resolved":"/home/runner/work/_temp/release-candidates/aopslabs-xf-mail-0.2.1.tgz","_from":"file:/home/runner/work/_temp/release-candidates/aopslabs-xf-mail-0.2.1.tgz","_nodeVersion":"24.20.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-/N9Gs3wJhTJGZIttjJe+DmT3Yq4J3XmCpgCNtxesVknvb5aZXOVurjxuumAVd3MTu86snFFVeZ4M6zBAFe9xDw==","shasum":"3976bed09d5709b8bdf7e47d1c86ed88b6866ada","tarball":"https://registry.npmjs.org/@aopslabs/xf-mail/-/xf-mail-0.2.1.tgz","fileCount":46,"unpackedSize":41775,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCBHmD5nBaBYFNmvq4UI/CZEcQca5fR59X6/120ReD1iwIgPzgGEyJ0VuuTlfDgXpnZZd48o+ywYxz+1iejo3R+YeY="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0e828b5c-8b4c-49a4-9368-2a26b1f9f4ba"}},"directories":{},"maintainers":[{"name":"mzsonmez","email":"mzsonmez2@hotmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/xf-mail_0.2.1_1788791299297_0.9977873461972286"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-05T11:01:59.793Z","modified":"2026-09-07T14:28:19.719Z","0.2.0":"2026-08-05T11:02:00.167Z","0.2.1":"2026-09-07T14:28:19.438Z"},"bugs":{"url":"https://github.com/eeemzs/tsapps/issues"},"author":{"name":"Mehmet Zeki Sönmez"},"license":"SEE LICENSE IN LICENSE","homepage":"https://github.com/eeemzs/tsapps#readme","keywords":["email","smtp","sendgrid","nodemailer"],"repository":{"type":"git","url":"git+https://github.com/eeemzs/tsapps.git","directory":"packages/xf-packages/xf-mail"},"description":"Provider-neutral email delivery services with SMTP, SendGrid, retry, timeout, and Eta template support.","maintainers":[{"name":"mzsonmez","email":"mzsonmez2@hotmail.com"}],"readme":"# @aopslabs/xf-mail\n\nProvider-neutral email delivery services for Node.js applications. The package supports SMTP and SendGrid transports, fallback or send-all strategies, retry and timeout controls, attachments, and Eta-based HTML templates.\n\n## Installation\n\n```bash\nnpm install @aopslabs/xf-mail\n```\n\n## SMTP usage\n\n```typescript\nimport {\n  MailProviderType,\n  MailServiceFactory,\n  SendStrategy\n} from '@aopslabs/xf-mail';\n\nconst mailService = await MailServiceFactory.create({\n  defaultFrom: 'noreply@example.com',\n  providers: [\n    {\n      type: MailProviderType.SMTP,\n      config: {\n        host: 'smtp.example.com',\n        port: 587,\n        secure: false,\n        auth: { user: 'smtp-user', pass: 'smtp-password' }\n      }\n    }\n  ]\n});\n\nawait mailService.send(\n  {\n    to: 'recipient@example.com',\n    subject: 'Welcome',\n    text: 'Your account is ready.'\n  },\n  [{ name: 'SMTP', async: false }],\n  SendStrategy.FALLBACK\n);\n```\n\n## Main exports\n\n- `MailService`, `MailServiceFactory`, and `MailServiceBuilder`\n- `SmtpMailAdapter` and `SendGridMailAdapter`\n- `MailMessage`, `MailConfig`, and provider configuration types\n- `ProviderNames` and `SendStrategy`\n- Eta HTML template helpers\n\n## License\n\nCopyright (c) 2026 Mehmet Zeki Sönmez.\n\nLicensed under the [PolyForm Strict License 1.0.0](https://polyformproject.org/licenses/strict/1.0.0). The license permits noncommercial use and does not grant permission to modify or redistribute the package.\n","readmeFilename":"README.md"}