小编Sea*_*ean的帖子

使用 Gmail REST API 或 Google Apps 脚本向 Gmail 邮件添加自定义星标

如何使用 Gmail REST 或 Apps API 为邮件添加自定义星标?是否有可用于 Gmail REST API 的备用标签名称?甚至可以从 Google Apps Script API 实现吗?

上下文
Gmail 用户可以更改他们的设置以自定义他们想要使用的星标。这些过去被称为“超级明星”,以引入它们的实验室功能命名。它在工作时继续出现,例如资产 URL:...superstars/star_lit_green_check3.png

自定义星星

 

Gmail REST API
Gmail REST API 不提供设置自定义星标的端点。您可以通过使用User.messages.modify端点添加或删除STARRED标签来加星标或取消星标。似乎没有任何文件表明还有哪些其他标签可用于全套星星。

使用 Gmail REST API 添加 STARRED 标签的结果

由于文档没有提供如何设置自定义星标的线索,因此使用 Gmail 检查网络请求为我们提供了线索。

检查网络请求显示超级明星标签表单值

“sslbl”遵循前缀所在的模式^ss_,类型s用于星形或c自定义类型,以及颜色的第一个字母。通过它们都给我们列出了:

星级:^ss_sy, ^ss_so, ^ss_sr, ^ss_sp, ^ss_sb, ^ss_sg
定制:^ss_cr, ^ss_co, ^ss_cy, ^ss_cg, ^ss_cb, ^ss_cp

稍后进行一些研究,您最终会得到:

不幸的是,REST API 无法识别这些内部标签。测试另一个内部 -^前缀标签也失败,表明您不能在这里使用这些。请注意CATEGORY_FORUMS上面屏幕截图中的标签是如何应用于消息的。相应的^smartlabel_group标签失败。

无法识别内部标签

~~

编辑:根据@TarunLalwani 的建议,我尝试User.messages.modify使用 URL …

gmail google-apps-script gmail-api

7
推荐指数
0
解决办法
819
查看次数

使用 jest.mock 和 TypeScript 没有杂乱的类型转换?

当我使用 TypeScript 编译器编译测试并使用 Jest 模拟时,我经常收到以下错误tsc

error TS2339: Property 'mockImplementationOnce' does not exist on type
              'typeof readFile'.
Run Code Online (Sandbox Code Playgroud)

从这个最小的测试:

jest.mock('fs');
// Run before the imports but does not alter types :(

import { readFile } from 'fs';
import { fnThatReadsFile } from './lib';

it('should read a file', () => {
  const err = {};
  readFile.mockImplementationOnce((_, callback) => callback(err, null));
  // ^^ error TS2339: Property 'mockImplementationOnce' does not exist on type 'typeof readFile'.

  fnThatReadsFile();
  // expect...
});
Run Code Online (Sandbox Code Playgroud)


除了:

  • 铸件: readFile as …

unit-testing typescript jestjs typescript2.0

7
推荐指数
1
解决办法
6108
查看次数