@deepintel-ltd/farmpro-contracts 1.5.8 → 1.5.9

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 (53) hide show
  1. package/dist/index.js +50 -92
  2. package/dist/routes/admin.routes.js +13 -16
  3. package/dist/routes/agent-workflows.routes.js +81 -84
  4. package/dist/routes/agents.routes.js +29 -32
  5. package/dist/routes/analytics.routes.js +11 -14
  6. package/dist/routes/auth.routes.js +55 -58
  7. package/dist/routes/categories.routes.js +23 -26
  8. package/dist/routes/documents.routes.js +67 -70
  9. package/dist/routes/equipment.routes.js +55 -58
  10. package/dist/routes/farms.routes.js +32 -35
  11. package/dist/routes/field-monitoring.routes.js +70 -73
  12. package/dist/routes/field-observations.routes.js +41 -44
  13. package/dist/routes/fields.routes.js +44 -47
  14. package/dist/routes/finance.routes.js +121 -124
  15. package/dist/routes/harvest.routes.js +46 -49
  16. package/dist/routes/health.routes.js +6 -9
  17. package/dist/routes/index.js +51 -54
  18. package/dist/routes/input-usage.routes.js +14 -17
  19. package/dist/routes/inventory.routes.js +57 -60
  20. package/dist/routes/seasonal-plans.routes.js +14 -17
  21. package/dist/routes/soil-tests.routes.js +45 -48
  22. package/dist/routes/suppliers.routes.js +70 -73
  23. package/dist/routes/tasks.routes.js +65 -68
  24. package/dist/routes/team.routes.js +57 -60
  25. package/dist/routes/users.routes.js +13 -16
  26. package/dist/routes/weather.routes.js +10 -13
  27. package/dist/schemas/admin.schemas.js +43 -46
  28. package/dist/schemas/agent-workflows.schemas.js +34 -37
  29. package/dist/schemas/agents.schemas.js +46 -49
  30. package/dist/schemas/analytics.schemas.js +51 -54
  31. package/dist/schemas/auth.schemas.js +96 -99
  32. package/dist/schemas/categories.schemas.js +27 -30
  33. package/dist/schemas/common.schemas.js +89 -95
  34. package/dist/schemas/documents.schemas.js +59 -62
  35. package/dist/schemas/equipment.schemas.js +86 -89
  36. package/dist/schemas/farms.schemas.js +40 -43
  37. package/dist/schemas/field-monitoring.schemas.js +207 -210
  38. package/dist/schemas/field-observations.schemas.js +93 -96
  39. package/dist/schemas/fields.schemas.js +82 -85
  40. package/dist/schemas/finance.schemas.js +134 -137
  41. package/dist/schemas/harvest.schemas.js +46 -49
  42. package/dist/schemas/health.schemas.js +14 -17
  43. package/dist/schemas/input-usage.schemas.js +21 -24
  44. package/dist/schemas/inventory.schemas.js +58 -61
  45. package/dist/schemas/recommendations.schemas.js +22 -25
  46. package/dist/schemas/seasonal-plans.schemas.js +21 -24
  47. package/dist/schemas/soil-tests.schemas.js +70 -73
  48. package/dist/schemas/suppliers.schemas.js +90 -93
  49. package/dist/schemas/tasks.schemas.js +93 -96
  50. package/dist/schemas/team.schemas.js +35 -38
  51. package/dist/schemas/users.schemas.js +19 -22
  52. package/dist/schemas/weather.schemas.js +32 -35
  53. package/package.json +9 -1
package/dist/index.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * FarmPro API Contracts
4
3
  *
@@ -6,103 +5,62 @@
6
5
  *
7
6
  * @module @farmpro/contracts
8
7
  */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- var desc = Object.getOwnPropertyDescriptor(m, k);
12
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
- desc = { enumerable: true, get: function() { return m[k]; } };
14
- }
15
- Object.defineProperty(o, k2, desc);
16
- }) : (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- o[k2] = m[k];
19
- }));
20
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
21
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
22
- };
23
- Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.inputUsageRouter = exports.seasonalPlansRouter = exports.healthRouter = exports.adminRouter = exports.fieldObservationsRouter = exports.fieldMonitoringRouter = exports.agentWorkflowsRouter = exports.agentsRouter = exports.categoriesRouter = exports.analyticsRouter = exports.suppliersRouter = exports.documentsRouter = exports.equipmentRouter = exports.teamRouter = exports.weatherRouter = exports.soilTestsRouter = exports.harvestRouter = exports.financeRouter = exports.inventoryRouter = exports.tasksRouter = exports.fieldsRouter = exports.farmsRouter = exports.usersRouter = exports.authRouter = exports.apiContract = void 0;
25
8
  // =============================================================================
26
9
  // Main API Contract
27
10
  // =============================================================================
28
- var routes_1 = require("./routes");
29
- Object.defineProperty(exports, "apiContract", { enumerable: true, get: function () { return routes_1.apiContract; } });
11
+ export { apiContract } from './routes';
30
12
  // =============================================================================
31
13
  // Individual Routers
32
14
  // =============================================================================
33
- var auth_routes_1 = require("./routes/auth.routes");
34
- Object.defineProperty(exports, "authRouter", { enumerable: true, get: function () { return auth_routes_1.authRouter; } });
35
- var users_routes_1 = require("./routes/users.routes");
36
- Object.defineProperty(exports, "usersRouter", { enumerable: true, get: function () { return users_routes_1.usersRouter; } });
37
- var farms_routes_1 = require("./routes/farms.routes");
38
- Object.defineProperty(exports, "farmsRouter", { enumerable: true, get: function () { return farms_routes_1.farmsRouter; } });
39
- var fields_routes_1 = require("./routes/fields.routes");
40
- Object.defineProperty(exports, "fieldsRouter", { enumerable: true, get: function () { return fields_routes_1.fieldsRouter; } });
41
- var tasks_routes_1 = require("./routes/tasks.routes");
42
- Object.defineProperty(exports, "tasksRouter", { enumerable: true, get: function () { return tasks_routes_1.tasksRouter; } });
43
- var inventory_routes_1 = require("./routes/inventory.routes");
44
- Object.defineProperty(exports, "inventoryRouter", { enumerable: true, get: function () { return inventory_routes_1.inventoryRouter; } });
45
- var finance_routes_1 = require("./routes/finance.routes");
46
- Object.defineProperty(exports, "financeRouter", { enumerable: true, get: function () { return finance_routes_1.financeRouter; } });
47
- var harvest_routes_1 = require("./routes/harvest.routes");
48
- Object.defineProperty(exports, "harvestRouter", { enumerable: true, get: function () { return harvest_routes_1.harvestRouter; } });
49
- var soil_tests_routes_1 = require("./routes/soil-tests.routes");
50
- Object.defineProperty(exports, "soilTestsRouter", { enumerable: true, get: function () { return soil_tests_routes_1.soilTestsRouter; } });
51
- var weather_routes_1 = require("./routes/weather.routes");
52
- Object.defineProperty(exports, "weatherRouter", { enumerable: true, get: function () { return weather_routes_1.weatherRouter; } });
53
- var team_routes_1 = require("./routes/team.routes");
54
- Object.defineProperty(exports, "teamRouter", { enumerable: true, get: function () { return team_routes_1.teamRouter; } });
55
- var equipment_routes_1 = require("./routes/equipment.routes");
56
- Object.defineProperty(exports, "equipmentRouter", { enumerable: true, get: function () { return equipment_routes_1.equipmentRouter; } });
57
- var documents_routes_1 = require("./routes/documents.routes");
58
- Object.defineProperty(exports, "documentsRouter", { enumerable: true, get: function () { return documents_routes_1.documentsRouter; } });
59
- var suppliers_routes_1 = require("./routes/suppliers.routes");
60
- Object.defineProperty(exports, "suppliersRouter", { enumerable: true, get: function () { return suppliers_routes_1.suppliersRouter; } });
61
- var analytics_routes_1 = require("./routes/analytics.routes");
62
- Object.defineProperty(exports, "analyticsRouter", { enumerable: true, get: function () { return analytics_routes_1.analyticsRouter; } });
63
- var categories_routes_1 = require("./routes/categories.routes");
64
- Object.defineProperty(exports, "categoriesRouter", { enumerable: true, get: function () { return categories_routes_1.categoriesRouter; } });
65
- var agents_routes_1 = require("./routes/agents.routes");
66
- Object.defineProperty(exports, "agentsRouter", { enumerable: true, get: function () { return agents_routes_1.agentsRouter; } });
67
- var agent_workflows_routes_1 = require("./routes/agent-workflows.routes");
68
- Object.defineProperty(exports, "agentWorkflowsRouter", { enumerable: true, get: function () { return agent_workflows_routes_1.agentWorkflowsRouter; } });
69
- var field_monitoring_routes_1 = require("./routes/field-monitoring.routes");
70
- Object.defineProperty(exports, "fieldMonitoringRouter", { enumerable: true, get: function () { return field_monitoring_routes_1.fieldMonitoringRouter; } });
71
- var field_observations_routes_1 = require("./routes/field-observations.routes");
72
- Object.defineProperty(exports, "fieldObservationsRouter", { enumerable: true, get: function () { return field_observations_routes_1.fieldObservationsRouter; } });
73
- var admin_routes_1 = require("./routes/admin.routes");
74
- Object.defineProperty(exports, "adminRouter", { enumerable: true, get: function () { return admin_routes_1.adminRouter; } });
75
- var health_routes_1 = require("./routes/health.routes");
76
- Object.defineProperty(exports, "healthRouter", { enumerable: true, get: function () { return health_routes_1.healthRouter; } });
77
- var seasonal_plans_routes_1 = require("./routes/seasonal-plans.routes");
78
- Object.defineProperty(exports, "seasonalPlansRouter", { enumerable: true, get: function () { return seasonal_plans_routes_1.seasonalPlansRouter; } });
79
- var input_usage_routes_1 = require("./routes/input-usage.routes");
80
- Object.defineProperty(exports, "inputUsageRouter", { enumerable: true, get: function () { return input_usage_routes_1.inputUsageRouter; } });
15
+ export { authRouter } from './routes/auth.routes';
16
+ export { usersRouter } from './routes/users.routes';
17
+ export { farmsRouter } from './routes/farms.routes';
18
+ export { fieldsRouter } from './routes/fields.routes';
19
+ export { tasksRouter } from './routes/tasks.routes';
20
+ export { inventoryRouter } from './routes/inventory.routes';
21
+ export { financeRouter } from './routes/finance.routes';
22
+ export { harvestRouter } from './routes/harvest.routes';
23
+ export { soilTestsRouter } from './routes/soil-tests.routes';
24
+ export { weatherRouter } from './routes/weather.routes';
25
+ export { teamRouter } from './routes/team.routes';
26
+ export { equipmentRouter } from './routes/equipment.routes';
27
+ export { documentsRouter } from './routes/documents.routes';
28
+ export { suppliersRouter } from './routes/suppliers.routes';
29
+ export { analyticsRouter } from './routes/analytics.routes';
30
+ export { categoriesRouter } from './routes/categories.routes';
31
+ export { agentsRouter } from './routes/agents.routes';
32
+ export { agentWorkflowsRouter } from './routes/agent-workflows.routes';
33
+ export { fieldMonitoringRouter } from './routes/field-monitoring.routes';
34
+ export { fieldObservationsRouter } from './routes/field-observations.routes';
35
+ export { adminRouter } from './routes/admin.routes';
36
+ export { healthRouter } from './routes/health.routes';
37
+ export { seasonalPlansRouter } from './routes/seasonal-plans.routes';
38
+ export { inputUsageRouter } from './routes/input-usage.routes';
81
39
  // =============================================================================
82
40
  // Schemas
83
41
  // =============================================================================
84
- __exportStar(require("./schemas/common.schemas"), exports);
85
- __exportStar(require("./schemas/auth.schemas"), exports);
86
- __exportStar(require("./schemas/users.schemas"), exports);
87
- __exportStar(require("./schemas/farms.schemas"), exports);
88
- __exportStar(require("./schemas/fields.schemas"), exports);
89
- __exportStar(require("./schemas/tasks.schemas"), exports);
90
- __exportStar(require("./schemas/inventory.schemas"), exports);
91
- __exportStar(require("./schemas/finance.schemas"), exports);
92
- __exportStar(require("./schemas/harvest.schemas"), exports);
93
- __exportStar(require("./schemas/soil-tests.schemas"), exports);
94
- __exportStar(require("./schemas/weather.schemas"), exports);
95
- __exportStar(require("./schemas/team.schemas"), exports);
96
- __exportStar(require("./schemas/equipment.schemas"), exports);
97
- __exportStar(require("./schemas/documents.schemas"), exports);
98
- __exportStar(require("./schemas/suppliers.schemas"), exports);
99
- __exportStar(require("./schemas/analytics.schemas"), exports);
100
- __exportStar(require("./schemas/categories.schemas"), exports);
101
- __exportStar(require("./schemas/agents.schemas"), exports);
102
- __exportStar(require("./schemas/agent-workflows.schemas"), exports);
103
- __exportStar(require("./schemas/recommendations.schemas"), exports);
104
- __exportStar(require("./schemas/field-monitoring.schemas"), exports);
105
- __exportStar(require("./schemas/field-observations.schemas"), exports);
106
- __exportStar(require("./schemas/health.schemas"), exports);
107
- __exportStar(require("./schemas/seasonal-plans.schemas"), exports);
108
- __exportStar(require("./schemas/input-usage.schemas"), exports);
42
+ export * from './schemas/common.schemas';
43
+ export * from './schemas/auth.schemas';
44
+ export * from './schemas/users.schemas';
45
+ export * from './schemas/farms.schemas';
46
+ export * from './schemas/fields.schemas';
47
+ export * from './schemas/tasks.schemas';
48
+ export * from './schemas/inventory.schemas';
49
+ export * from './schemas/finance.schemas';
50
+ export * from './schemas/harvest.schemas';
51
+ export * from './schemas/soil-tests.schemas';
52
+ export * from './schemas/weather.schemas';
53
+ export * from './schemas/team.schemas';
54
+ export * from './schemas/equipment.schemas';
55
+ export * from './schemas/documents.schemas';
56
+ export * from './schemas/suppliers.schemas';
57
+ export * from './schemas/analytics.schemas';
58
+ export * from './schemas/categories.schemas';
59
+ export * from './schemas/agents.schemas';
60
+ export * from './schemas/agent-workflows.schemas';
61
+ export * from './schemas/recommendations.schemas';
62
+ export * from './schemas/field-monitoring.schemas';
63
+ export * from './schemas/field-observations.schemas';
64
+ export * from './schemas/health.schemas';
65
+ export * from './schemas/seasonal-plans.schemas';
66
+ export * from './schemas/input-usage.schemas';
@@ -1,24 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adminRouter = void 0;
4
- const core_1 = require("@ts-rest/core");
5
- const zod_1 = require("zod");
6
- const admin_schemas_1 = require("../schemas/admin.schemas");
7
- const common_schemas_1 = require("../schemas/common.schemas");
8
- const c = (0, core_1.initContract)();
9
- exports.adminRouter = c.router({
1
+ import { initContract } from '@ts-rest/core';
2
+ import { z } from 'zod';
3
+ import { autonomousMonitoringStatsResponseSchema, } from '../schemas/admin.schemas';
4
+ import { jsonApiErrorResponseSchema } from '../schemas/common.schemas';
5
+ const c = initContract();
6
+ export const adminRouter = c.router({
10
7
  getAutonomousMonitoringStats: {
11
8
  method: 'GET',
12
9
  path: '/admin/autonomous-monitoring/stats',
13
- query: zod_1.z.object({
14
- startDate: zod_1.z.string().datetime().optional(),
15
- endDate: zod_1.z.string().datetime().optional(),
10
+ query: z.object({
11
+ startDate: z.string().datetime().optional(),
12
+ endDate: z.string().datetime().optional(),
16
13
  }),
17
14
  responses: {
18
- 200: admin_schemas_1.autonomousMonitoringStatsResponseSchema,
19
- 401: common_schemas_1.jsonApiErrorResponseSchema,
20
- 403: common_schemas_1.jsonApiErrorResponseSchema,
21
- 500: common_schemas_1.jsonApiErrorResponseSchema,
15
+ 200: autonomousMonitoringStatsResponseSchema,
16
+ 401: jsonApiErrorResponseSchema,
17
+ 403: jsonApiErrorResponseSchema,
18
+ 500: jsonApiErrorResponseSchema,
22
19
  },
23
20
  summary: 'Get autonomous monitoring analytics',
24
21
  description: 'Get comprehensive analytics for the autonomous multi-agent monitoring system',
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.agentWorkflowsRouter = void 0;
4
- const core_1 = require("@ts-rest/core");
5
- const zod_1 = require("zod");
6
- const agent_workflows_schemas_1 = require("../schemas/agent-workflows.schemas");
7
- const c = (0, core_1.initContract)();
1
+ import { initContract } from '@ts-rest/core';
2
+ import { z } from 'zod';
3
+ import { agentWorkflowResponseSchema, agentWorkflowListResponseSchema, agentWorkflowStatusSchema, } from '../schemas/agent-workflows.schemas';
4
+ const c = initContract();
8
5
  /**
9
6
  * Agent Workflows Routes
10
7
  *
@@ -12,31 +9,31 @@ const c = (0, core_1.initContract)();
12
9
  * These workflows track the system's automated decision-making process
13
10
  * for converting recommendations into tasks.
14
11
  */
15
- exports.agentWorkflowsRouter = c.router({
12
+ export const agentWorkflowsRouter = c.router({
16
13
  /**
17
14
  * List agent workflows with filters
18
15
  */
19
16
  listWorkflows: {
20
17
  method: 'GET',
21
18
  path: '/agent-workflows',
22
- query: zod_1.z.object({
23
- farmId: zod_1.z.string().uuid().optional(),
24
- fieldId: zod_1.z.string().uuid().optional(),
25
- status: agent_workflows_schemas_1.agentWorkflowStatusSchema.optional(),
26
- triggerEvent: zod_1.z.string().optional(), // e.g., 'observation.analysis.completed'
27
- startDate: zod_1.z.string().datetime().optional(),
28
- endDate: zod_1.z.string().datetime().optional(),
29
- limit: zod_1.z.coerce.number().int().min(1).max(100).default(20),
30
- offset: zod_1.z.coerce.number().int().min(0).default(0),
19
+ query: z.object({
20
+ farmId: z.string().uuid().optional(),
21
+ fieldId: z.string().uuid().optional(),
22
+ status: agentWorkflowStatusSchema.optional(),
23
+ triggerEvent: z.string().optional(), // e.g., 'observation.analysis.completed'
24
+ startDate: z.string().datetime().optional(),
25
+ endDate: z.string().datetime().optional(),
26
+ limit: z.coerce.number().int().min(1).max(100).default(20),
27
+ offset: z.coerce.number().int().min(0).default(0),
31
28
  }),
32
29
  responses: {
33
- 200: agent_workflows_schemas_1.agentWorkflowListResponseSchema,
34
- 400: zod_1.z.object({
35
- errors: zod_1.z.array(zod_1.z.object({
36
- status: zod_1.z.string(),
37
- code: zod_1.z.string(),
38
- title: zod_1.z.string(),
39
- detail: zod_1.z.string(),
30
+ 200: agentWorkflowListResponseSchema,
31
+ 400: z.object({
32
+ errors: z.array(z.object({
33
+ status: z.string(),
34
+ code: z.string(),
35
+ title: z.string(),
36
+ detail: z.string(),
40
37
  })),
41
38
  }),
42
39
  },
@@ -49,13 +46,13 @@ exports.agentWorkflowsRouter = c.router({
49
46
  method: 'GET',
50
47
  path: '/agent-workflows/:id',
51
48
  responses: {
52
- 200: agent_workflows_schemas_1.agentWorkflowResponseSchema,
53
- 404: zod_1.z.object({
54
- errors: zod_1.z.array(zod_1.z.object({
55
- status: zod_1.z.literal('404'),
56
- code: zod_1.z.string(),
57
- title: zod_1.z.string(),
58
- detail: zod_1.z.string(),
49
+ 200: agentWorkflowResponseSchema,
50
+ 404: z.object({
51
+ errors: z.array(z.object({
52
+ status: z.literal('404'),
53
+ code: z.string(),
54
+ title: z.string(),
55
+ detail: z.string(),
59
56
  })),
60
57
  }),
61
58
  },
@@ -67,19 +64,19 @@ exports.agentWorkflowsRouter = c.router({
67
64
  getWorkflowsByFarm: {
68
65
  method: 'GET',
69
66
  path: '/farms/:farmId/agent-workflows',
70
- query: zod_1.z.object({
71
- status: agent_workflows_schemas_1.agentWorkflowStatusSchema.optional(),
72
- limit: zod_1.z.coerce.number().int().min(1).max(100).default(20),
73
- offset: zod_1.z.coerce.number().int().min(0).default(0),
67
+ query: z.object({
68
+ status: agentWorkflowStatusSchema.optional(),
69
+ limit: z.coerce.number().int().min(1).max(100).default(20),
70
+ offset: z.coerce.number().int().min(0).default(0),
74
71
  }),
75
72
  responses: {
76
- 200: agent_workflows_schemas_1.agentWorkflowListResponseSchema,
77
- 404: zod_1.z.object({
78
- errors: zod_1.z.array(zod_1.z.object({
79
- status: zod_1.z.literal('404'),
80
- code: zod_1.z.string(),
81
- title: zod_1.z.string(),
82
- detail: zod_1.z.string(),
73
+ 200: agentWorkflowListResponseSchema,
74
+ 404: z.object({
75
+ errors: z.array(z.object({
76
+ status: z.literal('404'),
77
+ code: z.string(),
78
+ title: z.string(),
79
+ detail: z.string(),
83
80
  })),
84
81
  }),
85
82
  },
@@ -91,19 +88,19 @@ exports.agentWorkflowsRouter = c.router({
91
88
  getWorkflowsByField: {
92
89
  method: 'GET',
93
90
  path: '/fields/:fieldId/agent-workflows',
94
- query: zod_1.z.object({
95
- status: agent_workflows_schemas_1.agentWorkflowStatusSchema.optional(),
96
- limit: zod_1.z.coerce.number().int().min(1).max(100).default(20),
97
- offset: zod_1.z.coerce.number().int().min(0).default(0),
91
+ query: z.object({
92
+ status: agentWorkflowStatusSchema.optional(),
93
+ limit: z.coerce.number().int().min(1).max(100).default(20),
94
+ offset: z.coerce.number().int().min(0).default(0),
98
95
  }),
99
96
  responses: {
100
- 200: agent_workflows_schemas_1.agentWorkflowListResponseSchema,
101
- 404: zod_1.z.object({
102
- errors: zod_1.z.array(zod_1.z.object({
103
- status: zod_1.z.literal('404'),
104
- code: zod_1.z.string(),
105
- title: zod_1.z.string(),
106
- detail: zod_1.z.string(),
97
+ 200: agentWorkflowListResponseSchema,
98
+ 404: z.object({
99
+ errors: z.array(z.object({
100
+ status: z.literal('404'),
101
+ code: z.string(),
102
+ title: z.string(),
103
+ detail: z.string(),
107
104
  })),
108
105
  }),
109
106
  },
@@ -115,42 +112,42 @@ exports.agentWorkflowsRouter = c.router({
115
112
  getWorkflowStats: {
116
113
  method: 'GET',
117
114
  path: '/agent-workflows/stats',
118
- query: zod_1.z.object({
119
- farmId: zod_1.z.string().uuid().optional(),
120
- startDate: zod_1.z.string().datetime().optional(),
121
- endDate: zod_1.z.string().datetime().optional(),
115
+ query: z.object({
116
+ farmId: z.string().uuid().optional(),
117
+ startDate: z.string().datetime().optional(),
118
+ endDate: z.string().datetime().optional(),
122
119
  }),
123
120
  responses: {
124
- 200: zod_1.z.object({
125
- data: zod_1.z.object({
126
- overall: zod_1.z.object({
127
- totalWorkflows: zod_1.z.number().int(),
128
- successRate: zod_1.z.number(),
129
- avgProcessingTime: zod_1.z.number(),
130
- tasksCreated: zod_1.z.number().int(),
131
- tasksUpdated: zod_1.z.number().int(),
132
- skipped: zod_1.z.number().int(),
121
+ 200: z.object({
122
+ data: z.object({
123
+ overall: z.object({
124
+ totalWorkflows: z.number().int(),
125
+ successRate: z.number(),
126
+ avgProcessingTime: z.number(),
127
+ tasksCreated: z.number().int(),
128
+ tasksUpdated: z.number().int(),
129
+ skipped: z.number().int(),
133
130
  }),
134
- bySource: zod_1.z.record(zod_1.z.object({
135
- workflows: zod_1.z.number().int(),
136
- tasksCreated: zod_1.z.number().int(),
137
- tasksUpdated: zod_1.z.number().int(),
138
- skipped: zod_1.z.number().int(),
139
- skipRate: zod_1.z.number(),
140
- avgConfidence: zod_1.z.number().optional(),
131
+ bySource: z.record(z.object({
132
+ workflows: z.number().int(),
133
+ tasksCreated: z.number().int(),
134
+ tasksUpdated: z.number().int(),
135
+ skipped: z.number().int(),
136
+ skipRate: z.number(),
137
+ avgConfidence: z.number().optional(),
141
138
  })),
142
- deduplication: zod_1.z.object({
143
- exactMatches: zod_1.z.number().int(),
144
- semanticMatches: zod_1.z.number().int(),
145
- categoryMatches: zod_1.z.number().int(),
146
- crossSourceMatches: zod_1.z.number().int(),
147
- avgSimilarityScore: zod_1.z.number(),
139
+ deduplication: z.object({
140
+ exactMatches: z.number().int(),
141
+ semanticMatches: z.number().int(),
142
+ categoryMatches: z.number().int(),
143
+ crossSourceMatches: z.number().int(),
144
+ avgSimilarityScore: z.number(),
148
145
  }),
149
- outcomes: zod_1.z.object({
150
- tasksCompleted: zod_1.z.number().int(),
151
- tasksPending: zod_1.z.number().int(),
152
- tasksInProgress: zod_1.z.number().int(),
153
- completionRate: zod_1.z.number(),
146
+ outcomes: z.object({
147
+ tasksCompleted: z.number().int(),
148
+ tasksPending: z.number().int(),
149
+ tasksInProgress: z.number().int(),
150
+ completionRate: z.number(),
154
151
  }),
155
152
  }),
156
153
  }),
@@ -1,22 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.agentsRouter = void 0;
4
- const core_1 = require("@ts-rest/core");
5
- const zod_1 = require("zod");
6
- const agents_schemas_1 = require("../schemas/agents.schemas");
7
- const common_schemas_1 = require("../schemas/common.schemas");
8
- const c = (0, core_1.initContract)();
9
- exports.agentsRouter = c.router({
1
+ import { initContract } from '@ts-rest/core';
2
+ import { z } from 'zod';
3
+ import { chatRequestSchema, agentChatResponseSchema, conversationHistoryResponseSchema, conversationListResponseSchema, } from '../schemas/agents.schemas';
4
+ import { jsonApiErrorResponseSchema } from '../schemas/common.schemas';
5
+ const c = initContract();
6
+ export const agentsRouter = c.router({
10
7
  // Chat with agronomics agent
11
8
  chatWithAgronomics: {
12
9
  method: 'POST',
13
10
  path: '/agents/agronomics/chat',
14
- body: zod_1.z.object({ data: agents_schemas_1.chatRequestSchema }),
11
+ body: z.object({ data: chatRequestSchema }),
15
12
  responses: {
16
- 200: agents_schemas_1.agentChatResponseSchema,
17
- 400: common_schemas_1.jsonApiErrorResponseSchema,
18
- 401: common_schemas_1.jsonApiErrorResponseSchema,
19
- 500: common_schemas_1.jsonApiErrorResponseSchema,
13
+ 200: agentChatResponseSchema,
14
+ 400: jsonApiErrorResponseSchema,
15
+ 401: jsonApiErrorResponseSchema,
16
+ 500: jsonApiErrorResponseSchema,
20
17
  },
21
18
  summary: 'Chat with the agronomics AI agent',
22
19
  description: 'Send a message to the agronomics agent and receive AI-powered farming advice based on your farm data',
@@ -37,18 +34,18 @@ exports.agentsRouter = c.router({
37
34
  getConversationHistory: {
38
35
  method: 'GET',
39
36
  path: '/agents/agronomics/conversations/:conversationId/history',
40
- pathParams: zod_1.z.object({
41
- conversationId: zod_1.z.string().uuid(),
37
+ pathParams: z.object({
38
+ conversationId: z.string().uuid(),
42
39
  }),
43
- query: zod_1.z.object({
44
- limit: zod_1.z.coerce.number().int().min(1).max(100).optional().default(50),
40
+ query: z.object({
41
+ limit: z.coerce.number().int().min(1).max(100).optional().default(50),
45
42
  }),
46
43
  responses: {
47
- 200: agents_schemas_1.conversationHistoryResponseSchema,
48
- 400: common_schemas_1.jsonApiErrorResponseSchema,
49
- 401: common_schemas_1.jsonApiErrorResponseSchema,
50
- 404: common_schemas_1.jsonApiErrorResponseSchema,
51
- 500: common_schemas_1.jsonApiErrorResponseSchema,
44
+ 200: conversationHistoryResponseSchema,
45
+ 400: jsonApiErrorResponseSchema,
46
+ 401: jsonApiErrorResponseSchema,
47
+ 404: jsonApiErrorResponseSchema,
48
+ 500: jsonApiErrorResponseSchema,
52
49
  },
53
50
  summary: 'Get conversation history',
54
51
  description: 'Retrieve the message history for a specific conversation',
@@ -57,18 +54,18 @@ exports.agentsRouter = c.router({
57
54
  listConversations: {
58
55
  method: 'GET',
59
56
  path: '/farms/:farmId/agents/conversations',
60
- pathParams: zod_1.z.object({
61
- farmId: zod_1.z.string().uuid(),
57
+ pathParams: z.object({
58
+ farmId: z.string().uuid(),
62
59
  }),
63
- query: zod_1.z.object({
64
- limit: zod_1.z.coerce.number().int().min(1).max(100).optional().default(20),
65
- offset: zod_1.z.coerce.number().int().min(0).optional().default(0),
60
+ query: z.object({
61
+ limit: z.coerce.number().int().min(1).max(100).optional().default(20),
62
+ offset: z.coerce.number().int().min(0).optional().default(0),
66
63
  }),
67
64
  responses: {
68
- 200: agents_schemas_1.conversationListResponseSchema,
69
- 400: common_schemas_1.jsonApiErrorResponseSchema,
70
- 401: common_schemas_1.jsonApiErrorResponseSchema,
71
- 500: common_schemas_1.jsonApiErrorResponseSchema,
65
+ 200: conversationListResponseSchema,
66
+ 400: jsonApiErrorResponseSchema,
67
+ 401: jsonApiErrorResponseSchema,
68
+ 500: jsonApiErrorResponseSchema,
72
69
  },
73
70
  summary: 'List all conversations for a farm',
74
71
  description: 'Retrieve a list of all conversations for a specific farm, ordered by most recent first',
@@ -1,22 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.analyticsRouter = void 0;
4
- const core_1 = require("@ts-rest/core");
5
- const zod_1 = require("zod");
6
- const analytics_schemas_1 = require("../schemas/analytics.schemas");
7
- const common_schemas_1 = require("../schemas/common.schemas");
8
- const c = (0, core_1.initContract)();
9
- exports.analyticsRouter = c.router({
1
+ import { initContract } from '@ts-rest/core';
2
+ import { z } from 'zod';
3
+ import { analyticsResponseSchema } from '../schemas/analytics.schemas';
4
+ import { jsonApiErrorResponseSchema, jsonApiFilterQuerySchema } from '../schemas/common.schemas';
5
+ const c = initContract();
6
+ export const analyticsRouter = c.router({
10
7
  // Get analytics for a farm
11
8
  getAnalytics: {
12
9
  method: 'GET',
13
10
  path: '/farms/:farmId/analytics',
14
- pathParams: zod_1.z.object({ farmId: zod_1.z.string().uuid() }),
15
- query: common_schemas_1.jsonApiFilterQuerySchema.optional(),
11
+ pathParams: z.object({ farmId: z.string().uuid() }),
12
+ query: jsonApiFilterQuerySchema.optional(),
16
13
  responses: {
17
- 200: analytics_schemas_1.analyticsResponseSchema,
18
- 404: common_schemas_1.jsonApiErrorResponseSchema,
19
- 401: common_schemas_1.jsonApiErrorResponseSchema,
14
+ 200: analyticsResponseSchema,
15
+ 404: jsonApiErrorResponseSchema,
16
+ 401: jsonApiErrorResponseSchema,
20
17
  },
21
18
  summary: 'Get analytics',
22
19
  description: 'Get comprehensive analytics including performance trends, yield, market data, and profitability',