n8n-nodes-ticktick 2.1.3 → 2.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +9 -7
- package/README.md +162 -29
- package/dist/credentials/TickTickOAuth2Api.credentials.js +3 -3
- package/dist/credentials/TickTickOAuth2Api.credentials.js.map +1 -1
- package/dist/credentials/TickTickSessionApi.credentials.js +1 -1
- package/dist/credentials/TickTickSessionApi.credentials.js.map +1 -1
- package/dist/credentials/TickTickTokenApi.credentials.js +3 -4
- package/dist/credentials/TickTickTokenApi.credentials.js.map +1 -1
- package/dist/nodes/TickTick/TickTick.node.d.ts +5 -1
- package/dist/nodes/TickTick/TickTick.node.js +5 -0
- package/dist/nodes/TickTick/TickTick.node.js.map +1 -1
- package/dist/nodes/TickTick/helpers/apiRequest.js +11 -21
- package/dist/nodes/TickTick/helpers/apiRequest.js.map +1 -1
- package/dist/nodes/TickTick/helpers/constants.d.ts +72 -0
- package/dist/nodes/TickTick/helpers/constants.js +74 -1
- package/dist/nodes/TickTick/helpers/constants.js.map +1 -1
- package/dist/nodes/TickTick/helpers/credentialTest.d.ts +2 -0
- package/dist/nodes/TickTick/helpers/credentialTest.js +68 -0
- package/dist/nodes/TickTick/helpers/credentialTest.js.map +1 -0
- package/dist/nodes/TickTick/helpers/dates.d.ts +1 -1
- package/dist/nodes/TickTick/helpers/dates.js +5 -10
- package/dist/nodes/TickTick/helpers/dates.js.map +1 -1
- package/dist/nodes/TickTick/helpers/loadOptions.js +47 -72
- package/dist/nodes/TickTick/helpers/loadOptions.js.map +1 -1
- package/dist/nodes/TickTick/helpers/sessionManager.d.ts +4 -0
- package/dist/nodes/TickTick/helpers/sessionManager.js +17 -14
- package/dist/nodes/TickTick/helpers/sessionManager.js.map +1 -1
- package/dist/nodes/TickTick/{types/api.d.ts → helpers/types.d.ts} +29 -1
- package/dist/nodes/TickTick/{types/registry.js → helpers/types.js} +1 -1
- package/dist/nodes/TickTick/helpers/types.js.map +1 -0
- package/dist/nodes/TickTick/helpers/utils.d.ts +1 -1
- package/dist/nodes/TickTick/helpers/utils.js +4 -6
- package/dist/nodes/TickTick/helpers/utils.js.map +1 -1
- package/dist/nodes/TickTick/resources/focus/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/focus/operations/FocusGetDistribution.js +6 -5
- package/dist/nodes/TickTick/resources/focus/operations/FocusGetDistribution.js.map +1 -1
- package/dist/nodes/TickTick/resources/focus/operations/FocusGetHeatmap.js +6 -5
- package/dist/nodes/TickTick/resources/focus/operations/FocusGetHeatmap.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/habits/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitArchive.js +4 -5
- package/dist/nodes/TickTick/resources/habits/operations/HabitArchive.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitCheckin.js +5 -6
- package/dist/nodes/TickTick/resources/habits/operations/HabitCheckin.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitCreate.js +19 -20
- package/dist/nodes/TickTick/resources/habits/operations/HabitCreate.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitDelete.js +2 -2
- package/dist/nodes/TickTick/resources/habits/operations/HabitDelete.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitGet.js +2 -2
- package/dist/nodes/TickTick/resources/habits/operations/HabitGet.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitList.js +3 -4
- package/dist/nodes/TickTick/resources/habits/operations/HabitList.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitUnarchive.js +4 -5
- package/dist/nodes/TickTick/resources/habits/operations/HabitUnarchive.js.map +1 -1
- package/dist/nodes/TickTick/resources/habits/operations/HabitUpdate.js +3 -3
- package/dist/nodes/TickTick/resources/habits/operations/HabitUpdate.js.map +1 -1
- package/dist/nodes/TickTick/resources/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/index.js +2 -2
- package/dist/nodes/TickTick/resources/index.js.map +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupCreate.js +2 -2
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupCreate.js.map +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupDelete.js +2 -2
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupDelete.js.map +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupList.d.ts +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupList.js +3 -3
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupList.js.map +1 -1
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupUpdate.js +2 -2
- package/dist/nodes/TickTick/resources/projectGroups/operations/ProjectGroupUpdate.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/projects/methods.js +7 -9
- package/dist/nodes/TickTick/resources/projects/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/operations/ProjectCreate.js +3 -3
- package/dist/nodes/TickTick/resources/projects/operations/ProjectCreate.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/operations/ProjectDelete.js +3 -3
- package/dist/nodes/TickTick/resources/projects/operations/ProjectDelete.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/operations/ProjectGet.js +6 -6
- package/dist/nodes/TickTick/resources/projects/operations/ProjectGet.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/operations/ProjectGetUsers.js +3 -3
- package/dist/nodes/TickTick/resources/projects/operations/ProjectGetUsers.js.map +1 -1
- package/dist/nodes/TickTick/resources/projects/operations/ProjectUpdate.js +4 -4
- package/dist/nodes/TickTick/resources/projects/operations/ProjectUpdate.js.map +1 -1
- package/dist/nodes/TickTick/resources/shared/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/sync/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/sync/operations/SyncAll.d.ts +1 -1
- package/dist/nodes/TickTick/resources/sync/operations/SyncAll.js +3 -3
- package/dist/nodes/TickTick/resources/sync/operations/SyncAll.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/tags/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagCreate.js +2 -2
- package/dist/nodes/TickTick/resources/tags/operations/TagCreate.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagDelete.js +2 -2
- package/dist/nodes/TickTick/resources/tags/operations/TagDelete.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagList.d.ts +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagList.js +3 -3
- package/dist/nodes/TickTick/resources/tags/operations/TagList.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagMerge.js +2 -2
- package/dist/nodes/TickTick/resources/tags/operations/TagMerge.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagRename.js +2 -2
- package/dist/nodes/TickTick/resources/tags/operations/TagRename.js.map +1 -1
- package/dist/nodes/TickTick/resources/tags/operations/TagUpdate.js +3 -3
- package/dist/nodes/TickTick/resources/tags/operations/TagUpdate.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/TasksDescription.js +6 -0
- package/dist/nodes/TickTick/resources/tasks/TasksDescription.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/tasks/index.js +1 -0
- package/dist/nodes/TickTick/resources/tasks/index.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/methods.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskAssign.js +2 -2
- package/dist/nodes/TickTick/resources/tasks/operations/TaskAssign.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskComplete.js +4 -4
- package/dist/nodes/TickTick/resources/tasks/operations/TaskComplete.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskCreate.js +3 -3
- package/dist/nodes/TickTick/resources/tasks/operations/TaskCreate.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskDelete.js +4 -4
- package/dist/nodes/TickTick/resources/tasks/operations/TaskDelete.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskGet.js +3 -3
- package/dist/nodes/TickTick/resources/tasks/operations/TaskGet.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListAll.js +11 -11
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListAll.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListCompleted.js +4 -6
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListCompleted.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListDeleted.js +2 -2
- package/dist/nodes/TickTick/resources/tasks/operations/TaskListDeleted.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskMove.js +2 -2
- package/dist/nodes/TickTick/resources/tasks/operations/TaskMove.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskSearch.d.ts +3 -0
- package/dist/nodes/TickTick/resources/tasks/operations/TaskSearch.js +57 -0
- package/dist/nodes/TickTick/resources/tasks/operations/TaskSearch.js.map +1 -0
- package/dist/nodes/TickTick/resources/tasks/operations/TaskSetParent.js +27 -10
- package/dist/nodes/TickTick/resources/tasks/operations/TaskSetParent.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskUpdate.d.ts +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/TaskUpdate.js +5 -5
- package/dist/nodes/TickTick/resources/tasks/operations/TaskUpdate.js.map +1 -1
- package/dist/nodes/TickTick/resources/tasks/operations/index.d.ts +1 -0
- package/dist/nodes/TickTick/resources/tasks/operations/index.js +1 -0
- package/dist/nodes/TickTick/resources/tasks/operations/index.js.map +1 -1
- package/dist/nodes/TickTick/resources/user/index.d.ts +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetPreferences.d.ts +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetPreferences.js +3 -3
- package/dist/nodes/TickTick/resources/user/operations/UserGetPreferences.js.map +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetProfile.d.ts +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetProfile.js +3 -3
- package/dist/nodes/TickTick/resources/user/operations/UserGetProfile.js.map +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetStatus.d.ts +1 -1
- package/dist/nodes/TickTick/resources/user/operations/UserGetStatus.js +3 -3
- package/dist/nodes/TickTick/resources/user/operations/UserGetStatus.js.map +1 -1
- package/dist/package.json +18 -17
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +18 -17
- package/dist/nodes/TickTick/constants/defaults.d.ts +0 -27
- package/dist/nodes/TickTick/constants/defaults.js +0 -31
- package/dist/nodes/TickTick/constants/defaults.js.map +0 -1
- package/dist/nodes/TickTick/constants/endpoints.d.ts +0 -38
- package/dist/nodes/TickTick/constants/endpoints.js +0 -43
- package/dist/nodes/TickTick/constants/endpoints.js.map +0 -1
- package/dist/nodes/TickTick/constants/urls.d.ts +0 -6
- package/dist/nodes/TickTick/constants/urls.js +0 -10
- package/dist/nodes/TickTick/constants/urls.js.map +0 -1
- package/dist/nodes/TickTick/types/api.js +0 -3
- package/dist/nodes/TickTick/types/api.js.map +0 -1
- package/dist/nodes/TickTick/types/registry.d.ts +0 -26
- package/dist/nodes/TickTick/types/registry.js.map +0 -1
package/LICENSE.md
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
MIT License
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
Copyright (c) 2026 Hans Doebel
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
9
11
|
|
|
10
12
|
The above copyright notice and this permission notice shall be included in all
|
|
11
13
|
copies or substantial portions of the Software.
|
package/README.md
CHANGED
|
@@ -1,44 +1,177 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">
|
|
2
|
+
<br>
|
|
3
|
+
n8n-nodes-ticktick
|
|
4
|
+
<br>
|
|
5
|
+
</h1>
|
|
2
6
|
|
|
3
|
-
|
|
7
|
+
<p align="center">
|
|
8
|
+
<img alt="NPM Version" src="https://img.shields.io/npm/v/n8n-nodes-ticktick">
|
|
9
|
+
<img alt="GitHub License" src="https://img.shields.io/github/license/hansdoebel/n8n-nodes-ticktick">
|
|
10
|
+
<img alt="NPM Downloads" src="https://img.shields.io/npm/dm/n8n-nodes-ticktick">
|
|
11
|
+
<img alt="NPM Last Update" src="https://img.shields.io/npm/last-update/n8n-nodes-ticktick">
|
|
12
|
+
<img alt="Static Badge" src="https://img.shields.io/badge/n8n-2.9.4-EA4B71?logo=n8n">
|
|
13
|
+
</p>
|
|
4
14
|
|
|
5
|
-
|
|
15
|
+
<p align="center">
|
|
16
|
+
<a href="#installation">Installation</a> |
|
|
17
|
+
<a href="#credentials">Credentials</a> |
|
|
18
|
+
<a href="#resources">Resources</a> |
|
|
19
|
+
<a href="#development">Development</a> |
|
|
20
|
+
<a href="#contributors">Contributors</a> |
|
|
21
|
+
<a href="#license">License</a>
|
|
22
|
+
</p>
|
|
6
23
|
|
|
7
|
-
|
|
8
|
-
n8n-nodes-ticktick
|
|
9
|
-
```
|
|
24
|
+
---
|
|
10
25
|
|
|
11
|
-
|
|
26
|
+
An n8n community node for integrating [TickTick](https://ticktick.com) with your workflows to manage tasks, projects, tags, habits, focus time, and more.
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
12
29
|
|
|
13
|
-
|
|
30
|
+
1. Make a new workflow or open an existing one
|
|
31
|
+
2. Open the nodes panel by selecting **+** or pressing **Tab**
|
|
32
|
+
3. Search for **TickTick**
|
|
33
|
+
4. Select **Install** to install the node for your instance
|
|
14
34
|
|
|
15
|
-
|
|
16
|
-
- **Projects** - Manage projects and shared collaborators
|
|
17
|
-
- **Project Groups** - Organize projects into groups (V2)
|
|
18
|
-
- **Tags** - Create, rename, merge tags (V2)
|
|
19
|
-
- **Habits** - Track habits with check-ins (V2)
|
|
20
|
-
- **Focus** - Get focus time heatmaps and distribution (V2)
|
|
21
|
-
- **User** - Get profile, status, and preferences (V2)
|
|
22
|
-
- **Sync** - Full data sync (V2)
|
|
35
|
+
## Credentials
|
|
23
36
|
|
|
24
|
-
|
|
37
|
+
This node supports three authentication methods:
|
|
25
38
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
| [Credentials](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/docs/credentials.md) | Authentication options |
|
|
30
|
-
| [API Reference](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/docs/api-reference.md) | All operations |
|
|
31
|
-
| [Testing](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/docs/testing.md) | Running tests |
|
|
32
|
-
| [Development](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/docs/development.md) | Contributing |
|
|
33
|
-
| [Troubleshooting](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/docs/troubleshooting.md) | Known issues and FAQ |
|
|
34
|
-
| [Changelog](https://github.com/hansdoebel/n8n-nodes-ticktick/blob/main/CHANGELOG.md) | Version history |
|
|
39
|
+
1. **TickTick Session API (V2)** -- Enter your TickTick email and password in n8n. Provides access to all features including V2 API operations. Session tokens are managed automatically.
|
|
40
|
+
2. **TickTick API Token (V1)** -- Go to TickTick Account Settings, then API Token, then Manage. Copy the token and paste it into a new TickTick API Token credential in n8n.
|
|
41
|
+
3. **TickTick OAuth2 (V1)** -- Visit [developer.ticktick.com](https://developer.ticktick.com/), go to Manage Apps, create a new app, copy the Client ID and Client Secret, and paste them into a new TickTick OAuth2 API credential in n8n.
|
|
35
42
|
|
|
36
43
|
## Resources
|
|
37
44
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
<details>
|
|
46
|
+
<summary><strong>Task</strong></summary>
|
|
47
|
+
|
|
48
|
+
| Operation | Description |
|
|
49
|
+
| --------- | ----------- |
|
|
50
|
+
| Create | Create a new task with optional subtasks |
|
|
51
|
+
| Get | Get a specific task by ID |
|
|
52
|
+
| Update | Update task properties |
|
|
53
|
+
| Complete | Mark a task as complete |
|
|
54
|
+
| Delete | Delete a task |
|
|
55
|
+
| Assign | Assign task to a user (shared projects only) |
|
|
56
|
+
| List All | List all tasks across projects with filtering |
|
|
57
|
+
| List Completed | Get completed tasks in date range |
|
|
58
|
+
| List Deleted | Get deleted/trashed tasks |
|
|
59
|
+
| Move | Move task to different project |
|
|
60
|
+
| Search | Search tasks by keyword across all projects (V2 API only) |
|
|
61
|
+
| Set Parent | Set a parent task (create subtask relationship) |
|
|
62
|
+
|
|
63
|
+
</details>
|
|
64
|
+
|
|
65
|
+
<details>
|
|
66
|
+
<summary><strong>Project</strong></summary>
|
|
67
|
+
|
|
68
|
+
| Operation | Description |
|
|
69
|
+
| --------- | ----------- |
|
|
70
|
+
| Create | Create a new project |
|
|
71
|
+
| Get | Get all projects, a specific project, or project with tasks and columns |
|
|
72
|
+
| Update | Update project properties |
|
|
73
|
+
| Delete | Delete a project |
|
|
74
|
+
| Get Users | Get users in a shared/collaborative project |
|
|
75
|
+
| List Closed | Get all closed projects |
|
|
76
|
+
|
|
77
|
+
</details>
|
|
78
|
+
|
|
79
|
+
<details>
|
|
80
|
+
<summary><strong>Tag</strong></summary>
|
|
81
|
+
|
|
82
|
+
| Operation | Description |
|
|
83
|
+
| --------- | ----------- |
|
|
84
|
+
| Create | Create a new tag |
|
|
85
|
+
| Update | Update existing tag |
|
|
86
|
+
| Delete | Delete a tag |
|
|
87
|
+
| List | List all tags |
|
|
88
|
+
| Rename | Rename a tag |
|
|
89
|
+
| Merge | Merge tag into another |
|
|
90
|
+
|
|
91
|
+
</details>
|
|
92
|
+
|
|
93
|
+
<details>
|
|
94
|
+
<summary><strong>Habit</strong></summary>
|
|
95
|
+
|
|
96
|
+
| Operation | Description |
|
|
97
|
+
| --------- | ----------- |
|
|
98
|
+
| Create | Create a new habit |
|
|
99
|
+
| Get | Get a specific habit |
|
|
100
|
+
| Update | Update existing habit |
|
|
101
|
+
| Archive | Archive a habit |
|
|
102
|
+
| Unarchive | Unarchive a habit |
|
|
103
|
+
| Delete | Delete a habit |
|
|
104
|
+
| List | List all habits |
|
|
105
|
+
| Checkin | Record habit check-in |
|
|
106
|
+
|
|
107
|
+
</details>
|
|
108
|
+
|
|
109
|
+
<details>
|
|
110
|
+
<summary><strong>Focus</strong></summary>
|
|
111
|
+
|
|
112
|
+
| Operation | Description |
|
|
113
|
+
| --------- | ----------- |
|
|
114
|
+
| Get Heatmap | Get focus heatmap data for date range |
|
|
115
|
+
| Get Distribution | Get focus time distribution for date range |
|
|
116
|
+
|
|
117
|
+
</details>
|
|
118
|
+
|
|
119
|
+
<details>
|
|
120
|
+
<summary><strong>Project Group</strong></summary>
|
|
121
|
+
|
|
122
|
+
| Operation | Description |
|
|
123
|
+
| --------- | ----------- |
|
|
124
|
+
| Create | Create a project group |
|
|
125
|
+
| Update | Update existing group |
|
|
126
|
+
| Delete | Delete a project group |
|
|
127
|
+
| List | List all project groups |
|
|
128
|
+
|
|
129
|
+
</details>
|
|
130
|
+
|
|
131
|
+
<details>
|
|
132
|
+
<summary><strong>User</strong></summary>
|
|
133
|
+
|
|
134
|
+
| Operation | Description |
|
|
135
|
+
| --------- | ----------- |
|
|
136
|
+
| Get Profile | Get user profile information |
|
|
137
|
+
| Get Status | Get user status |
|
|
138
|
+
| Get Preferences | Get user preferences |
|
|
139
|
+
|
|
140
|
+
</details>
|
|
141
|
+
|
|
142
|
+
<details>
|
|
143
|
+
<summary><strong>Sync</strong></summary>
|
|
144
|
+
|
|
145
|
+
| Operation | Description |
|
|
146
|
+
| --------- | ----------- |
|
|
147
|
+
| Sync All | Get all data (tasks, projects, tags, habits, etc.) |
|
|
148
|
+
|
|
149
|
+
</details>
|
|
150
|
+
|
|
151
|
+
## Development
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
git clone https://github.com/hansdoebel/n8n-nodes-ticktick.git
|
|
155
|
+
cd n8n-nodes-ticktick
|
|
156
|
+
npm install
|
|
157
|
+
npm run build
|
|
158
|
+
npm run lint
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## Contributors
|
|
162
|
+
|
|
163
|
+
Contributions are welcome! Please open an [issue](https://github.com/hansdoebel/n8n-nodes-ticktick/issues) or [pull request](https://github.com/hansdoebel/n8n-nodes-ticktick/pulls).
|
|
164
|
+
|
|
165
|
+
<p align="left">
|
|
166
|
+
<a href="https://github.com/mrozekadam"><img src="https://avatars.githubusercontent.com/u/56890953?v=4&s=48" width="48" height="48" alt="mrozekadam" title="mrozekadam"/></a><a href="https://github.com/kazhuravlev"><img src="https://avatars.githubusercontent.com/u/7666955?v=4&s=48" width="48" height="48" alt="kazhuravlev" title="kazhuravlev"/></a>
|
|
167
|
+
</p>
|
|
41
168
|
|
|
42
169
|
## License
|
|
43
170
|
|
|
44
171
|
[MIT](LICENSE.md)
|
|
172
|
+
|
|
173
|
+
<p align="center">
|
|
174
|
+
<a href="https://github.com/hansdoebel/n8n-nodes-ticktick">GitHub</a> |
|
|
175
|
+
<a href="https://github.com/hansdoebel/n8n-nodes-ticktick/issues">Issues</a> |
|
|
176
|
+
<a href="https://developer.ticktick.com">TickTick API Docs</a>
|
|
177
|
+
</p>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TickTickOAuth2Api = void 0;
|
|
4
|
-
const
|
|
4
|
+
const constants_1 = require("../nodes/TickTick/helpers/constants");
|
|
5
5
|
class TickTickOAuth2Api {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.name = "tickTickOAuth2Api";
|
|
@@ -20,14 +20,14 @@ class TickTickOAuth2Api {
|
|
|
20
20
|
displayName: "Authorization URL",
|
|
21
21
|
name: "authUrl",
|
|
22
22
|
type: "hidden",
|
|
23
|
-
default:
|
|
23
|
+
default: constants_1.TICKTICK_URLS.OAUTH_AUTHORIZE,
|
|
24
24
|
required: true,
|
|
25
25
|
},
|
|
26
26
|
{
|
|
27
27
|
displayName: "Access Token URL",
|
|
28
28
|
name: "accessTokenUrl",
|
|
29
29
|
type: "hidden",
|
|
30
|
-
default:
|
|
30
|
+
default: constants_1.TICKTICK_URLS.OAUTH_TOKEN,
|
|
31
31
|
required: true,
|
|
32
32
|
},
|
|
33
33
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickTickOAuth2Api.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickOAuth2Api.credentials.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"TickTickOAuth2Api.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickOAuth2Api.credentials.ts"],"names":[],"mappings":";;;AACA,mEAAoE;AAEpE,MAAa,iBAAiB;IAA9B;QACC,SAAI,GAAG,mBAAmB,CAAC;QAC3B,YAAO,GAAG,CAAC,WAAW,CAAC,CAAC;QACxB,gBAAW,GAAG,qBAAqB,CAAC;QACpC,qBAAgB,GAAG,8CAA8C,CAAC;QAElE,SAAI,GAAS,4BAA4B,CAAC;QAE1C,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,YAAY;gBACzB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,MAAM;aACf;YACD;gBACC,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,yBAAa,CAAC,eAAe;gBACtC,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,yBAAa,CAAC,WAAW;gBAClC,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,OAAO;gBACpB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;aACX;YACD;gBACC,WAAW,EAAE,2BAA2B;gBACxC,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;aACX;YACD;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,QAAQ;aACjB;SACD,CAAC;IACH,CAAC;CAAA;AA1DD,8CA0DC"}
|
|
@@ -28,7 +28,7 @@ class TickTickSessionApi {
|
|
|
28
28
|
description: "Your TickTick account password",
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
|
-
displayName: "Session auth uses TickTick's unofficial V2 API.
|
|
31
|
+
displayName: "Session auth uses TickTick's unofficial V2 API. 2FA is not supported.",
|
|
32
32
|
name: "notice",
|
|
33
33
|
type: "notice",
|
|
34
34
|
default: "",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickTickSessionApi.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickSessionApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;IAA/B;QACC,SAAI,GAAG,oBAAoB,CAAC;QAC5B,gBAAW,GAAG,2BAA2B,CAAC;QAC1C,qBAAgB,GAAG,kDAAkD,CAAC;QACtE,SAAI,GAAS,4BAA4B,CAAC;QAC1C,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,OAAO;gBACpB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,6BAA6B;aAC1C;YACD;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,gCAAgC;aAC7C;YACD;gBACC,WAAW,EACV,
|
|
1
|
+
{"version":3,"file":"TickTickSessionApi.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickSessionApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;IAA/B;QACC,SAAI,GAAG,oBAAoB,CAAC;QAC5B,gBAAW,GAAG,2BAA2B,CAAC;QAC1C,qBAAgB,GAAG,kDAAkD,CAAC;QACtE,SAAI,GAAS,4BAA4B,CAAC;QAC1C,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,OAAO;gBACpB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,6BAA6B;aAC1C;YACD;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,gCAAgC;aAC7C;YACD;gBACC,WAAW,EACV,uEAAuE;gBACxE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;aACX;SACD,CAAC;IACH,CAAC;CAAA;AAjCD,gDAiCC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TickTickTokenApi = void 0;
|
|
4
|
-
const
|
|
5
|
-
const urls_1 = require("../nodes/TickTick/constants/urls");
|
|
4
|
+
const constants_1 = require("../nodes/TickTick/helpers/constants");
|
|
6
5
|
class TickTickTokenApi {
|
|
7
6
|
constructor() {
|
|
8
7
|
this.name = "tickTickTokenApi";
|
|
@@ -30,8 +29,8 @@ class TickTickTokenApi {
|
|
|
30
29
|
};
|
|
31
30
|
this.test = {
|
|
32
31
|
request: {
|
|
33
|
-
baseURL:
|
|
34
|
-
url:
|
|
32
|
+
baseURL: constants_1.TICKTICK_URLS.BASE_URL,
|
|
33
|
+
url: constants_1.ENDPOINTS.OPEN_V1_PROJECT,
|
|
35
34
|
},
|
|
36
35
|
};
|
|
37
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickTickTokenApi.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickTokenApi.credentials.ts"],"names":[],"mappings":";;;AAOA,
|
|
1
|
+
{"version":3,"file":"TickTickTokenApi.credentials.js","sourceRoot":"","sources":["../../credentials/TickTickTokenApi.credentials.ts"],"names":[],"mappings":";;;AAOA,mEAA+E;AAE/E,MAAa,gBAAgB;IAA7B;QACC,SAAI,GAAG,kBAAkB,CAAC;QAC1B,gBAAW,GAAG,cAAc,CAAC;QAC7B,qBAAgB,GAAG,8CAA8C,CAAC;QAClE,SAAI,GAAS,4BAA4B,CAAC;QAC1C,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;aACD;SACD,CAAC;QACF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,qCAAqC;iBACpD;aACD;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,yBAAa,CAAC,QAAQ;gBAC/B,GAAG,EAAE,qBAAS,CAAC,eAAe;aAC9B;SACD,CAAC;IACH,CAAC;CAAA;AA/BD,4CA+BC"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from "n8n-workflow";
|
|
2
|
+
import { testTickTickSessionApi } from "./helpers/credentialTest";
|
|
2
3
|
export declare class TickTick implements INodeType {
|
|
3
4
|
description: INodeTypeDescription;
|
|
4
5
|
methods: {
|
|
5
|
-
loadOptions: Record<string, import("./types
|
|
6
|
+
loadOptions: Record<string, import("./helpers/types").LoadOptionsFunction>;
|
|
6
7
|
listSearch: {
|
|
7
8
|
searchTasks(this: import("n8n-workflow").ILoadOptionsFunctions, filter?: string): Promise<import("n8n-workflow").INodeListSearchResult>;
|
|
8
9
|
};
|
|
10
|
+
credentialTest: {
|
|
11
|
+
tickTickSessionApiTest: typeof testTickTickSessionApi;
|
|
12
|
+
};
|
|
9
13
|
};
|
|
10
14
|
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
|
11
15
|
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TickTick = void 0;
|
|
4
4
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const credentialTest_1 = require("./helpers/credentialTest");
|
|
5
6
|
const resources_1 = require("./resources");
|
|
6
7
|
class TickTick {
|
|
7
8
|
constructor() {
|
|
@@ -37,6 +38,7 @@ class TickTick {
|
|
|
37
38
|
{
|
|
38
39
|
name: "tickTickSessionApi",
|
|
39
40
|
required: true,
|
|
41
|
+
testedBy: "tickTickSessionApiTest",
|
|
40
42
|
displayOptions: {
|
|
41
43
|
show: { authentication: ["tickTickSessionApi"] },
|
|
42
44
|
},
|
|
@@ -80,6 +82,9 @@ class TickTick {
|
|
|
80
82
|
...resources_1.registry.getAllListSearch(),
|
|
81
83
|
...resources_1.sharedMethods.listSearch,
|
|
82
84
|
},
|
|
85
|
+
credentialTest: {
|
|
86
|
+
tickTickSessionApiTest: credentialTest_1.testTickTickSessionApi,
|
|
87
|
+
},
|
|
83
88
|
};
|
|
84
89
|
}
|
|
85
90
|
async execute() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickTick.node.js","sourceRoot":"","sources":["../../../nodes/TickTick/TickTick.node.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TickTick.node.js","sourceRoot":"","sources":["../../../nodes/TickTick/TickTick.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ exports.tickTickApiRequestV2 = tickTickApiRequestV2;
|
|
|
5
5
|
exports.getAuthenticationType = getAuthenticationType;
|
|
6
6
|
exports.isV2Auth = isV2Auth;
|
|
7
7
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
8
|
-
const
|
|
8
|
+
const constants_1 = require("./constants");
|
|
9
9
|
const sessionManager_1 = require("./sessionManager");
|
|
10
10
|
async function tickTickApiRequest(method, endpoint, body = {}, qs = {}) {
|
|
11
11
|
let authentication;
|
|
@@ -20,7 +20,7 @@ async function tickTickApiRequest(method, endpoint, body = {}, qs = {}) {
|
|
|
20
20
|
authentication = "tickTickTokenApi";
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
catch
|
|
23
|
+
catch {
|
|
24
24
|
authentication = "tickTickTokenApi";
|
|
25
25
|
}
|
|
26
26
|
if (authentication === "tickTickSessionApi") {
|
|
@@ -34,7 +34,7 @@ async function tickTickApiRequest(method, endpoint, body = {}, qs = {}) {
|
|
|
34
34
|
const options = {
|
|
35
35
|
method,
|
|
36
36
|
qs,
|
|
37
|
-
url: `${
|
|
37
|
+
url: `${constants_1.TICKTICK_URLS.API_BASE_URL}${endpoint}`,
|
|
38
38
|
json: true,
|
|
39
39
|
};
|
|
40
40
|
if (Object.keys(body).length) {
|
|
@@ -43,16 +43,10 @@ async function tickTickApiRequest(method, endpoint, body = {}, qs = {}) {
|
|
|
43
43
|
try {
|
|
44
44
|
let response;
|
|
45
45
|
if (authentication === "tickTickOAuth2Api") {
|
|
46
|
-
|
|
47
|
-
throw new Error("OAuth2 helper is not available");
|
|
48
|
-
}
|
|
49
|
-
response = await this.helpers.requestOAuth2.call(this, "tickTickOAuth2Api", options);
|
|
46
|
+
response = await this.helpers.httpRequestWithAuthentication.call(this, "tickTickOAuth2Api", options);
|
|
50
47
|
}
|
|
51
48
|
else if (authentication === "tickTickTokenApi") {
|
|
52
|
-
|
|
53
|
-
throw new Error("Auth helper is not available");
|
|
54
|
-
}
|
|
55
|
-
response = await this.helpers.requestWithAuthentication.call(this, "tickTickTokenApi", options);
|
|
49
|
+
response = await this.helpers.httpRequestWithAuthentication.call(this, "tickTickTokenApi", options);
|
|
56
50
|
}
|
|
57
51
|
else {
|
|
58
52
|
throw new n8n_workflow_1.NodeApiError(this.getNode(), {
|
|
@@ -67,8 +61,10 @@ async function tickTickApiRequest(method, endpoint, body = {}, qs = {}) {
|
|
|
67
61
|
}
|
|
68
62
|
async function tickTickApiRequestV2(method, endpoint, body = {}, qs = {}) {
|
|
69
63
|
var _a;
|
|
64
|
+
let sessionUsername;
|
|
70
65
|
try {
|
|
71
|
-
const { token, deviceId, userAgent, deviceVersion } = await (0, sessionManager_1.getV2Session)(this);
|
|
66
|
+
const { token, deviceId, userAgent, deviceVersion, username } = await (0, sessionManager_1.getV2Session)(this);
|
|
67
|
+
sessionUsername = username;
|
|
72
68
|
const options = {
|
|
73
69
|
method,
|
|
74
70
|
url: `${(0, sessionManager_1.getV2ApiBase)()}${endpoint}`,
|
|
@@ -85,13 +81,8 @@ async function tickTickApiRequestV2(method, endpoint, body = {}, qs = {}) {
|
|
|
85
81
|
catch (error) {
|
|
86
82
|
const statusCode = error.statusCode || ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) ||
|
|
87
83
|
error.httpCode;
|
|
88
|
-
if (statusCode === 401 || statusCode === 403) {
|
|
89
|
-
|
|
90
|
-
const credentials = await this.getCredentials("tickTickSessionApi");
|
|
91
|
-
(0, sessionManager_1.clearV2Session)(credentials.username);
|
|
92
|
-
}
|
|
93
|
-
catch {
|
|
94
|
-
}
|
|
84
|
+
if ((statusCode === 401 || statusCode === 403) && sessionUsername) {
|
|
85
|
+
(0, sessionManager_1.clearV2Session)(sessionUsername);
|
|
95
86
|
}
|
|
96
87
|
throw new n8n_workflow_1.NodeApiError(this.getNode(), error);
|
|
97
88
|
}
|
|
@@ -105,8 +96,7 @@ function getAuthenticationType(context, itemIndex = 0) {
|
|
|
105
96
|
return context.getNodeParameter("authentication", itemIndex);
|
|
106
97
|
}
|
|
107
98
|
}
|
|
108
|
-
catch {
|
|
109
|
-
}
|
|
99
|
+
catch { }
|
|
110
100
|
return "tickTickTokenApi";
|
|
111
101
|
}
|
|
112
102
|
function isV2Auth(context, itemIndex = 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiRequest.js","sourceRoot":"","sources":["../../../../nodes/TickTick/helpers/apiRequest.ts"],"names":[],"mappings":";;AAiBA,
|
|
1
|
+
{"version":3,"file":"apiRequest.js","sourceRoot":"","sources":["../../../../nodes/TickTick/helpers/apiRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,75 @@
|
|
|
1
|
+
export declare const TICKTICK_URLS: {
|
|
2
|
+
readonly BASE_URL: "https://ticktick.com";
|
|
3
|
+
readonly API_BASE_URL: "https://api.ticktick.com";
|
|
4
|
+
readonly OAUTH_AUTHORIZE: "https://ticktick.com/oauth/authorize";
|
|
5
|
+
readonly OAUTH_TOKEN: "https://ticktick.com/oauth/token";
|
|
6
|
+
};
|
|
7
|
+
export declare const ENDPOINTS: {
|
|
8
|
+
readonly TASKS: "/tasks";
|
|
9
|
+
readonly TASKS_BATCH: "/batch/task";
|
|
10
|
+
readonly HABITS: "/habits";
|
|
11
|
+
readonly HABITS_BATCH: "/habits/batch";
|
|
12
|
+
readonly HABIT_CHECKINS_BATCH: "/habitCheckins/batch";
|
|
13
|
+
readonly HABIT_SECTIONS: "/habitSections";
|
|
14
|
+
readonly PROJECTS: "/projects";
|
|
15
|
+
readonly PROJECTS_BATCH: "/batch/project";
|
|
16
|
+
readonly PROJECT_GROUPS: "/projectGroups";
|
|
17
|
+
readonly PROJECT_GROUPS_BATCH: "/batch/projectGroup";
|
|
18
|
+
readonly TAGS: "/tags";
|
|
19
|
+
readonly TAGS_BATCH: "/batch/tag";
|
|
20
|
+
readonly TAG: "/tag";
|
|
21
|
+
readonly TAG_RENAME: "/tag/rename";
|
|
22
|
+
readonly TAG_MERGE: "/tag/merge";
|
|
23
|
+
readonly PROJECT_ALL_CLOSED: "/project/all/closed";
|
|
24
|
+
readonly PROJECT_ALL_TRASH_PAGINATION: "/project/all/trash/pagination";
|
|
25
|
+
readonly PROJECT_ALL_COMPLETED: "/project/all/completed";
|
|
26
|
+
readonly SEARCH_ALL: "/search/all";
|
|
27
|
+
readonly OPEN_V1_PROJECT: "/open/v1/project";
|
|
28
|
+
readonly OPEN_V1_PROJECT_BY_ID: (projectId: string) => string;
|
|
29
|
+
readonly OPEN_V1_PROJECT_DATA: (projectId: string) => string;
|
|
30
|
+
readonly OPEN_V1_TASK: "/open/v1/task";
|
|
31
|
+
readonly OPEN_V1_TASK_UPDATE: (taskId: string) => string;
|
|
32
|
+
readonly OPEN_V1_TASK_ALL: (taskId: string) => string;
|
|
33
|
+
readonly OPEN_V1_TASK_BY_PROJECT: (projectId: string, taskId: string) => string;
|
|
34
|
+
readonly OPEN_V1_TASK_COMPLETE: (projectId: string, taskId: string) => string;
|
|
35
|
+
readonly FOCUS_HEATMAP: (start: string, end: string) => string;
|
|
36
|
+
readonly FOCUS_DISTRIBUTION: (start: string, end: string) => string;
|
|
37
|
+
readonly SYNC: "/batch/check/0";
|
|
38
|
+
readonly USER_PROFILE: "/user/profile";
|
|
39
|
+
readonly USER_STATUS: "/user/status";
|
|
40
|
+
readonly USER_PREFERENCES_SETTINGS: "/user/preferences/settings";
|
|
41
|
+
readonly PROJECT_USERS: (projectId: string) => string;
|
|
42
|
+
readonly TASK_ASSIGN: "/task/assign";
|
|
43
|
+
readonly TASK_PROJECT: "/batch/taskProject";
|
|
44
|
+
readonly TASK_PARENT: "/batch/taskParent";
|
|
45
|
+
};
|
|
46
|
+
export declare const DEFAULT_HABIT_COLOR = "#97E38B";
|
|
47
|
+
export declare const DEFAULT_HABIT_ICON = "habit_daily_check_in";
|
|
48
|
+
export declare const DEFAULT_HABIT_TYPE = "Boolean";
|
|
49
|
+
export declare const DEFAULT_HABIT_UNIT = "Count";
|
|
50
|
+
export declare const DEFAULT_HABIT_GOAL = 1;
|
|
51
|
+
export declare const DEFAULT_HABIT_STEP = 0;
|
|
52
|
+
export declare const DEFAULT_HABIT_TARGET_DAYS = 0;
|
|
53
|
+
export declare const DEFAULT_HABIT_ENCOURAGEMENT = "";
|
|
54
|
+
export declare const DEFAULT_HABIT_REPEAT_RULE = "RRULE:FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA";
|
|
55
|
+
export declare const TASK_STATUS: {
|
|
56
|
+
readonly NORMAL: 0;
|
|
57
|
+
readonly COMPLETED: 2;
|
|
58
|
+
readonly DELETED: 1;
|
|
59
|
+
};
|
|
60
|
+
export declare const TASK_PRIORITY: {
|
|
61
|
+
readonly NONE: 0;
|
|
62
|
+
readonly LOW: 1;
|
|
63
|
+
readonly MEDIUM: 3;
|
|
64
|
+
readonly HIGH: 5;
|
|
65
|
+
};
|
|
66
|
+
export declare const HABIT_STATUS: {
|
|
67
|
+
readonly ACTIVE: 0;
|
|
68
|
+
readonly ARCHIVED: 2;
|
|
69
|
+
};
|
|
70
|
+
export declare const CHECKIN_STATUS: {
|
|
71
|
+
readonly COMPLETED: 2;
|
|
72
|
+
};
|
|
1
73
|
export declare const TimeZones: {
|
|
2
74
|
name: string;
|
|
3
75
|
value: string;
|
|
@@ -1,6 +1,79 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TimeZones = void 0;
|
|
3
|
+
exports.TimeZones = exports.CHECKIN_STATUS = exports.HABIT_STATUS = exports.TASK_PRIORITY = exports.TASK_STATUS = exports.DEFAULT_HABIT_REPEAT_RULE = exports.DEFAULT_HABIT_ENCOURAGEMENT = exports.DEFAULT_HABIT_TARGET_DAYS = exports.DEFAULT_HABIT_STEP = exports.DEFAULT_HABIT_GOAL = exports.DEFAULT_HABIT_UNIT = exports.DEFAULT_HABIT_TYPE = exports.DEFAULT_HABIT_ICON = exports.DEFAULT_HABIT_COLOR = exports.ENDPOINTS = exports.TICKTICK_URLS = void 0;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
5
|
+
exports.TICKTICK_URLS = {
|
|
6
|
+
BASE_URL: "https://ticktick.com",
|
|
7
|
+
API_BASE_URL: "https://api.ticktick.com",
|
|
8
|
+
OAUTH_AUTHORIZE: "https://ticktick.com/oauth/authorize",
|
|
9
|
+
OAUTH_TOKEN: "https://ticktick.com/oauth/token",
|
|
10
|
+
};
|
|
11
|
+
exports.ENDPOINTS = {
|
|
12
|
+
TASKS: "/tasks",
|
|
13
|
+
TASKS_BATCH: "/batch/task",
|
|
14
|
+
HABITS: "/habits",
|
|
15
|
+
HABITS_BATCH: "/habits/batch",
|
|
16
|
+
HABIT_CHECKINS_BATCH: "/habitCheckins/batch",
|
|
17
|
+
HABIT_SECTIONS: "/habitSections",
|
|
18
|
+
PROJECTS: "/projects",
|
|
19
|
+
PROJECTS_BATCH: "/batch/project",
|
|
20
|
+
PROJECT_GROUPS: "/projectGroups",
|
|
21
|
+
PROJECT_GROUPS_BATCH: "/batch/projectGroup",
|
|
22
|
+
TAGS: "/tags",
|
|
23
|
+
TAGS_BATCH: "/batch/tag",
|
|
24
|
+
TAG: "/tag",
|
|
25
|
+
TAG_RENAME: "/tag/rename",
|
|
26
|
+
TAG_MERGE: "/tag/merge",
|
|
27
|
+
PROJECT_ALL_CLOSED: "/project/all/closed",
|
|
28
|
+
PROJECT_ALL_TRASH_PAGINATION: "/project/all/trash/pagination",
|
|
29
|
+
PROJECT_ALL_COMPLETED: "/project/all/completed",
|
|
30
|
+
SEARCH_ALL: "/search/all",
|
|
31
|
+
OPEN_V1_PROJECT: "/open/v1/project",
|
|
32
|
+
OPEN_V1_PROJECT_BY_ID: (projectId) => `/open/v1/project/${(0, utils_1.validatePathParam)(projectId, "projectId")}`,
|
|
33
|
+
OPEN_V1_PROJECT_DATA: (projectId) => `/open/v1/project/${(0, utils_1.validatePathParam)(projectId, "projectId")}/data`,
|
|
34
|
+
OPEN_V1_TASK: "/open/v1/task",
|
|
35
|
+
OPEN_V1_TASK_UPDATE: (taskId) => `/open/v1/task/${(0, utils_1.validatePathParam)(taskId, "taskId")}`,
|
|
36
|
+
OPEN_V1_TASK_ALL: (taskId) => `/open/v1/project/all/task/${(0, utils_1.validatePathParam)(taskId, "taskId")}`,
|
|
37
|
+
OPEN_V1_TASK_BY_PROJECT: (projectId, taskId) => `/open/v1/project/${(0, utils_1.validatePathParam)(projectId, "projectId")}/task/${(0, utils_1.validatePathParam)(taskId, "taskId")}`,
|
|
38
|
+
OPEN_V1_TASK_COMPLETE: (projectId, taskId) => `/open/v1/project/${(0, utils_1.validatePathParam)(projectId, "projectId")}/task/${(0, utils_1.validatePathParam)(taskId, "taskId")}/complete`,
|
|
39
|
+
FOCUS_HEATMAP: (start, end) => `/pomodoros/statistics/heatmap/${(0, utils_1.validatePathParam)(start, "startDate")}/${(0, utils_1.validatePathParam)(end, "endDate")}`,
|
|
40
|
+
FOCUS_DISTRIBUTION: (start, end) => `/pomodoros/statistics/dist/${(0, utils_1.validatePathParam)(start, "startDate")}/${(0, utils_1.validatePathParam)(end, "endDate")}`,
|
|
41
|
+
SYNC: "/batch/check/0",
|
|
42
|
+
USER_PROFILE: "/user/profile",
|
|
43
|
+
USER_STATUS: "/user/status",
|
|
44
|
+
USER_PREFERENCES_SETTINGS: "/user/preferences/settings",
|
|
45
|
+
PROJECT_USERS: (projectId) => `/project/${(0, utils_1.validatePathParam)(projectId, "projectId")}/users`,
|
|
46
|
+
TASK_ASSIGN: "/task/assign",
|
|
47
|
+
TASK_PROJECT: "/batch/taskProject",
|
|
48
|
+
TASK_PARENT: "/batch/taskParent",
|
|
49
|
+
};
|
|
50
|
+
exports.DEFAULT_HABIT_COLOR = "#97E38B";
|
|
51
|
+
exports.DEFAULT_HABIT_ICON = "habit_daily_check_in";
|
|
52
|
+
exports.DEFAULT_HABIT_TYPE = "Boolean";
|
|
53
|
+
exports.DEFAULT_HABIT_UNIT = "Count";
|
|
54
|
+
exports.DEFAULT_HABIT_GOAL = 1;
|
|
55
|
+
exports.DEFAULT_HABIT_STEP = 0;
|
|
56
|
+
exports.DEFAULT_HABIT_TARGET_DAYS = 0;
|
|
57
|
+
exports.DEFAULT_HABIT_ENCOURAGEMENT = "";
|
|
58
|
+
exports.DEFAULT_HABIT_REPEAT_RULE = "RRULE:FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA";
|
|
59
|
+
exports.TASK_STATUS = {
|
|
60
|
+
NORMAL: 0,
|
|
61
|
+
COMPLETED: 2,
|
|
62
|
+
DELETED: 1,
|
|
63
|
+
};
|
|
64
|
+
exports.TASK_PRIORITY = {
|
|
65
|
+
NONE: 0,
|
|
66
|
+
LOW: 1,
|
|
67
|
+
MEDIUM: 3,
|
|
68
|
+
HIGH: 5,
|
|
69
|
+
};
|
|
70
|
+
exports.HABIT_STATUS = {
|
|
71
|
+
ACTIVE: 0,
|
|
72
|
+
ARCHIVED: 2,
|
|
73
|
+
};
|
|
74
|
+
exports.CHECKIN_STATUS = {
|
|
75
|
+
COMPLETED: 2,
|
|
76
|
+
};
|
|
4
77
|
exports.TimeZones = [
|
|
5
78
|
{ name: "America/Anchorage", value: "America/Anchorage" },
|
|
6
79
|
{
|