@pipedream/todoist 0.1.3 → 0.1.4
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/README.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Overview
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
-
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
|
|
11
|
-
-
|
|
3
|
+
The Todoist API unlocks the potential to automate task management with precision. With Pipedream, you can craft workflows that react to events in Todoist, like task completions or due date changes, or drive actions in Todoist, such as creating tasks or updating projects. By integrating Todoist with Pipedream, you can seamlessly connect your to-do list with other apps to streamline your productivity, manage tasks based on triggers from other services, or compile reports on your task management patterns.
|
|
4
|
+
|
|
5
|
+
# Example Use Cases
|
|
6
|
+
|
|
7
|
+
- **Task Completion Notifications**: Send a notification through Slack or email when a high-priority task is completed in Todoist. This keeps your team in sync and immediately alerts members of critical task progress.
|
|
8
|
+
|
|
9
|
+
- **Calendar Syncing**: Automatically create a Google Calendar event when a new task with a due date is added to Todoist. This ensures you never miss a deadline and integrates your task list with your personal or work calendar.
|
|
10
|
+
|
|
11
|
+
- **GitHub Issue Tracking**: Whenever a new GitHub issue is reported, create a corresponding task in Todoist and assign it to the relevant team member. This bridges the gap between issue tracking and personal task management.
|
|
@@ -4,10 +4,15 @@ export default {
|
|
|
4
4
|
key: "todoist-create-task",
|
|
5
5
|
name: "Create Task",
|
|
6
6
|
description: "Creates a task. [See the docs here](https://developer.todoist.com/rest/v2/#create-a-new-task)",
|
|
7
|
-
version: "0.0.
|
|
7
|
+
version: "0.0.5",
|
|
8
8
|
type: "action",
|
|
9
9
|
props: {
|
|
10
10
|
todoist,
|
|
11
|
+
recurringInfoLabel: {
|
|
12
|
+
type: "alert",
|
|
13
|
+
alertType: "info",
|
|
14
|
+
content: "To create a recurring task, use the `Due String` prop with a value such as `every week`. [See the Todoist documentation on recurring dates](https://www.todoist.com/help/articles/introduction-to-recurring-dates-YUYVJJAV) for more examples and information.",
|
|
15
|
+
},
|
|
11
16
|
content: {
|
|
12
17
|
propDefinition: [
|
|
13
18
|
todoist,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pipedream/todoist",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Pipedream Todoist Components",
|
|
5
5
|
"main": "todoist.app.mjs",
|
|
6
6
|
"keywords": [
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"homepage": "https://pipedream.com/apps/todoist",
|
|
11
11
|
"author": "Pipedream <support@pipedream.com> (https://pipedream.com/)",
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@pipedream/platform": "^
|
|
13
|
+
"@pipedream/platform": "^3.0.3",
|
|
14
14
|
"json-2-csv": "^3.15.1",
|
|
15
15
|
"query-string": "^7.1.3",
|
|
16
16
|
"tmp-promise": "^3.0.3",
|
|
@@ -5,13 +5,36 @@ export default {
|
|
|
5
5
|
key: "todoist-completed-task",
|
|
6
6
|
name: "New Completed Task",
|
|
7
7
|
description: "Emit new event for each completed task. [See the docs here](https://developer.todoist.com/sync/v8/#read-resources)",
|
|
8
|
-
version: "0.0
|
|
8
|
+
version: "1.0.0",
|
|
9
9
|
type: "source",
|
|
10
10
|
dedupe: "unique",
|
|
11
11
|
methods: {
|
|
12
12
|
...common.methods,
|
|
13
|
-
|
|
14
|
-
return
|
|
13
|
+
_getLastDate() {
|
|
14
|
+
return this.db.get("lastDate");
|
|
15
|
+
},
|
|
16
|
+
_setLastDate(value) {
|
|
17
|
+
this.db.set("lastDate", value);
|
|
18
|
+
},
|
|
19
|
+
async getSyncResult() {
|
|
20
|
+
const lastDate = this._getLastDate();
|
|
21
|
+
const items = await this.todoist.getCompletedTasks({
|
|
22
|
+
params: {
|
|
23
|
+
since: lastDate,
|
|
24
|
+
annotate_items: true,
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const newDate = new Date().toISOString();
|
|
29
|
+
this._setLastDate(newDate);
|
|
30
|
+
|
|
31
|
+
console.log(items);
|
|
32
|
+
return items;
|
|
33
|
+
},
|
|
34
|
+
filterResults(syncResult) {
|
|
35
|
+
return syncResult
|
|
36
|
+
.filter((element) =>
|
|
37
|
+
this.todoist.isProjectInList(element.project_id, this.selectProjects ?? []));
|
|
15
38
|
},
|
|
16
39
|
},
|
|
17
40
|
};
|