@doist/todoist-sdk 8.5.0-next.1 → 9.0.0
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/dist/cjs/consts/endpoints.js +1 -6
- package/dist/cjs/test-utils/test-defaults.js +15 -12
- package/dist/cjs/todoist-api.js +0 -128
- package/dist/cjs/types/activity/types.js +1 -1
- package/dist/cjs/types/comments/types.js +1 -1
- package/dist/cjs/types/index.js +0 -1
- package/dist/cjs/types/insights/types.js +6 -4
- package/dist/cjs/types/projects/types.js +2 -2
- package/dist/cjs/types/sections/types.js +3 -3
- package/dist/cjs/types/sync/commands/index.js +0 -1
- package/dist/cjs/types/sync/resource-types.js +0 -1
- package/dist/cjs/types/sync/resources/live-notifications.js +1 -1
- package/dist/cjs/types/sync/resources/notes.js +1 -1
- package/dist/cjs/types/sync/resources/user.js +4 -4
- package/dist/cjs/types/sync/resources/workspace-filters.js +2 -2
- package/dist/cjs/types/sync/resources/workspace-goals.js +2 -2
- package/dist/cjs/types/sync/resources/workspaces.js +3 -3
- package/dist/cjs/types/sync/response.js +10 -12
- package/dist/cjs/types/tasks/types.js +3 -3
- package/dist/cjs/types/workspaces/types.js +3 -3
- package/dist/cjs/utils/validators.js +46 -48
- package/dist/esm/consts/endpoints.js +0 -5
- package/dist/esm/test-utils/test-defaults.js +15 -12
- package/dist/esm/todoist-api.js +2 -130
- package/dist/esm/types/activity/types.js +1 -1
- package/dist/esm/types/comments/types.js +1 -1
- package/dist/esm/types/index.js +0 -1
- package/dist/esm/types/insights/types.js +6 -4
- package/dist/esm/types/projects/types.js +2 -2
- package/dist/esm/types/sections/types.js +3 -3
- package/dist/esm/types/sync/commands/index.js +0 -1
- package/dist/esm/types/sync/resource-types.js +0 -1
- package/dist/esm/types/sync/resources/live-notifications.js +1 -1
- package/dist/esm/types/sync/resources/notes.js +1 -1
- package/dist/esm/types/sync/resources/user.js +4 -4
- package/dist/esm/types/sync/resources/workspace-filters.js +2 -2
- package/dist/esm/types/sync/resources/workspace-goals.js +2 -2
- package/dist/esm/types/sync/resources/workspaces.js +3 -3
- package/dist/esm/types/sync/response.js +0 -2
- package/dist/esm/types/tasks/types.js +3 -3
- package/dist/esm/types/workspaces/types.js +3 -3
- package/dist/esm/utils/validators.js +0 -2
- package/dist/types/consts/endpoints.d.ts +2 -7
- package/dist/types/test-utils/test-defaults.d.ts +13 -13
- package/dist/types/todoist-api.d.ts +1 -12
- package/dist/types/types/activity/types.d.ts +1 -1
- package/dist/types/types/comments/types.d.ts +4 -4
- package/dist/types/types/folders/requests.d.ts +2 -2
- package/dist/types/types/index.d.ts +0 -1
- package/dist/types/types/insights/types.d.ts +9 -9
- package/dist/types/types/projects/requests.d.ts +1 -1
- package/dist/types/types/projects/types.d.ts +18 -18
- package/dist/types/types/sections/types.d.ts +9 -9
- package/dist/types/types/sync/commands/index.d.ts +0 -9
- package/dist/types/types/sync/commands/workspaces.d.ts +1 -1
- package/dist/types/types/sync/resource-types.d.ts +1 -1
- package/dist/types/types/sync/resources/live-notifications.d.ts +1 -1
- package/dist/types/types/sync/resources/notes.d.ts +1 -1
- package/dist/types/types/sync/resources/user.d.ts +4 -4
- package/dist/types/types/sync/resources/view-options.d.ts +6 -6
- package/dist/types/types/sync/resources/workspace-filters.d.ts +2 -2
- package/dist/types/types/sync/resources/workspace-goals.d.ts +2 -2
- package/dist/types/types/sync/resources/workspaces.d.ts +8 -8
- package/dist/types/types/sync/response.d.ts +45 -70
- package/dist/types/types/tasks/requests.d.ts +0 -1
- package/dist/types/types/tasks/types.d.ts +9 -9
- package/dist/types/types/workspaces/requests.d.ts +7 -7
- package/dist/types/types/workspaces/types.d.ts +6 -6
- package/dist/types/utils/validators.d.ts +64 -111
- package/package.json +1 -1
- package/dist/cjs/types/goals/index.js +0 -18
- package/dist/cjs/types/goals/requests.js +0 -2
- package/dist/cjs/types/goals/types.js +0 -29
- package/dist/cjs/types/sync/commands/goals.js +0 -2
- package/dist/esm/types/goals/index.js +0 -2
- package/dist/esm/types/goals/requests.js +0 -1
- package/dist/esm/types/goals/types.js +0 -26
- package/dist/esm/types/sync/commands/goals.js +0 -1
- package/dist/types/types/goals/index.d.ts +0 -2
- package/dist/types/types/goals/requests.d.ts +0 -33
- package/dist/types/types/goals/types.d.ts +0 -41
- package/dist/types/types/sync/commands/goals.d.ts +0 -33
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8
|
|
2
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.validateFolderArray = exports.validateFolder = exports.validateCollaboratorStateArray = exports.validateCollaboratorState = exports.validateCollaboratorArray = exports.validateCollaborator = exports.validateFilterArray = exports.validateFilter = exports.validateMovedIdArray = exports.validateMovedId = exports.validateIdMappingArray = exports.validateIdMapping = exports.validateBackupArray = exports.validateBackup = exports.validateWorkspaceInsights = exports.validateProjectProgress = exports.validateProjectHealthContext = exports.validateProjectHealth = exports.validateProjectActivityStats = exports.validateWorkspaceUserTaskArray = exports.validateWorkspaceUserTask = exports.validateMemberActivityInfoArray = exports.validateMemberActivityInfo = exports.validateWorkspaceArray = exports.validateWorkspace = exports.validateJoinWorkspaceResult = exports.validateWorkspacePlanDetails = exports.validateWorkspaceInvitationArray = exports.validateWorkspaceInvitation = exports.validateWorkspaceUserArray = exports.validateWorkspaceUser = exports.validateAttachment = exports.validateActivityEventArray = exports.validateActivityEvent = exports.validateCurrentUser = exports.validateProductivityStats = exports.validateUserArray = exports.validateUser = exports.validateCommentArray = exports.validateComment = exports.validateLabelArray = exports.validateLabel = exports.validateSectionArray = exports.validateSection = exports.validateWorkspaceProjectArray = exports.validateWorkspaceProject = exports.validateProjectArray = exports.validateProject = exports.validateTaskArray = exports.validateTask = void 0;
|
|
5
|
-
exports.validateSuggestionArray = exports.validateSuggestion = exports.validateUserSettings = exports.validateSyncUser = exports.validateSyncWorkspaceArray = exports.validateSyncWorkspace = exports.validateLiveNotificationArray = exports.validateLiveNotification = exports.validateUserPlanLimits = exports.validateProjectViewOptionsDefaultsArray = exports.validateProjectViewOptionsDefaults = exports.validateViewOptionsArray = exports.validateViewOptions = exports.validateCompletedInfoArray = exports.validateCompletedInfo = exports.validateLocationReminderArray = exports.validateLocationReminder = exports.validateReminderArray = exports.validateReminder = exports.validateCalendarAccountArray = exports.validateCalendarAccount = exports.validateCalendarArray = exports.validateCalendar = exports.validateWorkspaceGoalArray = exports.validateWorkspaceGoal = exports.validateWorkspaceFilterArray = exports.validateWorkspaceFilter = exports.validateTooltips = exports.validateNoteArray = exports.validateNote =
|
|
5
|
+
exports.validateSuggestionArray = exports.validateSuggestion = exports.validateUserSettings = exports.validateSyncUser = exports.validateSyncWorkspaceArray = exports.validateSyncWorkspace = exports.validateLiveNotificationArray = exports.validateLiveNotification = exports.validateUserPlanLimits = exports.validateProjectViewOptionsDefaultsArray = exports.validateProjectViewOptionsDefaults = exports.validateViewOptionsArray = exports.validateViewOptions = exports.validateCompletedInfoArray = exports.validateCompletedInfo = exports.validateLocationReminderArray = exports.validateLocationReminder = exports.validateReminderArray = exports.validateReminder = exports.validateCalendarAccountArray = exports.validateCalendarAccount = exports.validateCalendarArray = exports.validateCalendar = exports.validateWorkspaceGoalArray = exports.validateWorkspaceGoal = exports.validateWorkspaceFilterArray = exports.validateWorkspaceFilter = exports.validateTooltips = exports.validateNoteArray = exports.validateNote = void 0;
|
|
6
6
|
exports.parseSyncResponse = parseSyncResponse;
|
|
7
7
|
const zod_1 = require("zod");
|
|
8
8
|
const types_1 = require("../types/activity/types");
|
|
9
9
|
const types_2 = require("../types/backups/types");
|
|
10
10
|
const types_3 = require("../types/comments/types");
|
|
11
|
-
const types_4 = require("../types/
|
|
12
|
-
const types_5 = require("../types/
|
|
13
|
-
const types_6 = require("../types/
|
|
14
|
-
const types_7 = require("../types/
|
|
15
|
-
const types_8 = require("../types/
|
|
16
|
-
const types_9 = require("../types/
|
|
17
|
-
const types_10 = require("../types/sections/types");
|
|
11
|
+
const types_4 = require("../types/id-mappings/types");
|
|
12
|
+
const types_5 = require("../types/insights/types");
|
|
13
|
+
const types_6 = require("../types/labels/types");
|
|
14
|
+
const types_7 = require("../types/productivity/types");
|
|
15
|
+
const types_8 = require("../types/projects/types");
|
|
16
|
+
const types_9 = require("../types/sections/types");
|
|
18
17
|
const response_1 = require("../types/sync/response");
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
18
|
+
const types_10 = require("../types/tasks/types");
|
|
19
|
+
const types_11 = require("../types/users/types");
|
|
20
|
+
const types_12 = require("../types/workspaces/types");
|
|
22
21
|
const resources_1 = require("../types/sync/resources");
|
|
23
22
|
function createValidator(schema) {
|
|
24
23
|
return {
|
|
@@ -27,60 +26,59 @@ function createValidator(schema) {
|
|
|
27
26
|
};
|
|
28
27
|
}
|
|
29
28
|
// Entity validators
|
|
30
|
-
_a = createValidator(
|
|
29
|
+
_a = createValidator(types_10.TaskSchema), exports.validateTask = _a.validate, exports.validateTaskArray = _a.validateArray;
|
|
31
30
|
/**
|
|
32
31
|
* Validates and parses a project input.
|
|
33
32
|
* @param input The input to validate
|
|
34
33
|
* @returns A validated project (either PersonalProject or WorkspaceProject)
|
|
35
34
|
*/
|
|
36
|
-
_b = createValidator(
|
|
37
|
-
_c = createValidator(
|
|
38
|
-
_d = createValidator(
|
|
39
|
-
_e = createValidator(
|
|
35
|
+
_b = createValidator(types_8.ProjectSchema), exports.validateProject = _b.validate, exports.validateProjectArray = _b.validateArray;
|
|
36
|
+
_c = createValidator(types_8.WorkspaceProjectSchema), exports.validateWorkspaceProject = _c.validate, exports.validateWorkspaceProjectArray = _c.validateArray;
|
|
37
|
+
_d = createValidator(types_9.SectionSchema), exports.validateSection = _d.validate, exports.validateSectionArray = _d.validateArray;
|
|
38
|
+
_e = createValidator(types_6.LabelSchema), exports.validateLabel = _e.validate, exports.validateLabelArray = _e.validateArray;
|
|
40
39
|
_f = createValidator(types_3.CommentSchema), exports.validateComment = _f.validate, exports.validateCommentArray = _f.validateArray;
|
|
41
|
-
_g = createValidator(
|
|
42
|
-
exports.validateProductivityStats = createValidator(
|
|
43
|
-
exports.validateCurrentUser = createValidator(
|
|
40
|
+
_g = createValidator(types_11.UserSchema), exports.validateUser = _g.validate, exports.validateUserArray = _g.validateArray;
|
|
41
|
+
exports.validateProductivityStats = createValidator(types_7.ProductivityStatsSchema).validate;
|
|
42
|
+
exports.validateCurrentUser = createValidator(types_11.CurrentUserSchema).validate;
|
|
44
43
|
_h = createValidator(types_1.ActivityEventSchema), exports.validateActivityEvent = _h.validate, exports.validateActivityEventArray = _h.validateArray;
|
|
45
44
|
exports.validateAttachment = createValidator(types_3.AttachmentSchema).validate;
|
|
46
|
-
_j = createValidator(
|
|
47
|
-
_k = createValidator(
|
|
48
|
-
exports.validateWorkspacePlanDetails = createValidator(
|
|
49
|
-
exports.validateJoinWorkspaceResult = createValidator(
|
|
50
|
-
_l = createValidator(
|
|
51
|
-
_m = createValidator(
|
|
52
|
-
_o = createValidator(
|
|
53
|
-
exports.validateProjectActivityStats = createValidator(
|
|
54
|
-
exports.validateProjectHealth = createValidator(
|
|
55
|
-
exports.validateProjectHealthContext = createValidator(
|
|
56
|
-
exports.validateProjectProgress = createValidator(
|
|
57
|
-
exports.validateWorkspaceInsights = createValidator(
|
|
45
|
+
_j = createValidator(types_12.WorkspaceUserSchema), exports.validateWorkspaceUser = _j.validate, exports.validateWorkspaceUserArray = _j.validateArray;
|
|
46
|
+
_k = createValidator(types_12.WorkspaceInvitationSchema), exports.validateWorkspaceInvitation = _k.validate, exports.validateWorkspaceInvitationArray = _k.validateArray;
|
|
47
|
+
exports.validateWorkspacePlanDetails = createValidator(types_12.WorkspacePlanDetailsSchema).validate;
|
|
48
|
+
exports.validateJoinWorkspaceResult = createValidator(types_12.JoinWorkspaceResultSchema).validate;
|
|
49
|
+
_l = createValidator(types_12.WorkspaceSchema), exports.validateWorkspace = _l.validate, exports.validateWorkspaceArray = _l.validateArray;
|
|
50
|
+
_m = createValidator(types_12.MemberActivityInfoSchema), exports.validateMemberActivityInfo = _m.validate, exports.validateMemberActivityInfoArray = _m.validateArray;
|
|
51
|
+
_o = createValidator(types_12.WorkspaceUserTaskSchema), exports.validateWorkspaceUserTask = _o.validate, exports.validateWorkspaceUserTaskArray = _o.validateArray;
|
|
52
|
+
exports.validateProjectActivityStats = createValidator(types_5.ProjectActivityStatsSchema).validate;
|
|
53
|
+
exports.validateProjectHealth = createValidator(types_5.ProjectHealthSchema).validate;
|
|
54
|
+
exports.validateProjectHealthContext = createValidator(types_5.ProjectHealthContextSchema).validate;
|
|
55
|
+
exports.validateProjectProgress = createValidator(types_5.ProjectProgressSchema).validate;
|
|
56
|
+
exports.validateWorkspaceInsights = createValidator(types_5.WorkspaceInsightsSchema).validate;
|
|
58
57
|
_p = createValidator(types_2.BackupSchema), exports.validateBackup = _p.validate, exports.validateBackupArray = _p.validateArray;
|
|
59
|
-
_q = createValidator(
|
|
60
|
-
_r = createValidator(
|
|
58
|
+
_q = createValidator(types_4.IdMappingSchema), exports.validateIdMapping = _q.validate, exports.validateIdMappingArray = _q.validateArray;
|
|
59
|
+
_r = createValidator(types_4.MovedIdSchema), exports.validateMovedId = _r.validate, exports.validateMovedIdArray = _r.validateArray;
|
|
61
60
|
// Sync resource validators
|
|
62
61
|
_s = createValidator(resources_1.FilterSchema), exports.validateFilter = _s.validate, exports.validateFilterArray = _s.validateArray;
|
|
63
62
|
_t = createValidator(resources_1.CollaboratorSchema), exports.validateCollaborator = _t.validate, exports.validateCollaboratorArray = _t.validateArray;
|
|
64
63
|
_u = createValidator(resources_1.CollaboratorStateSchema), exports.validateCollaboratorState = _u.validate, exports.validateCollaboratorStateArray = _u.validateArray;
|
|
65
64
|
_v = createValidator(resources_1.FolderSchema), exports.validateFolder = _v.validate, exports.validateFolderArray = _v.validateArray;
|
|
66
|
-
_w = createValidator(
|
|
67
|
-
_x = createValidator(resources_1.NoteSchema), exports.validateNote = _x.validate, exports.validateNoteArray = _x.validateArray;
|
|
65
|
+
_w = createValidator(resources_1.NoteSchema), exports.validateNote = _w.validate, exports.validateNoteArray = _w.validateArray;
|
|
68
66
|
exports.validateTooltips = createValidator(resources_1.TooltipsSchema).validate;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
67
|
+
_x = createValidator(resources_1.WorkspaceFilterSchema), exports.validateWorkspaceFilter = _x.validate, exports.validateWorkspaceFilterArray = _x.validateArray;
|
|
68
|
+
_y = createValidator(resources_1.WorkspaceGoalSchema), exports.validateWorkspaceGoal = _y.validate, exports.validateWorkspaceGoalArray = _y.validateArray;
|
|
69
|
+
_z = createValidator(resources_1.CalendarSchema), exports.validateCalendar = _z.validate, exports.validateCalendarArray = _z.validateArray;
|
|
70
|
+
_0 = createValidator(resources_1.CalendarAccountSchema), exports.validateCalendarAccount = _0.validate, exports.validateCalendarAccountArray = _0.validateArray;
|
|
71
|
+
_1 = createValidator(resources_1.ReminderSchema), exports.validateReminder = _1.validate, exports.validateReminderArray = _1.validateArray;
|
|
72
|
+
_2 = createValidator(resources_1.LocationReminderSchema), exports.validateLocationReminder = _2.validate, exports.validateLocationReminderArray = _2.validateArray;
|
|
73
|
+
_3 = createValidator(resources_1.CompletedInfoSchema), exports.validateCompletedInfo = _3.validate, exports.validateCompletedInfoArray = _3.validateArray;
|
|
74
|
+
_4 = createValidator(resources_1.ViewOptionsSchema), exports.validateViewOptions = _4.validate, exports.validateViewOptionsArray = _4.validateArray;
|
|
75
|
+
_5 = createValidator(resources_1.ProjectViewOptionsDefaultsSchema), exports.validateProjectViewOptionsDefaults = _5.validate, exports.validateProjectViewOptionsDefaultsArray = _5.validateArray;
|
|
78
76
|
exports.validateUserPlanLimits = createValidator(resources_1.UserPlanLimitsSchema).validate;
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
_6 = createValidator(resources_1.LiveNotificationSchema), exports.validateLiveNotification = _6.validate, exports.validateLiveNotificationArray = _6.validateArray;
|
|
78
|
+
_7 = createValidator(resources_1.SyncWorkspaceSchema), exports.validateSyncWorkspace = _7.validate, exports.validateSyncWorkspaceArray = _7.validateArray;
|
|
81
79
|
exports.validateSyncUser = createValidator(resources_1.SyncUserSchema).validate;
|
|
82
80
|
exports.validateUserSettings = createValidator(resources_1.UserSettingsSchema).validate;
|
|
83
|
-
|
|
81
|
+
_8 = createValidator(resources_1.SuggestionSchema), exports.validateSuggestion = _8.validate, exports.validateSuggestionArray = _8.validateArray;
|
|
84
82
|
function parseSyncResponse(raw) {
|
|
85
83
|
return response_1.SyncResponseSchema.parse(raw);
|
|
86
84
|
}
|
|
@@ -67,11 +67,6 @@ export const ENDPOINT_GET_TOKEN = 'access_token';
|
|
|
67
67
|
export const ENDPOINT_REVOKE = 'revoke';
|
|
68
68
|
export const ENDPOINT_REGISTER = 'register';
|
|
69
69
|
export const ENDPOINT_REST_FOLDERS = 'folders';
|
|
70
|
-
export const ENDPOINT_REST_GOALS = 'goals';
|
|
71
|
-
export const ENDPOINT_REST_GOALS_SEARCH = ENDPOINT_REST_GOALS + '/search';
|
|
72
|
-
export const GOAL_COMPLETE = 'complete';
|
|
73
|
-
export const GOAL_UNCOMPLETE = 'uncomplete';
|
|
74
|
-
export const GOAL_TASKS = 'items';
|
|
75
70
|
// Workspace endpoints
|
|
76
71
|
export const ENDPOINT_REST_WORKSPACES = 'workspaces';
|
|
77
72
|
export const ENDPOINT_WORKSPACE_INVITATIONS = 'workspaces/invitations';
|
|
@@ -15,6 +15,9 @@ const DEFAULT_PARENT_ID = '5678';
|
|
|
15
15
|
const DEFAULT_ASSIGNEE = '1234';
|
|
16
16
|
const DEFAULT_CREATOR = '1234';
|
|
17
17
|
const DEFAULT_DATE = '2020-09-08T12:00:00Z';
|
|
18
|
+
function defaultDate() {
|
|
19
|
+
return new Date(DEFAULT_DATE);
|
|
20
|
+
}
|
|
18
21
|
const DEFAULT_ENTITY_COLOR = 'berry_red';
|
|
19
22
|
const DEFAULT_LABELS = ['personal', 'work', 'hobby'];
|
|
20
23
|
const DEFAULT_USER_ID = '5';
|
|
@@ -64,9 +67,9 @@ export const DEFAULT_TASK = {
|
|
|
64
67
|
duration: DEFAULT_DURATION,
|
|
65
68
|
checked: false,
|
|
66
69
|
isDeleted: DEFAULT_IS_DELETED,
|
|
67
|
-
addedAt:
|
|
70
|
+
addedAt: defaultDate(),
|
|
68
71
|
completedAt: null,
|
|
69
|
-
updatedAt:
|
|
72
|
+
updatedAt: defaultDate(),
|
|
70
73
|
due: DEFAULT_DUE_DATE,
|
|
71
74
|
priority: DEFAULT_TASK_PRIORITY,
|
|
72
75
|
childOrder: DEFAULT_ORDER,
|
|
@@ -92,9 +95,9 @@ export const TASK_WITH_OPTIONALS_AS_NULL = {
|
|
|
92
95
|
duration: null,
|
|
93
96
|
checked: false,
|
|
94
97
|
isDeleted: DEFAULT_IS_DELETED,
|
|
95
|
-
addedAt:
|
|
98
|
+
addedAt: defaultDate(),
|
|
96
99
|
completedAt: null,
|
|
97
|
-
updatedAt:
|
|
100
|
+
updatedAt: defaultDate(),
|
|
98
101
|
due: null,
|
|
99
102
|
priority: DEFAULT_TASK_PRIORITY,
|
|
100
103
|
childOrder: DEFAULT_ORDER,
|
|
@@ -119,8 +122,8 @@ export const DEFAULT_PROJECT = {
|
|
|
119
122
|
isArchived: DEFAULT_IS_ARCHIVED,
|
|
120
123
|
isDeleted: DEFAULT_IS_DELETED,
|
|
121
124
|
isFrozen: DEFAULT_IS_FROZEN,
|
|
122
|
-
createdAt:
|
|
123
|
-
updatedAt:
|
|
125
|
+
createdAt: defaultDate(),
|
|
126
|
+
updatedAt: defaultDate(),
|
|
124
127
|
defaultOrder: DEFAULT_ORDER,
|
|
125
128
|
description: '',
|
|
126
129
|
isCollapsed: DEFAULT_IS_COLLAPSED,
|
|
@@ -140,8 +143,8 @@ export const DEFAULT_WORKSPACE_PROJECT = {
|
|
|
140
143
|
isArchived: DEFAULT_IS_ARCHIVED,
|
|
141
144
|
isDeleted: DEFAULT_IS_DELETED,
|
|
142
145
|
isFrozen: DEFAULT_IS_FROZEN,
|
|
143
|
-
createdAt:
|
|
144
|
-
updatedAt:
|
|
146
|
+
createdAt: defaultDate(),
|
|
147
|
+
updatedAt: defaultDate(),
|
|
145
148
|
defaultOrder: DEFAULT_ORDER,
|
|
146
149
|
description: '',
|
|
147
150
|
isCollapsed: DEFAULT_IS_COLLAPSED,
|
|
@@ -158,8 +161,8 @@ export const DEFAULT_SECTION = {
|
|
|
158
161
|
id: DEFAULT_SECTION_ID,
|
|
159
162
|
userId: DEFAULT_USER_ID,
|
|
160
163
|
projectId: DEFAULT_PROJECT_ID,
|
|
161
|
-
addedAt: '2025-03-28T14:01:23.334881Z',
|
|
162
|
-
updatedAt: '2025-03-28T14:01:23.334885Z',
|
|
164
|
+
addedAt: new Date('2025-03-28T14:01:23.334881Z'),
|
|
165
|
+
updatedAt: new Date('2025-03-28T14:01:23.334885Z'),
|
|
163
166
|
archivedAt: null,
|
|
164
167
|
name: DEFAULT_SECTION_NAME,
|
|
165
168
|
sectionOrder: DEFAULT_ORDER,
|
|
@@ -197,7 +200,7 @@ export const DEFAULT_RAW_COMMENT = {
|
|
|
197
200
|
fileAttachment: DEFAULT_ATTACHMENT,
|
|
198
201
|
uidsToNotify: null,
|
|
199
202
|
isDeleted: false,
|
|
200
|
-
postedAt:
|
|
203
|
+
postedAt: defaultDate(),
|
|
201
204
|
reactions: DEFAULT_COMMENT_REACTIONS,
|
|
202
205
|
itemId: DEFAULT_TASK_ID,
|
|
203
206
|
};
|
|
@@ -278,7 +281,7 @@ export const DEFAULT_NOTE = {
|
|
|
278
281
|
id: DEFAULT_COMMENT_ID,
|
|
279
282
|
projectId: DEFAULT_PROJECT_ID,
|
|
280
283
|
content: DEFAULT_COMMENT_CONTENT,
|
|
281
|
-
postedAt:
|
|
284
|
+
postedAt: defaultDate(),
|
|
282
285
|
fileAttachment: DEFAULT_ATTACHMENT,
|
|
283
286
|
postedUid: DEFAULT_USER_ID,
|
|
284
287
|
uidsToNotify: null,
|
package/dist/esm/todoist-api.js
CHANGED
|
@@ -10,7 +10,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { getSyncBaseUri, ENDPOINT_REST_TASKS, ENDPOINT_REST_TASKS_FILTER, ENDPOINT_REST_TASKS_COMPLETED_BY_COMPLETION_DATE, ENDPOINT_REST_TASKS_COMPLETED_BY_DUE_DATE, ENDPOINT_REST_TASKS_COMPLETED_SEARCH, ENDPOINT_REST_TASKS_COMPLETED, ENDPOINT_REST_TEMPLATES_FILE, ENDPOINT_REST_TEMPLATES_URL, ENDPOINT_REST_TEMPLATES_CREATE_FROM_FILE, ENDPOINT_REST_TEMPLATES_IMPORT_FROM_FILE, ENDPOINT_REST_TEMPLATES_IMPORT_FROM_ID, ENDPOINT_REST_PROJECTS, ENDPOINT_REST_PROJECTS_SEARCH, ENDPOINT_SYNC_QUICK_ADD, ENDPOINT_REST_TASK_CLOSE, ENDPOINT_REST_TASK_REOPEN, ENDPOINT_REST_TASK_MOVE, ENDPOINT_REST_LABELS, ENDPOINT_REST_LABELS_SEARCH, ENDPOINT_REST_PROJECT_COLLABORATORS, ENDPOINT_REST_SECTIONS, ENDPOINT_REST_SECTIONS_SEARCH, ENDPOINT_REST_COMMENTS, ENDPOINT_REST_LOCATION_REMINDERS, ENDPOINT_REST_REMINDERS, ENDPOINT_REST_LABELS_SHARED, ENDPOINT_REST_LABELS_SHARED_RENAME, ENDPOINT_REST_LABELS_SHARED_REMOVE, ENDPOINT_SYNC, PROJECT_ARCHIVE, PROJECT_UNARCHIVE, ENDPOINT_REST_PROJECTS_MOVE_TO_WORKSPACE, ENDPOINT_REST_PROJECTS_MOVE_TO_PERSONAL, ENDPOINT_REST_PROJECTS_ARCHIVED, ENDPOINT_REST_PROJECTS_ARCHIVED_COUNT, ENDPOINT_REST_PROJECTS_PERMISSIONS, ENDPOINT_REST_PROJECT_FULL, ENDPOINT_REST_PROJECT_JOIN, SECTION_ARCHIVE, SECTION_UNARCHIVE, ENDPOINT_REST_USER, ENDPOINT_REST_PRODUCTIVITY, ENDPOINT_REST_ACTIVITIES, ENDPOINT_REST_UPLOADS, getProjectInsightsActivityStatsEndpoint, getProjectInsightsHealthEndpoint, getProjectInsightsHealthContextEndpoint, getProjectInsightsProgressEndpoint, getProjectInsightsHealthAnalyzeEndpoint, getWorkspaceInsightsEndpoint, ENDPOINT_REST_BACKUPS, ENDPOINT_REST_BACKUPS_DOWNLOAD, ENDPOINT_REST_EMAILS, ENDPOINT_REST_ID_MAPPINGS, ENDPOINT_REST_MOVED_IDS, ENDPOINT_REST_WORKSPACES, ENDPOINT_WORKSPACE_MEMBERS, getWorkspaceUserTasksEndpoint, getWorkspaceInviteUsersEndpoint, getWorkspaceUserEndpoint, ENDPOINT_WORKSPACE_INVITATIONS, ENDPOINT_WORKSPACE_INVITATIONS_ALL, ENDPOINT_WORKSPACE_INVITATIONS_DELETE, getWorkspaceInvitationAcceptEndpoint, getWorkspaceInvitationRejectEndpoint, ENDPOINT_WORKSPACE_JOIN, ENDPOINT_WORKSPACE_LOGO, ENDPOINT_WORKSPACE_PLAN_DETAILS, ENDPOINT_WORKSPACE_USERS, getWorkspaceActiveProjectsEndpoint, getWorkspaceArchivedProjectsEndpoint, ENDPOINT_REST_FOLDERS,
|
|
13
|
+
import { getSyncBaseUri, ENDPOINT_REST_TASKS, ENDPOINT_REST_TASKS_FILTER, ENDPOINT_REST_TASKS_COMPLETED_BY_COMPLETION_DATE, ENDPOINT_REST_TASKS_COMPLETED_BY_DUE_DATE, ENDPOINT_REST_TASKS_COMPLETED_SEARCH, ENDPOINT_REST_TASKS_COMPLETED, ENDPOINT_REST_TEMPLATES_FILE, ENDPOINT_REST_TEMPLATES_URL, ENDPOINT_REST_TEMPLATES_CREATE_FROM_FILE, ENDPOINT_REST_TEMPLATES_IMPORT_FROM_FILE, ENDPOINT_REST_TEMPLATES_IMPORT_FROM_ID, ENDPOINT_REST_PROJECTS, ENDPOINT_REST_PROJECTS_SEARCH, ENDPOINT_SYNC_QUICK_ADD, ENDPOINT_REST_TASK_CLOSE, ENDPOINT_REST_TASK_REOPEN, ENDPOINT_REST_TASK_MOVE, ENDPOINT_REST_LABELS, ENDPOINT_REST_LABELS_SEARCH, ENDPOINT_REST_PROJECT_COLLABORATORS, ENDPOINT_REST_SECTIONS, ENDPOINT_REST_SECTIONS_SEARCH, ENDPOINT_REST_COMMENTS, ENDPOINT_REST_LOCATION_REMINDERS, ENDPOINT_REST_REMINDERS, ENDPOINT_REST_LABELS_SHARED, ENDPOINT_REST_LABELS_SHARED_RENAME, ENDPOINT_REST_LABELS_SHARED_REMOVE, ENDPOINT_SYNC, PROJECT_ARCHIVE, PROJECT_UNARCHIVE, ENDPOINT_REST_PROJECTS_MOVE_TO_WORKSPACE, ENDPOINT_REST_PROJECTS_MOVE_TO_PERSONAL, ENDPOINT_REST_PROJECTS_ARCHIVED, ENDPOINT_REST_PROJECTS_ARCHIVED_COUNT, ENDPOINT_REST_PROJECTS_PERMISSIONS, ENDPOINT_REST_PROJECT_FULL, ENDPOINT_REST_PROJECT_JOIN, SECTION_ARCHIVE, SECTION_UNARCHIVE, ENDPOINT_REST_USER, ENDPOINT_REST_PRODUCTIVITY, ENDPOINT_REST_ACTIVITIES, ENDPOINT_REST_UPLOADS, getProjectInsightsActivityStatsEndpoint, getProjectInsightsHealthEndpoint, getProjectInsightsHealthContextEndpoint, getProjectInsightsProgressEndpoint, getProjectInsightsHealthAnalyzeEndpoint, getWorkspaceInsightsEndpoint, ENDPOINT_REST_BACKUPS, ENDPOINT_REST_BACKUPS_DOWNLOAD, ENDPOINT_REST_EMAILS, ENDPOINT_REST_ID_MAPPINGS, ENDPOINT_REST_MOVED_IDS, ENDPOINT_REST_WORKSPACES, ENDPOINT_WORKSPACE_MEMBERS, getWorkspaceUserTasksEndpoint, getWorkspaceInviteUsersEndpoint, getWorkspaceUserEndpoint, ENDPOINT_WORKSPACE_INVITATIONS, ENDPOINT_WORKSPACE_INVITATIONS_ALL, ENDPOINT_WORKSPACE_INVITATIONS_DELETE, getWorkspaceInvitationAcceptEndpoint, getWorkspaceInvitationRejectEndpoint, ENDPOINT_WORKSPACE_JOIN, ENDPOINT_WORKSPACE_LOGO, ENDPOINT_WORKSPACE_PLAN_DETAILS, ENDPOINT_WORKSPACE_USERS, getWorkspaceActiveProjectsEndpoint, getWorkspaceArchivedProjectsEndpoint, ENDPOINT_REST_FOLDERS, } from './consts/endpoints.js';
|
|
14
14
|
import { request, isSuccess } from './transport/http-client.js';
|
|
15
15
|
import { UpdateReminderArgsSchema, UpdateLocationReminderArgsSchema, ReminderIdSchema, } from './types/reminders/index.js';
|
|
16
16
|
import { normalizeObjectEventTypeForApi, denormalizeObjectTypeFromApi, } from './utils/activity-helpers.js';
|
|
@@ -18,7 +18,7 @@ import { camelCaseKeys } from './utils/case-conversion.js';
|
|
|
18
18
|
import { uploadMultipartFile } from './utils/multipart-upload.js';
|
|
19
19
|
import { processTaskContent } from './utils/uncompletable-helpers.js';
|
|
20
20
|
import { formatDateToYYYYMMDD } from './utils/url-helpers.js';
|
|
21
|
-
import { validateAttachment, validateComment, validateCommentArray, validateCurrentUser, validateLabel, validateLabelArray, validateProject, validateProjectArray, validateSection, validateSectionArray, validateTask, validateTaskArray, validateUserArray, validateProductivityStats, validateReminder, validateReminderArray, validateLocationReminderArray, validateActivityEventArray, validateWorkspaceUserArray, validateWorkspaceInvitation, validateWorkspaceInvitationArray, validateWorkspacePlanDetails, validateJoinWorkspaceResult, validateWorkspace, validateWorkspaceArray, validateMemberActivityInfoArray, validateWorkspaceUserTaskArray, validateProjectActivityStats, validateProjectHealth, validateProjectHealthContext, validateProjectProgress, validateWorkspaceInsights, validateBackupArray, validateIdMappingArray, validateMovedIdArray, validateFolder, validateFolderArray,
|
|
21
|
+
import { validateAttachment, validateComment, validateCommentArray, validateCurrentUser, validateLabel, validateLabelArray, validateProject, validateProjectArray, validateSection, validateSectionArray, validateTask, validateTaskArray, validateUserArray, validateProductivityStats, validateReminder, validateReminderArray, validateLocationReminderArray, validateActivityEventArray, validateWorkspaceUserArray, validateWorkspaceInvitation, validateWorkspaceInvitationArray, validateWorkspacePlanDetails, validateJoinWorkspaceResult, validateWorkspace, validateWorkspaceArray, validateMemberActivityInfoArray, validateWorkspaceUserTaskArray, validateProjectActivityStats, validateProjectHealth, validateProjectHealthContext, validateProjectProgress, validateWorkspaceInsights, validateBackupArray, validateIdMappingArray, validateMovedIdArray, validateFolder, validateFolderArray, validateCollaboratorArray, validateCollaboratorStateArray, validateNoteArray, validateWorkspaceProject, validateWorkspaceProjectArray, parseSyncResponse, } from './utils/validators.js';
|
|
22
22
|
import { v4 as uuidv4 } from 'uuid';
|
|
23
23
|
import { TodoistArgumentError, TodoistRequestError } from './types/index.js';
|
|
24
24
|
import { DATE_FORMAT_TO_API, TIME_FORMAT_TO_API, DAY_OF_WEEK_TO_API, } from './types/sync/index.js';
|
|
@@ -1916,134 +1916,6 @@ export class TodoistApi {
|
|
|
1916
1916
|
});
|
|
1917
1917
|
return isSuccess(response);
|
|
1918
1918
|
}
|
|
1919
|
-
// ── Goals ──
|
|
1920
|
-
async getGoals(args) {
|
|
1921
|
-
const { data: { results, nextCursor }, } = await request({
|
|
1922
|
-
httpMethod: 'GET',
|
|
1923
|
-
baseUri: this.syncApiBase,
|
|
1924
|
-
relativePath: ENDPOINT_REST_GOALS,
|
|
1925
|
-
apiToken: this.authToken,
|
|
1926
|
-
customFetch: this.customFetch,
|
|
1927
|
-
payload: args,
|
|
1928
|
-
});
|
|
1929
|
-
return {
|
|
1930
|
-
results: validateGoalArray(results),
|
|
1931
|
-
nextCursor,
|
|
1932
|
-
};
|
|
1933
|
-
}
|
|
1934
|
-
async searchGoals(args) {
|
|
1935
|
-
const { data: { results, nextCursor }, } = await request({
|
|
1936
|
-
httpMethod: 'GET',
|
|
1937
|
-
baseUri: this.syncApiBase,
|
|
1938
|
-
relativePath: ENDPOINT_REST_GOALS_SEARCH,
|
|
1939
|
-
apiToken: this.authToken,
|
|
1940
|
-
customFetch: this.customFetch,
|
|
1941
|
-
payload: args,
|
|
1942
|
-
});
|
|
1943
|
-
return {
|
|
1944
|
-
results: validateGoalArray(results),
|
|
1945
|
-
nextCursor,
|
|
1946
|
-
};
|
|
1947
|
-
}
|
|
1948
|
-
async getGoal(id) {
|
|
1949
|
-
z.string().parse(id);
|
|
1950
|
-
const response = await request({
|
|
1951
|
-
httpMethod: 'GET',
|
|
1952
|
-
baseUri: this.syncApiBase,
|
|
1953
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, id),
|
|
1954
|
-
apiToken: this.authToken,
|
|
1955
|
-
customFetch: this.customFetch,
|
|
1956
|
-
});
|
|
1957
|
-
return validateGoal(response.data);
|
|
1958
|
-
}
|
|
1959
|
-
async addGoal(args, requestId) {
|
|
1960
|
-
const response = await request({
|
|
1961
|
-
httpMethod: 'POST',
|
|
1962
|
-
baseUri: this.syncApiBase,
|
|
1963
|
-
relativePath: ENDPOINT_REST_GOALS,
|
|
1964
|
-
apiToken: this.authToken,
|
|
1965
|
-
customFetch: this.customFetch,
|
|
1966
|
-
payload: args,
|
|
1967
|
-
requestId: requestId,
|
|
1968
|
-
});
|
|
1969
|
-
return validateGoal(response.data);
|
|
1970
|
-
}
|
|
1971
|
-
async updateGoal(id, args, requestId) {
|
|
1972
|
-
z.string().parse(id);
|
|
1973
|
-
const response = await request({
|
|
1974
|
-
httpMethod: 'POST',
|
|
1975
|
-
baseUri: this.syncApiBase,
|
|
1976
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, id),
|
|
1977
|
-
apiToken: this.authToken,
|
|
1978
|
-
customFetch: this.customFetch,
|
|
1979
|
-
payload: args,
|
|
1980
|
-
requestId: requestId,
|
|
1981
|
-
});
|
|
1982
|
-
return validateGoal(response.data);
|
|
1983
|
-
}
|
|
1984
|
-
async deleteGoal(id, requestId) {
|
|
1985
|
-
z.string().parse(id);
|
|
1986
|
-
const response = await request({
|
|
1987
|
-
httpMethod: 'DELETE',
|
|
1988
|
-
baseUri: this.syncApiBase,
|
|
1989
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, id),
|
|
1990
|
-
apiToken: this.authToken,
|
|
1991
|
-
customFetch: this.customFetch,
|
|
1992
|
-
requestId: requestId,
|
|
1993
|
-
});
|
|
1994
|
-
return isSuccess(response);
|
|
1995
|
-
}
|
|
1996
|
-
async completeGoal(id, requestId) {
|
|
1997
|
-
z.string().parse(id);
|
|
1998
|
-
const response = await request({
|
|
1999
|
-
httpMethod: 'POST',
|
|
2000
|
-
baseUri: this.syncApiBase,
|
|
2001
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, id, GOAL_COMPLETE),
|
|
2002
|
-
apiToken: this.authToken,
|
|
2003
|
-
customFetch: this.customFetch,
|
|
2004
|
-
requestId: requestId,
|
|
2005
|
-
});
|
|
2006
|
-
return validateGoal(response.data);
|
|
2007
|
-
}
|
|
2008
|
-
async uncompleteGoal(id, requestId) {
|
|
2009
|
-
z.string().parse(id);
|
|
2010
|
-
const response = await request({
|
|
2011
|
-
httpMethod: 'POST',
|
|
2012
|
-
baseUri: this.syncApiBase,
|
|
2013
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, id, GOAL_UNCOMPLETE),
|
|
2014
|
-
apiToken: this.authToken,
|
|
2015
|
-
customFetch: this.customFetch,
|
|
2016
|
-
requestId: requestId,
|
|
2017
|
-
});
|
|
2018
|
-
return validateGoal(response.data);
|
|
2019
|
-
}
|
|
2020
|
-
async linkTaskToGoal({ goalId, taskId }, requestId) {
|
|
2021
|
-
z.string().parse(goalId);
|
|
2022
|
-
z.string().parse(taskId);
|
|
2023
|
-
const response = await request({
|
|
2024
|
-
httpMethod: 'POST',
|
|
2025
|
-
baseUri: this.syncApiBase,
|
|
2026
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, goalId, GOAL_TASKS),
|
|
2027
|
-
apiToken: this.authToken,
|
|
2028
|
-
customFetch: this.customFetch,
|
|
2029
|
-
payload: { itemId: taskId },
|
|
2030
|
-
requestId: requestId,
|
|
2031
|
-
});
|
|
2032
|
-
return validateGoal(response.data);
|
|
2033
|
-
}
|
|
2034
|
-
async unlinkTaskFromGoal({ goalId, taskId }, requestId) {
|
|
2035
|
-
z.string().parse(goalId);
|
|
2036
|
-
z.string().parse(taskId);
|
|
2037
|
-
const response = await request({
|
|
2038
|
-
httpMethod: 'DELETE',
|
|
2039
|
-
baseUri: this.syncApiBase,
|
|
2040
|
-
relativePath: generatePath(ENDPOINT_REST_GOALS, goalId, GOAL_TASKS, taskId),
|
|
2041
|
-
apiToken: this.authToken,
|
|
2042
|
-
customFetch: this.customFetch,
|
|
2043
|
-
requestId: requestId,
|
|
2044
|
-
});
|
|
2045
|
-
return isSuccess(response);
|
|
2046
|
-
}
|
|
2047
1919
|
// ── Backups ──
|
|
2048
1920
|
/**
|
|
2049
1921
|
* Retrieves a list of available backups.
|
|
@@ -12,7 +12,7 @@ export const ActivityEventSchema = z
|
|
|
12
12
|
objectType: z.string(),
|
|
13
13
|
objectId: z.string(),
|
|
14
14
|
eventType: z.string(),
|
|
15
|
-
eventDate: z.
|
|
15
|
+
eventDate: z.coerce.date(),
|
|
16
16
|
id: z
|
|
17
17
|
.union([z.string(), z.number()])
|
|
18
18
|
.transform((val) => { var _a; return (_a = val === null || val === void 0 ? void 0 : val.toString()) !== null && _a !== void 0 ? _a : null; })
|
|
@@ -35,7 +35,7 @@ export const RawCommentSchema = z
|
|
|
35
35
|
itemId: z.string().optional(),
|
|
36
36
|
projectId: z.string().optional(),
|
|
37
37
|
content: z.string(),
|
|
38
|
-
postedAt: z.
|
|
38
|
+
postedAt: z.coerce.date(),
|
|
39
39
|
fileAttachment: AttachmentSchema.nullable(),
|
|
40
40
|
postedUid: z.string(),
|
|
41
41
|
uidsToNotify: z.array(z.string()).nullable(),
|
package/dist/esm/types/index.js
CHANGED
|
@@ -9,7 +9,6 @@ export * from './productivity/index.js';
|
|
|
9
9
|
export * from './activity/index.js';
|
|
10
10
|
export * from './workspaces/index.js';
|
|
11
11
|
export * from './folders/index.js';
|
|
12
|
-
export * from './goals/index.js';
|
|
13
12
|
export * from './insights/index.js';
|
|
14
13
|
export * from './backups/index.js';
|
|
15
14
|
export * from './id-mappings/index.js';
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export const DayActivitySchema = z.object({
|
|
3
|
+
// Kept as string: this is a calendar-day bucket (e.g. '2025-01-13'), not a timestamp.
|
|
4
|
+
// Coercing to Date would create UTC midnight, causing day-shift for non-UTC consumers.
|
|
3
5
|
date: z.string(),
|
|
4
6
|
totalCount: z.number().int(),
|
|
5
7
|
});
|
|
@@ -31,7 +33,7 @@ export const ProjectHealthSchema = z.object({
|
|
|
31
33
|
descriptionSummary: z.string().nullable().optional(),
|
|
32
34
|
taskRecommendations: z.array(TaskRecommendationSchema).nullable().optional(),
|
|
33
35
|
projectId: z.string().nullable().optional(),
|
|
34
|
-
updatedAt: z.
|
|
36
|
+
updatedAt: z.coerce.date().nullable().optional(),
|
|
35
37
|
isStale: z.boolean().default(false),
|
|
36
38
|
updateInProgress: z.boolean().default(false),
|
|
37
39
|
});
|
|
@@ -50,9 +52,9 @@ export const TaskContextSchema = z.object({
|
|
|
50
52
|
deadline: z.string().nullable().optional(),
|
|
51
53
|
priority: z.string(),
|
|
52
54
|
isCompleted: z.boolean(),
|
|
53
|
-
createdAt: z.
|
|
54
|
-
updatedAt: z.
|
|
55
|
-
completedAt: z.
|
|
55
|
+
createdAt: z.coerce.date(),
|
|
56
|
+
updatedAt: z.coerce.date(),
|
|
57
|
+
completedAt: z.coerce.date().nullable(),
|
|
56
58
|
completedByUid: z.string().nullable(),
|
|
57
59
|
labels: z.array(z.string()),
|
|
58
60
|
});
|
|
@@ -9,13 +9,13 @@ export const BaseProjectSchema = z.object({
|
|
|
9
9
|
canAssignTasks: z.boolean(),
|
|
10
10
|
childOrder: z.number().int(),
|
|
11
11
|
color: z.string(),
|
|
12
|
-
createdAt: z.
|
|
12
|
+
createdAt: z.coerce.date().nullable(),
|
|
13
13
|
isArchived: z.boolean(),
|
|
14
14
|
isDeleted: z.boolean(),
|
|
15
15
|
isFavorite: z.boolean(),
|
|
16
16
|
isFrozen: z.boolean(),
|
|
17
17
|
name: z.string(),
|
|
18
|
-
updatedAt: z.
|
|
18
|
+
updatedAt: z.coerce.date().nullable(),
|
|
19
19
|
viewStyle: z.string(),
|
|
20
20
|
defaultOrder: z.number().int(),
|
|
21
21
|
description: z.string(),
|
|
@@ -5,9 +5,9 @@ export const SectionSchema = z
|
|
|
5
5
|
id: z.string(),
|
|
6
6
|
userId: z.string(),
|
|
7
7
|
projectId: z.string(),
|
|
8
|
-
addedAt: z.
|
|
9
|
-
updatedAt: z.
|
|
10
|
-
archivedAt: z.
|
|
8
|
+
addedAt: z.coerce.date(),
|
|
9
|
+
updatedAt: z.coerce.date(),
|
|
10
|
+
archivedAt: z.coerce.date().nullable(),
|
|
11
11
|
name: z.string(),
|
|
12
12
|
sectionOrder: z.number().int(),
|
|
13
13
|
isArchived: z.boolean(),
|
|
@@ -11,7 +11,6 @@ export * from './workspaces.js';
|
|
|
11
11
|
export * from './folders.js';
|
|
12
12
|
export * from './workspace-filters.js';
|
|
13
13
|
export * from './workspace-goals.js';
|
|
14
|
-
export * from './goals.js';
|
|
15
14
|
export * from './notifications.js';
|
|
16
15
|
export * from './sharing.js';
|
|
17
16
|
export * from './view-options.js';
|
|
@@ -9,7 +9,7 @@ export const NoteSchema = z.looseObject({
|
|
|
9
9
|
itemId: z.string().optional(),
|
|
10
10
|
projectId: z.string().optional(),
|
|
11
11
|
content: z.string(),
|
|
12
|
-
postedAt: z.
|
|
12
|
+
postedAt: z.coerce.date(),
|
|
13
13
|
fileAttachment: AttachmentSchema.nullable(),
|
|
14
14
|
postedUid: z.string(),
|
|
15
15
|
uidsToNotify: z.array(z.string()).nullable(),
|
|
@@ -54,7 +54,7 @@ export const SyncUserSchema = z.looseObject({
|
|
|
54
54
|
daysOff: z.array(z.number().int()),
|
|
55
55
|
featureIdentifier: z.string(),
|
|
56
56
|
features: FeaturesSchema,
|
|
57
|
-
freeTrailExpires: z.
|
|
57
|
+
freeTrailExpires: z.coerce.date().optional(),
|
|
58
58
|
hasMagicNumber: z.boolean(),
|
|
59
59
|
hasPassword: z.boolean(),
|
|
60
60
|
hasStartedATrial: z.boolean().optional(),
|
|
@@ -63,7 +63,7 @@ export const SyncUserSchema = z.looseObject({
|
|
|
63
63
|
isCelebrationsEnabled: z.boolean(),
|
|
64
64
|
isPremium: z.boolean(),
|
|
65
65
|
joinableWorkspace: JoinableWorkspaceSchema.nullable(),
|
|
66
|
-
joinedAt: z.
|
|
66
|
+
joinedAt: z.coerce.date(),
|
|
67
67
|
gettingStartedGuideProjects: z.array(GettingStartedGuideProjectSchema).nullable(),
|
|
68
68
|
karma: z.number(),
|
|
69
69
|
karmaTrend: z.string(),
|
|
@@ -81,13 +81,13 @@ export const SyncUserSchema = z.looseObject({
|
|
|
81
81
|
onboardingTeamMode: z.boolean().nullable().optional(),
|
|
82
82
|
onboardingUseCases: z.array(z.string()).nullable().optional(),
|
|
83
83
|
premiumStatus: z.enum(PREMIUM_STATUSES),
|
|
84
|
-
premiumUntil: z.
|
|
84
|
+
premiumUntil: z.coerce.date().nullable(),
|
|
85
85
|
rambleSessionsUsage: z
|
|
86
86
|
.object({
|
|
87
87
|
currentCount: z.number().int(),
|
|
88
88
|
limit: z.number().int(),
|
|
89
89
|
remaining: z.number().int(),
|
|
90
|
-
resetDate: z.
|
|
90
|
+
resetDate: z.coerce.date(),
|
|
91
91
|
})
|
|
92
92
|
.nullable()
|
|
93
93
|
.optional(),
|
|
@@ -18,6 +18,6 @@ export const WorkspaceGoalSchema = z.looseObject({
|
|
|
18
18
|
projectIds: z.array(z.string()),
|
|
19
19
|
progress: WorkspaceGoalProgressSchema.nullable(),
|
|
20
20
|
creatorUid: z.string(),
|
|
21
|
-
createdAt: z.
|
|
22
|
-
updatedAt: z.
|
|
21
|
+
createdAt: z.coerce.date(),
|
|
22
|
+
updatedAt: z.coerce.date(),
|
|
23
23
|
});
|
|
@@ -29,8 +29,8 @@ export const SyncWorkspaceSchema = z
|
|
|
29
29
|
logoSmall: z.string().optional(),
|
|
30
30
|
logoS640: z.string().optional(),
|
|
31
31
|
creatorId: StringOrNumberSchema,
|
|
32
|
-
createdAt: z.
|
|
33
|
-
dateCreated: z.
|
|
32
|
+
createdAt: z.coerce.date().optional(),
|
|
33
|
+
dateCreated: z.coerce.date().optional(),
|
|
34
34
|
isDeleted: z.boolean(),
|
|
35
35
|
isCollapsed: z.boolean(),
|
|
36
36
|
role: WorkspaceRoleSchema.optional(),
|
|
@@ -58,7 +58,7 @@ export const SyncWorkspaceSchema = z
|
|
|
58
58
|
defaultCollaborators: z
|
|
59
59
|
.object({
|
|
60
60
|
predefinedGroupIds: z.array(z.string()),
|
|
61
|
-
userIds: z.array(
|
|
61
|
+
userIds: z.array(StringOrNumberSchema),
|
|
62
62
|
})
|
|
63
63
|
.optional(),
|
|
64
64
|
properties: WorkspacePropertiesSchema.optional(),
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { GoalSchema } from '../goals/types.js';
|
|
3
2
|
import { LabelSchema } from '../labels/types.js';
|
|
4
3
|
import { ProjectSchema } from '../projects/types.js';
|
|
5
4
|
import { SectionSchema } from '../sections/types.js';
|
|
@@ -44,7 +43,6 @@ export const SyncResponseSchema = z.looseObject({
|
|
|
44
43
|
projectViewOptionsDefaults: z.array(ProjectViewOptionsDefaultsSchema).optional(),
|
|
45
44
|
roleActions: z.array(z.record(z.string(), z.unknown())).optional(),
|
|
46
45
|
folders: z.array(FolderSchema).optional(),
|
|
47
|
-
goals: z.array(GoalSchema).optional(),
|
|
48
46
|
workspaceGoals: z.array(WorkspaceGoalSchema).optional(),
|
|
49
47
|
dayOrders: z.record(z.string(), z.number()).optional(),
|
|
50
48
|
calendars: z.array(CalendarSchema).optional(),
|
|
@@ -37,9 +37,9 @@ export const TaskSchema = z
|
|
|
37
37
|
duration: DurationSchema.nullable(),
|
|
38
38
|
checked: z.boolean(),
|
|
39
39
|
isDeleted: z.boolean(),
|
|
40
|
-
addedAt: z.
|
|
41
|
-
completedAt: z.
|
|
42
|
-
updatedAt: z.
|
|
40
|
+
addedAt: z.coerce.date().nullable(),
|
|
41
|
+
completedAt: z.coerce.date().nullable(),
|
|
42
|
+
updatedAt: z.coerce.date().nullable(),
|
|
43
43
|
due: DueDateSchema.nullable(),
|
|
44
44
|
priority: z.number().int(),
|
|
45
45
|
childOrder: z.number().int(),
|