@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.
Files changed (82) hide show
  1. package/dist/cjs/consts/endpoints.js +1 -6
  2. package/dist/cjs/test-utils/test-defaults.js +15 -12
  3. package/dist/cjs/todoist-api.js +0 -128
  4. package/dist/cjs/types/activity/types.js +1 -1
  5. package/dist/cjs/types/comments/types.js +1 -1
  6. package/dist/cjs/types/index.js +0 -1
  7. package/dist/cjs/types/insights/types.js +6 -4
  8. package/dist/cjs/types/projects/types.js +2 -2
  9. package/dist/cjs/types/sections/types.js +3 -3
  10. package/dist/cjs/types/sync/commands/index.js +0 -1
  11. package/dist/cjs/types/sync/resource-types.js +0 -1
  12. package/dist/cjs/types/sync/resources/live-notifications.js +1 -1
  13. package/dist/cjs/types/sync/resources/notes.js +1 -1
  14. package/dist/cjs/types/sync/resources/user.js +4 -4
  15. package/dist/cjs/types/sync/resources/workspace-filters.js +2 -2
  16. package/dist/cjs/types/sync/resources/workspace-goals.js +2 -2
  17. package/dist/cjs/types/sync/resources/workspaces.js +3 -3
  18. package/dist/cjs/types/sync/response.js +10 -12
  19. package/dist/cjs/types/tasks/types.js +3 -3
  20. package/dist/cjs/types/workspaces/types.js +3 -3
  21. package/dist/cjs/utils/validators.js +46 -48
  22. package/dist/esm/consts/endpoints.js +0 -5
  23. package/dist/esm/test-utils/test-defaults.js +15 -12
  24. package/dist/esm/todoist-api.js +2 -130
  25. package/dist/esm/types/activity/types.js +1 -1
  26. package/dist/esm/types/comments/types.js +1 -1
  27. package/dist/esm/types/index.js +0 -1
  28. package/dist/esm/types/insights/types.js +6 -4
  29. package/dist/esm/types/projects/types.js +2 -2
  30. package/dist/esm/types/sections/types.js +3 -3
  31. package/dist/esm/types/sync/commands/index.js +0 -1
  32. package/dist/esm/types/sync/resource-types.js +0 -1
  33. package/dist/esm/types/sync/resources/live-notifications.js +1 -1
  34. package/dist/esm/types/sync/resources/notes.js +1 -1
  35. package/dist/esm/types/sync/resources/user.js +4 -4
  36. package/dist/esm/types/sync/resources/workspace-filters.js +2 -2
  37. package/dist/esm/types/sync/resources/workspace-goals.js +2 -2
  38. package/dist/esm/types/sync/resources/workspaces.js +3 -3
  39. package/dist/esm/types/sync/response.js +0 -2
  40. package/dist/esm/types/tasks/types.js +3 -3
  41. package/dist/esm/types/workspaces/types.js +3 -3
  42. package/dist/esm/utils/validators.js +0 -2
  43. package/dist/types/consts/endpoints.d.ts +2 -7
  44. package/dist/types/test-utils/test-defaults.d.ts +13 -13
  45. package/dist/types/todoist-api.d.ts +1 -12
  46. package/dist/types/types/activity/types.d.ts +1 -1
  47. package/dist/types/types/comments/types.d.ts +4 -4
  48. package/dist/types/types/folders/requests.d.ts +2 -2
  49. package/dist/types/types/index.d.ts +0 -1
  50. package/dist/types/types/insights/types.d.ts +9 -9
  51. package/dist/types/types/projects/requests.d.ts +1 -1
  52. package/dist/types/types/projects/types.d.ts +18 -18
  53. package/dist/types/types/sections/types.d.ts +9 -9
  54. package/dist/types/types/sync/commands/index.d.ts +0 -9
  55. package/dist/types/types/sync/commands/workspaces.d.ts +1 -1
  56. package/dist/types/types/sync/resource-types.d.ts +1 -1
  57. package/dist/types/types/sync/resources/live-notifications.d.ts +1 -1
  58. package/dist/types/types/sync/resources/notes.d.ts +1 -1
  59. package/dist/types/types/sync/resources/user.d.ts +4 -4
  60. package/dist/types/types/sync/resources/view-options.d.ts +6 -6
  61. package/dist/types/types/sync/resources/workspace-filters.d.ts +2 -2
  62. package/dist/types/types/sync/resources/workspace-goals.d.ts +2 -2
  63. package/dist/types/types/sync/resources/workspaces.d.ts +8 -8
  64. package/dist/types/types/sync/response.d.ts +45 -70
  65. package/dist/types/types/tasks/requests.d.ts +0 -1
  66. package/dist/types/types/tasks/types.d.ts +9 -9
  67. package/dist/types/types/workspaces/requests.d.ts +7 -7
  68. package/dist/types/types/workspaces/types.d.ts +6 -6
  69. package/dist/types/utils/validators.d.ts +64 -111
  70. package/package.json +1 -1
  71. package/dist/cjs/types/goals/index.js +0 -18
  72. package/dist/cjs/types/goals/requests.js +0 -2
  73. package/dist/cjs/types/goals/types.js +0 -29
  74. package/dist/cjs/types/sync/commands/goals.js +0 -2
  75. package/dist/esm/types/goals/index.js +0 -2
  76. package/dist/esm/types/goals/requests.js +0 -1
  77. package/dist/esm/types/goals/types.js +0 -26
  78. package/dist/esm/types/sync/commands/goals.js +0 -1
  79. package/dist/types/types/goals/index.d.ts +0 -2
  80. package/dist/types/types/goals/requests.d.ts +0 -33
  81. package/dist/types/types/goals/types.d.ts +0 -41
  82. 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, _9;
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 = exports.validateGoalArray = exports.validateGoal = 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 = 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/goals/types");
12
- const types_5 = require("../types/id-mappings/types");
13
- const types_6 = require("../types/insights/types");
14
- const types_7 = require("../types/labels/types");
15
- const types_8 = require("../types/productivity/types");
16
- const types_9 = require("../types/projects/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 types_11 = require("../types/tasks/types");
20
- const types_12 = require("../types/users/types");
21
- const types_13 = require("../types/workspaces/types");
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(types_11.TaskSchema), exports.validateTask = _a.validate, exports.validateTaskArray = _a.validateArray;
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(types_9.ProjectSchema), exports.validateProject = _b.validate, exports.validateProjectArray = _b.validateArray;
37
- _c = createValidator(types_9.WorkspaceProjectSchema), exports.validateWorkspaceProject = _c.validate, exports.validateWorkspaceProjectArray = _c.validateArray;
38
- _d = createValidator(types_10.SectionSchema), exports.validateSection = _d.validate, exports.validateSectionArray = _d.validateArray;
39
- _e = createValidator(types_7.LabelSchema), exports.validateLabel = _e.validate, exports.validateLabelArray = _e.validateArray;
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(types_12.UserSchema), exports.validateUser = _g.validate, exports.validateUserArray = _g.validateArray;
42
- exports.validateProductivityStats = createValidator(types_8.ProductivityStatsSchema).validate;
43
- exports.validateCurrentUser = createValidator(types_12.CurrentUserSchema).validate;
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(types_13.WorkspaceUserSchema), exports.validateWorkspaceUser = _j.validate, exports.validateWorkspaceUserArray = _j.validateArray;
47
- _k = createValidator(types_13.WorkspaceInvitationSchema), exports.validateWorkspaceInvitation = _k.validate, exports.validateWorkspaceInvitationArray = _k.validateArray;
48
- exports.validateWorkspacePlanDetails = createValidator(types_13.WorkspacePlanDetailsSchema).validate;
49
- exports.validateJoinWorkspaceResult = createValidator(types_13.JoinWorkspaceResultSchema).validate;
50
- _l = createValidator(types_13.WorkspaceSchema), exports.validateWorkspace = _l.validate, exports.validateWorkspaceArray = _l.validateArray;
51
- _m = createValidator(types_13.MemberActivityInfoSchema), exports.validateMemberActivityInfo = _m.validate, exports.validateMemberActivityInfoArray = _m.validateArray;
52
- _o = createValidator(types_13.WorkspaceUserTaskSchema), exports.validateWorkspaceUserTask = _o.validate, exports.validateWorkspaceUserTaskArray = _o.validateArray;
53
- exports.validateProjectActivityStats = createValidator(types_6.ProjectActivityStatsSchema).validate;
54
- exports.validateProjectHealth = createValidator(types_6.ProjectHealthSchema).validate;
55
- exports.validateProjectHealthContext = createValidator(types_6.ProjectHealthContextSchema).validate;
56
- exports.validateProjectProgress = createValidator(types_6.ProjectProgressSchema).validate;
57
- exports.validateWorkspaceInsights = createValidator(types_6.WorkspaceInsightsSchema).validate;
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(types_5.IdMappingSchema), exports.validateIdMapping = _q.validate, exports.validateIdMappingArray = _q.validateArray;
60
- _r = createValidator(types_5.MovedIdSchema), exports.validateMovedId = _r.validate, exports.validateMovedIdArray = _r.validateArray;
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(types_4.GoalSchema), exports.validateGoal = _w.validate, exports.validateGoalArray = _w.validateArray;
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
- _y = createValidator(resources_1.WorkspaceFilterSchema), exports.validateWorkspaceFilter = _y.validate, exports.validateWorkspaceFilterArray = _y.validateArray;
70
- _z = createValidator(resources_1.WorkspaceGoalSchema), exports.validateWorkspaceGoal = _z.validate, exports.validateWorkspaceGoalArray = _z.validateArray;
71
- _0 = createValidator(resources_1.CalendarSchema), exports.validateCalendar = _0.validate, exports.validateCalendarArray = _0.validateArray;
72
- _1 = createValidator(resources_1.CalendarAccountSchema), exports.validateCalendarAccount = _1.validate, exports.validateCalendarAccountArray = _1.validateArray;
73
- _2 = createValidator(resources_1.ReminderSchema), exports.validateReminder = _2.validate, exports.validateReminderArray = _2.validateArray;
74
- _3 = createValidator(resources_1.LocationReminderSchema), exports.validateLocationReminder = _3.validate, exports.validateLocationReminderArray = _3.validateArray;
75
- _4 = createValidator(resources_1.CompletedInfoSchema), exports.validateCompletedInfo = _4.validate, exports.validateCompletedInfoArray = _4.validateArray;
76
- _5 = createValidator(resources_1.ViewOptionsSchema), exports.validateViewOptions = _5.validate, exports.validateViewOptionsArray = _5.validateArray;
77
- _6 = createValidator(resources_1.ProjectViewOptionsDefaultsSchema), exports.validateProjectViewOptionsDefaults = _6.validate, exports.validateProjectViewOptionsDefaultsArray = _6.validateArray;
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
- _7 = createValidator(resources_1.LiveNotificationSchema), exports.validateLiveNotification = _7.validate, exports.validateLiveNotificationArray = _7.validateArray;
80
- _8 = createValidator(resources_1.SyncWorkspaceSchema), exports.validateSyncWorkspace = _8.validate, exports.validateSyncWorkspaceArray = _8.validateArray;
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
- _9 = createValidator(resources_1.SuggestionSchema), exports.validateSuggestion = _9.validate, exports.validateSuggestionArray = _9.validateArray;
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: DEFAULT_DATE,
70
+ addedAt: defaultDate(),
68
71
  completedAt: null,
69
- updatedAt: DEFAULT_DATE,
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: DEFAULT_DATE,
98
+ addedAt: defaultDate(),
96
99
  completedAt: null,
97
- updatedAt: DEFAULT_DATE,
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: DEFAULT_DATE,
123
- updatedAt: DEFAULT_DATE,
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: DEFAULT_DATE,
144
- updatedAt: DEFAULT_DATE,
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: DEFAULT_DATE,
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: DEFAULT_DATE,
284
+ postedAt: defaultDate(),
282
285
  fileAttachment: DEFAULT_ATTACHMENT,
283
286
  postedUid: DEFAULT_USER_ID,
284
287
  uidsToNotify: null,
@@ -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, ENDPOINT_REST_GOALS, ENDPOINT_REST_GOALS_SEARCH, GOAL_COMPLETE, GOAL_UNCOMPLETE, GOAL_TASKS, } from './consts/endpoints.js';
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, validateGoal, validateGoalArray, validateCollaboratorArray, validateCollaboratorStateArray, validateNoteArray, validateWorkspaceProject, validateWorkspaceProjectArray, parseSyncResponse, } from './utils/validators.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, 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.string(),
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.string(),
38
+ postedAt: z.coerce.date(),
39
39
  fileAttachment: AttachmentSchema.nullable(),
40
40
  postedUid: z.string(),
41
41
  uidsToNotify: z.array(z.string()).nullable(),
@@ -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.string().nullable().optional(),
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.string(),
54
- updatedAt: z.string(),
55
- completedAt: z.string().nullable(),
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.string().nullable(),
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.string().nullable(),
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.string(),
9
- updatedAt: z.string(),
10
- archivedAt: z.string().nullable(),
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';
@@ -29,7 +29,6 @@ export const SYNC_RESOURCE_TYPES = [
29
29
  'role_actions',
30
30
  'folders',
31
31
  'workspace_goals',
32
- 'goals',
33
32
  'day_orders',
34
33
  'calendars',
35
34
  'calendar_accounts',
@@ -9,7 +9,7 @@ import { z } from 'zod';
9
9
  */
10
10
  export const LiveNotificationSchema = z.looseObject({
11
11
  id: z.string(),
12
- createdAt: z.string(),
12
+ createdAt: z.coerce.date(),
13
13
  fromUid: z.string(),
14
14
  notificationType: z.string(),
15
15
  isUnread: z.boolean(),
@@ -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.string(),
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.string().optional(),
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.string(),
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.string().nullable(),
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.string(),
90
+ resetDate: z.coerce.date(),
91
91
  })
92
92
  .nullable()
93
93
  .optional(),
@@ -11,6 +11,6 @@ export const WorkspaceFilterSchema = z.looseObject({
11
11
  isFrozen: z.boolean(),
12
12
  creatorUid: z.string(),
13
13
  updaterUid: z.string(),
14
- createdAt: z.string(),
15
- updatedAt: z.string(),
14
+ createdAt: z.coerce.date(),
15
+ updatedAt: z.coerce.date(),
16
16
  });
@@ -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.string(),
22
- updatedAt: z.string(),
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.string().optional(),
33
- dateCreated: z.string().optional(),
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(z.number()),
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.string().nullable(),
41
- completedAt: z.string().nullable(),
42
- updatedAt: z.string().nullable(),
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(),