@doist/todoist-mcp 13.7.1 → 13.8.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/index.d.ts +153 -26
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/main-http.js +2 -2
- package/dist/main.js +1 -1
- package/dist/{mcp-server-BicI89wv.js → mcp-server-BY3K-TB0.js} +3715 -3407
- package/dist/{require-valid-todoist-token-qKxFPNp7.js → require-valid-todoist-token-zqdKTjgo.js} +1 -1
- package/dist/tool-execution-error.d.ts +0 -3
- package/dist/tool-execution-error.d.ts.map +1 -1
- package/dist/tool-helpers.d.ts +1 -1
- package/dist/tool-registry.d.ts +153 -26
- package/dist/tool-registry.d.ts.map +1 -1
- package/dist/tools/add-comments.d.ts +17 -2
- package/dist/tools/add-comments.d.ts.map +1 -1
- package/dist/tools/add-filters.d.ts +19 -4
- package/dist/tools/add-filters.d.ts.map +1 -1
- package/dist/tools/add-labels.d.ts +15 -0
- package/dist/tools/add-labels.d.ts.map +1 -1
- package/dist/tools/add-projects.d.ts.map +1 -1
- package/dist/tools/add-reminders.d.ts +15 -0
- package/dist/tools/add-reminders.d.ts.map +1 -1
- package/dist/tools/add-sections.d.ts.map +1 -1
- package/dist/tools/add-tasks.d.ts.map +1 -1
- package/dist/tools/delete-object.d.ts +4 -4
- package/dist/tools/fetch-object.d.ts +5 -5
- package/dist/tools/find-activity.d.ts +3 -3
- package/dist/tools/find-activity.d.ts.map +1 -1
- package/dist/tools/find-comments.d.ts +2 -2
- package/dist/tools/find-completed-tasks.d.ts.map +1 -1
- package/dist/tools/find-project-collaborators.d.ts.map +1 -1
- package/dist/tools/find-tasks-by-date.d.ts.map +1 -1
- package/dist/tools/find-tasks.d.ts.map +1 -1
- package/dist/tools/get-overview.d.ts.map +1 -1
- package/dist/tools/import-project-template.d.ts +2 -2
- package/dist/tools/update-comments.d.ts +13 -2
- package/dist/tools/update-comments.d.ts.map +1 -1
- package/dist/tools/update-filters.d.ts +13 -2
- package/dist/tools/update-filters.d.ts.map +1 -1
- package/dist/tools/update-labels.d.ts +11 -0
- package/dist/tools/update-labels.d.ts.map +1 -1
- package/dist/tools/update-projects.d.ts.map +1 -1
- package/dist/tools/update-reminders.d.ts +17 -0
- package/dist/tools/update-reminders.d.ts.map +1 -1
- package/dist/tools/update-sections.d.ts +17 -0
- package/dist/tools/update-sections.d.ts.map +1 -1
- package/dist/tools/update-tasks.d.ts.map +1 -1
- package/dist/utils/batch-failures.d.ts +1 -0
- package/dist/utils/batch-failures.d.ts.map +1 -1
- package/dist/utils/comment-recipients.d.ts +4 -2
- package/dist/utils/comment-recipients.d.ts.map +1 -1
- package/dist/utils/output-schemas.d.ts +1 -1
- package/dist/utils/reminder-recipients.d.ts +5 -5
- package/dist/utils/reminder-recipients.d.ts.map +1 -1
- package/dist/utils/response-builders.d.ts +2 -1
- package/dist/utils/response-builders.d.ts.map +1 -1
- package/dist/utils/retry.d.ts +9 -2
- package/dist/utils/retry.d.ts.map +1 -1
- package/dist/utils/sync-commands.d.ts +21 -0
- package/dist/utils/sync-commands.d.ts.map +1 -0
- package/dist/utils/test-helpers.d.ts +5 -1
- package/dist/utils/test-helpers.d.ts.map +1 -1
- package/dist/utils/user-resolver.d.ts +20 -0
- package/dist/utils/user-resolver.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SyncCommand, TodoistApi } from '@doist/todoist-sdk';
|
|
2
|
+
type SyncCommandResults = {
|
|
3
|
+
/** One entry per command, in the order they were sent. */
|
|
4
|
+
outcomes: PromiseSettledResult<void>[];
|
|
5
|
+
/** Server IDs of the resources the request created, keyed by command `tempId`. */
|
|
6
|
+
tempIdMapping: Record<string, string>;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Sends Sync commands in one request and reports whether each was applied.
|
|
10
|
+
*
|
|
11
|
+
* The Sync API applies commands independently, so a failed command does not undo
|
|
12
|
+
* the ones before it. Settling them per command lets a batch tool report each item
|
|
13
|
+
* the way its REST-backed siblings do, instead of failing the whole batch over the
|
|
14
|
+
* first bad item and hiding the changes that were made.
|
|
15
|
+
*
|
|
16
|
+
* Retrying the request is safe: the Sync API skips commands whose `uuid` it has
|
|
17
|
+
* already processed.
|
|
18
|
+
*/
|
|
19
|
+
export declare function settleSyncCommands(client: TodoistApi, commands: SyncCommand[]): Promise<SyncCommandResults>;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=sync-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-commands.d.ts","sourceRoot":"","sources":["../../src/utils/sync-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,WAAW,EAEhB,KAAK,UAAU,EAGlB,MAAM,oBAAoB,CAAA;AAG3B,KAAK,kBAAkB,GAAG;IACtB,0DAA0D;IAC1D,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAA;IACtC,kFAAkF;IAClF,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACxC,CAAA;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACpC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,WAAW,EAAE,GACxB,OAAO,CAAC,kBAAkB,CAAC,CAwC7B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CurrentUser, Filter, Label, PersonalProject, Section, Task, WorkspaceProject } from '@doist/todoist-sdk';
|
|
1
|
+
import { CurrentUser, Filter, Label, PersonalProject, Section, SyncCommand, Task, WorkspaceProject } from '@doist/todoist-sdk';
|
|
2
2
|
import { MappedTask } from '../tool-helpers';
|
|
3
3
|
import { Priority } from './priorities';
|
|
4
4
|
type TaskWithUserFacingPriority = Omit<Task, 'priority'> & {
|
|
@@ -33,6 +33,10 @@ export declare function createMockLabel(overrides?: Partial<Label>): Label;
|
|
|
33
33
|
* Creates a mock Filter with all required properties and sensible defaults.
|
|
34
34
|
*/
|
|
35
35
|
export declare function createMockFilter(overrides?: Partial<Filter>): Filter;
|
|
36
|
+
/**
|
|
37
|
+
* The `syncStatus` the Sync API returns when every command was applied.
|
|
38
|
+
*/
|
|
39
|
+
export declare function allApplied(commands?: SyncCommand[]): Record<string, 'ok'>;
|
|
36
40
|
/**
|
|
37
41
|
* Creates a mock API response object with results and nextCursor.
|
|
38
42
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,WAAW,EACX,MAAM,EACN,KAAK,EACL,eAAe,EACf,OAAO,EACP,IAAI,EACJ,gBAAgB,EACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAErE,KAAK,0BAA0B,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG;IACvD,QAAQ,EAAE,QAAQ,CAAA;CACrB,CAAA;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAC3B,QAAe,EACf,GAAG,SAAS,EACf,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAAG,IAAI,CA6BjD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,OAAO,CAAC,OAAO,CAAM,GAAG,OAAO,CAiB3E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CAuB3F;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACtC,SAAS,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAC1C,gBAAgB,CA4BlB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK,CASrE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,MAAM,CAAM,GAAG,MAAM,CAYxE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACnC,OAAO,EAAE,CAAC,EAAE,EACZ,UAAU,GAAE,MAAM,GAAG,IAAW,GACjC;IACC,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B,CAKA;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,GAAG,UAAU,CAsBhF;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAA;AAEV;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,GAAG,GACN,EAAE;IACC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,KAAK,CASR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,EAC1C,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;UAAjC,MAAM;WAAS,CAAC;eAAa,CAAC;IAGtD;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;CAYX,CAAA;AAEV;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAG,YAAqB,CAAA;AAE1C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW,CAoChF"}
|
|
1
|
+
{"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,WAAW,EACX,MAAM,EACN,KAAK,EACL,eAAe,EACf,OAAO,EACP,WAAW,EACX,IAAI,EACJ,gBAAgB,EACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAErE,KAAK,0BAA0B,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG;IACvD,QAAQ,EAAE,QAAQ,CAAA;CACrB,CAAA;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAC3B,QAAe,EACf,GAAG,SAAS,EACf,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAAG,IAAI,CA6BjD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,OAAO,CAAC,OAAO,CAAM,GAAG,OAAO,CAiB3E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CAuB3F;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACtC,SAAS,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAC1C,gBAAgB,CA4BlB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK,CASrE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,MAAM,CAAM,GAAG,MAAM,CAYxE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,GAAE,WAAW,EAAO,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAE7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACnC,OAAO,EAAE,CAAC,EAAE,EACZ,UAAU,GAAE,MAAM,GAAG,IAAW,GACjC;IACC,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B,CAKA;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,GAAG,UAAU,CAsBhF;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAA;AAEV;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,GAAG,GACN,EAAE;IACC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,KAAK,CASR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,EAC1C,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;UAAjC,MAAM;WAAS,CAAC;eAAa,CAAC;IAGtD;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;CAYX,CAAA;AAEV;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAG,YAAqB,CAAA;AAE1C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW,CAoChF"}
|
|
@@ -44,6 +44,16 @@ export declare class UserResolver {
|
|
|
44
44
|
* Get all collaborators from all shared projects, deduplicated by user ID.
|
|
45
45
|
*/
|
|
46
46
|
getAllCollaborators(client: TodoistApi, cacheScope?: string | null): Promise<ProjectCollaborator[]>;
|
|
47
|
+
/**
|
|
48
|
+
* Short display names ("Ada L."), keyed by user ID, for the collaborators of
|
|
49
|
+
* the given projects, abbreviated the same way the Todoist CLI shows them. A
|
|
50
|
+
* project whose collaborators can't be fetched contributes no names, so
|
|
51
|
+
* naming people never fails the tool that asked.
|
|
52
|
+
*
|
|
53
|
+
* Pass the current user's ID as `cacheScope` when it is already known, to
|
|
54
|
+
* save fetching the user again.
|
|
55
|
+
*/
|
|
56
|
+
getUserShortNames(client: TodoistApi, projectIds: Iterable<string>, cacheScope?: string | null): Promise<Map<string, string>>;
|
|
47
57
|
private getCacheScope;
|
|
48
58
|
private getCacheKey;
|
|
49
59
|
/**
|
|
@@ -52,6 +62,16 @@ export declare class UserResolver {
|
|
|
52
62
|
clearCache(): void;
|
|
53
63
|
}
|
|
54
64
|
export declare const userResolver: UserResolver;
|
|
65
|
+
/**
|
|
66
|
+
* Short display names for the assignees of `tasks`, keyed by user ID. Only
|
|
67
|
+
* projects with an assigned task are looked up, so a list without assignees
|
|
68
|
+
* costs no extra requests. `cacheScope` is as for
|
|
69
|
+
* {@link UserResolver.getUserShortNames}.
|
|
70
|
+
*/
|
|
71
|
+
export declare function getAssigneeShortNames(client: TodoistApi, tasks: {
|
|
72
|
+
projectId: string;
|
|
73
|
+
responsibleUid?: string;
|
|
74
|
+
}[], cacheScope?: string | null): Promise<Map<string, string>>;
|
|
55
75
|
export declare function resolveUserNameToId(client: TodoistApi, nameOrId: string): Promise<ResolvedUser | null>;
|
|
56
76
|
/**
|
|
57
77
|
* Resolve a list of user references — IDs, emails, full names, or the "me"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/user-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"user-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/user-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,UAAU,EAElB,MAAM,oBAAoB,CAAA;AAG3B,MAAM,MAAM,YAAY,GAAG;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AAWD;;;GAGG;AACH,qBAAa,eAAe,CAAC,CAAC;IAItB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;gBAGtC,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM;IAGhC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAe/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI;IAejC,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,CAAC,mBAAmB;CAQ9B;AAcD,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,EAAG,IAAa,CAAA;AAE9C,qBAAa,YAAY;IACrB;;;OAGG;IACG,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAuIrF;;OAEG;IACG,2BAA2B,CAC7B,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IASnB;;OAEG;IACG,uBAAuB,CACzB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA4BjC;;OAEG;IACG,mBAAmB,CACrB,MAAM,EAAE,UAAU,EAClB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA0DjC;;;;;;;;OAQG;IACG,iBAAiB,CACnB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAoBjB,aAAa;IAS3B,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,UAAU,IAAI,IAAI;CAIrB;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAA;AAE9C;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,EACvD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAM9B;AAGD,wBAAsB,mBAAmB,CACrC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAE9B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAgCjG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@doist/todoist-mcp",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.8.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"prepare": "husky"
|
|
66
66
|
},
|
|
67
67
|
"dependencies": {
|
|
68
|
-
"@doist/todoist-sdk": "15.
|
|
68
|
+
"@doist/todoist-sdk": "15.10.0",
|
|
69
69
|
"@modelcontextprotocol/ext-apps": "2.0.3",
|
|
70
70
|
"date-fns": "4.1.0",
|
|
71
71
|
"dompurify": "3.3.3",
|