@bun913/mcp-testrail 0.11.4

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.
Files changed (129) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +101 -0
  3. package/dist/client/api/baseClient.d.ts +39 -0
  4. package/dist/client/api/baseClient.js +103 -0
  5. package/dist/client/api/baseClient.js.map +1 -0
  6. package/dist/client/api/cases.d.ts +102 -0
  7. package/dist/client/api/cases.js +200 -0
  8. package/dist/client/api/cases.js.map +1 -0
  9. package/dist/client/api/index.d.ts +39 -0
  10. package/dist/client/api/index.js +50 -0
  11. package/dist/client/api/index.js.map +1 -0
  12. package/dist/client/api/milestones.d.ts +12 -0
  13. package/dist/client/api/milestones.js +22 -0
  14. package/dist/client/api/milestones.js.map +1 -0
  15. package/dist/client/api/plans.d.ts +12 -0
  16. package/dist/client/api/plans.js +20 -0
  17. package/dist/client/api/plans.js.map +1 -0
  18. package/dist/client/api/projects.d.ts +12 -0
  19. package/dist/client/api/projects.js +31 -0
  20. package/dist/client/api/projects.js.map +1 -0
  21. package/dist/client/api/results.d.ts +56 -0
  22. package/dist/client/api/results.js +125 -0
  23. package/dist/client/api/results.js.map +1 -0
  24. package/dist/client/api/runs.d.ts +40 -0
  25. package/dist/client/api/runs.js +79 -0
  26. package/dist/client/api/runs.js.map +1 -0
  27. package/dist/client/api/sections.d.ts +40 -0
  28. package/dist/client/api/sections.js +89 -0
  29. package/dist/client/api/sections.js.map +1 -0
  30. package/dist/client/api/sharedSteps.d.ts +11 -0
  31. package/dist/client/api/sharedSteps.js +20 -0
  32. package/dist/client/api/sharedSteps.js.map +1 -0
  33. package/dist/client/api/suites.d.ts +36 -0
  34. package/dist/client/api/suites.js +63 -0
  35. package/dist/client/api/suites.js.map +1 -0
  36. package/dist/client/api/tests.d.ts +32 -0
  37. package/dist/client/api/tests.js +47 -0
  38. package/dist/client/api/tests.js.map +1 -0
  39. package/dist/client/api/utils.d.ts +7 -0
  40. package/dist/client/api/utils.js +24 -0
  41. package/dist/client/api/utils.js.map +1 -0
  42. package/dist/index.d.ts +1 -0
  43. package/dist/index.js +5 -0
  44. package/dist/index.js.map +1 -0
  45. package/dist/server/api/cases.d.ts +8 -0
  46. package/dist/server/api/cases.js +431 -0
  47. package/dist/server/api/cases.js.map +1 -0
  48. package/dist/server/api/index.d.ts +18 -0
  49. package/dist/server/api/index.js +40 -0
  50. package/dist/server/api/index.js.map +1 -0
  51. package/dist/server/api/milestones.d.ts +8 -0
  52. package/dist/server/api/milestones.js +29 -0
  53. package/dist/server/api/milestones.js.map +1 -0
  54. package/dist/server/api/plans.d.ts +8 -0
  55. package/dist/server/api/plans.js +29 -0
  56. package/dist/server/api/plans.js.map +1 -0
  57. package/dist/server/api/projects.d.ts +8 -0
  58. package/dist/server/api/projects.js +51 -0
  59. package/dist/server/api/projects.js.map +1 -0
  60. package/dist/server/api/results.d.ts +8 -0
  61. package/dist/server/api/results.js +164 -0
  62. package/dist/server/api/results.js.map +1 -0
  63. package/dist/server/api/runs.d.ts +8 -0
  64. package/dist/server/api/runs.js +113 -0
  65. package/dist/server/api/runs.js.map +1 -0
  66. package/dist/server/api/sections.d.ts +8 -0
  67. package/dist/server/api/sections.js +138 -0
  68. package/dist/server/api/sections.js.map +1 -0
  69. package/dist/server/api/sharedSteps.d.ts +8 -0
  70. package/dist/server/api/sharedSteps.js +26 -0
  71. package/dist/server/api/sharedSteps.js.map +1 -0
  72. package/dist/server/api/suites.d.ts +8 -0
  73. package/dist/server/api/suites.js +111 -0
  74. package/dist/server/api/suites.js.map +1 -0
  75. package/dist/server/api/tests.d.ts +8 -0
  76. package/dist/server/api/tests.js +68 -0
  77. package/dist/server/api/tests.js.map +1 -0
  78. package/dist/server/api/utils.d.ts +7 -0
  79. package/dist/server/api/utils.js +25 -0
  80. package/dist/server/api/utils.js.map +1 -0
  81. package/dist/server/server.d.ts +2 -0
  82. package/dist/server/server.js +70 -0
  83. package/dist/server/server.js.map +1 -0
  84. package/dist/server/templates.d.ts +8 -0
  85. package/dist/server/templates.js +43 -0
  86. package/dist/server/templates.js.map +1 -0
  87. package/dist/shared/schemas/cases.d.ts +668 -0
  88. package/dist/shared/schemas/cases.js +178 -0
  89. package/dist/shared/schemas/cases.js.map +1 -0
  90. package/dist/shared/schemas/common.d.ts +117 -0
  91. package/dist/shared/schemas/common.js +50 -0
  92. package/dist/shared/schemas/common.js.map +1 -0
  93. package/dist/shared/schemas/index.d.ts +10 -0
  94. package/dist/shared/schemas/index.js +23 -0
  95. package/dist/shared/schemas/index.js.map +1 -0
  96. package/dist/shared/schemas/milestones.d.ts +59 -0
  97. package/dist/shared/schemas/milestones.js +26 -0
  98. package/dist/shared/schemas/milestones.js.map +1 -0
  99. package/dist/shared/schemas/plans.d.ts +416 -0
  100. package/dist/shared/schemas/plans.js +43 -0
  101. package/dist/shared/schemas/plans.js.map +1 -0
  102. package/dist/shared/schemas/projects.d.ts +135 -0
  103. package/dist/shared/schemas/projects.js +61 -0
  104. package/dist/shared/schemas/projects.js.map +1 -0
  105. package/dist/shared/schemas/results.d.ts +407 -0
  106. package/dist/shared/schemas/results.js +178 -0
  107. package/dist/shared/schemas/results.js.map +1 -0
  108. package/dist/shared/schemas/runs.d.ts +267 -0
  109. package/dist/shared/schemas/runs.js +133 -0
  110. package/dist/shared/schemas/runs.js.map +1 -0
  111. package/dist/shared/schemas/sections.d.ts +136 -0
  112. package/dist/shared/schemas/sections.js +68 -0
  113. package/dist/shared/schemas/sections.js.map +1 -0
  114. package/dist/shared/schemas/sharedSteps.d.ts +135 -0
  115. package/dist/shared/schemas/sharedSteps.js +65 -0
  116. package/dist/shared/schemas/sharedSteps.js.map +1 -0
  117. package/dist/shared/schemas/suites.d.ts +120 -0
  118. package/dist/shared/schemas/suites.js +44 -0
  119. package/dist/shared/schemas/suites.js.map +1 -0
  120. package/dist/shared/schemas/tests.d.ts +87 -0
  121. package/dist/shared/schemas/tests.js +52 -0
  122. package/dist/shared/schemas/tests.js.map +1 -0
  123. package/dist/sse.d.ts +1 -0
  124. package/dist/sse.js +5 -0
  125. package/dist/sse.js.map +1 -0
  126. package/dist/stdio.d.ts +1 -0
  127. package/dist/stdio.js +52 -0
  128. package/dist/stdio.js.map +1 -0
  129. package/package.json +48 -0
@@ -0,0 +1,416 @@
1
+ import { z } from "zod";
2
+ export declare const getPlansSchema: {
3
+ projectId: z.ZodNumber;
4
+ };
5
+ export declare const GetPlansInput: z.ZodObject<{
6
+ projectId: z.ZodNumber;
7
+ }, "strip", z.ZodTypeAny, {
8
+ projectId: number;
9
+ }, {
10
+ projectId: number;
11
+ }>;
12
+ export type GetPlansInputType = z.infer<typeof GetPlansInput>;
13
+ /**
14
+ * TestRail API Response for Plan Entry
15
+ */
16
+ export declare const TestRailPlanEntrySchema: z.ZodObject<{
17
+ id: z.ZodString;
18
+ suite_id: z.ZodNumber;
19
+ name: z.ZodString;
20
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
21
+ include_all: z.ZodBoolean;
22
+ runs: z.ZodArray<z.ZodObject<{
23
+ id: z.ZodNumber;
24
+ suite_id: z.ZodNumber;
25
+ name: z.ZodString;
26
+ description: z.ZodString;
27
+ milestone_id: z.ZodNullable<z.ZodNumber>;
28
+ assignedto_id: z.ZodNullable<z.ZodNumber>;
29
+ include_all: z.ZodBoolean;
30
+ is_completed: z.ZodBoolean;
31
+ completed_on: z.ZodNullable<z.ZodNumber>;
32
+ config: z.ZodNullable<z.ZodString>;
33
+ config_ids: z.ZodArray<z.ZodNumber, "many">;
34
+ passed_count: z.ZodNumber;
35
+ blocked_count: z.ZodNumber;
36
+ untested_count: z.ZodNumber;
37
+ retest_count: z.ZodNumber;
38
+ failed_count: z.ZodNumber;
39
+ custom_status_count: z.ZodRecord<z.ZodString, z.ZodNumber>;
40
+ created_on: z.ZodNumber;
41
+ created_by: z.ZodNumber;
42
+ plan_id: z.ZodNumber;
43
+ url: z.ZodString;
44
+ refs: z.ZodString;
45
+ }, "strip", z.ZodTypeAny, {
46
+ url: string;
47
+ name: string;
48
+ is_completed: boolean;
49
+ id: number;
50
+ completed_on: number | null;
51
+ description: string;
52
+ suite_id: number;
53
+ refs: string;
54
+ created_by: number;
55
+ created_on: number;
56
+ milestone_id: number | null;
57
+ include_all: boolean;
58
+ assignedto_id: number | null;
59
+ config: string | null;
60
+ config_ids: number[];
61
+ passed_count: number;
62
+ blocked_count: number;
63
+ untested_count: number;
64
+ retest_count: number;
65
+ failed_count: number;
66
+ custom_status_count: Record<string, number>;
67
+ plan_id: number;
68
+ }, {
69
+ url: string;
70
+ name: string;
71
+ is_completed: boolean;
72
+ id: number;
73
+ completed_on: number | null;
74
+ description: string;
75
+ suite_id: number;
76
+ refs: string;
77
+ created_by: number;
78
+ created_on: number;
79
+ milestone_id: number | null;
80
+ include_all: boolean;
81
+ assignedto_id: number | null;
82
+ config: string | null;
83
+ config_ids: number[];
84
+ passed_count: number;
85
+ blocked_count: number;
86
+ untested_count: number;
87
+ retest_count: number;
88
+ failed_count: number;
89
+ custom_status_count: Record<string, number>;
90
+ plan_id: number;
91
+ }>, "many">;
92
+ refs: z.ZodOptional<z.ZodString>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ name: string;
95
+ id: string;
96
+ suite_id: number;
97
+ include_all: boolean;
98
+ runs: {
99
+ url: string;
100
+ name: string;
101
+ is_completed: boolean;
102
+ id: number;
103
+ completed_on: number | null;
104
+ description: string;
105
+ suite_id: number;
106
+ refs: string;
107
+ created_by: number;
108
+ created_on: number;
109
+ milestone_id: number | null;
110
+ include_all: boolean;
111
+ assignedto_id: number | null;
112
+ config: string | null;
113
+ config_ids: number[];
114
+ passed_count: number;
115
+ blocked_count: number;
116
+ untested_count: number;
117
+ retest_count: number;
118
+ failed_count: number;
119
+ custom_status_count: Record<string, number>;
120
+ plan_id: number;
121
+ }[];
122
+ description?: string | null | undefined;
123
+ refs?: string | undefined;
124
+ }, {
125
+ name: string;
126
+ id: string;
127
+ suite_id: number;
128
+ include_all: boolean;
129
+ runs: {
130
+ url: string;
131
+ name: string;
132
+ is_completed: boolean;
133
+ id: number;
134
+ completed_on: number | null;
135
+ description: string;
136
+ suite_id: number;
137
+ refs: string;
138
+ created_by: number;
139
+ created_on: number;
140
+ milestone_id: number | null;
141
+ include_all: boolean;
142
+ assignedto_id: number | null;
143
+ config: string | null;
144
+ config_ids: number[];
145
+ passed_count: number;
146
+ blocked_count: number;
147
+ untested_count: number;
148
+ retest_count: number;
149
+ failed_count: number;
150
+ custom_status_count: Record<string, number>;
151
+ plan_id: number;
152
+ }[];
153
+ description?: string | null | undefined;
154
+ refs?: string | undefined;
155
+ }>;
156
+ export type TestRailPlanEntry = z.infer<typeof TestRailPlanEntrySchema>;
157
+ /**
158
+ * TestRail API Response for Plan
159
+ */
160
+ export declare const TestRailPlanSchema: z.ZodObject<{
161
+ id: z.ZodNumber;
162
+ name: z.ZodString;
163
+ description: z.ZodOptional<z.ZodString>;
164
+ milestone_id: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
165
+ assignedto_id: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
166
+ project_id: z.ZodNumber;
167
+ created_on: z.ZodNumber;
168
+ created_by: z.ZodNumber;
169
+ completed_on: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
170
+ is_completed: z.ZodBoolean;
171
+ passed_count: z.ZodNumber;
172
+ blocked_count: z.ZodNumber;
173
+ untested_count: z.ZodNumber;
174
+ retest_count: z.ZodNumber;
175
+ failed_count: z.ZodNumber;
176
+ entries: z.ZodArray<z.ZodObject<{
177
+ id: z.ZodString;
178
+ suite_id: z.ZodNumber;
179
+ name: z.ZodString;
180
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
181
+ include_all: z.ZodBoolean;
182
+ runs: z.ZodArray<z.ZodObject<{
183
+ id: z.ZodNumber;
184
+ suite_id: z.ZodNumber;
185
+ name: z.ZodString;
186
+ description: z.ZodString;
187
+ milestone_id: z.ZodNullable<z.ZodNumber>;
188
+ assignedto_id: z.ZodNullable<z.ZodNumber>;
189
+ include_all: z.ZodBoolean;
190
+ is_completed: z.ZodBoolean;
191
+ completed_on: z.ZodNullable<z.ZodNumber>;
192
+ config: z.ZodNullable<z.ZodString>;
193
+ config_ids: z.ZodArray<z.ZodNumber, "many">;
194
+ passed_count: z.ZodNumber;
195
+ blocked_count: z.ZodNumber;
196
+ untested_count: z.ZodNumber;
197
+ retest_count: z.ZodNumber;
198
+ failed_count: z.ZodNumber;
199
+ custom_status_count: z.ZodRecord<z.ZodString, z.ZodNumber>;
200
+ created_on: z.ZodNumber;
201
+ created_by: z.ZodNumber;
202
+ plan_id: z.ZodNumber;
203
+ url: z.ZodString;
204
+ refs: z.ZodString;
205
+ }, "strip", z.ZodTypeAny, {
206
+ url: string;
207
+ name: string;
208
+ is_completed: boolean;
209
+ id: number;
210
+ completed_on: number | null;
211
+ description: string;
212
+ suite_id: number;
213
+ refs: string;
214
+ created_by: number;
215
+ created_on: number;
216
+ milestone_id: number | null;
217
+ include_all: boolean;
218
+ assignedto_id: number | null;
219
+ config: string | null;
220
+ config_ids: number[];
221
+ passed_count: number;
222
+ blocked_count: number;
223
+ untested_count: number;
224
+ retest_count: number;
225
+ failed_count: number;
226
+ custom_status_count: Record<string, number>;
227
+ plan_id: number;
228
+ }, {
229
+ url: string;
230
+ name: string;
231
+ is_completed: boolean;
232
+ id: number;
233
+ completed_on: number | null;
234
+ description: string;
235
+ suite_id: number;
236
+ refs: string;
237
+ created_by: number;
238
+ created_on: number;
239
+ milestone_id: number | null;
240
+ include_all: boolean;
241
+ assignedto_id: number | null;
242
+ config: string | null;
243
+ config_ids: number[];
244
+ passed_count: number;
245
+ blocked_count: number;
246
+ untested_count: number;
247
+ retest_count: number;
248
+ failed_count: number;
249
+ custom_status_count: Record<string, number>;
250
+ plan_id: number;
251
+ }>, "many">;
252
+ refs: z.ZodOptional<z.ZodString>;
253
+ }, "strip", z.ZodTypeAny, {
254
+ name: string;
255
+ id: string;
256
+ suite_id: number;
257
+ include_all: boolean;
258
+ runs: {
259
+ url: string;
260
+ name: string;
261
+ is_completed: boolean;
262
+ id: number;
263
+ completed_on: number | null;
264
+ description: string;
265
+ suite_id: number;
266
+ refs: string;
267
+ created_by: number;
268
+ created_on: number;
269
+ milestone_id: number | null;
270
+ include_all: boolean;
271
+ assignedto_id: number | null;
272
+ config: string | null;
273
+ config_ids: number[];
274
+ passed_count: number;
275
+ blocked_count: number;
276
+ untested_count: number;
277
+ retest_count: number;
278
+ failed_count: number;
279
+ custom_status_count: Record<string, number>;
280
+ plan_id: number;
281
+ }[];
282
+ description?: string | null | undefined;
283
+ refs?: string | undefined;
284
+ }, {
285
+ name: string;
286
+ id: string;
287
+ suite_id: number;
288
+ include_all: boolean;
289
+ runs: {
290
+ url: string;
291
+ name: string;
292
+ is_completed: boolean;
293
+ id: number;
294
+ completed_on: number | null;
295
+ description: string;
296
+ suite_id: number;
297
+ refs: string;
298
+ created_by: number;
299
+ created_on: number;
300
+ milestone_id: number | null;
301
+ include_all: boolean;
302
+ assignedto_id: number | null;
303
+ config: string | null;
304
+ config_ids: number[];
305
+ passed_count: number;
306
+ blocked_count: number;
307
+ untested_count: number;
308
+ retest_count: number;
309
+ failed_count: number;
310
+ custom_status_count: Record<string, number>;
311
+ plan_id: number;
312
+ }[];
313
+ description?: string | null | undefined;
314
+ refs?: string | undefined;
315
+ }>, "many">;
316
+ url: z.ZodString;
317
+ }, "strip", z.ZodTypeAny, {
318
+ url: string;
319
+ entries: {
320
+ name: string;
321
+ id: string;
322
+ suite_id: number;
323
+ include_all: boolean;
324
+ runs: {
325
+ url: string;
326
+ name: string;
327
+ is_completed: boolean;
328
+ id: number;
329
+ completed_on: number | null;
330
+ description: string;
331
+ suite_id: number;
332
+ refs: string;
333
+ created_by: number;
334
+ created_on: number;
335
+ milestone_id: number | null;
336
+ include_all: boolean;
337
+ assignedto_id: number | null;
338
+ config: string | null;
339
+ config_ids: number[];
340
+ passed_count: number;
341
+ blocked_count: number;
342
+ untested_count: number;
343
+ retest_count: number;
344
+ failed_count: number;
345
+ custom_status_count: Record<string, number>;
346
+ plan_id: number;
347
+ }[];
348
+ description?: string | null | undefined;
349
+ refs?: string | undefined;
350
+ }[];
351
+ name: string;
352
+ is_completed: boolean;
353
+ id: number;
354
+ project_id: number;
355
+ created_by: number;
356
+ created_on: number;
357
+ passed_count: number;
358
+ blocked_count: number;
359
+ untested_count: number;
360
+ retest_count: number;
361
+ failed_count: number;
362
+ completed_on?: number | null | undefined;
363
+ description?: string | undefined;
364
+ milestone_id?: number | null | undefined;
365
+ assignedto_id?: number | null | undefined;
366
+ }, {
367
+ url: string;
368
+ entries: {
369
+ name: string;
370
+ id: string;
371
+ suite_id: number;
372
+ include_all: boolean;
373
+ runs: {
374
+ url: string;
375
+ name: string;
376
+ is_completed: boolean;
377
+ id: number;
378
+ completed_on: number | null;
379
+ description: string;
380
+ suite_id: number;
381
+ refs: string;
382
+ created_by: number;
383
+ created_on: number;
384
+ milestone_id: number | null;
385
+ include_all: boolean;
386
+ assignedto_id: number | null;
387
+ config: string | null;
388
+ config_ids: number[];
389
+ passed_count: number;
390
+ blocked_count: number;
391
+ untested_count: number;
392
+ retest_count: number;
393
+ failed_count: number;
394
+ custom_status_count: Record<string, number>;
395
+ plan_id: number;
396
+ }[];
397
+ description?: string | null | undefined;
398
+ refs?: string | undefined;
399
+ }[];
400
+ name: string;
401
+ is_completed: boolean;
402
+ id: number;
403
+ project_id: number;
404
+ created_by: number;
405
+ created_on: number;
406
+ passed_count: number;
407
+ blocked_count: number;
408
+ untested_count: number;
409
+ retest_count: number;
410
+ failed_count: number;
411
+ completed_on?: number | null | undefined;
412
+ description?: string | undefined;
413
+ milestone_id?: number | null | undefined;
414
+ assignedto_id?: number | null | undefined;
415
+ }>;
416
+ export type TestRailPlan = z.infer<typeof TestRailPlanSchema>;
@@ -0,0 +1,43 @@
1
+ import { z } from "zod";
2
+ import { TestRailRunSchema } from "./runs.js";
3
+ // Schema for retrieving all test plans for a project
4
+ export const getPlansSchema = {
5
+ projectId: z.number().describe("TestRail Project ID"),
6
+ };
7
+ // Create Zod objects from each schema
8
+ export const GetPlansInput = z.object(getPlansSchema);
9
+ /**
10
+ * TestRail API Response for Plan Entry
11
+ */
12
+ export const TestRailPlanEntrySchema = z.object({
13
+ id: z.string(),
14
+ suite_id: z.number(),
15
+ name: z.string(),
16
+ description: z.string().nullable().optional(),
17
+ include_all: z.boolean(),
18
+ runs: z.array(TestRailRunSchema),
19
+ refs: z.string().optional(),
20
+ });
21
+ /**
22
+ * TestRail API Response for Plan
23
+ */
24
+ export const TestRailPlanSchema = z.object({
25
+ id: z.number(),
26
+ name: z.string(),
27
+ description: z.string().optional(),
28
+ milestone_id: z.number().nullable().optional(),
29
+ assignedto_id: z.number().nullable().optional(),
30
+ project_id: z.number(),
31
+ created_on: z.number(),
32
+ created_by: z.number(),
33
+ completed_on: z.number().nullable().optional(),
34
+ is_completed: z.boolean(),
35
+ passed_count: z.number(),
36
+ blocked_count: z.number(),
37
+ untested_count: z.number(),
38
+ retest_count: z.number(),
39
+ failed_count: z.number(),
40
+ entries: z.array(TestRailPlanEntrySchema),
41
+ url: z.string(),
42
+ });
43
+ //# sourceMappingURL=plans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../../src/shared/schemas/plans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CACrD,CAAC;AAEF,sCAAsC;AACtC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAKtD;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3B,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACzC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CACf,CAAC,CAAC"}
@@ -0,0 +1,135 @@
1
+ import { z } from "zod";
2
+ export declare const getProjectsSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
3
+ export declare const getProjectSchema: z.ZodObject<{
4
+ projectId: z.ZodNumber;
5
+ }, "strip", z.ZodTypeAny, {
6
+ projectId: number;
7
+ }, {
8
+ projectId: number;
9
+ }>;
10
+ export declare const addProjectSchema: z.ZodObject<{
11
+ name: z.ZodString;
12
+ announcement: z.ZodOptional<z.ZodString>;
13
+ show_announcement: z.ZodOptional<z.ZodBoolean>;
14
+ suite_mode: z.ZodOptional<z.ZodNumber>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ name: string;
17
+ announcement?: string | undefined;
18
+ show_announcement?: boolean | undefined;
19
+ suite_mode?: number | undefined;
20
+ }, {
21
+ name: string;
22
+ announcement?: string | undefined;
23
+ show_announcement?: boolean | undefined;
24
+ suite_mode?: number | undefined;
25
+ }>;
26
+ export declare const updateProjectSchema: z.ZodObject<{
27
+ projectId: z.ZodNumber;
28
+ name: z.ZodOptional<z.ZodString>;
29
+ announcement: z.ZodOptional<z.ZodString>;
30
+ show_announcement: z.ZodOptional<z.ZodBoolean>;
31
+ is_completed: z.ZodOptional<z.ZodBoolean>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ projectId: number;
34
+ name?: string | undefined;
35
+ announcement?: string | undefined;
36
+ show_announcement?: boolean | undefined;
37
+ is_completed?: boolean | undefined;
38
+ }, {
39
+ projectId: number;
40
+ name?: string | undefined;
41
+ announcement?: string | undefined;
42
+ show_announcement?: boolean | undefined;
43
+ is_completed?: boolean | undefined;
44
+ }>;
45
+ export declare const deleteProjectSchema: z.ZodObject<{
46
+ projectId: z.ZodNumber;
47
+ }, "strip", z.ZodTypeAny, {
48
+ projectId: number;
49
+ }, {
50
+ projectId: number;
51
+ }>;
52
+ export declare const getProjectsInputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
53
+ export declare const getProjectInputSchema: z.ZodObject<{
54
+ projectId: z.ZodNumber;
55
+ }, "strip", z.ZodTypeAny, {
56
+ projectId: number;
57
+ }, {
58
+ projectId: number;
59
+ }>;
60
+ export declare const addProjectInputSchema: z.ZodObject<{
61
+ name: z.ZodString;
62
+ announcement: z.ZodOptional<z.ZodString>;
63
+ show_announcement: z.ZodOptional<z.ZodBoolean>;
64
+ suite_mode: z.ZodOptional<z.ZodNumber>;
65
+ }, "strip", z.ZodTypeAny, {
66
+ name: string;
67
+ announcement?: string | undefined;
68
+ show_announcement?: boolean | undefined;
69
+ suite_mode?: number | undefined;
70
+ }, {
71
+ name: string;
72
+ announcement?: string | undefined;
73
+ show_announcement?: boolean | undefined;
74
+ suite_mode?: number | undefined;
75
+ }>;
76
+ export declare const updateProjectInputSchema: z.ZodObject<{
77
+ projectId: z.ZodNumber;
78
+ name: z.ZodOptional<z.ZodString>;
79
+ announcement: z.ZodOptional<z.ZodString>;
80
+ show_announcement: z.ZodOptional<z.ZodBoolean>;
81
+ is_completed: z.ZodOptional<z.ZodBoolean>;
82
+ }, "strip", z.ZodTypeAny, {
83
+ projectId: number;
84
+ name?: string | undefined;
85
+ announcement?: string | undefined;
86
+ show_announcement?: boolean | undefined;
87
+ is_completed?: boolean | undefined;
88
+ }, {
89
+ projectId: number;
90
+ name?: string | undefined;
91
+ announcement?: string | undefined;
92
+ show_announcement?: boolean | undefined;
93
+ is_completed?: boolean | undefined;
94
+ }>;
95
+ export declare const deleteProjectInputSchema: z.ZodObject<{
96
+ projectId: z.ZodNumber;
97
+ }, "strip", z.ZodTypeAny, {
98
+ projectId: number;
99
+ }, {
100
+ projectId: number;
101
+ }>;
102
+ export type GetProjectsInput = z.infer<typeof getProjectsInputSchema>;
103
+ export type GetProjectInput = z.infer<typeof getProjectInputSchema>;
104
+ export type AddProjectInput = z.infer<typeof addProjectInputSchema>;
105
+ export type UpdateProjectInput = z.infer<typeof updateProjectInputSchema>;
106
+ export type DeleteProjectInput = z.infer<typeof deleteProjectInputSchema>;
107
+ export declare const TestRailProjectSchema: z.ZodObject<{
108
+ id: z.ZodNumber;
109
+ name: z.ZodString;
110
+ announcement: z.ZodNullable<z.ZodString>;
111
+ show_announcement: z.ZodBoolean;
112
+ is_completed: z.ZodBoolean;
113
+ completed_on: z.ZodNullable<z.ZodNumber>;
114
+ url: z.ZodString;
115
+ suite_mode: z.ZodNumber;
116
+ }, "strip", z.ZodTypeAny, {
117
+ url: string;
118
+ name: string;
119
+ announcement: string | null;
120
+ show_announcement: boolean;
121
+ suite_mode: number;
122
+ is_completed: boolean;
123
+ id: number;
124
+ completed_on: number | null;
125
+ }, {
126
+ url: string;
127
+ name: string;
128
+ announcement: string | null;
129
+ show_announcement: boolean;
130
+ suite_mode: number;
131
+ is_completed: boolean;
132
+ id: number;
133
+ completed_on: number | null;
134
+ }>;
135
+ export type TestRailProject = z.infer<typeof TestRailProjectSchema>;
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ // Schema for retrieving all projects
3
+ export const getProjectsSchema = z.object({});
4
+ // Schema for retrieving a specific project
5
+ export const getProjectSchema = z.object({
6
+ projectId: z.number().describe("TestRail Project ID"),
7
+ });
8
+ // Schema for adding a project
9
+ export const addProjectSchema = z.object({
10
+ name: z.string().describe("Project name (required)"),
11
+ announcement: z
12
+ .string()
13
+ .optional()
14
+ .describe("Project description/announcement"),
15
+ show_announcement: z
16
+ .boolean()
17
+ .optional()
18
+ .describe("Show announcement on project overview page"),
19
+ suite_mode: z
20
+ .number()
21
+ .min(1)
22
+ .max(3)
23
+ .optional()
24
+ .describe("Suite mode: 1 for single suite, 2 for single suite with baselines, 3 for multiple suites"),
25
+ });
26
+ // Schema for updating a project
27
+ export const updateProjectSchema = z.object({
28
+ projectId: z.number().describe("TestRail Project ID"),
29
+ name: z.string().optional().describe("Project name"),
30
+ announcement: z
31
+ .string()
32
+ .optional()
33
+ .describe("Project description/announcement"),
34
+ show_announcement: z
35
+ .boolean()
36
+ .optional()
37
+ .describe("Show announcement on project overview page"),
38
+ is_completed: z.boolean().optional().describe("Mark project as completed"),
39
+ });
40
+ // Schema for deleting a project
41
+ export const deleteProjectSchema = z.object({
42
+ projectId: z.number().describe("TestRail Project ID"),
43
+ });
44
+ // Create Zod objects from each schema
45
+ export const getProjectsInputSchema = getProjectsSchema;
46
+ export const getProjectInputSchema = getProjectSchema;
47
+ export const addProjectInputSchema = addProjectSchema;
48
+ export const updateProjectInputSchema = updateProjectSchema;
49
+ export const deleteProjectInputSchema = deleteProjectSchema;
50
+ // Response schema definitions migrated from types.ts
51
+ export const TestRailProjectSchema = z.object({
52
+ id: z.number(),
53
+ name: z.string(),
54
+ announcement: z.string().nullable(),
55
+ show_announcement: z.boolean(),
56
+ is_completed: z.boolean(),
57
+ completed_on: z.number().nullable(),
58
+ url: z.string(),
59
+ suite_mode: z.number(),
60
+ });
61
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/shared/schemas/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,qCAAqC;AACrC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE9C,2CAA2C;AAC3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CACrD,CAAC,CAAC;AAEH,8BAA8B;AAC9B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACpD,YAAY,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC9C,iBAAiB,EAAE,CAAC;SAClB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,4CAA4C,CAAC;IACxD,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACR,0FAA0F,CAC1F;CACF,CAAC,CAAC;AAEH,gCAAgC;AAChC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IACpD,YAAY,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC9C,iBAAiB,EAAE,CAAC;SAClB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,4CAA4C,CAAC;IACxD,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CAC1E,CAAC,CAAC;AAEH,gCAAgC;AAChC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CACrD,CAAC,CAAC;AAEH,sCAAsC;AACtC,MAAM,CAAC,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;AACxD,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AAC5D,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AAS5D,qDAAqD;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC"}