@structured-world/gitlab-mcp 6.27.0 → 6.27.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/entities/milestones/registry.js +11 -18
- package/dist/src/entities/milestones/registry.js.map +1 -1
- package/dist/src/entities/milestones/schema-readonly.d.ts +4 -8
- package/dist/src/entities/milestones/schema-readonly.js +2 -29
- package/dist/src/entities/milestones/schema-readonly.js.map +1 -1
- package/dist/src/entities/milestones/schema.d.ts +3 -6
- package/dist/src/entities/milestones/schema.js +2 -28
- package/dist/src/entities/milestones/schema.js.map +1 -1
- package/dist/structured-world-gitlab-mcp-6.27.1.tgz +0 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/structured-world-gitlab-mcp-6.27.0.tgz +0 -0
|
@@ -64,28 +64,24 @@ exports.milestonesToolRegistry = new Map([
|
|
|
64
64
|
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones`, { query });
|
|
65
65
|
}
|
|
66
66
|
case "get": {
|
|
67
|
-
|
|
68
|
-
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestoneIdentifier}`);
|
|
67
|
+
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${input.milestone_id}`);
|
|
69
68
|
}
|
|
70
69
|
case "issues": {
|
|
71
|
-
const { action: _action, namespace: _namespace, milestone_id,
|
|
72
|
-
const milestoneIdentifier = iid ?? milestone_id;
|
|
70
|
+
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
73
71
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
74
|
-
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${
|
|
72
|
+
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/issues`, {
|
|
75
73
|
query,
|
|
76
74
|
});
|
|
77
75
|
}
|
|
78
76
|
case "merge_requests": {
|
|
79
|
-
const { action: _action, namespace: _namespace, milestone_id,
|
|
80
|
-
const milestoneIdentifier = iid ?? milestone_id;
|
|
77
|
+
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
81
78
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
82
|
-
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${
|
|
79
|
+
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/merge_requests`, { query });
|
|
83
80
|
}
|
|
84
81
|
case "burndown": {
|
|
85
|
-
const { action: _action, namespace: _namespace, milestone_id,
|
|
86
|
-
const milestoneIdentifier = iid ?? milestone_id;
|
|
82
|
+
const { action: _action, namespace: _namespace, milestone_id, ...rest } = input;
|
|
87
83
|
const query = (0, gitlab_api_1.toQuery)(rest, []);
|
|
88
|
-
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${
|
|
84
|
+
return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/milestones/${milestone_id}/burndown_events`, { query });
|
|
89
85
|
}
|
|
90
86
|
default:
|
|
91
87
|
throw new Error(`Unknown action: ${input.action}`);
|
|
@@ -115,24 +111,21 @@ exports.milestonesToolRegistry = new Map([
|
|
|
115
111
|
});
|
|
116
112
|
}
|
|
117
113
|
case "update": {
|
|
118
|
-
const { action: _action, namespace: _namespace, milestone_id,
|
|
119
|
-
|
|
120
|
-
return gitlab_api_1.gitlab.put(`${entityType}/${encodedPath}/milestones/${milestoneIdentifier}`, {
|
|
114
|
+
const { action: _action, namespace: _namespace, milestone_id, ...body } = input;
|
|
115
|
+
return gitlab_api_1.gitlab.put(`${entityType}/${encodedPath}/milestones/${milestone_id}`, {
|
|
121
116
|
body,
|
|
122
117
|
contentType: "json",
|
|
123
118
|
});
|
|
124
119
|
}
|
|
125
120
|
case "delete": {
|
|
126
|
-
|
|
127
|
-
await gitlab_api_1.gitlab.delete(`${entityType}/${encodedPath}/milestones/${milestoneIdentifier}`);
|
|
121
|
+
await gitlab_api_1.gitlab.delete(`${entityType}/${encodedPath}/milestones/${input.milestone_id}`);
|
|
128
122
|
return { deleted: true };
|
|
129
123
|
}
|
|
130
124
|
case "promote": {
|
|
131
125
|
if (entityType !== "projects") {
|
|
132
126
|
throw new Error("Milestone promotion is only available for projects, not groups");
|
|
133
127
|
}
|
|
134
|
-
|
|
135
|
-
return gitlab_api_1.gitlab.post(`projects/${encodedPath}/milestones/${milestoneIdentifier}/promote`);
|
|
128
|
+
return gitlab_api_1.gitlab.post(`projects/${encodedPath}/milestones/${input.milestone_id}/promote`);
|
|
136
129
|
}
|
|
137
130
|
default:
|
|
138
131
|
throw new Error(`Unknown action: ${input.action}`);
|
|
@@ -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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"}
|
|
@@ -33,29 +33,25 @@ export declare const BrowseMilestonesSchema: z.ZodDiscriminatedUnion<[z.ZodObjec
|
|
|
33
33
|
}, z.core.$strip>, z.ZodObject<{
|
|
34
34
|
action: z.ZodLiteral<"get">;
|
|
35
35
|
namespace: z.ZodString;
|
|
36
|
-
milestone_id: z.
|
|
37
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
36
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
38
37
|
}, z.core.$strip>, z.ZodObject<{
|
|
39
38
|
per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
40
39
|
page: z.ZodOptional<z.ZodNumber>;
|
|
41
40
|
action: z.ZodLiteral<"issues">;
|
|
42
41
|
namespace: z.ZodString;
|
|
43
|
-
milestone_id: z.
|
|
44
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
42
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
45
43
|
}, z.core.$strip>, z.ZodObject<{
|
|
46
44
|
per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
47
45
|
page: z.ZodOptional<z.ZodNumber>;
|
|
48
46
|
action: z.ZodLiteral<"merge_requests">;
|
|
49
47
|
namespace: z.ZodString;
|
|
50
|
-
milestone_id: z.
|
|
51
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
48
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
52
49
|
}, z.core.$strip>, z.ZodObject<{
|
|
53
50
|
per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
54
51
|
page: z.ZodOptional<z.ZodNumber>;
|
|
55
52
|
action: z.ZodLiteral<"burndown">;
|
|
56
53
|
namespace: z.ZodString;
|
|
57
|
-
milestone_id: z.
|
|
58
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
54
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
59
55
|
}, z.core.$strip>], "action">;
|
|
60
56
|
export type BrowseMilestonesInput = z.infer<typeof BrowseMilestonesSchema>;
|
|
61
57
|
export type GitLabMilestones = z.infer<typeof GitLabMilestonesSchema>;
|
|
@@ -20,23 +20,7 @@ exports.GitLabMilestonesSchema = zod_1.z.object({
|
|
|
20
20
|
web_url: zod_1.z.string().optional(),
|
|
21
21
|
});
|
|
22
22
|
const namespaceField = zod_1.z.string().describe("Namespace path (group or project)");
|
|
23
|
-
const milestoneIdField = utils_1.requiredId
|
|
24
|
-
.optional()
|
|
25
|
-
.describe("Milestone ID (same as IID in GitLab URLs, e.g., '3' from /milestones/3)");
|
|
26
|
-
const milestoneIidField = zod_1.z
|
|
27
|
-
.string()
|
|
28
|
-
.min(1)
|
|
29
|
-
.optional()
|
|
30
|
-
.describe("Milestone IID from URL (e.g., '3' from /milestones/3). Alternative to milestone_id.");
|
|
31
|
-
const requireMilestoneIdentifier = (data, ctx) => {
|
|
32
|
-
if (data.milestone_id === undefined && data.iid === undefined) {
|
|
33
|
-
ctx.addIssue({
|
|
34
|
-
code: zod_1.z.ZodIssueCode.custom,
|
|
35
|
-
message: "Either 'milestone_id' or 'iid' must be provided",
|
|
36
|
-
path: ["milestone_id"],
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
};
|
|
23
|
+
const milestoneIdField = utils_1.requiredId.describe("The ID of a project or group milestone. Required for 'get', 'issues', 'merge_requests', 'burndown' action(s).");
|
|
40
24
|
const ListMilestonesSchema = zod_1.z.object({
|
|
41
25
|
action: zod_1.z.literal("list").describe("List milestones with optional filtering"),
|
|
42
26
|
namespace: namespaceField,
|
|
@@ -68,41 +52,30 @@ const GetMilestoneSchema = zod_1.z.object({
|
|
|
68
52
|
action: zod_1.z.literal("get").describe("Get a single milestone by ID"),
|
|
69
53
|
namespace: namespaceField,
|
|
70
54
|
milestone_id: milestoneIdField,
|
|
71
|
-
iid: milestoneIidField,
|
|
72
55
|
});
|
|
73
56
|
const MilestoneIssuesSchema = zod_1.z.object({
|
|
74
57
|
action: zod_1.z.literal("issues").describe("List issues assigned to a milestone"),
|
|
75
58
|
namespace: namespaceField,
|
|
76
59
|
milestone_id: milestoneIdField,
|
|
77
|
-
iid: milestoneIidField,
|
|
78
60
|
...(0, utils_1.paginationFields)(),
|
|
79
61
|
});
|
|
80
62
|
const MilestoneMergeRequestsSchema = zod_1.z.object({
|
|
81
63
|
action: zod_1.z.literal("merge_requests").describe("List merge requests assigned to a milestone"),
|
|
82
64
|
namespace: namespaceField,
|
|
83
65
|
milestone_id: milestoneIdField,
|
|
84
|
-
iid: milestoneIidField,
|
|
85
66
|
...(0, utils_1.paginationFields)(),
|
|
86
67
|
});
|
|
87
68
|
const MilestoneBurndownSchema = zod_1.z.object({
|
|
88
69
|
action: zod_1.z.literal("burndown").describe("Get burndown chart data for a milestone"),
|
|
89
70
|
namespace: namespaceField,
|
|
90
71
|
milestone_id: milestoneIdField,
|
|
91
|
-
iid: milestoneIidField,
|
|
92
72
|
...(0, utils_1.paginationFields)(),
|
|
93
73
|
});
|
|
94
|
-
|
|
74
|
+
exports.BrowseMilestonesSchema = zod_1.z.discriminatedUnion("action", [
|
|
95
75
|
ListMilestonesSchema,
|
|
96
76
|
GetMilestoneSchema,
|
|
97
77
|
MilestoneIssuesSchema,
|
|
98
78
|
MilestoneMergeRequestsSchema,
|
|
99
79
|
MilestoneBurndownSchema,
|
|
100
80
|
]);
|
|
101
|
-
exports.BrowseMilestonesSchema = BrowseMilestonesBaseSchema.superRefine((data, ctx) => {
|
|
102
|
-
const actionsRequiringMilestone = ["get", "issues", "merge_requests", "burndown"];
|
|
103
|
-
if (actionsRequiringMilestone.includes(data.action)) {
|
|
104
|
-
const dataWithIds = data;
|
|
105
|
-
requireMilestoneIdentifier(dataWithIds, ctx);
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
81
|
//# 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,oCAAyE;AAM5D,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;AAUH,MAAM,cAAc,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/milestones/schema-readonly.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,7 @@ export declare const ManageMilestoneSchema: z.ZodDiscriminatedUnion<[z.ZodObject
|
|
|
9
9
|
}, z.core.$strip>, z.ZodObject<{
|
|
10
10
|
action: z.ZodLiteral<"update">;
|
|
11
11
|
namespace: z.ZodString;
|
|
12
|
-
milestone_id: z.
|
|
13
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
12
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
14
13
|
title: z.ZodOptional<z.ZodString>;
|
|
15
14
|
description: z.ZodOptional<z.ZodString>;
|
|
16
15
|
due_date: z.ZodOptional<z.ZodString>;
|
|
@@ -22,12 +21,10 @@ export declare const ManageMilestoneSchema: z.ZodDiscriminatedUnion<[z.ZodObject
|
|
|
22
21
|
}, z.core.$strip>, z.ZodObject<{
|
|
23
22
|
action: z.ZodLiteral<"delete">;
|
|
24
23
|
namespace: z.ZodString;
|
|
25
|
-
milestone_id: z.
|
|
26
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
24
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
27
25
|
}, z.core.$strip>, z.ZodObject<{
|
|
28
26
|
action: z.ZodLiteral<"promote">;
|
|
29
27
|
namespace: z.ZodString;
|
|
30
|
-
milestone_id: z.
|
|
31
|
-
iid: z.ZodOptional<z.ZodString>;
|
|
28
|
+
milestone_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
32
29
|
}, z.core.$strip>], "action">;
|
|
33
30
|
export type ManageMilestoneInput = z.infer<typeof ManageMilestoneSchema>;
|
|
@@ -4,23 +4,7 @@ exports.ManageMilestoneSchema = void 0;
|
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const namespaceField = zod_1.z.string().describe("Namespace path (group or project)");
|
|
7
|
-
const milestoneIdField = utils_1.requiredId
|
|
8
|
-
.optional()
|
|
9
|
-
.describe("Milestone ID (same as IID in GitLab URLs, e.g., '3' from /milestones/3)");
|
|
10
|
-
const milestoneIidField = zod_1.z
|
|
11
|
-
.string()
|
|
12
|
-
.min(1)
|
|
13
|
-
.optional()
|
|
14
|
-
.describe("Milestone IID from URL (e.g., '3' from /milestones/3). Alternative to milestone_id.");
|
|
15
|
-
const requireMilestoneIdentifier = (data, ctx) => {
|
|
16
|
-
if (data.milestone_id === undefined && data.iid === undefined) {
|
|
17
|
-
ctx.addIssue({
|
|
18
|
-
code: zod_1.z.ZodIssueCode.custom,
|
|
19
|
-
message: "Either 'milestone_id' or 'iid' must be provided",
|
|
20
|
-
path: ["milestone_id"],
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
};
|
|
7
|
+
const milestoneIdField = utils_1.requiredId.describe("The ID of a project or group milestone. Required for 'update', 'delete', 'promote' action(s).");
|
|
24
8
|
const CreateMilestoneSchema = zod_1.z.object({
|
|
25
9
|
action: zod_1.z.literal("create"),
|
|
26
10
|
namespace: namespaceField,
|
|
@@ -33,7 +17,6 @@ const UpdateMilestoneSchema = zod_1.z.object({
|
|
|
33
17
|
action: zod_1.z.literal("update"),
|
|
34
18
|
namespace: namespaceField,
|
|
35
19
|
milestone_id: milestoneIdField,
|
|
36
|
-
iid: milestoneIidField,
|
|
37
20
|
title: zod_1.z.string().optional().describe("The new title of the milestone"),
|
|
38
21
|
description: zod_1.z.string().optional().describe("The new description of the milestone"),
|
|
39
22
|
due_date: zod_1.z.string().optional().describe("The due date of the milestone (YYYY-MM-DD)"),
|
|
@@ -49,25 +32,16 @@ const DeleteMilestoneSchema = zod_1.z.object({
|
|
|
49
32
|
action: zod_1.z.literal("delete"),
|
|
50
33
|
namespace: namespaceField,
|
|
51
34
|
milestone_id: milestoneIdField,
|
|
52
|
-
iid: milestoneIidField,
|
|
53
35
|
});
|
|
54
36
|
const PromoteMilestoneSchema = zod_1.z.object({
|
|
55
37
|
action: zod_1.z.literal("promote"),
|
|
56
38
|
namespace: namespaceField,
|
|
57
39
|
milestone_id: milestoneIdField,
|
|
58
|
-
iid: milestoneIidField,
|
|
59
40
|
});
|
|
60
|
-
|
|
41
|
+
exports.ManageMilestoneSchema = zod_1.z.discriminatedUnion("action", [
|
|
61
42
|
CreateMilestoneSchema,
|
|
62
43
|
UpdateMilestoneSchema,
|
|
63
44
|
DeleteMilestoneSchema,
|
|
64
45
|
PromoteMilestoneSchema,
|
|
65
46
|
]);
|
|
66
|
-
exports.ManageMilestoneSchema = ManageMilestoneBaseSchema.superRefine((data, ctx) => {
|
|
67
|
-
const actionsRequiringMilestone = ["update", "delete", "promote"];
|
|
68
|
-
if (actionsRequiringMilestone.includes(data.action)) {
|
|
69
|
-
const dataWithIds = data;
|
|
70
|
-
requireMilestoneIdentifier(dataWithIds, ctx);
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
47
|
//# 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;AAetC,MAAM,cAAc,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC;
|
|
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;AAOhF,MAAM,gBAAgB,GAAG,kBAAU,CAAC,QAAQ,CAC1C,+FAA+F,CAChG,CAAC;AAGF,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,gBAAgB;IAC9B,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,gBAAgB;CAC/B,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,gBAAgB;CAC/B,CAAC,CAAC;AAGU,QAAA,qBAAqB,GAAG,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IAClE,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;CACvB,CAAC,CAAC"}
|
|
Binary file
|