@structured-world/gitlab-mcp 6.8.0 → 6.9.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/LICENSE +202 -21
- package/LICENSE.MIT +21 -0
- package/README.md +149 -1
- package/dist/src/config.d.ts +5 -0
- package/dist/src/config.js +88 -1
- package/dist/src/config.js.map +1 -1
- package/dist/src/entities/core/registry.js +68 -63
- package/dist/src/entities/core/registry.js.map +1 -1
- package/dist/src/entities/core/schema-readonly.d.ts +93 -36
- package/dist/src/entities/core/schema-readonly.js +146 -121
- package/dist/src/entities/core/schema-readonly.js.map +1 -1
- package/dist/src/entities/core/schema.d.ts +33 -23
- package/dist/src/entities/core/schema.js +65 -60
- package/dist/src/entities/core/schema.js.map +1 -1
- package/dist/src/entities/files/registry.js +14 -21
- package/dist/src/entities/files/registry.js.map +1 -1
- package/dist/src/entities/files/schema-readonly.d.ts +8 -7
- package/dist/src/entities/files/schema-readonly.js +20 -25
- package/dist/src/entities/files/schema-readonly.js.map +1 -1
- package/dist/src/entities/files/schema.d.ts +22 -15
- package/dist/src/entities/files/schema.js +32 -73
- package/dist/src/entities/files/schema.js.map +1 -1
- package/dist/src/entities/integrations/registry.js +3 -0
- package/dist/src/entities/integrations/registry.js.map +1 -1
- package/dist/src/entities/integrations/schema.d.ts +114 -8
- package/dist/src/entities/integrations/schema.js +27 -9
- package/dist/src/entities/integrations/schema.js.map +1 -1
- package/dist/src/entities/labels/registry.js +8 -7
- package/dist/src/entities/labels/registry.js.map +1 -1
- package/dist/src/entities/labels/schema-readonly.d.ts +8 -7
- package/dist/src/entities/labels/schema-readonly.js +20 -18
- package/dist/src/entities/labels/schema-readonly.js.map +1 -1
- package/dist/src/entities/labels/schema.d.ts +15 -8
- package/dist/src/entities/labels/schema.js +36 -27
- package/dist/src/entities/labels/schema.js.map +1 -1
- package/dist/src/entities/milestones/registry.js +7 -8
- package/dist/src/entities/milestones/registry.js.map +1 -1
- package/dist/src/entities/milestones/schema-readonly.d.ts +25 -10
- package/dist/src/entities/milestones/schema-readonly.js +47 -26
- package/dist/src/entities/milestones/schema-readonly.js.map +1 -1
- package/dist/src/entities/milestones/schema.d.ts +19 -9
- package/dist/src/entities/milestones/schema.js +31 -20
- package/dist/src/entities/milestones/schema.js.map +1 -1
- package/dist/src/entities/mrs/registry.js +75 -79
- package/dist/src/entities/mrs/registry.js.map +1 -1
- package/dist/src/entities/mrs/schema-readonly.d.ts +36 -23
- package/dist/src/entities/mrs/schema-readonly.js +197 -338
- package/dist/src/entities/mrs/schema-readonly.js.map +1 -1
- package/dist/src/entities/mrs/schema.d.ts +113 -37
- package/dist/src/entities/mrs/schema.js +140 -258
- package/dist/src/entities/mrs/schema.js.map +1 -1
- package/dist/src/entities/pipelines/registry.js +10 -4
- package/dist/src/entities/pipelines/registry.js.map +1 -1
- package/dist/src/entities/pipelines/schema-readonly.d.ts +30 -14
- package/dist/src/entities/pipelines/schema-readonly.js +62 -52
- package/dist/src/entities/pipelines/schema-readonly.js.map +1 -1
- package/dist/src/entities/pipelines/schema.d.ts +23 -16
- package/dist/src/entities/pipelines/schema.js +44 -26
- package/dist/src/entities/pipelines/schema.js.map +1 -1
- package/dist/src/entities/snippets/registry.js +79 -67
- package/dist/src/entities/snippets/registry.js.map +1 -1
- package/dist/src/entities/snippets/schema-readonly.d.ts +8 -9
- package/dist/src/entities/snippets/schema-readonly.js +30 -35
- package/dist/src/entities/snippets/schema-readonly.js.map +1 -1
- package/dist/src/entities/snippets/schema.d.ts +7 -11
- package/dist/src/entities/snippets/schema.js +31 -65
- package/dist/src/entities/snippets/schema.js.map +1 -1
- package/dist/src/entities/variables/registry.js +9 -5
- package/dist/src/entities/variables/registry.js.map +1 -1
- package/dist/src/entities/variables/schema-readonly.d.ts +9 -9
- package/dist/src/entities/variables/schema-readonly.js +22 -18
- package/dist/src/entities/variables/schema-readonly.js.map +1 -1
- package/dist/src/entities/variables/schema.d.ts +24 -7
- package/dist/src/entities/variables/schema.js +67 -38
- package/dist/src/entities/variables/schema.js.map +1 -1
- package/dist/src/entities/webhooks/registry.js +48 -46
- package/dist/src/entities/webhooks/registry.js.map +1 -1
- package/dist/src/entities/webhooks/schema-readonly.d.ts +9 -8
- package/dist/src/entities/webhooks/schema-readonly.js +14 -9
- package/dist/src/entities/webhooks/schema-readonly.js.map +1 -1
- package/dist/src/entities/webhooks/schema.d.ts +79 -26
- package/dist/src/entities/webhooks/schema.js +70 -61
- package/dist/src/entities/webhooks/schema.js.map +1 -1
- package/dist/src/entities/wiki/registry.js +7 -4
- package/dist/src/entities/wiki/registry.js.map +1 -1
- package/dist/src/entities/wiki/schema-readonly.d.ts +7 -7
- package/dist/src/entities/wiki/schema-readonly.js +11 -15
- package/dist/src/entities/wiki/schema-readonly.js.map +1 -1
- package/dist/src/entities/wiki/schema.d.ts +19 -8
- package/dist/src/entities/wiki/schema.js +32 -29
- package/dist/src/entities/wiki/schema.js.map +1 -1
- package/dist/src/entities/workitems/registry.js +7 -8
- package/dist/src/entities/workitems/registry.js.map +1 -1
- package/dist/src/entities/workitems/schema-readonly.d.ts +7 -8
- package/dist/src/entities/workitems/schema-readonly.js +12 -14
- package/dist/src/entities/workitems/schema-readonly.js.map +1 -1
- package/dist/src/entities/workitems/schema.d.ts +17 -11
- package/dist/src/entities/workitems/schema.js +25 -25
- package/dist/src/entities/workitems/schema.js.map +1 -1
- package/dist/src/registry-manager.js +22 -11
- package/dist/src/registry-manager.js.map +1 -1
- package/dist/src/utils/schema-utils.d.ts +28 -0
- package/dist/src/utils/schema-utils.js +244 -0
- package/dist/src/utils/schema-utils.js.map +1 -0
- package/dist/structured-world-gitlab-mcp-6.9.0.tgz +0 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/structured-world-gitlab-mcp-6.8.0.tgz +0 -0
|
@@ -3,35 +3,44 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ManageLabelSchema = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
const namespaceField = zod_1.z.string().describe("Namespace path (group or project)");
|
|
7
|
+
const labelIdField = utils_1.requiredId.describe("The ID or title of the label");
|
|
8
|
+
const descriptionField = zod_1.z.string().optional().describe("The description of the label");
|
|
9
|
+
const priorityField = zod_1.z
|
|
10
|
+
.number()
|
|
11
|
+
.optional()
|
|
12
|
+
.describe("The priority of the label. Must be greater or equal than zero or null to remove the priority.");
|
|
13
|
+
const CreateLabelSchema = zod_1.z.object({
|
|
14
|
+
action: zod_1.z.literal("create").describe("Create a new label"),
|
|
15
|
+
namespace: namespaceField,
|
|
16
|
+
name: zod_1.z.string().describe("The name of the label"),
|
|
17
|
+
color: zod_1.z
|
|
18
|
+
.string()
|
|
19
|
+
.describe("The color of the label in 6-digit hex notation with leading '#' (e.g. #FFAABB) or CSS color name"),
|
|
20
|
+
description: descriptionField,
|
|
21
|
+
priority: priorityField,
|
|
22
|
+
});
|
|
23
|
+
const UpdateLabelSchema = zod_1.z.object({
|
|
24
|
+
action: zod_1.z.literal("update").describe("Update an existing label"),
|
|
25
|
+
namespace: namespaceField,
|
|
26
|
+
label_id: labelIdField,
|
|
27
|
+
name: zod_1.z.string().optional().describe("The name of the label"),
|
|
28
|
+
new_name: zod_1.z.string().optional().describe("The new name of the label"),
|
|
15
29
|
color: zod_1.z
|
|
16
30
|
.string()
|
|
17
31
|
.optional()
|
|
18
|
-
.describe("The color of the label in 6-digit hex notation with leading '#' (e.g. #FFAABB) or CSS color name
|
|
19
|
-
description:
|
|
20
|
-
priority:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
message: "label_id is required for 'update' and 'delete' actions",
|
|
27
|
-
path: ["label_id"],
|
|
28
|
-
})
|
|
29
|
-
.refine(data => data.action !== "create" || data.name !== undefined, {
|
|
30
|
-
message: "name is required for 'create' action",
|
|
31
|
-
path: ["name"],
|
|
32
|
-
})
|
|
33
|
-
.refine(data => data.action !== "create" || data.color !== undefined, {
|
|
34
|
-
message: "color is required for 'create' action",
|
|
35
|
-
path: ["color"],
|
|
32
|
+
.describe("The color of the label in 6-digit hex notation with leading '#' (e.g. #FFAABB) or CSS color name"),
|
|
33
|
+
description: descriptionField,
|
|
34
|
+
priority: priorityField,
|
|
35
|
+
});
|
|
36
|
+
const DeleteLabelSchema = zod_1.z.object({
|
|
37
|
+
action: zod_1.z.literal("delete").describe("Delete a label"),
|
|
38
|
+
namespace: namespaceField,
|
|
39
|
+
label_id: labelIdField,
|
|
36
40
|
});
|
|
41
|
+
exports.ManageLabelSchema = zod_1.z.discriminatedUnion("action", [
|
|
42
|
+
CreateLabelSchema,
|
|
43
|
+
UpdateLabelSchema,
|
|
44
|
+
DeleteLabelSchema,
|
|
45
|
+
]);
|
|
37
46
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/labels/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAsC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/labels/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAsC;AAUtC,MAAM,cAAc,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;AAChF,MAAM,YAAY,GAAG,kBAAU,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;AACzE,MAAM,gBAAgB,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;AACxF,MAAM,aAAa,GAAG,OAAC;KACpB,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,QAAQ,CACP,+FAA+F,CAChG,CAAC;AAGJ,MAAM,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAC1D,SAAS,EAAE,cAAc;IACzB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAClD,KAAK,EAAE,OAAC;SACL,MAAM,EAAE;SACR,QAAQ,CACP,kGAAkG,CACnG;IACH,WAAW,EAAE,gBAAgB;IAC7B,QAAQ,EAAE,aAAa;CACxB,CAAC,CAAC;AAGH,MAAM,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAChE,SAAS,EAAE,cAAc;IACzB,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC7D,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACrE,KAAK,EAAE,OAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,kGAAkG,CACnG;IACH,WAAW,EAAE,gBAAgB;IAC7B,QAAQ,EAAE,aAAa;CACxB,CAAC,CAAC;AAGH,MAAM,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACtD,SAAS,EAAE,cAAc;IACzB,QAAQ,EAAE,YAAY;CACvB,CAAC,CAAC;AAGU,QAAA,iBAAiB,GAAG,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IAC9D,iBAAiB;IACjB,iBAAiB;IACjB,iBAAiB;CAClB,CAAC,CAAC"}
|
|
@@ -42,7 +42,7 @@ const schema_readonly_1 = require("./schema-readonly");
|
|
|
42
42
|
const schema_1 = require("./schema");
|
|
43
43
|
const gitlab_api_1 = require("../../utils/gitlab-api");
|
|
44
44
|
const namespace_1 = require("../../utils/namespace");
|
|
45
|
-
const
|
|
45
|
+
const config_1 = require("../../config");
|
|
46
46
|
exports.milestonesToolRegistry = new Map([
|
|
47
47
|
[
|
|
48
48
|
"browse_milestones",
|
|
@@ -52,6 +52,9 @@ exports.milestonesToolRegistry = new Map([
|
|
|
52
52
|
inputSchema: z.toJSONSchema(schema_readonly_1.BrowseMilestonesSchema),
|
|
53
53
|
handler: async (args) => {
|
|
54
54
|
const input = schema_readonly_1.BrowseMilestonesSchema.parse(args);
|
|
55
|
+
if ((0, config_1.isActionDenied)("browse_milestones", input.action)) {
|
|
56
|
+
throw new Error(`Action '${input.action}' is not allowed for browse_milestones tool`);
|
|
57
|
+
}
|
|
55
58
|
const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(input.namespace);
|
|
56
59
|
switch (input.action) {
|
|
57
60
|
case "list": {
|
|
@@ -60,11 +63,9 @@ exports.milestonesToolRegistry = new Map([
|
|
|
60
63
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones`, { query });
|
|
61
64
|
}
|
|
62
65
|
case "get": {
|
|
63
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
64
66
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${input.milestone_id}`);
|
|
65
67
|
}
|
|
66
68
|
case "issues": {
|
|
67
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
68
69
|
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
69
70
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
70
71
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/issues`, {
|
|
@@ -72,13 +73,11 @@ exports.milestonesToolRegistry = new Map([
|
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
case "merge_requests": {
|
|
75
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
76
76
|
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
77
77
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
78
78
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/merge_requests`, { query });
|
|
79
79
|
}
|
|
80
80
|
case "burndown": {
|
|
81
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
82
81
|
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
83
82
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
84
83
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/burndown_events`, { query });
|
|
@@ -97,6 +96,9 @@ exports.milestonesToolRegistry = new Map([
|
|
|
97
96
|
inputSchema: z.toJSONSchema(schema_1.ManageMilestoneSchema),
|
|
98
97
|
handler: async (args) => {
|
|
99
98
|
const input = schema_1.ManageMilestoneSchema.parse(args);
|
|
99
|
+
if ((0, config_1.isActionDenied)("manage_milestone", input.action)) {
|
|
100
|
+
throw new Error(`Action '${input.action}' is not allowed for manage_milestone tool`);
|
|
101
|
+
}
|
|
100
102
|
const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(input.namespace);
|
|
101
103
|
switch (input.action) {
|
|
102
104
|
case "create": {
|
|
@@ -107,7 +109,6 @@ exports.milestonesToolRegistry = new Map([
|
|
|
107
109
|
});
|
|
108
110
|
}
|
|
109
111
|
case "update": {
|
|
110
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
111
112
|
const { action: _action, namespace: _namespace, milestone_id, ...body } = input;
|
|
112
113
|
return gitlab_api_1.gitlab.put(`${entityType}/${encodedPath}/milestones/${milestone_id}`, {
|
|
113
114
|
body,
|
|
@@ -115,12 +116,10 @@ exports.milestonesToolRegistry = new Map([
|
|
|
115
116
|
});
|
|
116
117
|
}
|
|
117
118
|
case "delete": {
|
|
118
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
119
119
|
await gitlab_api_1.gitlab.delete(`${entityType}/${encodedPath}/milestones/${input.milestone_id}`);
|
|
120
120
|
return { deleted: true };
|
|
121
121
|
}
|
|
122
122
|
case "promote": {
|
|
123
|
-
(0, utils_1.assertDefined)(input.milestone_id, "milestone_id");
|
|
124
123
|
if (entityType !== "projects") {
|
|
125
124
|
throw new Error("Milestone promotion is only available for projects, not groups");
|
|
126
125
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/milestones/registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/milestones/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,16 +15,11 @@ export declare const GitLabMilestonesSchema: z.ZodObject<{
|
|
|
15
15
|
expired: z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>;
|
|
16
16
|
web_url: z.ZodOptional<z.ZodString>;
|
|
17
17
|
}, z.core.$strip>;
|
|
18
|
-
export declare const BrowseMilestonesSchema: z.ZodObject<{
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
list: "list";
|
|
23
|
-
get: "get";
|
|
24
|
-
burndown: "burndown";
|
|
25
|
-
}>;
|
|
18
|
+
export declare const BrowseMilestonesSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
19
|
+
per_page: z.ZodOptional<z.ZodNumber>;
|
|
20
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
21
|
+
action: z.ZodLiteral<"list">;
|
|
26
22
|
namespace: z.ZodString;
|
|
27
|
-
milestone_id: z.ZodOptional<z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>>;
|
|
28
23
|
iids: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
29
24
|
state: z.ZodOptional<z.ZodEnum<{
|
|
30
25
|
closed: "closed";
|
|
@@ -35,8 +30,28 @@ export declare const BrowseMilestonesSchema: z.ZodObject<{
|
|
|
35
30
|
include_ancestors: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
|
|
36
31
|
updated_before: z.ZodOptional<z.ZodString>;
|
|
37
32
|
updated_after: z.ZodOptional<z.ZodString>;
|
|
33
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
34
|
+
action: z.ZodLiteral<"get">;
|
|
35
|
+
namespace: z.ZodString;
|
|
36
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
37
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
38
38
|
per_page: z.ZodOptional<z.ZodNumber>;
|
|
39
39
|
page: z.ZodOptional<z.ZodNumber>;
|
|
40
|
-
|
|
40
|
+
action: z.ZodLiteral<"issues">;
|
|
41
|
+
namespace: z.ZodString;
|
|
42
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
43
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
44
|
+
per_page: z.ZodOptional<z.ZodNumber>;
|
|
45
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
46
|
+
action: z.ZodLiteral<"merge_requests">;
|
|
47
|
+
namespace: z.ZodString;
|
|
48
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
49
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
50
|
+
per_page: z.ZodOptional<z.ZodNumber>;
|
|
51
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
action: z.ZodLiteral<"burndown">;
|
|
53
|
+
namespace: z.ZodString;
|
|
54
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
55
|
+
}, z.core.$strip>], "action">;
|
|
41
56
|
export type BrowseMilestonesInput = z.infer<typeof BrowseMilestonesSchema>;
|
|
42
57
|
export type GitLabMilestones = z.infer<typeof GitLabMilestonesSchema>;
|
|
@@ -19,46 +19,67 @@ exports.GitLabMilestonesSchema = zod_1.z.object({
|
|
|
19
19
|
expired: utils_1.flexibleBoolean,
|
|
20
20
|
web_url: zod_1.z.string().optional(),
|
|
21
21
|
});
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
iids: zod_1.z
|
|
32
|
-
.array(zod_1.z.string())
|
|
33
|
-
.optional()
|
|
34
|
-
.describe("For 'list': return only the milestones having the given iid"),
|
|
22
|
+
const namespaceField = zod_1.z.string().describe("Namespace path (group or project)");
|
|
23
|
+
const milestoneIdField = utils_1.requiredId.describe("The ID of a project or group milestone");
|
|
24
|
+
const paginationFields = {
|
|
25
|
+
per_page: zod_1.z.number().optional().describe("Number of items per page"),
|
|
26
|
+
page: zod_1.z.number().optional().describe("Page number"),
|
|
27
|
+
};
|
|
28
|
+
const ListMilestonesSchema = zod_1.z.object({
|
|
29
|
+
action: zod_1.z.literal("list").describe("List milestones with optional filtering"),
|
|
30
|
+
namespace: namespaceField,
|
|
31
|
+
iids: zod_1.z.array(zod_1.z.string()).optional().describe("Return only the milestones having the given iid"),
|
|
35
32
|
state: zod_1.z
|
|
36
33
|
.enum(["active", "closed"])
|
|
37
34
|
.optional()
|
|
38
|
-
.describe("
|
|
35
|
+
.describe("Return only active or closed milestones"),
|
|
39
36
|
title: zod_1.z
|
|
40
37
|
.string()
|
|
41
38
|
.optional()
|
|
42
|
-
.describe("
|
|
39
|
+
.describe("Return only milestones with a title matching the provided string"),
|
|
43
40
|
search: zod_1.z
|
|
44
41
|
.string()
|
|
45
42
|
.optional()
|
|
46
|
-
.describe("
|
|
47
|
-
include_ancestors: utils_1.flexibleBoolean.optional().describe("
|
|
43
|
+
.describe("Return only milestones with a title or description matching the provided string"),
|
|
44
|
+
include_ancestors: utils_1.flexibleBoolean.optional().describe("Include ancestor groups"),
|
|
48
45
|
updated_before: zod_1.z
|
|
49
46
|
.string()
|
|
50
47
|
.optional()
|
|
51
|
-
.describe("
|
|
48
|
+
.describe("Return milestones updated before the specified date (ISO 8601 format)"),
|
|
52
49
|
updated_after: zod_1.z
|
|
53
50
|
.string()
|
|
54
51
|
.optional()
|
|
55
|
-
.describe("
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
.
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
52
|
+
.describe("Return milestones updated after the specified date (ISO 8601 format)"),
|
|
53
|
+
...paginationFields,
|
|
54
|
+
});
|
|
55
|
+
const GetMilestoneSchema = zod_1.z.object({
|
|
56
|
+
action: zod_1.z.literal("get").describe("Get a single milestone by ID"),
|
|
57
|
+
namespace: namespaceField,
|
|
58
|
+
milestone_id: milestoneIdField,
|
|
59
|
+
});
|
|
60
|
+
const MilestoneIssuesSchema = zod_1.z.object({
|
|
61
|
+
action: zod_1.z.literal("issues").describe("List issues assigned to a milestone"),
|
|
62
|
+
namespace: namespaceField,
|
|
63
|
+
milestone_id: milestoneIdField,
|
|
64
|
+
...paginationFields,
|
|
65
|
+
});
|
|
66
|
+
const MilestoneMergeRequestsSchema = zod_1.z.object({
|
|
67
|
+
action: zod_1.z.literal("merge_requests").describe("List merge requests assigned to a milestone"),
|
|
68
|
+
namespace: namespaceField,
|
|
69
|
+
milestone_id: milestoneIdField,
|
|
70
|
+
...paginationFields,
|
|
71
|
+
});
|
|
72
|
+
const MilestoneBurndownSchema = zod_1.z.object({
|
|
73
|
+
action: zod_1.z.literal("burndown").describe("Get burndown chart data for a milestone"),
|
|
74
|
+
namespace: namespaceField,
|
|
75
|
+
milestone_id: milestoneIdField,
|
|
76
|
+
...paginationFields,
|
|
63
77
|
});
|
|
78
|
+
exports.BrowseMilestonesSchema = zod_1.z.discriminatedUnion("action", [
|
|
79
|
+
ListMilestonesSchema,
|
|
80
|
+
GetMilestoneSchema,
|
|
81
|
+
MilestoneIssuesSchema,
|
|
82
|
+
MilestoneMergeRequestsSchema,
|
|
83
|
+
MilestoneBurndownSchema,
|
|
84
|
+
]);
|
|
64
85
|
//# sourceMappingURL=schema-readonly.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/milestones/schema-readonly.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,sCAAkD;AAIzC,sGAJA,8BAAqB,OAIA;AAH9B,oCAAuD;AAM1C,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE;IAC7B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,uBAAe;IACxB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/milestones/schema-readonly.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
export declare const ManageMilestoneSchema: z.ZodObject<{
|
|
3
|
-
action: z.
|
|
4
|
-
create: "create";
|
|
5
|
-
update: "update";
|
|
6
|
-
delete: "delete";
|
|
7
|
-
promote: "promote";
|
|
8
|
-
}>;
|
|
2
|
+
export declare const ManageMilestoneSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3
|
+
action: z.ZodLiteral<"create">;
|
|
9
4
|
namespace: z.ZodString;
|
|
10
|
-
|
|
5
|
+
title: z.ZodString;
|
|
6
|
+
description: z.ZodOptional<z.ZodString>;
|
|
7
|
+
due_date: z.ZodOptional<z.ZodString>;
|
|
8
|
+
start_date: z.ZodOptional<z.ZodString>;
|
|
9
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
10
|
+
action: z.ZodLiteral<"update">;
|
|
11
|
+
namespace: z.ZodString;
|
|
12
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
11
13
|
title: z.ZodOptional<z.ZodString>;
|
|
12
14
|
description: z.ZodOptional<z.ZodString>;
|
|
13
15
|
due_date: z.ZodOptional<z.ZodString>;
|
|
@@ -16,5 +18,13 @@ export declare const ManageMilestoneSchema: z.ZodObject<{
|
|
|
16
18
|
close: "close";
|
|
17
19
|
activate: "activate";
|
|
18
20
|
}>>>;
|
|
19
|
-
}, z.core.$strip
|
|
21
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
22
|
+
action: z.ZodLiteral<"delete">;
|
|
23
|
+
namespace: z.ZodString;
|
|
24
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
25
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
26
|
+
action: z.ZodLiteral<"promote">;
|
|
27
|
+
namespace: z.ZodString;
|
|
28
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
29
|
+
}, z.core.$strip>], "action">;
|
|
20
30
|
export type ManageMilestoneInput = z.infer<typeof ManageMilestoneSchema>;
|
|
@@ -3,33 +3,44 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ManageMilestoneSchema = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
action: zod_1.z.
|
|
9
|
-
namespace:
|
|
10
|
-
|
|
11
|
-
.optional()
|
|
12
|
-
.describe("The ID of a project or group milestone. Required for 'update', 'delete', 'promote' actions."),
|
|
13
|
-
title: zod_1.z
|
|
14
|
-
.string()
|
|
15
|
-
.optional()
|
|
16
|
-
.describe("The title of the milestone. Required for 'create' action."),
|
|
6
|
+
const namespaceField = zod_1.z.string().describe("Namespace path (group or project)");
|
|
7
|
+
const CreateMilestoneSchema = zod_1.z.object({
|
|
8
|
+
action: zod_1.z.literal("create"),
|
|
9
|
+
namespace: namespaceField,
|
|
10
|
+
title: zod_1.z.string().describe("The title of the milestone"),
|
|
17
11
|
description: zod_1.z.string().optional().describe("The description of the milestone"),
|
|
18
12
|
due_date: zod_1.z.string().optional().describe("The due date of the milestone (YYYY-MM-DD)"),
|
|
19
13
|
start_date: zod_1.z.string().optional().describe("The start date of the milestone (YYYY-MM-DD)"),
|
|
14
|
+
});
|
|
15
|
+
const UpdateMilestoneSchema = zod_1.z.object({
|
|
16
|
+
action: zod_1.z.literal("update"),
|
|
17
|
+
namespace: namespaceField,
|
|
18
|
+
milestone_id: utils_1.requiredId.describe("The ID of the milestone to update"),
|
|
19
|
+
title: zod_1.z.string().optional().describe("The new title of the milestone"),
|
|
20
|
+
description: zod_1.z.string().optional().describe("The new description of the milestone"),
|
|
21
|
+
due_date: zod_1.z.string().optional().describe("The due date of the milestone (YYYY-MM-DD)"),
|
|
22
|
+
start_date: zod_1.z.string().optional().describe("The start date of the milestone (YYYY-MM-DD)"),
|
|
20
23
|
state_event: zod_1.z
|
|
21
24
|
.string()
|
|
22
25
|
.transform(val => val.toLowerCase())
|
|
23
26
|
.pipe(zod_1.z.enum(["close", "activate"]))
|
|
24
27
|
.optional()
|
|
25
|
-
.describe("
|
|
26
|
-
})
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
.describe("State event to apply: 'close' or 'activate'"),
|
|
29
|
+
});
|
|
30
|
+
const DeleteMilestoneSchema = zod_1.z.object({
|
|
31
|
+
action: zod_1.z.literal("delete"),
|
|
32
|
+
namespace: namespaceField,
|
|
33
|
+
milestone_id: utils_1.requiredId.describe("The ID of the milestone to delete"),
|
|
34
|
+
});
|
|
35
|
+
const PromoteMilestoneSchema = zod_1.z.object({
|
|
36
|
+
action: zod_1.z.literal("promote"),
|
|
37
|
+
namespace: namespaceField,
|
|
38
|
+
milestone_id: utils_1.requiredId.describe("The ID of the project milestone to promote to group level"),
|
|
34
39
|
});
|
|
40
|
+
exports.ManageMilestoneSchema = zod_1.z.discriminatedUnion("action", [
|
|
41
|
+
CreateMilestoneSchema,
|
|
42
|
+
UpdateMilestoneSchema,
|
|
43
|
+
DeleteMilestoneSchema,
|
|
44
|
+
PromoteMilestoneSchema,
|
|
45
|
+
]);
|
|
35
46
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/milestones/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAsC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/milestones/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAsC;AAetC,MAAM,cAAc,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;AAGhF,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3B,SAAS,EAAE,cAAc;IACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACxD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/E,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACtF,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;CAC3F,CAAC,CAAC;AAGH,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3B,SAAS,EAAE,cAAc;IACzB,YAAY,EAAE,kBAAU,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACtE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACvE,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACnF,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACtF,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC1F,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACnC,IAAI,CAAC,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;SACnC,QAAQ,EAAE;SACV,QAAQ,CAAC,6CAA6C,CAAC;CAC3D,CAAC,CAAC;AAGH,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3B,SAAS,EAAE,cAAc;IACzB,YAAY,EAAE,kBAAU,CAAC,QAAQ,CAAC,mCAAmC,CAAC;CACvE,CAAC,CAAC;AAGH,MAAM,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC5B,SAAS,EAAE,cAAc;IACzB,YAAY,EAAE,kBAAU,CAAC,QAAQ,CAAC,2DAA2D,CAAC;CAC/F,CAAC,CAAC;AAGU,QAAA,qBAAqB,GAAG,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IAClE,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;CACvB,CAAC,CAAC"}
|