sunsama-api 0.1.0 → 0.2.1
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 +66 -8
- package/dist/cjs/client/index.js +317 -21
- package/dist/cjs/client/index.js.map +1 -1
- package/dist/cjs/queries/index.js +1 -0
- package/dist/cjs/queries/index.js.map +1 -1
- package/dist/cjs/queries/mutations/createTask.js +32 -0
- package/dist/cjs/queries/mutations/createTask.js.map +1 -0
- package/dist/cjs/queries/mutations/index.js +10 -0
- package/dist/cjs/queries/mutations/index.js.map +1 -0
- package/dist/cjs/queries/mutations/updateTaskComplete.js +91 -0
- package/dist/cjs/queries/mutations/updateTaskComplete.js.map +1 -0
- package/dist/cjs/queries/mutations/updateTaskDelete.js +26 -0
- package/dist/cjs/queries/mutations/updateTaskDelete.js.map +1 -0
- package/dist/esm/client/index.js +298 -2
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/queries/index.js +1 -0
- package/dist/esm/queries/index.js.map +1 -1
- package/dist/esm/queries/mutations/createTask.js +29 -0
- package/dist/esm/queries/mutations/createTask.js.map +1 -0
- package/dist/esm/queries/mutations/index.js +7 -0
- package/dist/esm/queries/mutations/index.js.map +1 -0
- package/dist/esm/queries/mutations/updateTaskComplete.js +88 -0
- package/dist/esm/queries/mutations/updateTaskComplete.js.map +1 -0
- package/dist/esm/queries/mutations/updateTaskDelete.js +23 -0
- package/dist/esm/queries/mutations/updateTaskDelete.js.map +1 -0
- package/dist/types/client/index.d.ts +110 -1
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/queries/index.d.ts +1 -0
- package/dist/types/queries/index.d.ts.map +1 -1
- package/dist/types/queries/mutations/createTask.d.ts +13 -0
- package/dist/types/queries/mutations/createTask.d.ts.map +1 -0
- package/dist/types/queries/mutations/index.d.ts +7 -0
- package/dist/types/queries/mutations/index.d.ts.map +1 -0
- package/dist/types/queries/mutations/updateTaskComplete.d.ts +23 -0
- package/dist/types/queries/mutations/updateTaskComplete.d.ts.map +1 -0
- package/dist/types/queries/mutations/updateTaskDelete.d.ts +13 -0
- package/dist/types/queries/mutations/updateTaskDelete.d.ts.map +1 -0
- package/dist/types/types/api.d.ts +205 -0
- package/dist/types/types/api.d.ts.map +1 -1
- package/package.json +26 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* GraphQL mutation for marking a task as complete
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UPDATE_TASK_COMPLETE_MUTATION = exports.UPDATE_TASK_PAYLOAD_FRAGMENT = exports.PARTIAL_TASK_FRAGMENT = void 0;
|
|
7
|
+
const graphql_tag_1 = require("graphql-tag");
|
|
8
|
+
const task_js_1 = require("../fragments/task.js");
|
|
9
|
+
/**
|
|
10
|
+
* Fragment for PartialTask structure
|
|
11
|
+
* Used in update operations to return only modified fields
|
|
12
|
+
*/
|
|
13
|
+
exports.PARTIAL_TASK_FRAGMENT = (0, graphql_tag_1.gql) `
|
|
14
|
+
fragment PartialTask on PartialTask {
|
|
15
|
+
_id
|
|
16
|
+
recommendedStreamId
|
|
17
|
+
streamIds
|
|
18
|
+
recommendedTimeEstimate
|
|
19
|
+
subtasks {
|
|
20
|
+
_id
|
|
21
|
+
title
|
|
22
|
+
completedDate
|
|
23
|
+
completedBy
|
|
24
|
+
timeEstimate
|
|
25
|
+
actualTime {
|
|
26
|
+
...TaskActualTime
|
|
27
|
+
__typename
|
|
28
|
+
}
|
|
29
|
+
snooze {
|
|
30
|
+
userId
|
|
31
|
+
date
|
|
32
|
+
until
|
|
33
|
+
__typename
|
|
34
|
+
}
|
|
35
|
+
scheduledTime {
|
|
36
|
+
...TaskScheduledTime
|
|
37
|
+
__typename
|
|
38
|
+
}
|
|
39
|
+
integration {
|
|
40
|
+
...TaskIntegration
|
|
41
|
+
__typename
|
|
42
|
+
}
|
|
43
|
+
mergedTaskId
|
|
44
|
+
recommendedTimeEstimate
|
|
45
|
+
__typename
|
|
46
|
+
}
|
|
47
|
+
__typename
|
|
48
|
+
}
|
|
49
|
+
${task_js_1.TASK_ACTUAL_TIME_FRAGMENT}
|
|
50
|
+
${task_js_1.TASK_SCHEDULED_TIME_FRAGMENT}
|
|
51
|
+
${task_js_1.TASK_INTEGRATION_FRAGMENT}
|
|
52
|
+
`;
|
|
53
|
+
/**
|
|
54
|
+
* Fragment for UpdateTaskPayload structure
|
|
55
|
+
* Defines the response structure for task update mutations
|
|
56
|
+
*/
|
|
57
|
+
exports.UPDATE_TASK_PAYLOAD_FRAGMENT = (0, graphql_tag_1.gql) `
|
|
58
|
+
fragment UpdateTaskPayload on UpdateTaskPayload {
|
|
59
|
+
updatedTask {
|
|
60
|
+
...Task
|
|
61
|
+
__typename
|
|
62
|
+
}
|
|
63
|
+
updatedFields {
|
|
64
|
+
...PartialTask
|
|
65
|
+
__typename
|
|
66
|
+
}
|
|
67
|
+
success
|
|
68
|
+
skipped
|
|
69
|
+
__typename
|
|
70
|
+
}
|
|
71
|
+
${task_js_1.TASK_FRAGMENT}
|
|
72
|
+
${exports.PARTIAL_TASK_FRAGMENT}
|
|
73
|
+
`;
|
|
74
|
+
/**
|
|
75
|
+
* Mutation for marking a task as complete
|
|
76
|
+
*
|
|
77
|
+
* Variables:
|
|
78
|
+
* - input.taskId: The ID of the task to mark complete
|
|
79
|
+
* - input.completeOn: ISO 8601 timestamp when the task was completed
|
|
80
|
+
* - input.limitResponsePayload: Flag to limit response size (optional)
|
|
81
|
+
*/
|
|
82
|
+
exports.UPDATE_TASK_COMPLETE_MUTATION = (0, graphql_tag_1.gql) `
|
|
83
|
+
mutation updateTaskComplete($input: UpdateTaskCompleteInput!) {
|
|
84
|
+
updateTaskComplete(input: $input) {
|
|
85
|
+
...UpdateTaskPayload
|
|
86
|
+
__typename
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
${exports.UPDATE_TASK_PAYLOAD_FRAGMENT}
|
|
90
|
+
`;
|
|
91
|
+
//# sourceMappingURL=updateTaskComplete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateTaskComplete.js","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskComplete.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6CAAkC;AAClC,kDAK8B;AAE9B;;;GAGG;AACU,QAAA,qBAAqB,GAAG,IAAA,iBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoCpC,mCAAyB;IACzB,sCAA4B;IAC5B,mCAAyB;CAC5B,CAAC;AAEF;;;GAGG;AACU,QAAA,4BAA4B,GAAG,IAAA,iBAAG,EAAA;;;;;;;;;;;;;;IAc3C,uBAAa;IACb,6BAAqB;CACxB,CAAC;AAEF;;;;;;;GAOG;AACU,QAAA,6BAA6B,GAAG,IAAA,iBAAG,EAAA;;;;;;;IAO5C,oCAA4B;CAC/B,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* GraphQL mutation for deleting a task
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UPDATE_TASK_DELETE_MUTATION = void 0;
|
|
7
|
+
const graphql_tag_1 = require("graphql-tag");
|
|
8
|
+
const updateTaskComplete_js_1 = require("./updateTaskComplete.js");
|
|
9
|
+
/**
|
|
10
|
+
* Mutation for deleting a task
|
|
11
|
+
*
|
|
12
|
+
* Variables:
|
|
13
|
+
* - input.taskId: The ID of the task to delete
|
|
14
|
+
* - input.limitResponsePayload: Flag to limit response size (optional)
|
|
15
|
+
* - input.wasTaskMerged: Whether the task was merged before deletion (optional)
|
|
16
|
+
*/
|
|
17
|
+
exports.UPDATE_TASK_DELETE_MUTATION = (0, graphql_tag_1.gql) `
|
|
18
|
+
mutation updateTaskDelete($input: UpdateTaskDeleteInput!) {
|
|
19
|
+
updateTaskDelete(input: $input) {
|
|
20
|
+
...UpdateTaskPayload
|
|
21
|
+
__typename
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
${updateTaskComplete_js_1.UPDATE_TASK_PAYLOAD_FRAGMENT}
|
|
25
|
+
`;
|
|
26
|
+
//# sourceMappingURL=updateTaskDelete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateTaskDelete.js","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskDelete.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6CAAkC;AAClC,mEAAuE;AAEvE;;;;;;;GAOG;AACU,QAAA,2BAA2B,GAAG,IAAA,iBAAG,EAAA;;;;;;;IAO1C,oDAA4B;CAC/B,CAAC"}
|
package/dist/esm/client/index.js
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { print } from 'graphql';
|
|
7
7
|
import { Cookie, CookieJar } from 'tough-cookie';
|
|
8
|
-
import { SunsamaAuthError } from '../errors';
|
|
9
|
-
import { GET_STREAMS_BY_GROUP_ID_QUERY, GET_TASKS_BACKLOG_QUERY, GET_TASKS_BY_DAY_QUERY, GET_USER_QUERY, } from '../queries';
|
|
8
|
+
import { SunsamaAuthError } from '../errors/index.js';
|
|
9
|
+
import { CREATE_TASK_MUTATION, GET_STREAMS_BY_GROUP_ID_QUERY, GET_TASKS_BACKLOG_QUERY, GET_TASKS_BY_DAY_QUERY, GET_USER_QUERY, UPDATE_TASK_COMPLETE_MUTATION, UPDATE_TASK_DELETE_MUTATION, } from '../queries/index.js';
|
|
10
10
|
/**
|
|
11
11
|
* Main Sunsama API client class
|
|
12
12
|
*
|
|
@@ -321,6 +321,302 @@ export class SunsamaClient {
|
|
|
321
321
|
}
|
|
322
322
|
return this.timezone;
|
|
323
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* Marks a task as complete
|
|
326
|
+
*
|
|
327
|
+
* @param taskId - The ID of the task to mark as complete
|
|
328
|
+
* @param completeOn - The date/time when the task was completed (defaults to current time)
|
|
329
|
+
* @param limitResponsePayload - Whether to limit the response payload size (defaults to true)
|
|
330
|
+
* @returns The update result with success status and optionally the updated task
|
|
331
|
+
* @throws SunsamaAuthError if not authenticated or request fails
|
|
332
|
+
*
|
|
333
|
+
* @example
|
|
334
|
+
* ```typescript
|
|
335
|
+
* // Mark a task as complete with current timestamp
|
|
336
|
+
* const result = await client.updateTaskComplete('taskId');
|
|
337
|
+
*
|
|
338
|
+
* // Mark complete with specific timestamp
|
|
339
|
+
* const result = await client.updateTaskComplete('taskId', '2025-01-15T10:30:00Z');
|
|
340
|
+
*
|
|
341
|
+
* // Get full task details in response
|
|
342
|
+
* const result = await client.updateTaskComplete('taskId', new Date(), false);
|
|
343
|
+
* ```
|
|
344
|
+
*/
|
|
345
|
+
async updateTaskComplete(taskId, completeOn, limitResponsePayload = true) {
|
|
346
|
+
// Convert Date to ISO string if needed
|
|
347
|
+
let completeOnString;
|
|
348
|
+
if (completeOn instanceof Date) {
|
|
349
|
+
completeOnString = completeOn.toISOString();
|
|
350
|
+
}
|
|
351
|
+
else if (completeOn) {
|
|
352
|
+
completeOnString = completeOn;
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
// Default to current time
|
|
356
|
+
completeOnString = new Date().toISOString();
|
|
357
|
+
}
|
|
358
|
+
const variables = {
|
|
359
|
+
taskId,
|
|
360
|
+
completeOn: completeOnString,
|
|
361
|
+
limitResponsePayload,
|
|
362
|
+
};
|
|
363
|
+
const request = {
|
|
364
|
+
operationName: 'updateTaskComplete',
|
|
365
|
+
variables: { input: variables },
|
|
366
|
+
query: UPDATE_TASK_COMPLETE_MUTATION,
|
|
367
|
+
};
|
|
368
|
+
const response = await this.graphqlRequest(request);
|
|
369
|
+
if (!response.data) {
|
|
370
|
+
throw new SunsamaAuthError('No response data received');
|
|
371
|
+
}
|
|
372
|
+
return response.data.updateTaskComplete;
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Deletes a task
|
|
376
|
+
*
|
|
377
|
+
* @param taskId - The ID of the task to delete
|
|
378
|
+
* @param limitResponsePayload - Whether to limit response size (defaults to true)
|
|
379
|
+
* @param wasTaskMerged - Whether the task was merged before deletion (defaults to false)
|
|
380
|
+
* @returns The update result with success status
|
|
381
|
+
* @throws SunsamaAuthError if not authenticated or request fails
|
|
382
|
+
*
|
|
383
|
+
* @example
|
|
384
|
+
* ```typescript
|
|
385
|
+
* // Delete a task
|
|
386
|
+
* const result = await client.deleteTask('taskId');
|
|
387
|
+
*
|
|
388
|
+
* // Delete with full response payload
|
|
389
|
+
* const result = await client.deleteTask('taskId', false);
|
|
390
|
+
*
|
|
391
|
+
* // Delete a merged task
|
|
392
|
+
* const result = await client.deleteTask('taskId', true, true);
|
|
393
|
+
* ```
|
|
394
|
+
*/
|
|
395
|
+
async deleteTask(taskId, limitResponsePayload = true, wasTaskMerged = false) {
|
|
396
|
+
const variables = {
|
|
397
|
+
taskId,
|
|
398
|
+
limitResponsePayload,
|
|
399
|
+
wasTaskMerged,
|
|
400
|
+
};
|
|
401
|
+
const request = {
|
|
402
|
+
operationName: 'updateTaskDelete',
|
|
403
|
+
variables: { input: variables },
|
|
404
|
+
query: UPDATE_TASK_DELETE_MUTATION,
|
|
405
|
+
};
|
|
406
|
+
const response = await this.graphqlRequest(request);
|
|
407
|
+
if (!response.data) {
|
|
408
|
+
throw new SunsamaAuthError('No response data received');
|
|
409
|
+
}
|
|
410
|
+
return response.data.updateTaskDelete;
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* Creates a new task with flexible options
|
|
414
|
+
*
|
|
415
|
+
* @param text - The main text/title of the task
|
|
416
|
+
* @param options - Additional task properties (including optional custom taskId)
|
|
417
|
+
* @returns The created task result with success status
|
|
418
|
+
* @throws SunsamaAuthError if not authenticated or request fails
|
|
419
|
+
*
|
|
420
|
+
* @example
|
|
421
|
+
* ```typescript
|
|
422
|
+
* // Create a simple task (ID auto-generated)
|
|
423
|
+
* const result = await client.createTask('Complete project documentation');
|
|
424
|
+
*
|
|
425
|
+
* // Create a task with options
|
|
426
|
+
* const result = await client.createTask('Review pull requests', {
|
|
427
|
+
* notes: 'Check all open PRs in the main repository',
|
|
428
|
+
* timeEstimate: 30,
|
|
429
|
+
* streamIds: ['stream-id-1']
|
|
430
|
+
* });
|
|
431
|
+
*
|
|
432
|
+
* // Create a task with custom ID (useful for tracking/deletion)
|
|
433
|
+
* const customId = SunsamaClient.generateTaskId();
|
|
434
|
+
* const result = await client.createTask('Follow up with client', {
|
|
435
|
+
* taskId: customId,
|
|
436
|
+
* snoozeUntil: new Date('2025-01-15T09:00:00')
|
|
437
|
+
* });
|
|
438
|
+
* ```
|
|
439
|
+
*/
|
|
440
|
+
async createTask(text, options) {
|
|
441
|
+
// Ensure we have user context
|
|
442
|
+
if (!this.userId || !this.groupId) {
|
|
443
|
+
await this.getUser();
|
|
444
|
+
}
|
|
445
|
+
if (!this.userId || !this.groupId) {
|
|
446
|
+
throw new SunsamaAuthError('Unable to determine user ID or group ID');
|
|
447
|
+
}
|
|
448
|
+
// Use provided task ID or generate a new one
|
|
449
|
+
const taskId = options?.taskId || SunsamaClient.generateTaskId();
|
|
450
|
+
// Generate timestamps
|
|
451
|
+
const now = new Date().toISOString();
|
|
452
|
+
// Build collaborative editing snapshot for notes
|
|
453
|
+
const collabSnapshot = this.createCollabSnapshot(taskId, options?.notes || '');
|
|
454
|
+
// Handle snooze configuration
|
|
455
|
+
let snooze = null;
|
|
456
|
+
if (options?.snoozeUntil) {
|
|
457
|
+
const snoozeDate = options.snoozeUntil instanceof Date ? options.snoozeUntil : new Date(options.snoozeUntil);
|
|
458
|
+
snooze = {
|
|
459
|
+
userId: this.userId,
|
|
460
|
+
date: now,
|
|
461
|
+
until: snoozeDate.toISOString(),
|
|
462
|
+
__typename: 'TaskSnooze',
|
|
463
|
+
};
|
|
464
|
+
}
|
|
465
|
+
// Handle due date
|
|
466
|
+
let dueDate = null;
|
|
467
|
+
if (options?.dueDate) {
|
|
468
|
+
dueDate = options.dueDate instanceof Date ? options.dueDate.toISOString() : options.dueDate;
|
|
469
|
+
}
|
|
470
|
+
// Build the complete task input
|
|
471
|
+
const taskInput = {
|
|
472
|
+
_id: taskId,
|
|
473
|
+
groupId: this.groupId,
|
|
474
|
+
taskType: 'outcomes',
|
|
475
|
+
streamIds: options?.streamIds || [],
|
|
476
|
+
recommendedStreamId: null,
|
|
477
|
+
eventInfo: null,
|
|
478
|
+
seededEventIds: null,
|
|
479
|
+
private: options?.private || false,
|
|
480
|
+
assigneeId: this.userId,
|
|
481
|
+
createdBy: this.userId,
|
|
482
|
+
integration: null,
|
|
483
|
+
deleted: false,
|
|
484
|
+
text,
|
|
485
|
+
notes: options?.notes || '',
|
|
486
|
+
notesMarkdown: null,
|
|
487
|
+
notesChecksum: null,
|
|
488
|
+
editorVersion: 3,
|
|
489
|
+
collabSnapshot,
|
|
490
|
+
completed: false,
|
|
491
|
+
completedBy: null,
|
|
492
|
+
completeDate: null,
|
|
493
|
+
completeOn: null,
|
|
494
|
+
archivedAt: null,
|
|
495
|
+
duration: null,
|
|
496
|
+
runDate: null,
|
|
497
|
+
snooze,
|
|
498
|
+
timeHorizon: null,
|
|
499
|
+
dueDate,
|
|
500
|
+
comments: [],
|
|
501
|
+
orderings: [],
|
|
502
|
+
backlogOrderings: [],
|
|
503
|
+
subtasks: [],
|
|
504
|
+
subtasksCollapsed: null,
|
|
505
|
+
sequence: null,
|
|
506
|
+
followers: [],
|
|
507
|
+
recommendedTimeEstimate: null,
|
|
508
|
+
timeEstimate: options?.timeEstimate || null,
|
|
509
|
+
actualTime: [],
|
|
510
|
+
scheduledTime: [],
|
|
511
|
+
createdAt: now,
|
|
512
|
+
lastModified: now,
|
|
513
|
+
objectiveId: null,
|
|
514
|
+
ritual: null,
|
|
515
|
+
};
|
|
516
|
+
const variables = {
|
|
517
|
+
task: taskInput,
|
|
518
|
+
groupId: this.groupId,
|
|
519
|
+
position: undefined,
|
|
520
|
+
};
|
|
521
|
+
const request = {
|
|
522
|
+
operationName: 'createTask',
|
|
523
|
+
variables,
|
|
524
|
+
query: CREATE_TASK_MUTATION,
|
|
525
|
+
};
|
|
526
|
+
const response = await this.graphqlRequest(request);
|
|
527
|
+
if (!response.data) {
|
|
528
|
+
throw new SunsamaAuthError('No response data received');
|
|
529
|
+
}
|
|
530
|
+
return response.data.createTaskV2;
|
|
531
|
+
}
|
|
532
|
+
/**
|
|
533
|
+
* Generates a unique task ID in MongoDB ObjectId format
|
|
534
|
+
*
|
|
535
|
+
* This method creates a 24-character hexadecimal string following MongoDB ObjectId conventions:
|
|
536
|
+
* - First 8 chars: Unix timestamp (4 bytes)
|
|
537
|
+
* - Next 10 chars: Random value (5 bytes)
|
|
538
|
+
* - Last 6 chars: Incrementing counter (3 bytes)
|
|
539
|
+
*
|
|
540
|
+
* @returns A 24-character hexadecimal string compatible with Sunsama's task ID format
|
|
541
|
+
* @example
|
|
542
|
+
* ```typescript
|
|
543
|
+
* const taskId = SunsamaClient.generateTaskId();
|
|
544
|
+
* console.log(taskId); // "507f1f77bcf86cd799439011"
|
|
545
|
+
* ```
|
|
546
|
+
*/
|
|
547
|
+
static generateTaskId() {
|
|
548
|
+
// Get current timestamp (4 bytes = 8 hex chars)
|
|
549
|
+
const timestamp = Math.floor(Date.now() / 1000);
|
|
550
|
+
const timestampHex = timestamp.toString(16).padStart(8, '0');
|
|
551
|
+
// Generate random value (5 bytes = 10 hex chars)
|
|
552
|
+
const randomValue = SunsamaClient.getRandomValue();
|
|
553
|
+
// Generate counter (3 bytes = 6 hex chars) - increment for each ID generation
|
|
554
|
+
const counter = SunsamaClient.getNextCounter();
|
|
555
|
+
const counterHex = counter.toString(16).padStart(6, '0');
|
|
556
|
+
return timestampHex + randomValue + counterHex;
|
|
557
|
+
}
|
|
558
|
+
static _counter = Math.floor(Math.random() * 0xffffff);
|
|
559
|
+
/**
|
|
560
|
+
* Gets a random value for ObjectId generation (5 bytes = 10 hex chars)
|
|
561
|
+
* @internal
|
|
562
|
+
*/
|
|
563
|
+
static getRandomValue() {
|
|
564
|
+
// Generate 5 random bytes for the random portion
|
|
565
|
+
const randomBytes = new Uint8Array(5);
|
|
566
|
+
if (typeof crypto !== 'undefined' && crypto.getRandomValues) {
|
|
567
|
+
crypto.getRandomValues(randomBytes);
|
|
568
|
+
}
|
|
569
|
+
else {
|
|
570
|
+
// Fallback for Node.js environments
|
|
571
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
572
|
+
const cryptoModule = require('crypto');
|
|
573
|
+
const buffer = cryptoModule.randomBytes(5);
|
|
574
|
+
randomBytes.set(buffer);
|
|
575
|
+
}
|
|
576
|
+
return Array.from(randomBytes)
|
|
577
|
+
.map(b => b.toString(16).padStart(2, '0'))
|
|
578
|
+
.join('');
|
|
579
|
+
}
|
|
580
|
+
/**
|
|
581
|
+
* Gets the next counter value for ID generation (3 bytes = 6 hex chars)
|
|
582
|
+
* @internal
|
|
583
|
+
*/
|
|
584
|
+
static getNextCounter() {
|
|
585
|
+
SunsamaClient._counter = (SunsamaClient._counter + 1) % 0xffffff;
|
|
586
|
+
return SunsamaClient._counter;
|
|
587
|
+
}
|
|
588
|
+
/**
|
|
589
|
+
* Creates a collaborative editing snapshot for task notes
|
|
590
|
+
*
|
|
591
|
+
* @param taskId - The task ID
|
|
592
|
+
* @param notes - The notes content
|
|
593
|
+
* @returns CollabSnapshot object
|
|
594
|
+
* @internal
|
|
595
|
+
*/
|
|
596
|
+
createCollabSnapshot(taskId, notes) {
|
|
597
|
+
if (!notes) {
|
|
598
|
+
return null;
|
|
599
|
+
}
|
|
600
|
+
// This is a simplified version - the actual encoding might be more complex
|
|
601
|
+
const docName = `tasks/notes/${taskId}`;
|
|
602
|
+
return {
|
|
603
|
+
state: {
|
|
604
|
+
version: 'v1_sv',
|
|
605
|
+
docName,
|
|
606
|
+
clock: 0,
|
|
607
|
+
value: 'AeC61NgLAQ==', // Base64 encoded empty state
|
|
608
|
+
},
|
|
609
|
+
updates: [
|
|
610
|
+
{
|
|
611
|
+
version: 'v1',
|
|
612
|
+
action: 'update',
|
|
613
|
+
docName,
|
|
614
|
+
clock: 0,
|
|
615
|
+
value: 'AQHgutTYCwAHAQdkZWZhdWx0AwlwYXJhZ3JhcGgA', // Base64 encoded paragraph structure
|
|
616
|
+
},
|
|
617
|
+
],
|
|
618
|
+
};
|
|
619
|
+
}
|
|
324
620
|
/**
|
|
325
621
|
* Sets a session token as a cookie in the jar
|
|
326
622
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queries/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queries/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL mutation for creating a new task
|
|
3
|
+
*/
|
|
4
|
+
import { gql } from 'graphql-tag';
|
|
5
|
+
/**
|
|
6
|
+
* Mutation for creating a new task
|
|
7
|
+
*
|
|
8
|
+
* Variables:
|
|
9
|
+
* - task: The complete task object to create
|
|
10
|
+
* - groupId: The group ID (duplicated from task for API requirements)
|
|
11
|
+
* - position: Optional position parameter
|
|
12
|
+
*/
|
|
13
|
+
export const CREATE_TASK_MUTATION = gql `
|
|
14
|
+
mutation createTask($task: TaskInput!, $groupId: String!, $position: String) {
|
|
15
|
+
createTaskV2(task: $task, groupId: $groupId, position: $position) {
|
|
16
|
+
success
|
|
17
|
+
error
|
|
18
|
+
updatedFields {
|
|
19
|
+
recommendedStreamId
|
|
20
|
+
streamIds
|
|
21
|
+
recommendedTimeEstimate
|
|
22
|
+
timeEstimate
|
|
23
|
+
__typename
|
|
24
|
+
}
|
|
25
|
+
__typename
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
`;
|
|
29
|
+
//# sourceMappingURL=createTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createTask.js","sourceRoot":"","sources":["../../../../src/queries/mutations/createTask.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;CAetC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/queries/mutations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL mutation for marking a task as complete
|
|
3
|
+
*/
|
|
4
|
+
import { gql } from 'graphql-tag';
|
|
5
|
+
import { TASK_ACTUAL_TIME_FRAGMENT, TASK_FRAGMENT, TASK_INTEGRATION_FRAGMENT, TASK_SCHEDULED_TIME_FRAGMENT, } from '../fragments/task.js';
|
|
6
|
+
/**
|
|
7
|
+
* Fragment for PartialTask structure
|
|
8
|
+
* Used in update operations to return only modified fields
|
|
9
|
+
*/
|
|
10
|
+
export const PARTIAL_TASK_FRAGMENT = gql `
|
|
11
|
+
fragment PartialTask on PartialTask {
|
|
12
|
+
_id
|
|
13
|
+
recommendedStreamId
|
|
14
|
+
streamIds
|
|
15
|
+
recommendedTimeEstimate
|
|
16
|
+
subtasks {
|
|
17
|
+
_id
|
|
18
|
+
title
|
|
19
|
+
completedDate
|
|
20
|
+
completedBy
|
|
21
|
+
timeEstimate
|
|
22
|
+
actualTime {
|
|
23
|
+
...TaskActualTime
|
|
24
|
+
__typename
|
|
25
|
+
}
|
|
26
|
+
snooze {
|
|
27
|
+
userId
|
|
28
|
+
date
|
|
29
|
+
until
|
|
30
|
+
__typename
|
|
31
|
+
}
|
|
32
|
+
scheduledTime {
|
|
33
|
+
...TaskScheduledTime
|
|
34
|
+
__typename
|
|
35
|
+
}
|
|
36
|
+
integration {
|
|
37
|
+
...TaskIntegration
|
|
38
|
+
__typename
|
|
39
|
+
}
|
|
40
|
+
mergedTaskId
|
|
41
|
+
recommendedTimeEstimate
|
|
42
|
+
__typename
|
|
43
|
+
}
|
|
44
|
+
__typename
|
|
45
|
+
}
|
|
46
|
+
${TASK_ACTUAL_TIME_FRAGMENT}
|
|
47
|
+
${TASK_SCHEDULED_TIME_FRAGMENT}
|
|
48
|
+
${TASK_INTEGRATION_FRAGMENT}
|
|
49
|
+
`;
|
|
50
|
+
/**
|
|
51
|
+
* Fragment for UpdateTaskPayload structure
|
|
52
|
+
* Defines the response structure for task update mutations
|
|
53
|
+
*/
|
|
54
|
+
export const UPDATE_TASK_PAYLOAD_FRAGMENT = gql `
|
|
55
|
+
fragment UpdateTaskPayload on UpdateTaskPayload {
|
|
56
|
+
updatedTask {
|
|
57
|
+
...Task
|
|
58
|
+
__typename
|
|
59
|
+
}
|
|
60
|
+
updatedFields {
|
|
61
|
+
...PartialTask
|
|
62
|
+
__typename
|
|
63
|
+
}
|
|
64
|
+
success
|
|
65
|
+
skipped
|
|
66
|
+
__typename
|
|
67
|
+
}
|
|
68
|
+
${TASK_FRAGMENT}
|
|
69
|
+
${PARTIAL_TASK_FRAGMENT}
|
|
70
|
+
`;
|
|
71
|
+
/**
|
|
72
|
+
* Mutation for marking a task as complete
|
|
73
|
+
*
|
|
74
|
+
* Variables:
|
|
75
|
+
* - input.taskId: The ID of the task to mark complete
|
|
76
|
+
* - input.completeOn: ISO 8601 timestamp when the task was completed
|
|
77
|
+
* - input.limitResponsePayload: Flag to limit response size (optional)
|
|
78
|
+
*/
|
|
79
|
+
export const UPDATE_TASK_COMPLETE_MUTATION = gql `
|
|
80
|
+
mutation updateTaskComplete($input: UpdateTaskCompleteInput!) {
|
|
81
|
+
updateTaskComplete(input: $input) {
|
|
82
|
+
...UpdateTaskPayload
|
|
83
|
+
__typename
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
${UPDATE_TASK_PAYLOAD_FRAGMENT}
|
|
87
|
+
`;
|
|
88
|
+
//# sourceMappingURL=updateTaskComplete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateTaskComplete.js","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskComplete.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoCpC,yBAAyB;IACzB,4BAA4B;IAC5B,yBAAyB;CAC5B,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAA;;;;;;;;;;;;;;IAc3C,aAAa;IACb,qBAAqB;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAA;;;;;;;IAO5C,4BAA4B;CAC/B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL mutation for deleting a task
|
|
3
|
+
*/
|
|
4
|
+
import { gql } from 'graphql-tag';
|
|
5
|
+
import { UPDATE_TASK_PAYLOAD_FRAGMENT } from './updateTaskComplete.js';
|
|
6
|
+
/**
|
|
7
|
+
* Mutation for deleting a task
|
|
8
|
+
*
|
|
9
|
+
* Variables:
|
|
10
|
+
* - input.taskId: The ID of the task to delete
|
|
11
|
+
* - input.limitResponsePayload: Flag to limit response size (optional)
|
|
12
|
+
* - input.wasTaskMerged: Whether the task was merged before deletion (optional)
|
|
13
|
+
*/
|
|
14
|
+
export const UPDATE_TASK_DELETE_MUTATION = gql `
|
|
15
|
+
mutation updateTaskDelete($input: UpdateTaskDeleteInput!) {
|
|
16
|
+
updateTaskDelete(input: $input) {
|
|
17
|
+
...UpdateTaskPayload
|
|
18
|
+
__typename
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
${UPDATE_TASK_PAYLOAD_FRAGMENT}
|
|
22
|
+
`;
|
|
23
|
+
//# sourceMappingURL=updateTaskDelete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateTaskDelete.js","sourceRoot":"","sources":["../../../../src/queries/mutations/updateTaskDelete.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;;;;IAO1C,4BAA4B;CAC/B,CAAC"}
|