Tadam
Tadam 是一款 macOS Pomodoro 计时器应用。Protocol Launcher 允许您生成 Tadam 的官方 URL scheme 链接。
使用方式
有两种使用此库的方式:
- 按需导入(On-Demand):从子路径导入支持 tree-shaking,保持较小的打包体积。
- 完整导入(Full Import):从根包导入更方便,但会包含所有应用模块。
生产构建建议选择按需导入;快速脚本或演示可以使用完整导入。
选择安装方式
按需加载
推荐使用。生产环境优化。
全量导入
使用便捷。适合快速脚本。
说明
Tadam 文档说明 time 使用与应用内相同的时间格式,例如 10、10:30、1h 和 2h5min20sec。官方页面还说明 open 和 mini 设置为 true 或 1 时启用。
Tadam 部分支持 x-callback-url。使用 xCallback... helpers 可以生成文档中的 tadam://x-callback-url/ 前缀;如果需要文档中的 x-success 参数,也可以传给常规 helper。x-error 以及其他 x-callback-url 参数不受支持。
启动工作计时器
ts
import { startWork } from 'protocol-launcher/tadam'
const url = startWork({
time: '10min',
})启动工作计时器并打开界面
ts
import { startWork } from 'protocol-launcher/tadam'
const url = startWork({
time: '5:30',
open: true,
})启动休息计时器
ts
import { startBreak } from 'protocol-launcher/tadam'
const url = startBreak({
time: '5',
})以 Mini UI 启动休息计时器
ts
import { startBreak } from 'protocol-launcher/tadam'
const url = startBreak({
time: '10min',
mini: true,
})控制计时器
ts
import { pause, resume, stop } from 'protocol-launcher/tadam'
const pauseUrl = pause()
const resumeUrl = resume()
const stopUrl = stop()打开计时器界面和帮助
ts
import { help, startBreak, startWork } from 'protocol-launcher/tadam'
const startWorkUiUrl = startWork()
const breakUiUrl = startBreak()
const helpUrl = help()x-callback-url
ts
import { xCallbackStartWork } from 'protocol-launcher/tadam'
const url = xCallbackStartWork({
time: '10min',
})ts
import { xCallbackPause } from 'protocol-launcher/tadam'
const url = xCallbackPause({
xSuccess: 'shortcuts://callback',
})生成的 URL
ts
startWork({ time: '10min' })
// => 'tadam://start?time=10min'
startWork({ time: '5:30', open: true })
// => 'tadam://start?time=5:30&open=true'
startBreak({ time: '5' })
// => 'tadam://break?time=5'
startBreak({ time: '10min', mini: true })
// => 'tadam://break?time=10min&mini=true'
pause()
// => 'tadam://pause'
resume()
// => 'tadam://resume'
stop()
// => 'tadam://stop'
help()
// => 'tadam://help'
xCallbackStartWork({ time: '10min' })
// => 'tadam://x-callback-url/start?time=10min'
xCallbackPause({ xSuccess: 'shortcuts://callback' })
// => 'tadam://x-callback-url/pause?x-success=shortcuts%3A%2F%2Fcallback'