@dbx-tools/shared-email

中文文档
0.9.206发布于 2026/11/11Apache-2.0TypeScriptES Module构建来源已验证近 30 天下载 1万

浏览器安全电子邮件发送计划并推断类型

中文使用文档
文档目录4 节
  1. 验证已起草的电文
  2. 验证发送结果
  3. 装入发件人选项
  4. 理解计划和运输限制

@dbx-tools/ 共享电子邮件

验证浏览器、路由和代理工具有效载荷 @dbx-tools/email 无 导入只节点代码 .

验证已起草的电文

import { email, type EmailMessage } from "@dbx-tools/shared-email";

const message: EmailMessage = email.emailMessageSchema.parse({
  to: ["[email protected]"],
  subject: "Report",
  body: "# Done\nThe report is attached.",
  attachments: [{ filename: "report.csv", content: "a,b\n1,2\n" }],
});

消息计划涵盖收件人,主题,身体内容,以及附件. 附件包含内行字符串内容、可选编码和可选 内容类型。 计划不接受本地路径或URL. 外部读取 ,然后将由此产生的字符串通过 content。 。 。 .

该套件还包括发送结果和发送者选择的路线计划, 批准UI,和测试.

验证发送结果

import { email } from "@dbx-tools/shared-email";

export function parseEmailResult(value: unknown) {
  return email.emailResultSchema.parse(value);
}

const result = parseEmailResult({
  sent: true,
  recipient: "[email protected]",
  from: "[email protected]",
  messageId: "smtp-message-id",
});

emailResultSchema 是 SMTP 发送和发送框写入的共享形状 。 用这个 以批准UI的说法和测试断言.

装入发件人选项

import { email } from "@dbx-tools/shared-email";

const senders = email.emailSendersSchema.parse(
  await fetch("/api/email/senders").then((response) => response.json()),
);

寄件人计划描述混凝土 From 当前用户的选择, 默认发送者,以及列表是否受策略限制.

理解计划和运输限制

  • emailAttachmentSchema 接受 filename内置 content, (中文(简体) ), encoding,以及 contentType。它不读取文件、获取 URL,也不验证是否 编码符合内容 .
  • 计划不添加阵列 minItems 限制,因为一些模式服务 结尾拒绝JSON Schema关键词. 节点发送层仍然 需要至少一个收件人.
  • 节点发送层将信件限制在 20 个附件, 每个解码 10 MiB 附件,20个MiB横跨附件,还有20万个身体字符.
  • 发件箱模式在已提供预览中列出附件文件名, 但不会 将附件有效载荷写入单独的文件.
  • 发件人政策、SMTP的交付、批准和发件箱的持久性属于 @dbx-tools/电子邮件。 。 。 .

无密码认证合同存在 @dbx-tools/ shared- auth (英语)。 。 。 .

版本与发布记录

@dbx-tools/shared-email 共发布 365 个版本,首次发布于 2026/07/17;过去 12 个月发布了 365 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.9.206latest2026/11/11今天
0.9.2052026/11/111 天前
0.9.2042026/11/101 天前
0.9.2032026/11/074 天前
0.9.2022026/11/065 天前
0.9.2012026/11/056 天前

关于 @dbx-tools/shared-email 的常见问题

@dbx-tools/shared-email 是什么?

浏览器安全电子邮件发送计划并推断类型

如何安装 @dbx-tools/shared-email?

在项目目录运行 npm install @dbx-tools/shared-email,或使用 pnpm add / yarn add / bun add。

@dbx-tools/shared-email 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dbx-tools/shared-email 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@dbx-tools/shared-email 可以商用吗?

@dbx-tools/shared-email 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@dbx-tools/shared-email 的下载量有多少?

根据 npm 官方下载统计,@dbx-tools/shared-email 在 2026/10/12 – 2026/11/10 这 30 天内被下载 10,110 次,日均约 337 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dbx-tools/shared-email 还在维护吗?

最新版本 0.9.206 发布于 2026/11/11(今天);至今共发布 365 个版本,其中过去 12 个月发布了 365 个;首次发布于 2026/07/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。