@bernierllc/email-calendar

中文文档
0.6.0发布于 2026/05/20PROPRIETARYTypeScriptCommonJS近 30 天下载 2396

iCalendar( RFC 5545) 生成和解析电子邮件日历邀请和响应

中文使用文档
文档目录9 节
  1. 安装
  2. 使用量
  3. 出口
  4. 提供者能力支持
  5. 提供者的能力等级
  6. 如何运作
  7. 退化行为
  8. 无需要覆盖
  9. 许可证

@bernierllc/电子邮件日历

iCalendar(RFC 5545)生成并解析电子邮件日历邀请和响应. 生成 .ics 文件并转换为兼容所有电子邮件提供者的电子邮件附件.

安装

npm install @bernierllc/email-calendar

使用量

import { generateICS, parseICS, toEmailAttachment } from '@bernierllc/email-calendar';

// Generate a calendar invite
const ics = generateICS({
  summary: 'Team Standup',
  start: new Date('2026-03-01T09:00:00Z'),
  end: new Date('2026-03-01T09:30:00Z'),
  organizer: { name: 'Jane', email: '[email protected]' },
  attendees: [
    { name: 'Bob', email: '[email protected]' },
  ],
  location: 'Conference Room A',
});

// Convert to an email attachment
const attachment = toEmailAttachment(ics, {
  filename: 'invite.ics',
  method: 'REQUEST',
});

// Parse an incoming ICS file
const event = parseICS(icsString);
console.log(event.summary, event.start, event.end);

出口

  • generateICS() -- 从事件参数创建 iCalendar 内容
  • parseICS() -- 将 iCalendar 内容分析为结构化的事件数据
  • toEmailAttachment() -- 将 ICS 内容转换为电子邮件备忘附件对象
  • CalendarError -- 有错误代码的自定义错误类
  • 类型 : CalendarEvent, (中文(简体) ), CalendarAttendee, (中文(简体) ), CalendarOrganizer, (中文(简体) ), ICSGenerateOptions, (中文(简体) ), ICSParseResult和更多

提供者能力支持

本节记录日历邀请在电子邮件提供者之间如何行事, 以条条为基础 CAPABILITY_MATRIX 内 @bernierllc/email-manager。 。 。 .

提供者的能力等级

提供者calendarInvitescalendarEventMgmt页:1
发送Grid平台平台SendGrid 电子邮件所附的ICS
邮件枪平台平台邮件枪电子邮件所附的ICS
邮戳平台平台邮戳电子邮件所附的ICS
用户平台平台SES电子邮件所附的ICS
SMTP 软件平台平台SMTP电子邮件所附的ICS

如何运作

日历邀请在 平台级别 对所有提供者。 此软件包 :

  1. 生成符合 RFC 5545 的 iCalendar (.ics)内容
  2. 使用 MIME 附件转换 ICS 内容 @bernierllc/email-attachments
  3. 然后通过任何提供者将附件作为普通电子邮件的一部分发送

没有提供者有本地日历邀请 API 。 ICS文件格式是一个通用的标准,电子邮件客户端(Outlook,Gmail,Apple Mail,Thunderbird等)在本地识别和处理,无论哪个电子邮件提供者发送消息.

退化行为

没有退化。 日历邀请所有提供者的工作相同,因为功能完全独立于提供者。 ICS文件是一个标准的电子邮件附件——任何可以发送附件(所有附件)的提供者都支持日历邀请.

无需要覆盖

由于此功能在平台层面为所有提供者运行并生成通用文件格式,因此没有特定提供者的行为可以被覆盖. 产出总是符合标准 .ics 附于电子邮件的文件.

许可证

版权(c)2025 Bernier有限责任公司。 版权所有.

这个包裹凭有限使用许可证发给客户. 客户只能在交付的项目范围内使用并修改此代码. 未经Bernier有限责任公司书面同意,不得再分配或用于其他产品或商业供货.

版本与发布记录

@bernierllc/email-calendar 共发布 7 个版本,首次发布于 2026/02/22;过去 12 个月发布了 7 个版本。

版本发布日期距今
0.6.0latest2026/05/205 个月前
0.4.02026/05/205 个月前
0.3.02026/05/205 个月前
0.2.12026/03/107 个月前
0.2.02026/03/048 个月前
0.1.02026/03/048 个月前

关于 @bernierllc/email-calendar 的常见问题

@bernierllc/email-calendar 是什么?

iCalendar( RFC 5545) 生成和解析电子邮件日历邀请和响应

如何安装 @bernierllc/email-calendar?

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

@bernierllc/email-calendar 支持 TypeScript 吗?

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

@bernierllc/email-calendar 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@bernierllc/email-calendar 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@bernierllc/email-calendar 可以商用吗?

@bernierllc/email-calendar 使用 PROPRIETARY 许可。声明的许可为 PROPRIETARY,请阅读许可原文确认使用条件。以上为概括,不构成法律意见,请以许可原文为准。

@bernierllc/email-calendar 的下载量有多少?

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

@bernierllc/email-calendar 还在维护吗?

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