@deepintel-ltd/farmpro-contracts 1.0.1 → 1.0.3

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 (100) hide show
  1. package/dist/index.d.ts +41 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +81 -0
  4. package/dist/routes/analytics.routes.d.ts +754 -0
  5. package/dist/routes/analytics.routes.d.ts.map +1 -0
  6. package/dist/routes/analytics.routes.js +24 -0
  7. package/dist/routes/auth.routes.d.ts +3836 -0
  8. package/dist/routes/auth.routes.d.ts.map +1 -0
  9. package/dist/routes/auth.routes.js +158 -0
  10. package/dist/routes/documents.routes.d.ts +2476 -0
  11. package/dist/routes/documents.routes.d.ts.map +1 -0
  12. package/dist/routes/documents.routes.js +100 -0
  13. package/dist/routes/equipment.routes.d.ts +3617 -0
  14. package/dist/routes/equipment.routes.d.ts.map +1 -0
  15. package/dist/routes/equipment.routes.js +118 -0
  16. package/dist/routes/farms.routes.d.ts +2202 -0
  17. package/dist/routes/farms.routes.d.ts.map +1 -0
  18. package/dist/routes/farms.routes.js +111 -0
  19. package/dist/routes/fields.routes.d.ts +3389 -0
  20. package/dist/routes/fields.routes.d.ts.map +1 -0
  21. package/dist/routes/fields.routes.js +95 -0
  22. package/dist/routes/finance.routes.d.ts +6855 -0
  23. package/dist/routes/finance.routes.d.ts.map +1 -0
  24. package/dist/routes/finance.routes.js +259 -0
  25. package/dist/routes/harvest.routes.d.ts +2337 -0
  26. package/dist/routes/harvest.routes.d.ts.map +1 -0
  27. package/dist/routes/harvest.routes.js +99 -0
  28. package/dist/routes/index.d.ts +68 -0
  29. package/dist/routes/index.d.ts.map +1 -0
  30. package/dist/routes/index.js +43 -0
  31. package/dist/routes/inventory.routes.d.ts +2853 -0
  32. package/dist/routes/inventory.routes.d.ts.map +1 -0
  33. package/dist/routes/inventory.routes.js +121 -0
  34. package/dist/routes/soil-tests.routes.d.ts +3005 -0
  35. package/dist/routes/soil-tests.routes.d.ts.map +1 -0
  36. package/dist/routes/soil-tests.routes.js +98 -0
  37. package/dist/routes/suppliers.routes.d.ts +4190 -0
  38. package/dist/routes/suppliers.routes.d.ts.map +1 -0
  39. package/dist/routes/suppliers.routes.js +146 -0
  40. package/dist/routes/tasks.routes.d.ts +4192 -0
  41. package/dist/routes/tasks.routes.d.ts.map +1 -0
  42. package/dist/routes/tasks.routes.js +138 -0
  43. package/dist/routes/team.routes.d.ts +2210 -0
  44. package/dist/routes/team.routes.d.ts.map +1 -0
  45. package/dist/routes/team.routes.js +98 -0
  46. package/dist/routes/users.routes.d.ts +721 -0
  47. package/dist/routes/users.routes.d.ts.map +1 -0
  48. package/dist/routes/users.routes.js +35 -0
  49. package/dist/routes/weather.routes.d.ts +500 -0
  50. package/dist/routes/weather.routes.d.ts.map +1 -0
  51. package/dist/routes/weather.routes.js +23 -0
  52. package/dist/schemas/analytics.schemas.d.ts +1344 -0
  53. package/dist/schemas/analytics.schemas.d.ts.map +1 -0
  54. package/dist/schemas/analytics.schemas.js +73 -0
  55. package/dist/schemas/auth.schemas.d.ts +1093 -0
  56. package/dist/schemas/auth.schemas.d.ts.map +1 -0
  57. package/dist/schemas/auth.schemas.js +159 -0
  58. package/dist/schemas/common.schemas.d.ts +562 -0
  59. package/dist/schemas/common.schemas.d.ts.map +1 -0
  60. package/dist/schemas/common.schemas.js +122 -0
  61. package/dist/schemas/documents.schemas.d.ts +850 -0
  62. package/dist/schemas/documents.schemas.d.ts.map +1 -0
  63. package/dist/schemas/documents.schemas.js +75 -0
  64. package/dist/schemas/equipment.schemas.d.ts +1618 -0
  65. package/dist/schemas/equipment.schemas.d.ts.map +1 -0
  66. package/dist/schemas/equipment.schemas.js +125 -0
  67. package/dist/schemas/farms.schemas.d.ts +1171 -0
  68. package/dist/schemas/farms.schemas.d.ts.map +1 -0
  69. package/dist/schemas/farms.schemas.js +62 -0
  70. package/dist/schemas/fields.schemas.d.ts +2508 -0
  71. package/dist/schemas/fields.schemas.d.ts.map +1 -0
  72. package/dist/schemas/fields.schemas.js +125 -0
  73. package/dist/schemas/finance.schemas.d.ts +2869 -0
  74. package/dist/schemas/finance.schemas.d.ts.map +1 -0
  75. package/dist/schemas/finance.schemas.js +196 -0
  76. package/dist/schemas/harvest.schemas.d.ts +1051 -0
  77. package/dist/schemas/harvest.schemas.d.ts.map +1 -0
  78. package/dist/schemas/harvest.schemas.js +71 -0
  79. package/dist/schemas/inventory.schemas.d.ts +1138 -0
  80. package/dist/schemas/inventory.schemas.d.ts.map +1 -0
  81. package/dist/schemas/inventory.schemas.js +89 -0
  82. package/dist/schemas/soil-tests.schemas.d.ts +1885 -0
  83. package/dist/schemas/soil-tests.schemas.d.ts.map +1 -0
  84. package/dist/schemas/soil-tests.schemas.js +102 -0
  85. package/dist/schemas/suppliers.schemas.d.ts +1774 -0
  86. package/dist/schemas/suppliers.schemas.d.ts.map +1 -0
  87. package/dist/schemas/suppliers.schemas.js +121 -0
  88. package/dist/schemas/tasks.schemas.d.ts +1761 -0
  89. package/dist/schemas/tasks.schemas.d.ts.map +1 -0
  90. package/dist/schemas/tasks.schemas.js +121 -0
  91. package/dist/schemas/team.schemas.d.ts +583 -0
  92. package/dist/schemas/team.schemas.d.ts.map +1 -0
  93. package/dist/schemas/team.schemas.js +60 -0
  94. package/dist/schemas/users.schemas.d.ts +288 -0
  95. package/dist/schemas/users.schemas.d.ts.map +1 -0
  96. package/dist/schemas/users.schemas.js +32 -0
  97. package/dist/schemas/weather.schemas.d.ts +682 -0
  98. package/dist/schemas/weather.schemas.d.ts.map +1 -0
  99. package/dist/schemas/weather.schemas.js +49 -0
  100. package/package.json +1 -1
@@ -0,0 +1,583 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Team management schemas - JSON:API compliant
4
+ */
5
+ export declare const teamMemberRoleSchema: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
6
+ export declare const teamMemberAttributesSchema: z.ZodObject<{
7
+ farmId: z.ZodString;
8
+ userId: z.ZodNullable<z.ZodString>;
9
+ name: z.ZodString;
10
+ email: z.ZodString;
11
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
12
+ phone: z.ZodNullable<z.ZodString>;
13
+ tasksAssigned: z.ZodOptional<z.ZodNumber>;
14
+ tasksCompleted: z.ZodOptional<z.ZodNumber>;
15
+ tasksPending: z.ZodOptional<z.ZodNumber>;
16
+ } & {
17
+ createdAt: z.ZodString;
18
+ updatedAt: z.ZodString;
19
+ }, "strip", z.ZodTypeAny, {
20
+ email: string;
21
+ createdAt: string;
22
+ updatedAt: string;
23
+ name: string;
24
+ phone: string | null;
25
+ farmId: string;
26
+ userId: string | null;
27
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
28
+ tasksAssigned?: number | undefined;
29
+ tasksCompleted?: number | undefined;
30
+ tasksPending?: number | undefined;
31
+ }, {
32
+ email: string;
33
+ createdAt: string;
34
+ updatedAt: string;
35
+ name: string;
36
+ phone: string | null;
37
+ farmId: string;
38
+ userId: string | null;
39
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
40
+ tasksAssigned?: number | undefined;
41
+ tasksCompleted?: number | undefined;
42
+ tasksPending?: number | undefined;
43
+ }>;
44
+ export declare const createTeamMemberAttributesSchema: z.ZodObject<{
45
+ name: z.ZodString;
46
+ email: z.ZodString;
47
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
48
+ phone: z.ZodOptional<z.ZodString>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ email: string;
51
+ name: string;
52
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
53
+ phone?: string | undefined;
54
+ }, {
55
+ email: string;
56
+ name: string;
57
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
58
+ phone?: string | undefined;
59
+ }>;
60
+ export declare const updateTeamMemberAttributesSchema: z.ZodObject<{
61
+ name: z.ZodOptional<z.ZodString>;
62
+ email: z.ZodOptional<z.ZodString>;
63
+ role: z.ZodOptional<z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>>;
64
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
65
+ }, "strip", z.ZodTypeAny, {
66
+ email?: string | undefined;
67
+ name?: string | undefined;
68
+ phone?: string | null | undefined;
69
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
70
+ }, {
71
+ email?: string | undefined;
72
+ name?: string | undefined;
73
+ phone?: string | null | undefined;
74
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
75
+ }>;
76
+ export declare const createTeamMemberSchema: z.ZodObject<{
77
+ type: z.ZodLiteral<"team-members">;
78
+ attributes: z.ZodObject<{
79
+ name: z.ZodString;
80
+ email: z.ZodString;
81
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
82
+ phone: z.ZodOptional<z.ZodString>;
83
+ }, "strip", z.ZodTypeAny, {
84
+ email: string;
85
+ name: string;
86
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
87
+ phone?: string | undefined;
88
+ }, {
89
+ email: string;
90
+ name: string;
91
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
92
+ phone?: string | undefined;
93
+ }>;
94
+ }, "strip", z.ZodTypeAny, {
95
+ type: "team-members";
96
+ attributes: {
97
+ email: string;
98
+ name: string;
99
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
100
+ phone?: string | undefined;
101
+ };
102
+ }, {
103
+ type: "team-members";
104
+ attributes: {
105
+ email: string;
106
+ name: string;
107
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
108
+ phone?: string | undefined;
109
+ };
110
+ }>;
111
+ export declare const updateTeamMemberSchema: z.ZodObject<{
112
+ type: z.ZodLiteral<"team-members">;
113
+ id: z.ZodString;
114
+ attributes: z.ZodObject<{
115
+ name: z.ZodOptional<z.ZodString>;
116
+ email: z.ZodOptional<z.ZodString>;
117
+ role: z.ZodOptional<z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>>;
118
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
119
+ }, "strip", z.ZodTypeAny, {
120
+ email?: string | undefined;
121
+ name?: string | undefined;
122
+ phone?: string | null | undefined;
123
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
124
+ }, {
125
+ email?: string | undefined;
126
+ name?: string | undefined;
127
+ phone?: string | null | undefined;
128
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
129
+ }>;
130
+ }, "strip", z.ZodTypeAny, {
131
+ type: "team-members";
132
+ id: string;
133
+ attributes: {
134
+ email?: string | undefined;
135
+ name?: string | undefined;
136
+ phone?: string | null | undefined;
137
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
138
+ };
139
+ }, {
140
+ type: "team-members";
141
+ id: string;
142
+ attributes: {
143
+ email?: string | undefined;
144
+ name?: string | undefined;
145
+ phone?: string | null | undefined;
146
+ role?: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other" | undefined;
147
+ };
148
+ }>;
149
+ export declare const teamMemberResourceSchema: z.ZodObject<{
150
+ type: z.ZodLiteral<string>;
151
+ id: z.ZodString;
152
+ attributes: z.ZodObject<{
153
+ farmId: z.ZodString;
154
+ userId: z.ZodNullable<z.ZodString>;
155
+ name: z.ZodString;
156
+ email: z.ZodString;
157
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
158
+ phone: z.ZodNullable<z.ZodString>;
159
+ tasksAssigned: z.ZodOptional<z.ZodNumber>;
160
+ tasksCompleted: z.ZodOptional<z.ZodNumber>;
161
+ tasksPending: z.ZodOptional<z.ZodNumber>;
162
+ } & {
163
+ createdAt: z.ZodString;
164
+ updatedAt: z.ZodString;
165
+ }, "strip", z.ZodTypeAny, {
166
+ email: string;
167
+ createdAt: string;
168
+ updatedAt: string;
169
+ name: string;
170
+ phone: string | null;
171
+ farmId: string;
172
+ userId: string | null;
173
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
174
+ tasksAssigned?: number | undefined;
175
+ tasksCompleted?: number | undefined;
176
+ tasksPending?: number | undefined;
177
+ }, {
178
+ email: string;
179
+ createdAt: string;
180
+ updatedAt: string;
181
+ name: string;
182
+ phone: string | null;
183
+ farmId: string;
184
+ userId: string | null;
185
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
186
+ tasksAssigned?: number | undefined;
187
+ tasksCompleted?: number | undefined;
188
+ tasksPending?: number | undefined;
189
+ }>;
190
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
191
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
192
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
193
+ }, "strip", z.ZodTypeAny, {
194
+ type: string;
195
+ id: string;
196
+ attributes: {
197
+ email: string;
198
+ createdAt: string;
199
+ updatedAt: string;
200
+ name: string;
201
+ phone: string | null;
202
+ farmId: string;
203
+ userId: string | null;
204
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
205
+ tasksAssigned?: number | undefined;
206
+ tasksCompleted?: number | undefined;
207
+ tasksPending?: number | undefined;
208
+ };
209
+ relationships?: Record<string, unknown> | undefined;
210
+ links?: Record<string, string> | undefined;
211
+ meta?: Record<string, unknown> | undefined;
212
+ }, {
213
+ type: string;
214
+ id: string;
215
+ attributes: {
216
+ email: string;
217
+ createdAt: string;
218
+ updatedAt: string;
219
+ name: string;
220
+ phone: string | null;
221
+ farmId: string;
222
+ userId: string | null;
223
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
224
+ tasksAssigned?: number | undefined;
225
+ tasksCompleted?: number | undefined;
226
+ tasksPending?: number | undefined;
227
+ };
228
+ relationships?: Record<string, unknown> | undefined;
229
+ links?: Record<string, string> | undefined;
230
+ meta?: Record<string, unknown> | undefined;
231
+ }>;
232
+ export declare const teamMemberResponseSchema: z.ZodObject<{
233
+ data: z.ZodObject<{
234
+ type: z.ZodLiteral<string>;
235
+ id: z.ZodString;
236
+ attributes: z.ZodObject<{
237
+ farmId: z.ZodString;
238
+ userId: z.ZodNullable<z.ZodString>;
239
+ name: z.ZodString;
240
+ email: z.ZodString;
241
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
242
+ phone: z.ZodNullable<z.ZodString>;
243
+ tasksAssigned: z.ZodOptional<z.ZodNumber>;
244
+ tasksCompleted: z.ZodOptional<z.ZodNumber>;
245
+ tasksPending: z.ZodOptional<z.ZodNumber>;
246
+ } & {
247
+ createdAt: z.ZodString;
248
+ updatedAt: z.ZodString;
249
+ }, "strip", z.ZodTypeAny, {
250
+ email: string;
251
+ createdAt: string;
252
+ updatedAt: string;
253
+ name: string;
254
+ phone: string | null;
255
+ farmId: string;
256
+ userId: string | null;
257
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
258
+ tasksAssigned?: number | undefined;
259
+ tasksCompleted?: number | undefined;
260
+ tasksPending?: number | undefined;
261
+ }, {
262
+ email: string;
263
+ createdAt: string;
264
+ updatedAt: string;
265
+ name: string;
266
+ phone: string | null;
267
+ farmId: string;
268
+ userId: string | null;
269
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
270
+ tasksAssigned?: number | undefined;
271
+ tasksCompleted?: number | undefined;
272
+ tasksPending?: number | undefined;
273
+ }>;
274
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
275
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
276
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
277
+ }, "strip", z.ZodTypeAny, {
278
+ type: string;
279
+ id: string;
280
+ attributes: {
281
+ email: string;
282
+ createdAt: string;
283
+ updatedAt: string;
284
+ name: string;
285
+ phone: string | null;
286
+ farmId: string;
287
+ userId: string | null;
288
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
289
+ tasksAssigned?: number | undefined;
290
+ tasksCompleted?: number | undefined;
291
+ tasksPending?: number | undefined;
292
+ };
293
+ relationships?: Record<string, unknown> | undefined;
294
+ links?: Record<string, string> | undefined;
295
+ meta?: Record<string, unknown> | undefined;
296
+ }, {
297
+ type: string;
298
+ id: string;
299
+ attributes: {
300
+ email: string;
301
+ createdAt: string;
302
+ updatedAt: string;
303
+ name: string;
304
+ phone: string | null;
305
+ farmId: string;
306
+ userId: string | null;
307
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
308
+ tasksAssigned?: number | undefined;
309
+ tasksCompleted?: number | undefined;
310
+ tasksPending?: number | undefined;
311
+ };
312
+ relationships?: Record<string, unknown> | undefined;
313
+ links?: Record<string, string> | undefined;
314
+ meta?: Record<string, unknown> | undefined;
315
+ }>;
316
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
317
+ type: z.ZodString;
318
+ id: z.ZodString;
319
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
320
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
321
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
322
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
323
+ }, "strip", z.ZodTypeAny, {
324
+ type: string;
325
+ id: string;
326
+ attributes?: Record<string, unknown> | undefined;
327
+ relationships?: Record<string, unknown> | undefined;
328
+ links?: Record<string, string> | undefined;
329
+ meta?: Record<string, unknown> | undefined;
330
+ }, {
331
+ type: string;
332
+ id: string;
333
+ attributes?: Record<string, unknown> | undefined;
334
+ relationships?: Record<string, unknown> | undefined;
335
+ links?: Record<string, string> | undefined;
336
+ meta?: Record<string, unknown> | undefined;
337
+ }>, "many">>;
338
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
339
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
340
+ }, "strip", z.ZodTypeAny, {
341
+ data: {
342
+ type: string;
343
+ id: string;
344
+ attributes: {
345
+ email: string;
346
+ createdAt: string;
347
+ updatedAt: string;
348
+ name: string;
349
+ phone: string | null;
350
+ farmId: string;
351
+ userId: string | null;
352
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
353
+ tasksAssigned?: number | undefined;
354
+ tasksCompleted?: number | undefined;
355
+ tasksPending?: number | undefined;
356
+ };
357
+ relationships?: Record<string, unknown> | undefined;
358
+ links?: Record<string, string> | undefined;
359
+ meta?: Record<string, unknown> | undefined;
360
+ };
361
+ links?: Record<string, string> | undefined;
362
+ meta?: Record<string, unknown> | undefined;
363
+ included?: {
364
+ type: string;
365
+ id: string;
366
+ attributes?: Record<string, unknown> | undefined;
367
+ relationships?: Record<string, unknown> | undefined;
368
+ links?: Record<string, string> | undefined;
369
+ meta?: Record<string, unknown> | undefined;
370
+ }[] | undefined;
371
+ }, {
372
+ data: {
373
+ type: string;
374
+ id: string;
375
+ attributes: {
376
+ email: string;
377
+ createdAt: string;
378
+ updatedAt: string;
379
+ name: string;
380
+ phone: string | null;
381
+ farmId: string;
382
+ userId: string | null;
383
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
384
+ tasksAssigned?: number | undefined;
385
+ tasksCompleted?: number | undefined;
386
+ tasksPending?: number | undefined;
387
+ };
388
+ relationships?: Record<string, unknown> | undefined;
389
+ links?: Record<string, string> | undefined;
390
+ meta?: Record<string, unknown> | undefined;
391
+ };
392
+ links?: Record<string, string> | undefined;
393
+ meta?: Record<string, unknown> | undefined;
394
+ included?: {
395
+ type: string;
396
+ id: string;
397
+ attributes?: Record<string, unknown> | undefined;
398
+ relationships?: Record<string, unknown> | undefined;
399
+ links?: Record<string, string> | undefined;
400
+ meta?: Record<string, unknown> | undefined;
401
+ }[] | undefined;
402
+ }>;
403
+ export declare const teamMemberListResponseSchema: z.ZodObject<{
404
+ data: z.ZodArray<z.ZodObject<{
405
+ type: z.ZodLiteral<string>;
406
+ id: z.ZodString;
407
+ attributes: z.ZodObject<{
408
+ farmId: z.ZodString;
409
+ userId: z.ZodNullable<z.ZodString>;
410
+ name: z.ZodString;
411
+ email: z.ZodString;
412
+ role: z.ZodEnum<["owner", "farm-manager", "agronomist", "field-worker", "accountant", "other"]>;
413
+ phone: z.ZodNullable<z.ZodString>;
414
+ tasksAssigned: z.ZodOptional<z.ZodNumber>;
415
+ tasksCompleted: z.ZodOptional<z.ZodNumber>;
416
+ tasksPending: z.ZodOptional<z.ZodNumber>;
417
+ } & {
418
+ createdAt: z.ZodString;
419
+ updatedAt: z.ZodString;
420
+ }, "strip", z.ZodTypeAny, {
421
+ email: string;
422
+ createdAt: string;
423
+ updatedAt: string;
424
+ name: string;
425
+ phone: string | null;
426
+ farmId: string;
427
+ userId: string | null;
428
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
429
+ tasksAssigned?: number | undefined;
430
+ tasksCompleted?: number | undefined;
431
+ tasksPending?: number | undefined;
432
+ }, {
433
+ email: string;
434
+ createdAt: string;
435
+ updatedAt: string;
436
+ name: string;
437
+ phone: string | null;
438
+ farmId: string;
439
+ userId: string | null;
440
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
441
+ tasksAssigned?: number | undefined;
442
+ tasksCompleted?: number | undefined;
443
+ tasksPending?: number | undefined;
444
+ }>;
445
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
446
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
447
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
448
+ }, "strip", z.ZodTypeAny, {
449
+ type: string;
450
+ id: string;
451
+ attributes: {
452
+ email: string;
453
+ createdAt: string;
454
+ updatedAt: string;
455
+ name: string;
456
+ phone: string | null;
457
+ farmId: string;
458
+ userId: string | null;
459
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
460
+ tasksAssigned?: number | undefined;
461
+ tasksCompleted?: number | undefined;
462
+ tasksPending?: number | undefined;
463
+ };
464
+ relationships?: Record<string, unknown> | undefined;
465
+ links?: Record<string, string> | undefined;
466
+ meta?: Record<string, unknown> | undefined;
467
+ }, {
468
+ type: string;
469
+ id: string;
470
+ attributes: {
471
+ email: string;
472
+ createdAt: string;
473
+ updatedAt: string;
474
+ name: string;
475
+ phone: string | null;
476
+ farmId: string;
477
+ userId: string | null;
478
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
479
+ tasksAssigned?: number | undefined;
480
+ tasksCompleted?: number | undefined;
481
+ tasksPending?: number | undefined;
482
+ };
483
+ relationships?: Record<string, unknown> | undefined;
484
+ links?: Record<string, string> | undefined;
485
+ meta?: Record<string, unknown> | undefined;
486
+ }>, "many">;
487
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
488
+ type: z.ZodString;
489
+ id: z.ZodString;
490
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
491
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
492
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
493
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
494
+ }, "strip", z.ZodTypeAny, {
495
+ type: string;
496
+ id: string;
497
+ attributes?: Record<string, unknown> | undefined;
498
+ relationships?: Record<string, unknown> | undefined;
499
+ links?: Record<string, string> | undefined;
500
+ meta?: Record<string, unknown> | undefined;
501
+ }, {
502
+ type: string;
503
+ id: string;
504
+ attributes?: Record<string, unknown> | undefined;
505
+ relationships?: Record<string, unknown> | undefined;
506
+ links?: Record<string, string> | undefined;
507
+ meta?: Record<string, unknown> | undefined;
508
+ }>, "many">>;
509
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
510
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
511
+ }, "strip", z.ZodTypeAny, {
512
+ data: {
513
+ type: string;
514
+ id: string;
515
+ attributes: {
516
+ email: string;
517
+ createdAt: string;
518
+ updatedAt: string;
519
+ name: string;
520
+ phone: string | null;
521
+ farmId: string;
522
+ userId: string | null;
523
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
524
+ tasksAssigned?: number | undefined;
525
+ tasksCompleted?: number | undefined;
526
+ tasksPending?: number | undefined;
527
+ };
528
+ relationships?: Record<string, unknown> | undefined;
529
+ links?: Record<string, string> | undefined;
530
+ meta?: Record<string, unknown> | undefined;
531
+ }[];
532
+ links?: Record<string, string> | undefined;
533
+ meta?: Record<string, unknown> | undefined;
534
+ included?: {
535
+ type: string;
536
+ id: string;
537
+ attributes?: Record<string, unknown> | undefined;
538
+ relationships?: Record<string, unknown> | undefined;
539
+ links?: Record<string, string> | undefined;
540
+ meta?: Record<string, unknown> | undefined;
541
+ }[] | undefined;
542
+ }, {
543
+ data: {
544
+ type: string;
545
+ id: string;
546
+ attributes: {
547
+ email: string;
548
+ createdAt: string;
549
+ updatedAt: string;
550
+ name: string;
551
+ phone: string | null;
552
+ farmId: string;
553
+ userId: string | null;
554
+ role: "owner" | "farm-manager" | "agronomist" | "field-worker" | "accountant" | "other";
555
+ tasksAssigned?: number | undefined;
556
+ tasksCompleted?: number | undefined;
557
+ tasksPending?: number | undefined;
558
+ };
559
+ relationships?: Record<string, unknown> | undefined;
560
+ links?: Record<string, string> | undefined;
561
+ meta?: Record<string, unknown> | undefined;
562
+ }[];
563
+ links?: Record<string, string> | undefined;
564
+ meta?: Record<string, unknown> | undefined;
565
+ included?: {
566
+ type: string;
567
+ id: string;
568
+ attributes?: Record<string, unknown> | undefined;
569
+ relationships?: Record<string, unknown> | undefined;
570
+ links?: Record<string, string> | undefined;
571
+ meta?: Record<string, unknown> | undefined;
572
+ }[] | undefined;
573
+ }>;
574
+ export type TeamMemberRole = z.infer<typeof teamMemberRoleSchema>;
575
+ export type TeamMemberAttributes = z.infer<typeof teamMemberAttributesSchema>;
576
+ export type CreateTeamMemberAttributes = z.infer<typeof createTeamMemberAttributesSchema>;
577
+ export type UpdateTeamMemberAttributes = z.infer<typeof updateTeamMemberAttributesSchema>;
578
+ export type CreateTeamMemberInput = z.infer<typeof createTeamMemberSchema>;
579
+ export type UpdateTeamMemberInput = z.infer<typeof updateTeamMemberSchema>;
580
+ export type TeamMemberResource = z.infer<typeof teamMemberResourceSchema>;
581
+ export type TeamMemberResponse = z.infer<typeof teamMemberResponseSchema>;
582
+ export type TeamMemberListResponse = z.infer<typeof teamMemberListResponseSchema>;
583
+ //# sourceMappingURL=team.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"team.schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/team.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB;;GAEG;AAGH,eAAO,MAAM,oBAAoB,2FAO/B,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWb,CAAC;AAG3B,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;EAK3C,CAAC;AAGH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;EAK3C,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGjC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIjC,CAAC;AAGH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA0E,CAAC;AAGhH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAwD,CAAC;AAC9F,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4D,CAAC;AAGtG,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAC1F,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAC1F,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC3E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.teamMemberListResponseSchema = exports.teamMemberResponseSchema = exports.teamMemberResourceSchema = exports.updateTeamMemberSchema = exports.createTeamMemberSchema = exports.updateTeamMemberAttributesSchema = exports.createTeamMemberAttributesSchema = exports.teamMemberAttributesSchema = exports.teamMemberRoleSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const common_schemas_1 = require("./common.schemas");
6
+ /**
7
+ * Team management schemas - JSON:API compliant
8
+ */
9
+ // Team member role enum
10
+ exports.teamMemberRoleSchema = zod_1.z.enum([
11
+ 'owner',
12
+ 'farm-manager',
13
+ 'agronomist',
14
+ 'field-worker',
15
+ 'accountant',
16
+ 'other',
17
+ ]);
18
+ // Team member attributes schema (for JSON:API attributes object)
19
+ exports.teamMemberAttributesSchema = zod_1.z.object({
20
+ farmId: zod_1.z.string().uuid(),
21
+ userId: zod_1.z.string().uuid().nullable(), // User account ID (if user has account)
22
+ name: zod_1.z.string(),
23
+ email: zod_1.z.string().email(),
24
+ role: exports.teamMemberRoleSchema,
25
+ phone: zod_1.z.string().nullable(),
26
+ // Statistics (optional, for team dashboard)
27
+ tasksAssigned: zod_1.z.number().int().nonnegative().optional(),
28
+ tasksCompleted: zod_1.z.number().int().nonnegative().optional(),
29
+ tasksPending: zod_1.z.number().int().nonnegative().optional(),
30
+ }).merge(common_schemas_1.timestampsSchema);
31
+ // Create team member attributes (input)
32
+ exports.createTeamMemberAttributesSchema = zod_1.z.object({
33
+ name: zod_1.z.string().min(1).max(200),
34
+ email: zod_1.z.string().email(),
35
+ role: exports.teamMemberRoleSchema,
36
+ phone: zod_1.z.string().optional(),
37
+ });
38
+ // Update team member attributes (input)
39
+ exports.updateTeamMemberAttributesSchema = zod_1.z.object({
40
+ name: zod_1.z.string().min(1).max(200).optional(),
41
+ email: zod_1.z.string().email().optional(),
42
+ role: exports.teamMemberRoleSchema.optional(),
43
+ phone: zod_1.z.string().nullable().optional(),
44
+ });
45
+ // Create team member input (JSON:API format)
46
+ exports.createTeamMemberSchema = zod_1.z.object({
47
+ type: zod_1.z.literal('team-members'),
48
+ attributes: exports.createTeamMemberAttributesSchema,
49
+ });
50
+ // Update team member input (JSON:API format)
51
+ exports.updateTeamMemberSchema = zod_1.z.object({
52
+ type: zod_1.z.literal('team-members'),
53
+ id: zod_1.z.string().uuid(),
54
+ attributes: exports.updateTeamMemberAttributesSchema,
55
+ });
56
+ // Team member resource (JSON:API resource object)
57
+ exports.teamMemberResourceSchema = (0, common_schemas_1.createJsonApiResourceSchema)('team-members', exports.teamMemberAttributesSchema);
58
+ // Team member responses (JSON:API format)
59
+ exports.teamMemberResponseSchema = (0, common_schemas_1.jsonApiSingleResponseSchema)(exports.teamMemberResourceSchema);
60
+ exports.teamMemberListResponseSchema = (0, common_schemas_1.jsonApiCollectionResponseSchema)(exports.teamMemberResourceSchema);