@deepintel-ltd/farmpro-contracts 1.16.15 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,16 +2,16 @@ import { z } from 'zod';
2
2
  export declare const subscriptionsRouter: {
3
3
  getAvailablePlans: {
4
4
  query: z.ZodObject<{
5
- currency: z.ZodOptional<z.ZodEnum<["NGN", "USD"]>>;
5
+ currency: z.ZodOptional<z.ZodEnum<["NGN", "USD", "GHS", "KES", "CAD", "AED", "GBP", "EUR"]>>;
6
6
  country: z.ZodOptional<z.ZodString>;
7
7
  farmId: z.ZodOptional<z.ZodString>;
8
8
  }, "strip", z.ZodTypeAny, {
9
9
  farmId?: string | undefined;
10
- currency?: "NGN" | "USD" | undefined;
10
+ currency?: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR" | undefined;
11
11
  country?: string | undefined;
12
12
  }, {
13
13
  farmId?: string | undefined;
14
- currency?: "NGN" | "USD" | undefined;
14
+ currency?: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR" | undefined;
15
15
  country?: string | undefined;
16
16
  }>;
17
17
  summary: "Get available subscription plans";
@@ -28,22 +28,34 @@ export declare const subscriptionsRouter: {
28
28
  monthly: z.ZodNullable<z.ZodObject<{
29
29
  ngn: z.ZodNullable<z.ZodNumber>;
30
30
  usd: z.ZodNullable<z.ZodNumber>;
31
+ ghs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
32
+ kes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
31
33
  }, "strip", z.ZodTypeAny, {
32
34
  ngn: number | null;
33
35
  usd: number | null;
36
+ ghs?: number | null | undefined;
37
+ kes?: number | null | undefined;
34
38
  }, {
35
39
  ngn: number | null;
36
40
  usd: number | null;
41
+ ghs?: number | null | undefined;
42
+ kes?: number | null | undefined;
37
43
  }>>;
38
44
  annual: z.ZodNullable<z.ZodObject<{
39
45
  ngn: z.ZodNullable<z.ZodNumber>;
40
46
  usd: z.ZodNullable<z.ZodNumber>;
47
+ ghs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
48
+ kes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
41
49
  }, "strip", z.ZodTypeAny, {
42
50
  ngn: number | null;
43
51
  usd: number | null;
52
+ ghs?: number | null | undefined;
53
+ kes?: number | null | undefined;
44
54
  }, {
45
55
  ngn: number | null;
46
56
  usd: number | null;
57
+ ghs?: number | null | undefined;
58
+ kes?: number | null | undefined;
47
59
  }>>;
48
60
  custom: z.ZodBoolean;
49
61
  }, "strip", z.ZodTypeAny, {
@@ -51,20 +63,28 @@ export declare const subscriptionsRouter: {
51
63
  monthly: {
52
64
  ngn: number | null;
53
65
  usd: number | null;
66
+ ghs?: number | null | undefined;
67
+ kes?: number | null | undefined;
54
68
  } | null;
55
69
  annual: {
56
70
  ngn: number | null;
57
71
  usd: number | null;
72
+ ghs?: number | null | undefined;
73
+ kes?: number | null | undefined;
58
74
  } | null;
59
75
  }, {
60
76
  custom: boolean;
61
77
  monthly: {
62
78
  ngn: number | null;
63
79
  usd: number | null;
80
+ ghs?: number | null | undefined;
81
+ kes?: number | null | undefined;
64
82
  } | null;
65
83
  annual: {
66
84
  ngn: number | null;
67
85
  usd: number | null;
86
+ ghs?: number | null | undefined;
87
+ kes?: number | null | undefined;
68
88
  } | null;
69
89
  }>;
70
90
  features: z.ZodObject<{
@@ -135,10 +155,14 @@ export declare const subscriptionsRouter: {
135
155
  monthly: {
136
156
  ngn: number | null;
137
157
  usd: number | null;
158
+ ghs?: number | null | undefined;
159
+ kes?: number | null | undefined;
138
160
  } | null;
139
161
  annual: {
140
162
  ngn: number | null;
141
163
  usd: number | null;
164
+ ghs?: number | null | undefined;
165
+ kes?: number | null | undefined;
142
166
  } | null;
143
167
  };
144
168
  popular?: boolean | undefined;
@@ -166,10 +190,14 @@ export declare const subscriptionsRouter: {
166
190
  monthly: {
167
191
  ngn: number | null;
168
192
  usd: number | null;
193
+ ghs?: number | null | undefined;
194
+ kes?: number | null | undefined;
169
195
  } | null;
170
196
  annual: {
171
197
  ngn: number | null;
172
198
  usd: number | null;
199
+ ghs?: number | null | undefined;
200
+ kes?: number | null | undefined;
173
201
  } | null;
174
202
  };
175
203
  popular?: boolean | undefined;
@@ -178,27 +206,27 @@ export declare const subscriptionsRouter: {
178
206
  detectedLocation: z.ZodObject<{
179
207
  country: z.ZodString;
180
208
  countryName: z.ZodString;
181
- currency: z.ZodEnum<["NGN", "USD"]>;
209
+ currency: z.ZodEnum<["NGN", "USD", "GHS", "KES", "CAD", "AED", "GBP", "EUR"]>;
182
210
  }, "strip", z.ZodTypeAny, {
183
- currency: "NGN" | "USD";
184
- country: string;
185
211
  countryName: string;
186
- }, {
187
- currency: "NGN" | "USD";
212
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
188
213
  country: string;
214
+ }, {
189
215
  countryName: string;
216
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
217
+ country: string;
190
218
  }>;
191
219
  }, "strip", z.ZodTypeAny, {
192
220
  detectedLocation: {
193
- currency: "NGN" | "USD";
194
- country: string;
195
221
  countryName: string;
222
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
223
+ country: string;
196
224
  };
197
225
  }, {
198
226
  detectedLocation: {
199
- currency: "NGN" | "USD";
200
- country: string;
201
227
  countryName: string;
228
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
229
+ country: string;
202
230
  };
203
231
  }>>;
204
232
  }, "strip", z.ZodTypeAny, {
@@ -226,19 +254,23 @@ export declare const subscriptionsRouter: {
226
254
  monthly: {
227
255
  ngn: number | null;
228
256
  usd: number | null;
257
+ ghs?: number | null | undefined;
258
+ kes?: number | null | undefined;
229
259
  } | null;
230
260
  annual: {
231
261
  ngn: number | null;
232
262
  usd: number | null;
263
+ ghs?: number | null | undefined;
264
+ kes?: number | null | undefined;
233
265
  } | null;
234
266
  };
235
267
  popular?: boolean | undefined;
236
268
  }[];
237
269
  meta?: {
238
270
  detectedLocation: {
239
- currency: "NGN" | "USD";
240
- country: string;
241
271
  countryName: string;
272
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
273
+ country: string;
242
274
  };
243
275
  } | undefined;
244
276
  }, {
@@ -266,19 +298,23 @@ export declare const subscriptionsRouter: {
266
298
  monthly: {
267
299
  ngn: number | null;
268
300
  usd: number | null;
301
+ ghs?: number | null | undefined;
302
+ kes?: number | null | undefined;
269
303
  } | null;
270
304
  annual: {
271
305
  ngn: number | null;
272
306
  usd: number | null;
307
+ ghs?: number | null | undefined;
308
+ kes?: number | null | undefined;
273
309
  } | null;
274
310
  };
275
311
  popular?: boolean | undefined;
276
312
  }[];
277
313
  meta?: {
278
314
  detectedLocation: {
279
- currency: "NGN" | "USD";
280
- country: string;
281
315
  countryName: string;
316
+ currency: "NGN" | "USD" | "GHS" | "KES" | "CAD" | "AED" | "GBP" | "EUR";
317
+ country: string;
282
318
  };
283
319
  } | undefined;
284
320
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptions.routes.d.ts","sourceRoot":"","sources":["../../src/routes/subscriptions.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAmBxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmO9B,CAAC"}
1
+ {"version":3,"file":"subscriptions.routes.d.ts","sourceRoot":"","sources":["../../src/routes/subscriptions.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmO9B,CAAC"}
@@ -2,6 +2,7 @@ import { initContract } from '@ts-rest/core';
2
2
  import { z } from 'zod';
3
3
  import { subscriptionResponseSchema, subscriptionListResponseSchema, upgradeSubscriptionAttributesSchema, usageTrackingListResponseSchema, tierLimitsResponseSchema, currentUsageResponseSchema, availablePlansResponseSchema, createSubscriptionPaymentLinkAttributesSchema, subscriptionPaymentLinkResponseSchema, } from '../schemas/subscriptions.schemas';
4
4
  import { jsonApiErrorResponseSchema, jsonApiPaginationQuerySchema, } from '../schemas/common.schemas';
5
+ import { iso4217CurrencySchema } from '../schemas/locale.schemas';
5
6
  const c = initContract();
6
7
  export const subscriptionsRouter = c.router({
7
8
  // Get all available subscription plans (public endpoint for landing page)
@@ -9,7 +10,7 @@ export const subscriptionsRouter = c.router({
9
10
  method: 'GET',
10
11
  path: '/subscriptions/plans',
11
12
  query: z.object({
12
- 'currency': z.enum(['NGN', 'USD']).optional(),
13
+ 'currency': iso4217CurrencySchema.optional(),
13
14
  'country': z.string().optional(), // ISO 3166-1 alpha-2 country code (e.g., 'NG', 'US')
14
15
  'farmId': z.string().uuid().optional(), // Optional: use farm location for detection
15
16
  }),