@itsalexr/mcli 1.1.1 → 1.2.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/README.md +45 -2
- package/dist/commands/boards.d.ts +17 -0
- package/dist/commands/boards.js +55 -0
- package/dist/commands/boards.js.map +1 -1
- package/dist/commands/docs.d.ts +45 -0
- package/dist/commands/docs.js +130 -0
- package/dist/commands/docs.js.map +1 -0
- package/dist/commands/folders.d.ts +14 -0
- package/dist/commands/folders.js +50 -0
- package/dist/commands/folders.js.map +1 -0
- package/dist/commands/items.d.ts +22 -0
- package/dist/commands/items.js +56 -0
- package/dist/commands/items.js.map +1 -1
- package/dist/commands/notifications.d.ts +14 -0
- package/dist/commands/notifications.js +58 -0
- package/dist/commands/notifications.js.map +1 -0
- package/dist/commands/search.d.ts +9 -0
- package/dist/commands/search.js +42 -6
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/users.d.ts +16 -0
- package/dist/commands/users.js +33 -0
- package/dist/commands/users.js.map +1 -1
- package/dist/commands/workspaces.d.ts +11 -0
- package/dist/commands/workspaces.js +38 -2
- package/dist/commands/workspaces.js.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/queries/boards.d.ts +2 -0
- package/dist/queries/boards.js +26 -1
- package/dist/queries/boards.js.map +1 -1
- package/dist/queries/docs.d.ts +3 -0
- package/dist/queries/docs.js +41 -0
- package/dist/queries/docs.js.map +1 -0
- package/dist/queries/folders.d.ts +1 -0
- package/dist/queries/folders.js +13 -0
- package/dist/queries/folders.js.map +1 -0
- package/dist/queries/items.d.ts +2 -0
- package/dist/queries/items.js +26 -1
- package/dist/queries/items.js.map +1 -1
- package/dist/queries/notifications.d.ts +1 -0
- package/dist/queries/notifications.js +22 -0
- package/dist/queries/notifications.js.map +1 -0
- package/dist/queries/users.d.ts +1 -0
- package/dist/queries/users.js +16 -1
- package/dist/queries/users.js.map +1 -1
- package/dist/queries/workspaces.d.ts +1 -0
- package/dist/queries/workspaces.js +9 -1
- package/dist/queries/workspaces.js.map +1 -1
- package/package.json +5 -1
package/README.md
CHANGED
|
@@ -18,13 +18,19 @@ Paste this as a message to your agent and it will set itself up:
|
|
|
18
18
|
> Key commands:
|
|
19
19
|
> - `npx @itsalexr/mcli boards list [--workspace-id <id>]`
|
|
20
20
|
> - `npx @itsalexr/mcli boards schema <boardId>` — columns and groups
|
|
21
|
+
> - `npx @itsalexr/mcli boards columns create <boardId> --type text --title "Notes"`
|
|
21
22
|
> - `npx @itsalexr/mcli items list <boardId> [--columns] [--table]`
|
|
22
23
|
> - `npx @itsalexr/mcli items create <boardId> --name "Task"`
|
|
24
|
+
> - `npx @itsalexr/mcli items subitem <parentItemId> --name "Sub-task"`
|
|
25
|
+
> - `npx @itsalexr/mcli items duplicate <boardId> <itemId>`
|
|
23
26
|
> - `npx @itsalexr/mcli items delete <itemId>`
|
|
24
27
|
> - `npx @itsalexr/mcli updates list <itemId>` — read comments
|
|
25
28
|
> - `npx @itsalexr/mcli updates create <itemId> "comment text"`
|
|
29
|
+
> - `npx @itsalexr/mcli docs list [--workspace-id <id>]`
|
|
30
|
+
> - `npx @itsalexr/mcli docs create --workspace-id <id> --name "My Doc"`
|
|
26
31
|
> - `npx @itsalexr/mcli users list`
|
|
27
|
-
> - `npx @itsalexr/mcli
|
|
32
|
+
> - `npx @itsalexr/mcli users teams`
|
|
33
|
+
> - `npx @itsalexr/mcli search "term" [--type boards|docs|all]`
|
|
28
34
|
> - `npx @itsalexr/mcli graphql '<query>'`
|
|
29
35
|
> ```
|
|
30
36
|
>
|
|
@@ -66,6 +72,7 @@ export MONDAY_TOKEN=your_token_here
|
|
|
66
72
|
mcli me
|
|
67
73
|
mcli workspaces
|
|
68
74
|
mcli workspaces --limit 10 --page 2
|
|
75
|
+
mcli workspaces create --name "My Workspace" --kind open # kind: open or closed
|
|
69
76
|
```
|
|
70
77
|
|
|
71
78
|
### Boards
|
|
@@ -78,6 +85,10 @@ mcli boards schema <boardId> # columns and groups
|
|
|
78
85
|
mcli boards create --name "My Board" # kind: public (default), private, share
|
|
79
86
|
mcli boards activity <boardId> # last 30 days by default
|
|
80
87
|
mcli boards activity <boardId> --from 2026-01-01 --to 2026-02-01
|
|
88
|
+
|
|
89
|
+
mcli boards columns create <boardId> --type text --title "Notes"
|
|
90
|
+
mcli boards columns create <boardId> --type status --title "Priority" --description "Task priority"
|
|
91
|
+
mcli boards columns delete <boardId> <columnId>
|
|
81
92
|
```
|
|
82
93
|
|
|
83
94
|
### Items
|
|
@@ -94,6 +105,9 @@ mcli items update-columns <boardId> <itemId> '{"status": "In Progress"}'
|
|
|
94
105
|
|
|
95
106
|
mcli items delete <itemId>
|
|
96
107
|
mcli items move <itemId> --group <groupId>
|
|
108
|
+
mcli items subitem <parentItemId> --name "Sub-task" # create subitem under a parent
|
|
109
|
+
mcli items duplicate <boardId> <itemId> # duplicate an item
|
|
110
|
+
mcli items duplicate <boardId> <itemId> --with-updates # also copy comments
|
|
97
111
|
```
|
|
98
112
|
|
|
99
113
|
### Updates (comments)
|
|
@@ -111,12 +125,39 @@ mcli groups create <boardId> --name "Sprint 1"
|
|
|
111
125
|
mcli groups create <boardId> --name "Done" --color done
|
|
112
126
|
```
|
|
113
127
|
|
|
114
|
-
### Users
|
|
128
|
+
### Users & teams
|
|
115
129
|
|
|
116
130
|
```bash
|
|
117
131
|
mcli users list
|
|
118
132
|
mcli users list --table
|
|
119
133
|
mcli users list --limit 200 --page 2 # paginate for large accounts
|
|
134
|
+
mcli users teams # list all teams
|
|
135
|
+
mcli users teams --table
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Docs
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
mcli docs list # list all docs
|
|
142
|
+
mcli docs list --workspace-id 12345 # filter by workspace
|
|
143
|
+
mcli docs create --workspace-id 12345 --name "My Doc"
|
|
144
|
+
mcli docs create --workspace-id 12345 --name "My Doc" --content "# Hello\nSome content"
|
|
145
|
+
mcli docs create --workspace-id 12345 --name "My Doc" --kind private
|
|
146
|
+
mcli docs content <docId> "## New Section\nContent here" # add content to existing doc
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Folders
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
mcli folders create --workspace-id 12345 --name "Sprint Docs"
|
|
153
|
+
mcli folders create --workspace-id 12345 --name "Archive" --color bright-red
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Notifications
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
mcli notifications create --user <userId> --target <itemId> --text "Task ready" --type Project
|
|
160
|
+
mcli notifications create --user <userId> --target <updateId> --text "See this" --type Post
|
|
120
161
|
```
|
|
121
162
|
|
|
122
163
|
### Search
|
|
@@ -124,6 +165,8 @@ mcli users list --limit 200 --page 2 # paginate for large accounts
|
|
|
124
165
|
```bash
|
|
125
166
|
mcli search "tasks" # search boards by name
|
|
126
167
|
mcli search "tasks" --table
|
|
168
|
+
mcli search "tasks" --type docs # search docs only
|
|
169
|
+
mcli search "tasks" --type all # search boards and docs
|
|
127
170
|
```
|
|
128
171
|
|
|
129
172
|
### Raw GraphQL
|
|
@@ -65,6 +65,17 @@ export interface BoardActivityResult {
|
|
|
65
65
|
}>;
|
|
66
66
|
}>;
|
|
67
67
|
}
|
|
68
|
+
export interface CreateColumnResult {
|
|
69
|
+
create_column: {
|
|
70
|
+
id: string;
|
|
71
|
+
title: string;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export interface DeleteColumnResult {
|
|
75
|
+
delete_column: {
|
|
76
|
+
id: string;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
68
79
|
export declare function fetchBoards(client: GraphQLClient, opts: {
|
|
69
80
|
limit: number;
|
|
70
81
|
page: number;
|
|
@@ -83,4 +94,10 @@ export declare function fetchBoardActivity(client: GraphQLClient, boardId: strin
|
|
|
83
94
|
to: string;
|
|
84
95
|
limit: number;
|
|
85
96
|
}): Promise<BoardActivityResult>;
|
|
97
|
+
export declare function createColumn(client: GraphQLClient, boardId: string, opts: {
|
|
98
|
+
type: string;
|
|
99
|
+
title: string;
|
|
100
|
+
description?: string;
|
|
101
|
+
}): Promise<CreateColumnResult>;
|
|
102
|
+
export declare function deleteColumn(client: GraphQLClient, boardId: string, columnId: string): Promise<DeleteColumnResult>;
|
|
86
103
|
export declare function registerBoards(program: Command, clientFactory: () => GraphQLClient): void;
|
package/dist/commands/boards.js
CHANGED
|
@@ -8,6 +8,8 @@ exports.fetchBoardInfo = fetchBoardInfo;
|
|
|
8
8
|
exports.fetchBoardSchema = fetchBoardSchema;
|
|
9
9
|
exports.createBoard = createBoard;
|
|
10
10
|
exports.fetchBoardActivity = fetchBoardActivity;
|
|
11
|
+
exports.createColumn = createColumn;
|
|
12
|
+
exports.deleteColumn = deleteColumn;
|
|
11
13
|
exports.registerBoards = registerBoards;
|
|
12
14
|
const zod_1 = require("zod");
|
|
13
15
|
const chalk_1 = __importDefault(require("chalk"));
|
|
@@ -43,6 +45,17 @@ async function fetchBoardActivity(client, boardId, opts) {
|
|
|
43
45
|
limit: opts.limit,
|
|
44
46
|
});
|
|
45
47
|
}
|
|
48
|
+
async function createColumn(client, boardId, opts) {
|
|
49
|
+
return (0, client_1.gqlRequest)(client, boards_1.CREATE_COLUMN_MUTATION, {
|
|
50
|
+
boardId,
|
|
51
|
+
columnType: opts.type,
|
|
52
|
+
columnTitle: opts.title,
|
|
53
|
+
columnDescription: opts.description,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
async function deleteColumn(client, boardId, columnId) {
|
|
57
|
+
return (0, client_1.gqlRequest)(client, boards_1.DELETE_COLUMN_MUTATION, { boardId, columnId });
|
|
58
|
+
}
|
|
46
59
|
function printBoardInfo(board, format) {
|
|
47
60
|
if (format === 'json') {
|
|
48
61
|
(0, output_1.printJson)(board);
|
|
@@ -66,6 +79,11 @@ const BoardCreateOptionsSchema = zod_1.z.object({
|
|
|
66
79
|
const BoardActivityOptionsSchema = zod_1.z.object({
|
|
67
80
|
limit: zod_1.z.coerce.number().int().positive().default(50),
|
|
68
81
|
});
|
|
82
|
+
const ColumnCreateOptionsSchema = zod_1.z.object({
|
|
83
|
+
type: zod_1.z.string().min(1, 'Column type is required'),
|
|
84
|
+
title: zod_1.z.string().min(1, 'Column title is required'),
|
|
85
|
+
description: zod_1.z.string().optional(),
|
|
86
|
+
});
|
|
69
87
|
function registerBoards(program, clientFactory) {
|
|
70
88
|
const boards = program.command('boards').description('Manage monday.com boards');
|
|
71
89
|
boards
|
|
@@ -164,6 +182,43 @@ function registerBoards(program, clientFactory) {
|
|
|
164
182
|
process.exit(1);
|
|
165
183
|
}
|
|
166
184
|
});
|
|
185
|
+
const columns = boards.command('columns').description('Manage board columns');
|
|
186
|
+
columns
|
|
187
|
+
.command('create <boardId>')
|
|
188
|
+
.description('Add a column to a board')
|
|
189
|
+
.requiredOption('--type <type>', 'Column type (e.g. text, status, date, numbers, person)')
|
|
190
|
+
.requiredOption('--title <title>', 'Column title')
|
|
191
|
+
.option('--description <text>', 'Column description')
|
|
192
|
+
.action(async (boardId, opts) => {
|
|
193
|
+
try {
|
|
194
|
+
const validated = ColumnCreateOptionsSchema.parse(opts);
|
|
195
|
+
const client = clientFactory();
|
|
196
|
+
const result = await createColumn(client, boardId, validated);
|
|
197
|
+
(0, output_1.printJson)(result.create_column);
|
|
198
|
+
}
|
|
199
|
+
catch (err) {
|
|
200
|
+
if (err instanceof zod_1.z.ZodError) {
|
|
201
|
+
console.error(chalk_1.default.red('Validation error: ' + err.issues.map((i) => i.message).join(', ')));
|
|
202
|
+
process.exit(1);
|
|
203
|
+
}
|
|
204
|
+
console.error(chalk_1.default.red(err.message));
|
|
205
|
+
process.exit(1);
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
columns
|
|
209
|
+
.command('delete <boardId> <columnId>')
|
|
210
|
+
.description('Delete a column from a board')
|
|
211
|
+
.action(async (boardId, columnId) => {
|
|
212
|
+
try {
|
|
213
|
+
const client = clientFactory();
|
|
214
|
+
const result = await deleteColumn(client, boardId, columnId);
|
|
215
|
+
(0, output_1.printJson)({ deleted: true, id: result.delete_column.id });
|
|
216
|
+
}
|
|
217
|
+
catch (err) {
|
|
218
|
+
console.error(chalk_1.default.red(err.message));
|
|
219
|
+
process.exit(1);
|
|
220
|
+
}
|
|
221
|
+
});
|
|
167
222
|
boards
|
|
168
223
|
.command('activity <boardId>')
|
|
169
224
|
.description('Get board activity log')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boards.js","sourceRoot":"","sources":["../../src/commands/boards.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"boards.js","sourceRoot":"","sources":["../../src/commands/boards.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import { GraphQLClient } from 'graphql-request';
|
|
3
|
+
export interface DocsListResult {
|
|
4
|
+
docs: Array<{
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
doc_kind: string;
|
|
8
|
+
created_at: string;
|
|
9
|
+
url: string;
|
|
10
|
+
workspace_id: string | null;
|
|
11
|
+
doc_folder_id: string | null;
|
|
12
|
+
created_by: {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
} | null;
|
|
16
|
+
}>;
|
|
17
|
+
}
|
|
18
|
+
export interface CreateDocResult {
|
|
19
|
+
create_doc: {
|
|
20
|
+
id: string;
|
|
21
|
+
object_id: string;
|
|
22
|
+
url: string;
|
|
23
|
+
name: string;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export interface AddContentResult {
|
|
27
|
+
add_content_to_doc_from_markdown: {
|
|
28
|
+
success: boolean;
|
|
29
|
+
block_ids: string[];
|
|
30
|
+
error: string | null;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export declare function fetchDocs(client: GraphQLClient, opts: {
|
|
34
|
+
workspaceId?: string;
|
|
35
|
+
limit: number;
|
|
36
|
+
page: number;
|
|
37
|
+
}): Promise<DocsListResult>;
|
|
38
|
+
export declare function createDoc(client: GraphQLClient, opts: {
|
|
39
|
+
name: string;
|
|
40
|
+
workspaceId: string;
|
|
41
|
+
kind: string;
|
|
42
|
+
folderId?: string;
|
|
43
|
+
}): Promise<CreateDocResult>;
|
|
44
|
+
export declare function addContentToDoc(client: GraphQLClient, docId: string, markdown: string): Promise<AddContentResult>;
|
|
45
|
+
export declare function registerDocs(program: Command, clientFactory: () => GraphQLClient): void;
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.fetchDocs = fetchDocs;
|
|
7
|
+
exports.createDoc = createDoc;
|
|
8
|
+
exports.addContentToDoc = addContentToDoc;
|
|
9
|
+
exports.registerDocs = registerDocs;
|
|
10
|
+
const zod_1 = require("zod");
|
|
11
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
12
|
+
const client_1 = require("../client");
|
|
13
|
+
const output_1 = require("../output");
|
|
14
|
+
const docs_1 = require("../queries/docs");
|
|
15
|
+
async function fetchDocs(client, opts) {
|
|
16
|
+
return (0, client_1.gqlRequest)(client, docs_1.LIST_DOCS_QUERY, {
|
|
17
|
+
workspace_ids: opts.workspaceId ? [opts.workspaceId] : undefined,
|
|
18
|
+
limit: opts.limit,
|
|
19
|
+
page: opts.page,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
async function createDoc(client, opts) {
|
|
23
|
+
return (0, client_1.gqlRequest)(client, docs_1.CREATE_DOC_MUTATION, {
|
|
24
|
+
location: {
|
|
25
|
+
workspace: {
|
|
26
|
+
workspace_id: opts.workspaceId,
|
|
27
|
+
name: opts.name,
|
|
28
|
+
kind: opts.kind,
|
|
29
|
+
...(opts.folderId ? { folder_id: opts.folderId } : {}),
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
async function addContentToDoc(client, docId, markdown) {
|
|
35
|
+
return (0, client_1.gqlRequest)(client, docs_1.ADD_CONTENT_TO_DOC_MUTATION, { docId, markdown });
|
|
36
|
+
}
|
|
37
|
+
const DocsListOptionsSchema = zod_1.z.object({
|
|
38
|
+
workspaceId: zod_1.z.string().optional(),
|
|
39
|
+
limit: zod_1.z.coerce.number().int().positive().default(50),
|
|
40
|
+
page: zod_1.z.coerce.number().int().positive().default(1),
|
|
41
|
+
});
|
|
42
|
+
const DocCreateOptionsSchema = zod_1.z.object({
|
|
43
|
+
name: zod_1.z.string().min(1, 'Doc name is required'),
|
|
44
|
+
workspaceId: zod_1.z.string().min(1, 'Workspace ID is required'),
|
|
45
|
+
kind: zod_1.z.enum(['public', 'private', 'share']).default('public'),
|
|
46
|
+
content: zod_1.z.string().optional(),
|
|
47
|
+
folderId: zod_1.z.string().optional(),
|
|
48
|
+
});
|
|
49
|
+
function registerDocs(program, clientFactory) {
|
|
50
|
+
const docs = program.command('docs').description('Manage monday.com docs');
|
|
51
|
+
docs
|
|
52
|
+
.command('list')
|
|
53
|
+
.description('List docs')
|
|
54
|
+
.option('--workspace-id <id>', 'Filter by workspace ID')
|
|
55
|
+
.option('--limit <n>', 'Number of docs to return', '50')
|
|
56
|
+
.option('--page <n>', 'Page number', '1')
|
|
57
|
+
.action(async (opts) => {
|
|
58
|
+
const format = program.opts().table ? 'table' : 'json';
|
|
59
|
+
try {
|
|
60
|
+
const { workspaceId, limit, page } = DocsListOptionsSchema.parse(opts);
|
|
61
|
+
const client = clientFactory();
|
|
62
|
+
const data = await fetchDocs(client, { workspaceId, limit, page });
|
|
63
|
+
if (format === 'table') {
|
|
64
|
+
(0, output_1.printTable)(['ID', 'Name', 'Kind', 'Created At', 'URL'], data.docs.map((d) => [d.id, d.name, d.doc_kind, d.created_at, d.url]));
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
(0, output_1.printJson)(data.docs);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
if (err instanceof zod_1.z.ZodError) {
|
|
72
|
+
console.error(chalk_1.default.red('Validation error: ' + err.issues.map((i) => i.message).join(', ')));
|
|
73
|
+
process.exit(1);
|
|
74
|
+
}
|
|
75
|
+
console.error(chalk_1.default.red(err.message));
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
docs
|
|
80
|
+
.command('create')
|
|
81
|
+
.description('Create a new doc in a workspace')
|
|
82
|
+
.requiredOption('--workspace-id <id>', 'Workspace ID')
|
|
83
|
+
.requiredOption('--name <name>', 'Doc name')
|
|
84
|
+
.option('--kind <kind>', 'Doc kind: public, private, or share', 'public')
|
|
85
|
+
.option('--content <markdown>', 'Initial markdown content to add after creation')
|
|
86
|
+
.option('--folder-id <id>', 'Place doc inside a specific folder')
|
|
87
|
+
.action(async (opts) => {
|
|
88
|
+
try {
|
|
89
|
+
const validated = DocCreateOptionsSchema.parse(opts);
|
|
90
|
+
const client = clientFactory();
|
|
91
|
+
const result = await createDoc(client, validated);
|
|
92
|
+
const doc = result.create_doc;
|
|
93
|
+
if (validated.content) {
|
|
94
|
+
const contentResult = await addContentToDoc(client, doc.id, validated.content);
|
|
95
|
+
if (!contentResult.add_content_to_doc_from_markdown.success) {
|
|
96
|
+
console.error(chalk_1.default.yellow(`Doc created but content failed: ${contentResult.add_content_to_doc_from_markdown.error ?? 'unknown'}`));
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
(0, output_1.printJson)({ id: doc.id, name: doc.name, url: doc.url });
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
if (err instanceof zod_1.z.ZodError) {
|
|
103
|
+
console.error(chalk_1.default.red('Validation error: ' + err.issues.map((i) => i.message).join(', ')));
|
|
104
|
+
process.exit(1);
|
|
105
|
+
}
|
|
106
|
+
console.error(chalk_1.default.red(err.message));
|
|
107
|
+
process.exit(1);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
docs
|
|
111
|
+
.command('content <docId> <markdown>')
|
|
112
|
+
.description('Add markdown content to an existing doc')
|
|
113
|
+
.action(async (docId, markdown) => {
|
|
114
|
+
try {
|
|
115
|
+
const client = clientFactory();
|
|
116
|
+
const result = await addContentToDoc(client, docId, markdown);
|
|
117
|
+
const r = result.add_content_to_doc_from_markdown;
|
|
118
|
+
if (!r.success) {
|
|
119
|
+
console.error(chalk_1.default.red(`Failed to add content: ${r.error ?? 'unknown'}`));
|
|
120
|
+
process.exit(1);
|
|
121
|
+
}
|
|
122
|
+
(0, output_1.printJson)({ success: true, doc_id: docId, block_ids: r.block_ids });
|
|
123
|
+
}
|
|
124
|
+
catch (err) {
|
|
125
|
+
console.error(chalk_1.default.red(err.message));
|
|
126
|
+
process.exit(1);
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=docs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/commands/docs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import { GraphQLClient } from 'graphql-request';
|
|
3
|
+
export interface CreateFolderResult {
|
|
4
|
+
create_folder: {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export declare function createFolder(client: GraphQLClient, opts: {
|
|
10
|
+
workspaceId: string;
|
|
11
|
+
name: string;
|
|
12
|
+
color?: string;
|
|
13
|
+
}): Promise<CreateFolderResult>;
|
|
14
|
+
export declare function registerFolders(program: Command, clientFactory: () => GraphQLClient): void;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createFolder = createFolder;
|
|
7
|
+
exports.registerFolders = registerFolders;
|
|
8
|
+
const zod_1 = require("zod");
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
+
const client_1 = require("../client");
|
|
11
|
+
const output_1 = require("../output");
|
|
12
|
+
const folders_1 = require("../queries/folders");
|
|
13
|
+
async function createFolder(client, opts) {
|
|
14
|
+
return (0, client_1.gqlRequest)(client, folders_1.CREATE_FOLDER_MUTATION, {
|
|
15
|
+
workspaceId: opts.workspaceId,
|
|
16
|
+
name: opts.name,
|
|
17
|
+
color: opts.color,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
const FolderCreateOptionsSchema = zod_1.z.object({
|
|
21
|
+
workspaceId: zod_1.z.string().min(1, 'Workspace ID is required'),
|
|
22
|
+
name: zod_1.z.string().min(1, 'Folder name is required'),
|
|
23
|
+
color: zod_1.z.string().optional(),
|
|
24
|
+
});
|
|
25
|
+
function registerFolders(program, clientFactory) {
|
|
26
|
+
const folders = program.command('folders').description('Manage monday.com folders');
|
|
27
|
+
folders
|
|
28
|
+
.command('create')
|
|
29
|
+
.description('Create a new folder in a workspace')
|
|
30
|
+
.requiredOption('--workspace-id <id>', 'Workspace ID')
|
|
31
|
+
.requiredOption('--name <name>', 'Folder name')
|
|
32
|
+
.option('--color <color>', 'Folder color (e.g. bright-red, dark-blue)')
|
|
33
|
+
.action(async (opts) => {
|
|
34
|
+
try {
|
|
35
|
+
const validated = FolderCreateOptionsSchema.parse(opts);
|
|
36
|
+
const client = clientFactory();
|
|
37
|
+
const result = await createFolder(client, validated);
|
|
38
|
+
(0, output_1.printJson)(result.create_folder);
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
if (err instanceof zod_1.z.ZodError) {
|
|
42
|
+
console.error(chalk_1.default.red('Validation error: ' + err.issues.map((i) => i.message).join(', ')));
|
|
43
|
+
process.exit(1);
|
|
44
|
+
}
|
|
45
|
+
console.error(chalk_1.default.red(err.message));
|
|
46
|
+
process.exit(1);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=folders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"folders.js","sourceRoot":"","sources":["../../src/commands/folders.ts"],"names":[],"mappings":";;;;;AAYA,oCASC;AAQD,0CAwBC;AAnDD,6BAAwB;AACxB,kDAA0B;AAC1B,sCAAuC;AACvC,sCAAsC;AACtC,gDAA4D;AAMrD,KAAK,UAAU,YAAY,CAChC,MAAqB,EACrB,IAA2D;IAE3D,OAAO,IAAA,mBAAU,EAAqB,MAAM,EAAE,gCAAsB,EAAE;QACpE,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC;IAClD,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH,SAAgB,eAAe,CAAC,OAAgB,EAAE,aAAkC;IAClF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC;IAEpF,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,oCAAoC,CAAC;SACjD,cAAc,CAAC,qBAAqB,EAAE,cAAc,CAAC;SACrD,cAAc,CAAC,eAAe,EAAE,aAAa,CAAC;SAC9C,MAAM,CAAC,iBAAiB,EAAE,2CAA2C,CAAC;SACtE,MAAM,CAAC,KAAK,EAAE,IAA2D,EAAE,EAAE;QAC5E,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACrD,IAAA,kBAAS,EAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,OAAC,CAAC,QAAQ,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/dist/commands/items.d.ts
CHANGED
|
@@ -44,6 +44,23 @@ export interface MoveItemResult {
|
|
|
44
44
|
id: string;
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
+
export interface CreateSubitemResult {
|
|
48
|
+
create_subitem: {
|
|
49
|
+
id: string;
|
|
50
|
+
name: string;
|
|
51
|
+
url: string;
|
|
52
|
+
parent_item: {
|
|
53
|
+
id: string;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export interface DuplicateItemResult {
|
|
58
|
+
duplicate_item: {
|
|
59
|
+
id: string;
|
|
60
|
+
name: string;
|
|
61
|
+
url: string;
|
|
62
|
+
};
|
|
63
|
+
}
|
|
47
64
|
export declare function fetchItems(client: GraphQLClient, boardId: string, opts: {
|
|
48
65
|
limit: number;
|
|
49
66
|
includeColumns: boolean;
|
|
@@ -57,4 +74,9 @@ export declare function createItem(client: GraphQLClient, boardId: string, opts:
|
|
|
57
74
|
export declare function updateItemColumns(client: GraphQLClient, boardId: string, itemId: string, columnValuesJson: string): Promise<UpdateColumnsResult>;
|
|
58
75
|
export declare function deleteItem(client: GraphQLClient, itemId: string): Promise<DeleteItemResult>;
|
|
59
76
|
export declare function moveItemToGroup(client: GraphQLClient, itemId: string, groupId: string): Promise<MoveItemResult>;
|
|
77
|
+
export declare function createSubitem(client: GraphQLClient, parentItemId: string, opts: {
|
|
78
|
+
name: string;
|
|
79
|
+
columnValues?: string;
|
|
80
|
+
}): Promise<CreateSubitemResult>;
|
|
81
|
+
export declare function duplicateItem(client: GraphQLClient, boardId: string, itemId: string, withUpdates?: boolean): Promise<DuplicateItemResult>;
|
|
60
82
|
export declare function registerItems(program: Command, clientFactory: () => GraphQLClient): void;
|
package/dist/commands/items.js
CHANGED
|
@@ -8,6 +8,8 @@ exports.createItem = createItem;
|
|
|
8
8
|
exports.updateItemColumns = updateItemColumns;
|
|
9
9
|
exports.deleteItem = deleteItem;
|
|
10
10
|
exports.moveItemToGroup = moveItemToGroup;
|
|
11
|
+
exports.createSubitem = createSubitem;
|
|
12
|
+
exports.duplicateItem = duplicateItem;
|
|
11
13
|
exports.registerItems = registerItems;
|
|
12
14
|
const zod_1 = require("zod");
|
|
13
15
|
const chalk_1 = __importDefault(require("chalk"));
|
|
@@ -43,6 +45,16 @@ async function deleteItem(client, itemId) {
|
|
|
43
45
|
async function moveItemToGroup(client, itemId, groupId) {
|
|
44
46
|
return (0, client_1.gqlRequest)(client, items_1.MOVE_ITEM_TO_GROUP_MUTATION, { itemId, groupId });
|
|
45
47
|
}
|
|
48
|
+
async function createSubitem(client, parentItemId, opts) {
|
|
49
|
+
return (0, client_1.gqlRequest)(client, items_1.CREATE_SUBITEM_MUTATION, {
|
|
50
|
+
parentItemId,
|
|
51
|
+
itemName: opts.name,
|
|
52
|
+
columnValues: opts.columnValues,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
async function duplicateItem(client, boardId, itemId, withUpdates) {
|
|
56
|
+
return (0, client_1.gqlRequest)(client, items_1.DUPLICATE_ITEM_MUTATION, { boardId, itemId, withUpdates });
|
|
57
|
+
}
|
|
46
58
|
const isValidJson = (v) => {
|
|
47
59
|
if (!v)
|
|
48
60
|
return true;
|
|
@@ -72,6 +84,13 @@ const UpdateColumnsSchema = zod_1.z.object({
|
|
|
72
84
|
.string()
|
|
73
85
|
.refine(isValidJson, { message: 'columnValuesJson must be valid JSON' }),
|
|
74
86
|
});
|
|
87
|
+
const SubitemCreateOptionsSchema = zod_1.z.object({
|
|
88
|
+
name: zod_1.z.string().min(1, 'Subitem name is required'),
|
|
89
|
+
columnValues: zod_1.z
|
|
90
|
+
.string()
|
|
91
|
+
.optional()
|
|
92
|
+
.refine(isValidJson, { message: '--column-values must be valid JSON' }),
|
|
93
|
+
});
|
|
75
94
|
function formatColumnValues(cvs) {
|
|
76
95
|
return cvs
|
|
77
96
|
.filter((cv) => cv.text)
|
|
@@ -205,5 +224,42 @@ function registerItems(program, clientFactory) {
|
|
|
205
224
|
process.exit(1);
|
|
206
225
|
}
|
|
207
226
|
});
|
|
227
|
+
items
|
|
228
|
+
.command('subitem <parentItemId>')
|
|
229
|
+
.description('Create a subitem under a parent item')
|
|
230
|
+
.requiredOption('--name <name>', 'Subitem name')
|
|
231
|
+
.option('--column-values <json>', 'Column values as JSON string')
|
|
232
|
+
.action(async (parentItemId, opts) => {
|
|
233
|
+
try {
|
|
234
|
+
const validated = SubitemCreateOptionsSchema.parse(opts);
|
|
235
|
+
const client = clientFactory();
|
|
236
|
+
const result = await createSubitem(client, parentItemId, validated);
|
|
237
|
+
const s = result.create_subitem;
|
|
238
|
+
(0, output_1.printJson)({ id: s.id, name: s.name, url: s.url, parent_item_id: s.parent_item.id });
|
|
239
|
+
}
|
|
240
|
+
catch (err) {
|
|
241
|
+
if (err instanceof zod_1.z.ZodError) {
|
|
242
|
+
console.error(chalk_1.default.red('Validation error: ' + err.issues.map((i) => i.message).join(', ')));
|
|
243
|
+
process.exit(1);
|
|
244
|
+
}
|
|
245
|
+
console.error(chalk_1.default.red(err.message));
|
|
246
|
+
process.exit(1);
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
items
|
|
250
|
+
.command('duplicate <boardId> <itemId>')
|
|
251
|
+
.description('Duplicate an item')
|
|
252
|
+
.option('--with-updates', 'Also copy item updates/comments')
|
|
253
|
+
.action(async (boardId, itemId, opts) => {
|
|
254
|
+
try {
|
|
255
|
+
const client = clientFactory();
|
|
256
|
+
const result = await duplicateItem(client, boardId, itemId, opts.withUpdates);
|
|
257
|
+
(0, output_1.printJson)(result.duplicate_item);
|
|
258
|
+
}
|
|
259
|
+
catch (err) {
|
|
260
|
+
console.error(chalk_1.default.red(err.message));
|
|
261
|
+
process.exit(1);
|
|
262
|
+
}
|
|
263
|
+
});
|
|
208
264
|
}
|
|
209
265
|
//# sourceMappingURL=items.js.map
|