@doist/todoist-api-typescript 6.8.1 → 6.10.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/rest-client.js +1 -1
- package/dist/cjs/todoist-api.js +18 -6
- package/dist/cjs/utils/activity-helpers.js +18 -0
- package/dist/esm/rest-client.js +1 -1
- package/dist/esm/todoist-api.js +19 -7
- package/dist/esm/utils/activity-helpers.js +17 -0
- package/dist/types/types/entities.d.ts +15 -0
- package/dist/types/types/requests.d.ts +36 -19
- package/dist/types/types/sync/commands/filters.d.ts +3 -2
- package/dist/types/types/sync/commands/labels.d.ts +3 -2
- package/dist/types/types/sync/commands/projects.d.ts +3 -2
- package/dist/types/types/sync/commands/workspace-filters.d.ts +3 -2
- package/dist/types/utils/activity-helpers.d.ts +8 -0
- package/dist/types/utils/colors.d.ts +301 -160
- package/package.json +1 -1
package/dist/cjs/rest-client.js
CHANGED
|
@@ -15,7 +15,7 @@ function paramsSerializer(params) {
|
|
|
15
15
|
const value = params[key];
|
|
16
16
|
if (value != null) {
|
|
17
17
|
if (Array.isArray(value)) {
|
|
18
|
-
qs.append(key,
|
|
18
|
+
qs.append(key, JSON.stringify(value));
|
|
19
19
|
}
|
|
20
20
|
else if (typeof value === 'string' ||
|
|
21
21
|
typeof value === 'number' ||
|
package/dist/cjs/todoist-api.js
CHANGED
|
@@ -1085,18 +1085,30 @@ class TodoistApi {
|
|
|
1085
1085
|
* @returns A promise that resolves to a paginated response of activity events.
|
|
1086
1086
|
*/
|
|
1087
1087
|
async getActivityLogs(args = {}) {
|
|
1088
|
-
var _a, _b;
|
|
1088
|
+
var _a, _b, _c;
|
|
1089
1089
|
// Resolve dateFrom: prefer new param, fall back to deprecated `since`
|
|
1090
1090
|
const rawDateFrom = (_a = args.dateFrom) !== null && _a !== void 0 ? _a : args.since;
|
|
1091
1091
|
const rawDateTo = (_b = args.dateTo) !== null && _b !== void 0 ? _b : args.until;
|
|
1092
1092
|
// Convert Date objects to YYYY-MM-DD strings
|
|
1093
1093
|
const dateFrom = rawDateFrom instanceof Date ? (0, url_helpers_1.formatDateToYYYYMMDD)(rawDateFrom) : rawDateFrom;
|
|
1094
1094
|
const dateTo = rawDateTo instanceof Date ? (0, url_helpers_1.formatDateToYYYYMMDD)(rawDateTo) : rawDateTo;
|
|
1095
|
-
// Destructure out deprecated
|
|
1096
|
-
const { since: _since, until: _until, dateFrom: _dateFrom, dateTo: _dateTo } =
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1095
|
+
// Destructure out deprecated, raw date, and filter-type fields so they don't leak into payload
|
|
1096
|
+
const _d = args, { since: _since, until: _until, dateFrom: _dateFrom, dateTo: _dateTo, objectType, eventType, objectEventTypes } = _d, rest = __rest(_d, ["since", "until", "dateFrom", "dateTo", "objectType", "eventType", "objectEventTypes"]);
|
|
1097
|
+
// Build normalized objectEventTypes for the API
|
|
1098
|
+
let normalizedObjectEventTypes;
|
|
1099
|
+
if (objectEventTypes !== undefined) {
|
|
1100
|
+
const arr = Array.isArray(objectEventTypes) ? objectEventTypes : [objectEventTypes];
|
|
1101
|
+
normalizedObjectEventTypes = arr.map(activity_helpers_1.normalizeObjectEventTypeForApi);
|
|
1102
|
+
}
|
|
1103
|
+
else if (objectType !== undefined || eventType !== undefined) {
|
|
1104
|
+
// Synthesize combined filter from deprecated separate params
|
|
1105
|
+
const objPart = (_c = (0, activity_helpers_1.normalizeObjectTypeForApi)(objectType)) !== null && _c !== void 0 ? _c : '';
|
|
1106
|
+
const evtPart = eventType !== null && eventType !== void 0 ? eventType : '';
|
|
1107
|
+
normalizedObjectEventTypes = [`${objPart}:${evtPart}`];
|
|
1108
|
+
}
|
|
1109
|
+
const processedArgs = Object.assign(Object.assign(Object.assign(Object.assign({}, rest), (dateFrom !== undefined ? { dateFrom } : {})), (dateTo !== undefined ? { dateTo } : {})), (normalizedObjectEventTypes !== undefined
|
|
1110
|
+
? { objectEventTypes: normalizedObjectEventTypes }
|
|
1111
|
+
: {}));
|
|
1100
1112
|
const { data: { results, nextCursor }, } = await (0, rest_client_1.request)({
|
|
1101
1113
|
httpMethod: 'GET',
|
|
1102
1114
|
baseUri: this.syncApiBase,
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.normalizeObjectTypeForApi = normalizeObjectTypeForApi;
|
|
4
4
|
exports.denormalizeObjectTypeFromApi = denormalizeObjectTypeFromApi;
|
|
5
|
+
exports.normalizeObjectEventTypeForApi = normalizeObjectEventTypeForApi;
|
|
5
6
|
/**
|
|
6
7
|
* Converts modern SDK object type naming to legacy API naming.
|
|
7
8
|
* Maps 'task' -> 'item' and 'comment' -> 'note' for API requests.
|
|
@@ -38,3 +39,20 @@ function denormalizeObjectTypeFromApi(objectType) {
|
|
|
38
39
|
return 'comment';
|
|
39
40
|
return objectType;
|
|
40
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Normalizes an `ActivityObjectEventType` filter string for the API,
|
|
44
|
+
* converting modern object type names to legacy API names.
|
|
45
|
+
* e.g. 'task:added' -> 'item:added', 'comment:' -> 'note:', ':deleted' -> ':deleted'
|
|
46
|
+
*
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
function normalizeObjectEventTypeForApi(filter) {
|
|
50
|
+
var _a, _b;
|
|
51
|
+
const colonIndex = filter.indexOf(':');
|
|
52
|
+
if (colonIndex === -1) {
|
|
53
|
+
return (_a = normalizeObjectTypeForApi(filter)) !== null && _a !== void 0 ? _a : filter;
|
|
54
|
+
}
|
|
55
|
+
const objectPart = filter.slice(0, colonIndex);
|
|
56
|
+
const eventPart = filter.slice(colonIndex); // includes the colon
|
|
57
|
+
return `${(_b = normalizeObjectTypeForApi(objectPart)) !== null && _b !== void 0 ? _b : objectPart}${eventPart}`;
|
|
58
|
+
}
|
package/dist/esm/rest-client.js
CHANGED
|
@@ -10,7 +10,7 @@ export function paramsSerializer(params) {
|
|
|
10
10
|
const value = params[key];
|
|
11
11
|
if (value != null) {
|
|
12
12
|
if (Array.isArray(value)) {
|
|
13
|
-
qs.append(key,
|
|
13
|
+
qs.append(key, JSON.stringify(value));
|
|
14
14
|
}
|
|
15
15
|
else if (typeof value === 'string' ||
|
|
16
16
|
typeof value === 'number' ||
|
package/dist/esm/todoist-api.js
CHANGED
|
@@ -14,7 +14,7 @@ import { getSyncBaseUri, ENDPOINT_REST_TASKS, ENDPOINT_REST_TASKS_FILTER, ENDPOI
|
|
|
14
14
|
import { validateAttachment, validateComment, validateCommentArray, validateCurrentUser, validateLabel, validateLabelArray, validateProject, validateProjectArray, validateSection, validateSectionArray, validateTask, validateTaskArray, validateUserArray, validateProductivityStats, validateActivityEventArray, validateWorkspaceUserArray, validateWorkspaceInvitation, validateWorkspaceInvitationArray, validateWorkspacePlanDetails, validateJoinWorkspaceResult, validateWorkspaceArray, } from './utils/validators.js';
|
|
15
15
|
import { formatDateToYYYYMMDD } from './utils/url-helpers.js';
|
|
16
16
|
import { uploadMultipartFile } from './utils/multipart-upload.js';
|
|
17
|
-
import { normalizeObjectTypeForApi, denormalizeObjectTypeFromApi } from './utils/activity-helpers.js';
|
|
17
|
+
import { normalizeObjectTypeForApi, normalizeObjectEventTypeForApi, denormalizeObjectTypeFromApi, } from './utils/activity-helpers.js';
|
|
18
18
|
import { processTaskContent } from './utils/uncompletable-helpers.js';
|
|
19
19
|
import { z } from 'zod';
|
|
20
20
|
import { v4 as uuidv4 } from 'uuid';
|
|
@@ -1082,18 +1082,30 @@ export class TodoistApi {
|
|
|
1082
1082
|
* @returns A promise that resolves to a paginated response of activity events.
|
|
1083
1083
|
*/
|
|
1084
1084
|
async getActivityLogs(args = {}) {
|
|
1085
|
-
var _a, _b;
|
|
1085
|
+
var _a, _b, _c;
|
|
1086
1086
|
// Resolve dateFrom: prefer new param, fall back to deprecated `since`
|
|
1087
1087
|
const rawDateFrom = (_a = args.dateFrom) !== null && _a !== void 0 ? _a : args.since;
|
|
1088
1088
|
const rawDateTo = (_b = args.dateTo) !== null && _b !== void 0 ? _b : args.until;
|
|
1089
1089
|
// Convert Date objects to YYYY-MM-DD strings
|
|
1090
1090
|
const dateFrom = rawDateFrom instanceof Date ? formatDateToYYYYMMDD(rawDateFrom) : rawDateFrom;
|
|
1091
1091
|
const dateTo = rawDateTo instanceof Date ? formatDateToYYYYMMDD(rawDateTo) : rawDateTo;
|
|
1092
|
-
// Destructure out deprecated
|
|
1093
|
-
const { since: _since, until: _until, dateFrom: _dateFrom, dateTo: _dateTo } =
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1092
|
+
// Destructure out deprecated, raw date, and filter-type fields so they don't leak into payload
|
|
1093
|
+
const _d = args, { since: _since, until: _until, dateFrom: _dateFrom, dateTo: _dateTo, objectType, eventType, objectEventTypes } = _d, rest = __rest(_d, ["since", "until", "dateFrom", "dateTo", "objectType", "eventType", "objectEventTypes"]);
|
|
1094
|
+
// Build normalized objectEventTypes for the API
|
|
1095
|
+
let normalizedObjectEventTypes;
|
|
1096
|
+
if (objectEventTypes !== undefined) {
|
|
1097
|
+
const arr = Array.isArray(objectEventTypes) ? objectEventTypes : [objectEventTypes];
|
|
1098
|
+
normalizedObjectEventTypes = arr.map(normalizeObjectEventTypeForApi);
|
|
1099
|
+
}
|
|
1100
|
+
else if (objectType !== undefined || eventType !== undefined) {
|
|
1101
|
+
// Synthesize combined filter from deprecated separate params
|
|
1102
|
+
const objPart = (_c = normalizeObjectTypeForApi(objectType)) !== null && _c !== void 0 ? _c : '';
|
|
1103
|
+
const evtPart = eventType !== null && eventType !== void 0 ? eventType : '';
|
|
1104
|
+
normalizedObjectEventTypes = [`${objPart}:${evtPart}`];
|
|
1105
|
+
}
|
|
1106
|
+
const processedArgs = Object.assign(Object.assign(Object.assign(Object.assign({}, rest), (dateFrom !== undefined ? { dateFrom } : {})), (dateTo !== undefined ? { dateTo } : {})), (normalizedObjectEventTypes !== undefined
|
|
1107
|
+
? { objectEventTypes: normalizedObjectEventTypes }
|
|
1108
|
+
: {}));
|
|
1097
1109
|
const { data: { results, nextCursor }, } = await request({
|
|
1098
1110
|
httpMethod: 'GET',
|
|
1099
1111
|
baseUri: this.syncApiBase,
|
|
@@ -34,3 +34,20 @@ export function denormalizeObjectTypeFromApi(objectType) {
|
|
|
34
34
|
return 'comment';
|
|
35
35
|
return objectType;
|
|
36
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Normalizes an `ActivityObjectEventType` filter string for the API,
|
|
39
|
+
* converting modern object type names to legacy API names.
|
|
40
|
+
* e.g. 'task:added' -> 'item:added', 'comment:' -> 'note:', ':deleted' -> ':deleted'
|
|
41
|
+
*
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
export function normalizeObjectEventTypeForApi(filter) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
const colonIndex = filter.indexOf(':');
|
|
47
|
+
if (colonIndex === -1) {
|
|
48
|
+
return (_a = normalizeObjectTypeForApi(filter)) !== null && _a !== void 0 ? _a : filter;
|
|
49
|
+
}
|
|
50
|
+
const objectPart = filter.slice(0, colonIndex);
|
|
51
|
+
const eventPart = filter.slice(colonIndex); // includes the colon
|
|
52
|
+
return `${(_b = normalizeObjectTypeForApi(objectPart)) !== null && _b !== void 0 ? _b : objectPart}${eventPart}`;
|
|
53
|
+
}
|
|
@@ -717,6 +717,21 @@ export type ActivityObjectType = 'task' | 'comment' | 'project' | DeprecatedItem
|
|
|
717
717
|
* Type hints for known event types. Accepts any string for forward compatibility.
|
|
718
718
|
*/
|
|
719
719
|
export type ActivityEventType = 'added' | 'updated' | 'deleted' | 'completed' | 'uncompleted' | 'archived' | 'unarchived' | 'shared' | 'left' | (string & Record<string, never>);
|
|
720
|
+
type ModernActivityObjectType = 'task' | 'comment' | 'project' | (string & Record<string, never>);
|
|
721
|
+
/**
|
|
722
|
+
* Combined object:event filter string for the `objectEventTypes` parameter of `getActivityLogs`.
|
|
723
|
+
*
|
|
724
|
+
* Uses modern object type names (`task`, `comment`) rather than legacy API names (`item`, `note`).
|
|
725
|
+
* Either part may be omitted:
|
|
726
|
+
* - `'task:added'` — task additions only
|
|
727
|
+
* - `'task:'` — all events for tasks
|
|
728
|
+
* - `':deleted'` — all deleted events across all object types
|
|
729
|
+
*
|
|
730
|
+
* The final `string & Record<string, never>` member allows any arbitrary string
|
|
731
|
+
* to be passed for forward compatibility, while still providing autocomplete for
|
|
732
|
+
* the known combinations above.
|
|
733
|
+
*/
|
|
734
|
+
export type ActivityObjectEventType = `${ModernActivityObjectType}:${ActivityEventType}` | `${ModernActivityObjectType}:` | `:${ActivityEventType}` | (string & Record<string, never>);
|
|
720
735
|
/**
|
|
721
736
|
* Flexible object containing event-specific data.
|
|
722
737
|
* Uses z.record to accept any properties for forward compatibility.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { RequireAllOrNone, RequireOneOrNone, RequireExactlyOne } from 'type-fest';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ColorKey } from '../utils/colors.js';
|
|
3
|
+
import type { ActivityEvent, ActivityEventType, ActivityObjectEventType, ActivityObjectType, Comment, Duration, Label, PersonalProject, ProjectViewStyle, ProjectVisibility, Section, Task, User, WorkspaceProject } from './entities.js';
|
|
3
4
|
/**
|
|
4
5
|
* Arguments for creating a new task.
|
|
5
6
|
* @see https://todoist.com/api/v1/docs#tag/Tasks/operation/create_task_api_v1_tasks_post
|
|
@@ -200,7 +201,7 @@ export type GetArchivedProjectsResponse = {
|
|
|
200
201
|
export type AddProjectArgs = {
|
|
201
202
|
name: string;
|
|
202
203
|
parentId?: string;
|
|
203
|
-
color?:
|
|
204
|
+
color?: ColorKey;
|
|
204
205
|
isFavorite?: boolean;
|
|
205
206
|
viewStyle?: ProjectViewStyle;
|
|
206
207
|
};
|
|
@@ -210,7 +211,7 @@ export type AddProjectArgs = {
|
|
|
210
211
|
*/
|
|
211
212
|
export type UpdateProjectArgs = {
|
|
212
213
|
name?: string;
|
|
213
|
-
color?:
|
|
214
|
+
color?: ColorKey;
|
|
214
215
|
isFavorite?: boolean;
|
|
215
216
|
viewStyle?: ProjectViewStyle;
|
|
216
217
|
};
|
|
@@ -296,7 +297,7 @@ export type GetLabelsResponse = {
|
|
|
296
297
|
export type AddLabelArgs = {
|
|
297
298
|
name: string;
|
|
298
299
|
order?: number | null;
|
|
299
|
-
color?:
|
|
300
|
+
color?: ColorKey;
|
|
300
301
|
isFavorite?: boolean;
|
|
301
302
|
};
|
|
302
303
|
/**
|
|
@@ -306,7 +307,7 @@ export type AddLabelArgs = {
|
|
|
306
307
|
export type UpdateLabelArgs = {
|
|
307
308
|
name?: string;
|
|
308
309
|
order?: number | null;
|
|
309
|
-
color?:
|
|
310
|
+
color?: ColorKey;
|
|
310
311
|
isFavorite?: boolean;
|
|
311
312
|
};
|
|
312
313
|
/**
|
|
@@ -403,18 +404,9 @@ export type UpdateCommentArgs = {
|
|
|
403
404
|
content: string;
|
|
404
405
|
};
|
|
405
406
|
/**
|
|
406
|
-
*
|
|
407
|
+
* Common arguments for retrieving activity logs (excluding filter-type params).
|
|
407
408
|
*/
|
|
408
|
-
type
|
|
409
|
-
/**
|
|
410
|
-
* Type of object to filter by (e.g., 'task', 'comment', 'project').
|
|
411
|
-
* Accepts both modern naming ('task', 'comment') and legacy naming ('item', 'note').
|
|
412
|
-
*/
|
|
413
|
-
objectType?: ActivityObjectType;
|
|
414
|
-
/**
|
|
415
|
-
* Type of event to filter by (e.g., 'added', 'updated', 'deleted', 'completed', 'uncompleted', 'archived', 'unarchived', 'shared', 'left').
|
|
416
|
-
*/
|
|
417
|
-
eventType?: ActivityEventType;
|
|
409
|
+
type GetActivityLogsArgsCommon = {
|
|
418
410
|
/**
|
|
419
411
|
* Filter by the ID of a specific object.
|
|
420
412
|
*/
|
|
@@ -476,7 +468,32 @@ type GetActivityLogsArgsBase = {
|
|
|
476
468
|
*/
|
|
477
469
|
dateTo?: Date | string;
|
|
478
470
|
};
|
|
479
|
-
|
|
471
|
+
/** Use the legacy separate objectType/eventType params. Cannot be combined with objectEventTypes. */
|
|
472
|
+
type GetActivityLogsArgsLegacy = GetActivityLogsArgsCommon & {
|
|
473
|
+
/**
|
|
474
|
+
* Type of object to filter by (e.g., 'task', 'comment', 'project').
|
|
475
|
+
* Accepts both modern naming ('task', 'comment') and legacy naming ('item', 'note').
|
|
476
|
+
* @deprecated Use `objectEventTypes` instead.
|
|
477
|
+
*/
|
|
478
|
+
objectType?: ActivityObjectType;
|
|
479
|
+
/**
|
|
480
|
+
* Type of event to filter by (e.g., 'added', 'updated', 'deleted').
|
|
481
|
+
* @deprecated Use `objectEventTypes` instead.
|
|
482
|
+
*/
|
|
483
|
+
eventType?: ActivityEventType;
|
|
484
|
+
objectEventTypes?: never;
|
|
485
|
+
};
|
|
486
|
+
/** Use the modern combined objectEventTypes param. Cannot be combined with objectType/eventType. */
|
|
487
|
+
type GetActivityLogsArgsModern = GetActivityLogsArgsCommon & {
|
|
488
|
+
/**
|
|
489
|
+
* One or more combined object:event filter strings, e.g. `'task:added'`, `'task:'`, `':deleted'`.
|
|
490
|
+
* Accepts a single value or an array of values for multi-type filtering.
|
|
491
|
+
*/
|
|
492
|
+
objectEventTypes?: ActivityObjectEventType | ActivityObjectEventType[];
|
|
493
|
+
objectType?: never;
|
|
494
|
+
eventType?: never;
|
|
495
|
+
};
|
|
496
|
+
type GetActivityLogsArgsWithDate<TBase> = TBase & {
|
|
480
497
|
/**
|
|
481
498
|
* @deprecated Use `dateFrom` instead. Will be removed in the next major version.
|
|
482
499
|
*/
|
|
@@ -490,7 +507,7 @@ type GetActivityLogsArgsWithDate = GetActivityLogsArgsBase & {
|
|
|
490
507
|
* @deprecated String dates (YYYY-MM-DD format) are deprecated. Use Date objects instead.
|
|
491
508
|
* This type will be removed in the next major version.
|
|
492
509
|
*/
|
|
493
|
-
type GetActivityLogsArgsWithString =
|
|
510
|
+
type GetActivityLogsArgsWithString<TBase> = TBase & {
|
|
494
511
|
/**
|
|
495
512
|
* @deprecated Use `dateFrom` instead. Will be removed in the next major version.
|
|
496
513
|
*/
|
|
@@ -500,7 +517,7 @@ type GetActivityLogsArgsWithString = GetActivityLogsArgsBase & {
|
|
|
500
517
|
*/
|
|
501
518
|
until?: string;
|
|
502
519
|
};
|
|
503
|
-
export type GetActivityLogsArgs = GetActivityLogsArgsWithDate | GetActivityLogsArgsWithString
|
|
520
|
+
export type GetActivityLogsArgs = GetActivityLogsArgsWithDate<GetActivityLogsArgsLegacy> | GetActivityLogsArgsWithString<GetActivityLogsArgsLegacy> | GetActivityLogsArgsWithDate<GetActivityLogsArgsModern> | GetActivityLogsArgsWithString<GetActivityLogsArgsModern>;
|
|
504
521
|
/**
|
|
505
522
|
* Response from retrieving activity logs.
|
|
506
523
|
*/
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import type { ColorKey } from '../../../utils/colors.js';
|
|
1
2
|
export type FilterAddArgs = {
|
|
2
3
|
name: string;
|
|
3
4
|
query: string;
|
|
4
|
-
color?:
|
|
5
|
+
color?: ColorKey;
|
|
5
6
|
itemOrder?: number;
|
|
6
7
|
isFavorite?: boolean;
|
|
7
8
|
};
|
|
@@ -9,7 +10,7 @@ export type FilterUpdateArgs = {
|
|
|
9
10
|
id: string;
|
|
10
11
|
name?: string;
|
|
11
12
|
query?: string;
|
|
12
|
-
color?:
|
|
13
|
+
color?: ColorKey;
|
|
13
14
|
itemOrder?: number;
|
|
14
15
|
isFavorite?: boolean;
|
|
15
16
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { ColorKey } from '../../../utils/colors.js';
|
|
1
2
|
export type LabelAddArgs = {
|
|
2
3
|
name: string;
|
|
3
|
-
color?:
|
|
4
|
+
color?: ColorKey;
|
|
4
5
|
itemOrder?: number;
|
|
5
6
|
isFavorite?: boolean;
|
|
6
7
|
};
|
|
@@ -11,7 +12,7 @@ export type LabelRenameArgs = {
|
|
|
11
12
|
export type LabelUpdateArgs = {
|
|
12
13
|
id: string;
|
|
13
14
|
name?: string;
|
|
14
|
-
color?:
|
|
15
|
+
color?: ColorKey;
|
|
15
16
|
itemOrder?: number;
|
|
16
17
|
isFavorite?: boolean;
|
|
17
18
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ProjectViewStyle, ProjectVisibility, WorkspaceRole } from '../../entities.js';
|
|
2
2
|
import type { ProjectStatus, CollaboratorRole } from './shared.js';
|
|
3
|
+
import type { ColorKey } from '../../../utils/colors.js';
|
|
3
4
|
export type ProjectAccessConfig = {
|
|
4
5
|
visibility: ProjectVisibility;
|
|
5
6
|
configuration?: {
|
|
@@ -14,7 +15,7 @@ export type ProjectAddArgs = {
|
|
|
14
15
|
folderId?: string | null;
|
|
15
16
|
childOrder?: number;
|
|
16
17
|
defaultOrder?: number;
|
|
17
|
-
color?:
|
|
18
|
+
color?: ColorKey;
|
|
18
19
|
description?: string;
|
|
19
20
|
isFavorite?: boolean;
|
|
20
21
|
isInviteOnly?: boolean;
|
|
@@ -28,7 +29,7 @@ export type ProjectUpdateArgs = {
|
|
|
28
29
|
id: string;
|
|
29
30
|
folderId?: string | null;
|
|
30
31
|
name?: string;
|
|
31
|
-
color?:
|
|
32
|
+
color?: ColorKey;
|
|
32
33
|
description?: string;
|
|
33
34
|
isFavorite?: boolean;
|
|
34
35
|
isCollapsed?: boolean;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { ColorKey } from '../../../utils/colors.js';
|
|
1
2
|
export type WorkspaceFilterAddArgs = {
|
|
2
3
|
workspaceId: string;
|
|
3
4
|
name: string;
|
|
4
5
|
query: string;
|
|
5
|
-
color?:
|
|
6
|
+
color?: ColorKey;
|
|
6
7
|
itemOrder?: number;
|
|
7
8
|
isFavorite?: boolean;
|
|
8
9
|
};
|
|
@@ -10,7 +11,7 @@ export type WorkspaceFilterUpdateArgs = {
|
|
|
10
11
|
id: string;
|
|
11
12
|
name?: string;
|
|
12
13
|
query?: string;
|
|
13
|
-
color?:
|
|
14
|
+
color?: ColorKey;
|
|
14
15
|
itemOrder?: number;
|
|
15
16
|
isFavorite?: boolean;
|
|
16
17
|
};
|
|
@@ -18,3 +18,11 @@ export declare function normalizeObjectTypeForApi(objectType: string | undefined
|
|
|
18
18
|
* @returns The object type using modern SDK naming.
|
|
19
19
|
*/
|
|
20
20
|
export declare function denormalizeObjectTypeFromApi(objectType: string | undefined): string | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* Normalizes an `ActivityObjectEventType` filter string for the API,
|
|
23
|
+
* converting modern object type names to legacy API names.
|
|
24
|
+
* e.g. 'task:added' -> 'item:added', 'comment:' -> 'note:', ':deleted' -> ':deleted'
|
|
25
|
+
*
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export declare function normalizeObjectEventTypeForApi(filter: string): string;
|
|
@@ -1,165 +1,306 @@
|
|
|
1
|
-
import { Color } from '../types/
|
|
2
|
-
export declare const berryRed:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export declare const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
export declare const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
import type { Color } from '../types/entities.js';
|
|
2
|
+
export declare const berryRed: {
|
|
3
|
+
readonly id: 30;
|
|
4
|
+
readonly key: "berry_red";
|
|
5
|
+
readonly displayName: "Berry Red";
|
|
6
|
+
readonly name: "Berry Red";
|
|
7
|
+
readonly hexValue: "#b8255f";
|
|
8
|
+
readonly value: "#b8255f";
|
|
9
|
+
};
|
|
10
|
+
export declare const red: {
|
|
11
|
+
readonly id: 31;
|
|
12
|
+
readonly key: "red";
|
|
13
|
+
readonly displayName: "Red";
|
|
14
|
+
readonly name: "Red";
|
|
15
|
+
readonly hexValue: "#db4035";
|
|
16
|
+
readonly value: "#db4035";
|
|
17
|
+
};
|
|
18
|
+
export declare const orange: {
|
|
19
|
+
readonly id: 32;
|
|
20
|
+
readonly key: "orange";
|
|
21
|
+
readonly displayName: "Orange";
|
|
22
|
+
readonly name: "Orange";
|
|
23
|
+
readonly hexValue: "#ff9933";
|
|
24
|
+
readonly value: "#ff9933";
|
|
25
|
+
};
|
|
26
|
+
export declare const yellow: {
|
|
27
|
+
readonly id: 33;
|
|
28
|
+
readonly key: "yellow";
|
|
29
|
+
readonly displayName: "Yellow";
|
|
30
|
+
readonly name: "Yellow";
|
|
31
|
+
readonly hexValue: "#fad000";
|
|
32
|
+
readonly value: "#fad000";
|
|
33
|
+
};
|
|
34
|
+
export declare const oliveGreen: {
|
|
35
|
+
readonly id: 34;
|
|
36
|
+
readonly key: "olive_green";
|
|
37
|
+
readonly displayName: "Olive Green";
|
|
38
|
+
readonly name: "Olive Green";
|
|
39
|
+
readonly hexValue: "#afb83b";
|
|
40
|
+
readonly value: "#afb83b";
|
|
41
|
+
};
|
|
42
|
+
export declare const limeGreen: {
|
|
43
|
+
readonly id: 35;
|
|
44
|
+
readonly key: "lime_green";
|
|
45
|
+
readonly displayName: "Lime Green";
|
|
46
|
+
readonly name: "Lime Green";
|
|
47
|
+
readonly hexValue: "#7ecc49";
|
|
48
|
+
readonly value: "#7ecc49";
|
|
49
|
+
};
|
|
50
|
+
export declare const green: {
|
|
51
|
+
readonly id: 36;
|
|
52
|
+
readonly key: "green";
|
|
53
|
+
readonly displayName: "Green";
|
|
54
|
+
readonly name: "Green";
|
|
55
|
+
readonly hexValue: "#299438";
|
|
56
|
+
readonly value: "#299438";
|
|
57
|
+
};
|
|
58
|
+
export declare const mintGreen: {
|
|
59
|
+
readonly id: 37;
|
|
60
|
+
readonly key: "mint_green";
|
|
61
|
+
readonly displayName: "Mint Green";
|
|
62
|
+
readonly name: "Mint Green";
|
|
63
|
+
readonly hexValue: "#6accbc";
|
|
64
|
+
readonly value: "#6accbc";
|
|
65
|
+
};
|
|
66
|
+
export declare const turquoise: {
|
|
67
|
+
readonly id: 38;
|
|
68
|
+
readonly key: "turquoise";
|
|
69
|
+
readonly displayName: "Turquoise";
|
|
70
|
+
readonly name: "Turquoise";
|
|
71
|
+
readonly hexValue: "#158fad";
|
|
72
|
+
readonly value: "#158fad";
|
|
73
|
+
};
|
|
74
|
+
export declare const skyBlue: {
|
|
75
|
+
readonly id: 39;
|
|
76
|
+
readonly key: "sky_blue";
|
|
77
|
+
readonly displayName: "Sky Blue";
|
|
78
|
+
readonly name: "Sky Blue";
|
|
79
|
+
readonly hexValue: "#14aaf5";
|
|
80
|
+
readonly value: "#14aaf5";
|
|
81
|
+
};
|
|
82
|
+
export declare const lightBlue: {
|
|
83
|
+
readonly id: 40;
|
|
84
|
+
readonly key: "light_blue";
|
|
85
|
+
readonly displayName: "Light Blue";
|
|
86
|
+
readonly name: "Light Blue";
|
|
87
|
+
readonly hexValue: "#96c3eb";
|
|
88
|
+
readonly value: "#96c3eb";
|
|
89
|
+
};
|
|
90
|
+
export declare const blue: {
|
|
91
|
+
readonly id: 41;
|
|
92
|
+
readonly key: "blue";
|
|
93
|
+
readonly displayName: "Blue";
|
|
94
|
+
readonly name: "Blue";
|
|
95
|
+
readonly hexValue: "#4073ff";
|
|
96
|
+
readonly value: "#4073ff";
|
|
97
|
+
};
|
|
98
|
+
export declare const grape: {
|
|
99
|
+
readonly id: 42;
|
|
100
|
+
readonly key: "grape";
|
|
101
|
+
readonly displayName: "Grape";
|
|
102
|
+
readonly name: "Grape";
|
|
103
|
+
readonly hexValue: "#884dff";
|
|
104
|
+
readonly value: "#884dff";
|
|
105
|
+
};
|
|
106
|
+
export declare const violet: {
|
|
107
|
+
readonly id: 43;
|
|
108
|
+
readonly key: "violet";
|
|
109
|
+
readonly displayName: "Violet";
|
|
110
|
+
readonly name: "Violet";
|
|
111
|
+
readonly hexValue: "#af38eb";
|
|
112
|
+
readonly value: "#af38eb";
|
|
113
|
+
};
|
|
114
|
+
export declare const lavender: {
|
|
115
|
+
readonly id: 44;
|
|
116
|
+
readonly key: "lavender";
|
|
117
|
+
readonly displayName: "Lavender";
|
|
118
|
+
readonly name: "Lavender";
|
|
119
|
+
readonly hexValue: "#eb96eb";
|
|
120
|
+
readonly value: "#eb96eb";
|
|
121
|
+
};
|
|
122
|
+
export declare const magenta: {
|
|
123
|
+
readonly id: 45;
|
|
124
|
+
readonly key: "magenta";
|
|
125
|
+
readonly displayName: "Magenta";
|
|
126
|
+
readonly name: "Magenta";
|
|
127
|
+
readonly hexValue: "#e05194";
|
|
128
|
+
readonly value: "#e05194";
|
|
129
|
+
};
|
|
130
|
+
export declare const salmon: {
|
|
131
|
+
readonly id: 46;
|
|
132
|
+
readonly key: "salmon";
|
|
133
|
+
readonly displayName: "Salmon";
|
|
134
|
+
readonly name: "Salmon";
|
|
135
|
+
readonly hexValue: "#ff8d85";
|
|
136
|
+
readonly value: "#ff8d85";
|
|
137
|
+
};
|
|
138
|
+
export declare const charcoal: {
|
|
139
|
+
readonly id: 47;
|
|
140
|
+
readonly key: "charcoal";
|
|
141
|
+
readonly displayName: "Charcoal";
|
|
142
|
+
readonly name: "Charcoal";
|
|
143
|
+
readonly hexValue: "#808080";
|
|
144
|
+
readonly value: "#808080";
|
|
145
|
+
};
|
|
146
|
+
export declare const gray: {
|
|
147
|
+
readonly id: 48;
|
|
148
|
+
readonly key: "gray";
|
|
149
|
+
readonly displayName: "Gray";
|
|
150
|
+
readonly name: "Gray";
|
|
151
|
+
readonly hexValue: "#b8b8b8";
|
|
152
|
+
readonly value: "#b8b8b8";
|
|
153
|
+
};
|
|
154
|
+
export declare const taupe: {
|
|
155
|
+
readonly id: 49;
|
|
156
|
+
readonly key: "taupe";
|
|
157
|
+
readonly displayName: "Taupe";
|
|
158
|
+
readonly name: "Taupe";
|
|
159
|
+
readonly hexValue: "#ccac93";
|
|
160
|
+
readonly value: "#ccac93";
|
|
161
|
+
};
|
|
22
162
|
export declare const colors: readonly [{
|
|
23
|
-
id:
|
|
24
|
-
key:
|
|
25
|
-
displayName:
|
|
26
|
-
name:
|
|
27
|
-
hexValue:
|
|
28
|
-
value:
|
|
29
|
-
}, {
|
|
30
|
-
id:
|
|
31
|
-
key:
|
|
32
|
-
displayName:
|
|
33
|
-
name:
|
|
34
|
-
hexValue:
|
|
35
|
-
value:
|
|
36
|
-
}, {
|
|
37
|
-
id:
|
|
38
|
-
key:
|
|
39
|
-
displayName:
|
|
40
|
-
name:
|
|
41
|
-
hexValue:
|
|
42
|
-
value:
|
|
43
|
-
}, {
|
|
44
|
-
id:
|
|
45
|
-
key:
|
|
46
|
-
displayName:
|
|
47
|
-
name:
|
|
48
|
-
hexValue:
|
|
49
|
-
value:
|
|
50
|
-
}, {
|
|
51
|
-
id:
|
|
52
|
-
key:
|
|
53
|
-
displayName:
|
|
54
|
-
name:
|
|
55
|
-
hexValue:
|
|
56
|
-
value:
|
|
57
|
-
}, {
|
|
58
|
-
id:
|
|
59
|
-
key:
|
|
60
|
-
displayName:
|
|
61
|
-
name:
|
|
62
|
-
hexValue:
|
|
63
|
-
value:
|
|
64
|
-
}, {
|
|
65
|
-
id:
|
|
66
|
-
key:
|
|
67
|
-
displayName:
|
|
68
|
-
name:
|
|
69
|
-
hexValue:
|
|
70
|
-
value:
|
|
71
|
-
}, {
|
|
72
|
-
id:
|
|
73
|
-
key:
|
|
74
|
-
displayName:
|
|
75
|
-
name:
|
|
76
|
-
hexValue:
|
|
77
|
-
value:
|
|
78
|
-
}, {
|
|
79
|
-
id:
|
|
80
|
-
key:
|
|
81
|
-
displayName:
|
|
82
|
-
name:
|
|
83
|
-
hexValue:
|
|
84
|
-
value:
|
|
85
|
-
}, {
|
|
86
|
-
id:
|
|
87
|
-
key:
|
|
88
|
-
displayName:
|
|
89
|
-
name:
|
|
90
|
-
hexValue:
|
|
91
|
-
value:
|
|
92
|
-
}, {
|
|
93
|
-
id:
|
|
94
|
-
key:
|
|
95
|
-
displayName:
|
|
96
|
-
name:
|
|
97
|
-
hexValue:
|
|
98
|
-
value:
|
|
99
|
-
}, {
|
|
100
|
-
id:
|
|
101
|
-
key:
|
|
102
|
-
displayName:
|
|
103
|
-
name:
|
|
104
|
-
hexValue:
|
|
105
|
-
value:
|
|
106
|
-
}, {
|
|
107
|
-
id:
|
|
108
|
-
key:
|
|
109
|
-
displayName:
|
|
110
|
-
name:
|
|
111
|
-
hexValue:
|
|
112
|
-
value:
|
|
113
|
-
}, {
|
|
114
|
-
id:
|
|
115
|
-
key:
|
|
116
|
-
displayName:
|
|
117
|
-
name:
|
|
118
|
-
hexValue:
|
|
119
|
-
value:
|
|
120
|
-
}, {
|
|
121
|
-
id:
|
|
122
|
-
key:
|
|
123
|
-
displayName:
|
|
124
|
-
name:
|
|
125
|
-
hexValue:
|
|
126
|
-
value:
|
|
127
|
-
}, {
|
|
128
|
-
id:
|
|
129
|
-
key:
|
|
130
|
-
displayName:
|
|
131
|
-
name:
|
|
132
|
-
hexValue:
|
|
133
|
-
value:
|
|
134
|
-
}, {
|
|
135
|
-
id:
|
|
136
|
-
key:
|
|
137
|
-
displayName:
|
|
138
|
-
name:
|
|
139
|
-
hexValue:
|
|
140
|
-
value:
|
|
141
|
-
}, {
|
|
142
|
-
id:
|
|
143
|
-
key:
|
|
144
|
-
displayName:
|
|
145
|
-
name:
|
|
146
|
-
hexValue:
|
|
147
|
-
value:
|
|
148
|
-
}, {
|
|
149
|
-
id:
|
|
150
|
-
key:
|
|
151
|
-
displayName:
|
|
152
|
-
name:
|
|
153
|
-
hexValue:
|
|
154
|
-
value:
|
|
155
|
-
}, {
|
|
156
|
-
id:
|
|
157
|
-
key:
|
|
158
|
-
displayName:
|
|
159
|
-
name:
|
|
160
|
-
hexValue:
|
|
161
|
-
value:
|
|
163
|
+
readonly id: 30;
|
|
164
|
+
readonly key: "berry_red";
|
|
165
|
+
readonly displayName: "Berry Red";
|
|
166
|
+
readonly name: "Berry Red";
|
|
167
|
+
readonly hexValue: "#b8255f";
|
|
168
|
+
readonly value: "#b8255f";
|
|
169
|
+
}, {
|
|
170
|
+
readonly id: 31;
|
|
171
|
+
readonly key: "red";
|
|
172
|
+
readonly displayName: "Red";
|
|
173
|
+
readonly name: "Red";
|
|
174
|
+
readonly hexValue: "#db4035";
|
|
175
|
+
readonly value: "#db4035";
|
|
176
|
+
}, {
|
|
177
|
+
readonly id: 32;
|
|
178
|
+
readonly key: "orange";
|
|
179
|
+
readonly displayName: "Orange";
|
|
180
|
+
readonly name: "Orange";
|
|
181
|
+
readonly hexValue: "#ff9933";
|
|
182
|
+
readonly value: "#ff9933";
|
|
183
|
+
}, {
|
|
184
|
+
readonly id: 33;
|
|
185
|
+
readonly key: "yellow";
|
|
186
|
+
readonly displayName: "Yellow";
|
|
187
|
+
readonly name: "Yellow";
|
|
188
|
+
readonly hexValue: "#fad000";
|
|
189
|
+
readonly value: "#fad000";
|
|
190
|
+
}, {
|
|
191
|
+
readonly id: 34;
|
|
192
|
+
readonly key: "olive_green";
|
|
193
|
+
readonly displayName: "Olive Green";
|
|
194
|
+
readonly name: "Olive Green";
|
|
195
|
+
readonly hexValue: "#afb83b";
|
|
196
|
+
readonly value: "#afb83b";
|
|
197
|
+
}, {
|
|
198
|
+
readonly id: 35;
|
|
199
|
+
readonly key: "lime_green";
|
|
200
|
+
readonly displayName: "Lime Green";
|
|
201
|
+
readonly name: "Lime Green";
|
|
202
|
+
readonly hexValue: "#7ecc49";
|
|
203
|
+
readonly value: "#7ecc49";
|
|
204
|
+
}, {
|
|
205
|
+
readonly id: 36;
|
|
206
|
+
readonly key: "green";
|
|
207
|
+
readonly displayName: "Green";
|
|
208
|
+
readonly name: "Green";
|
|
209
|
+
readonly hexValue: "#299438";
|
|
210
|
+
readonly value: "#299438";
|
|
211
|
+
}, {
|
|
212
|
+
readonly id: 37;
|
|
213
|
+
readonly key: "mint_green";
|
|
214
|
+
readonly displayName: "Mint Green";
|
|
215
|
+
readonly name: "Mint Green";
|
|
216
|
+
readonly hexValue: "#6accbc";
|
|
217
|
+
readonly value: "#6accbc";
|
|
218
|
+
}, {
|
|
219
|
+
readonly id: 38;
|
|
220
|
+
readonly key: "turquoise";
|
|
221
|
+
readonly displayName: "Turquoise";
|
|
222
|
+
readonly name: "Turquoise";
|
|
223
|
+
readonly hexValue: "#158fad";
|
|
224
|
+
readonly value: "#158fad";
|
|
225
|
+
}, {
|
|
226
|
+
readonly id: 39;
|
|
227
|
+
readonly key: "sky_blue";
|
|
228
|
+
readonly displayName: "Sky Blue";
|
|
229
|
+
readonly name: "Sky Blue";
|
|
230
|
+
readonly hexValue: "#14aaf5";
|
|
231
|
+
readonly value: "#14aaf5";
|
|
232
|
+
}, {
|
|
233
|
+
readonly id: 40;
|
|
234
|
+
readonly key: "light_blue";
|
|
235
|
+
readonly displayName: "Light Blue";
|
|
236
|
+
readonly name: "Light Blue";
|
|
237
|
+
readonly hexValue: "#96c3eb";
|
|
238
|
+
readonly value: "#96c3eb";
|
|
239
|
+
}, {
|
|
240
|
+
readonly id: 41;
|
|
241
|
+
readonly key: "blue";
|
|
242
|
+
readonly displayName: "Blue";
|
|
243
|
+
readonly name: "Blue";
|
|
244
|
+
readonly hexValue: "#4073ff";
|
|
245
|
+
readonly value: "#4073ff";
|
|
246
|
+
}, {
|
|
247
|
+
readonly id: 42;
|
|
248
|
+
readonly key: "grape";
|
|
249
|
+
readonly displayName: "Grape";
|
|
250
|
+
readonly name: "Grape";
|
|
251
|
+
readonly hexValue: "#884dff";
|
|
252
|
+
readonly value: "#884dff";
|
|
253
|
+
}, {
|
|
254
|
+
readonly id: 43;
|
|
255
|
+
readonly key: "violet";
|
|
256
|
+
readonly displayName: "Violet";
|
|
257
|
+
readonly name: "Violet";
|
|
258
|
+
readonly hexValue: "#af38eb";
|
|
259
|
+
readonly value: "#af38eb";
|
|
260
|
+
}, {
|
|
261
|
+
readonly id: 44;
|
|
262
|
+
readonly key: "lavender";
|
|
263
|
+
readonly displayName: "Lavender";
|
|
264
|
+
readonly name: "Lavender";
|
|
265
|
+
readonly hexValue: "#eb96eb";
|
|
266
|
+
readonly value: "#eb96eb";
|
|
267
|
+
}, {
|
|
268
|
+
readonly id: 45;
|
|
269
|
+
readonly key: "magenta";
|
|
270
|
+
readonly displayName: "Magenta";
|
|
271
|
+
readonly name: "Magenta";
|
|
272
|
+
readonly hexValue: "#e05194";
|
|
273
|
+
readonly value: "#e05194";
|
|
274
|
+
}, {
|
|
275
|
+
readonly id: 46;
|
|
276
|
+
readonly key: "salmon";
|
|
277
|
+
readonly displayName: "Salmon";
|
|
278
|
+
readonly name: "Salmon";
|
|
279
|
+
readonly hexValue: "#ff8d85";
|
|
280
|
+
readonly value: "#ff8d85";
|
|
281
|
+
}, {
|
|
282
|
+
readonly id: 47;
|
|
283
|
+
readonly key: "charcoal";
|
|
284
|
+
readonly displayName: "Charcoal";
|
|
285
|
+
readonly name: "Charcoal";
|
|
286
|
+
readonly hexValue: "#808080";
|
|
287
|
+
readonly value: "#808080";
|
|
288
|
+
}, {
|
|
289
|
+
readonly id: 48;
|
|
290
|
+
readonly key: "gray";
|
|
291
|
+
readonly displayName: "Gray";
|
|
292
|
+
readonly name: "Gray";
|
|
293
|
+
readonly hexValue: "#b8b8b8";
|
|
294
|
+
readonly value: "#b8b8b8";
|
|
295
|
+
}, {
|
|
296
|
+
readonly id: 49;
|
|
297
|
+
readonly key: "taupe";
|
|
298
|
+
readonly displayName: "Taupe";
|
|
299
|
+
readonly name: "Taupe";
|
|
300
|
+
readonly hexValue: "#ccac93";
|
|
301
|
+
readonly value: "#ccac93";
|
|
162
302
|
}];
|
|
303
|
+
export type ColorKey = (typeof colors)[number]['key'];
|
|
163
304
|
export declare const defaultColor: Color;
|
|
164
305
|
/**
|
|
165
306
|
* @private
|
package/package.json
CHANGED