@deepintel-ltd/farmpro-contracts 1.11.11 → 1.11.12

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.
@@ -6965,18 +6965,26 @@ export declare const financeRouter: {
6965
6965
  farmId: string;
6966
6966
  }>;
6967
6967
  summary: "Bulk import finance records";
6968
- description: "Import expenses or revenue records from an Excel file.";
6968
+ description: "Import expenses or revenue from an Excel file, or from previewed records JSON (multipart field `records`).";
6969
6969
  method: "POST";
6970
6970
  contentType: "multipart/form-data";
6971
6971
  body: z.ZodObject<{
6972
- type: z.ZodEnum<["expenses", "revenues"]>;
6973
- file: z.ZodUnknown;
6972
+ type: z.ZodEffects<z.ZodEnum<["expenses", "revenues"]>, "expenses" | "revenues", unknown>;
6973
+ /** Excel file upload (parsed on server when `records` is omitted). */
6974
+ file: z.ZodOptional<z.ZodUnknown>;
6975
+ /**
6976
+ * Optional JSON string of previewed/edited rows.
6977
+ * When present, server imports these instead of re-parsing the file.
6978
+ */
6979
+ records: z.ZodOptional<z.ZodString>;
6974
6980
  }, "strip", z.ZodTypeAny, {
6975
6981
  type: "expenses" | "revenues";
6976
6982
  file?: unknown;
6983
+ records?: string | undefined;
6977
6984
  }, {
6978
- type: "expenses" | "revenues";
6985
+ type?: unknown;
6979
6986
  file?: unknown;
6987
+ records?: string | undefined;
6980
6988
  }>;
6981
6989
  path: "/farms/:farmId/finance/import";
6982
6990
  responses: {
@@ -7302,6 +7310,354 @@ export declare const financeRouter: {
7302
7310
  }>;
7303
7311
  };
7304
7312
  };
7313
+ mapFinanceImportColumns: {
7314
+ pathParams: z.ZodObject<{
7315
+ farmId: z.ZodString;
7316
+ }, "strip", z.ZodTypeAny, {
7317
+ farmId: string;
7318
+ }, {
7319
+ farmId: string;
7320
+ }>;
7321
+ summary: "AI-map Excel columns for finance import";
7322
+ description: "When rule-based header matching is uncertain, map spreadsheet headers to FarmPro finance fields using AI and sample rows.";
7323
+ method: "POST";
7324
+ body: z.ZodObject<{
7325
+ type: z.ZodEnum<["expenses", "revenues"]>;
7326
+ headers: z.ZodArray<z.ZodString, "many">;
7327
+ sampleRows: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">;
7328
+ }, "strip", z.ZodTypeAny, {
7329
+ type: "expenses" | "revenues";
7330
+ headers: string[];
7331
+ sampleRows: Record<string, unknown>[];
7332
+ }, {
7333
+ type: "expenses" | "revenues";
7334
+ headers: string[];
7335
+ sampleRows: Record<string, unknown>[];
7336
+ }>;
7337
+ path: "/farms/:farmId/finance/import/map-columns";
7338
+ responses: {
7339
+ 200: z.ZodObject<{
7340
+ data: z.ZodObject<{
7341
+ type: z.ZodLiteral<"finance-import-column-map">;
7342
+ attributes: z.ZodObject<{
7343
+ mapping: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>;
7344
+ confidence: z.ZodNumber;
7345
+ notes: z.ZodOptional<z.ZodString>;
7346
+ }, "strip", z.ZodTypeAny, {
7347
+ mapping: Record<string, string | null>;
7348
+ confidence: number;
7349
+ notes?: string | undefined;
7350
+ }, {
7351
+ mapping: Record<string, string | null>;
7352
+ confidence: number;
7353
+ notes?: string | undefined;
7354
+ }>;
7355
+ }, "strip", z.ZodTypeAny, {
7356
+ type: "finance-import-column-map";
7357
+ attributes: {
7358
+ mapping: Record<string, string | null>;
7359
+ confidence: number;
7360
+ notes?: string | undefined;
7361
+ };
7362
+ }, {
7363
+ type: "finance-import-column-map";
7364
+ attributes: {
7365
+ mapping: Record<string, string | null>;
7366
+ confidence: number;
7367
+ notes?: string | undefined;
7368
+ };
7369
+ }>;
7370
+ }, "strip", z.ZodTypeAny, {
7371
+ data: {
7372
+ type: "finance-import-column-map";
7373
+ attributes: {
7374
+ mapping: Record<string, string | null>;
7375
+ confidence: number;
7376
+ notes?: string | undefined;
7377
+ };
7378
+ };
7379
+ }, {
7380
+ data: {
7381
+ type: "finance-import-column-map";
7382
+ attributes: {
7383
+ mapping: Record<string, string | null>;
7384
+ confidence: number;
7385
+ notes?: string | undefined;
7386
+ };
7387
+ };
7388
+ }>;
7389
+ 400: z.ZodObject<{
7390
+ errors: z.ZodArray<z.ZodObject<{
7391
+ id: z.ZodOptional<z.ZodString>;
7392
+ links: z.ZodOptional<z.ZodObject<{
7393
+ about: z.ZodOptional<z.ZodString>;
7394
+ }, "strip", z.ZodTypeAny, {
7395
+ about?: string | undefined;
7396
+ }, {
7397
+ about?: string | undefined;
7398
+ }>>;
7399
+ status: z.ZodOptional<z.ZodString>;
7400
+ code: z.ZodOptional<z.ZodString>;
7401
+ title: z.ZodOptional<z.ZodString>;
7402
+ detail: z.ZodOptional<z.ZodString>;
7403
+ source: z.ZodOptional<z.ZodObject<{
7404
+ pointer: z.ZodOptional<z.ZodString>;
7405
+ parameter: z.ZodOptional<z.ZodString>;
7406
+ }, "strip", z.ZodTypeAny, {
7407
+ pointer?: string | undefined;
7408
+ parameter?: string | undefined;
7409
+ }, {
7410
+ pointer?: string | undefined;
7411
+ parameter?: string | undefined;
7412
+ }>>;
7413
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7414
+ }, "strip", z.ZodTypeAny, {
7415
+ status?: string | undefined;
7416
+ code?: string | undefined;
7417
+ id?: string | undefined;
7418
+ links?: {
7419
+ about?: string | undefined;
7420
+ } | undefined;
7421
+ meta?: Record<string, unknown> | undefined;
7422
+ title?: string | undefined;
7423
+ detail?: string | undefined;
7424
+ source?: {
7425
+ pointer?: string | undefined;
7426
+ parameter?: string | undefined;
7427
+ } | undefined;
7428
+ }, {
7429
+ status?: string | undefined;
7430
+ code?: string | undefined;
7431
+ id?: string | undefined;
7432
+ links?: {
7433
+ about?: string | undefined;
7434
+ } | undefined;
7435
+ meta?: Record<string, unknown> | undefined;
7436
+ title?: string | undefined;
7437
+ detail?: string | undefined;
7438
+ source?: {
7439
+ pointer?: string | undefined;
7440
+ parameter?: string | undefined;
7441
+ } | undefined;
7442
+ }>, "many">;
7443
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7444
+ }, "strip", z.ZodTypeAny, {
7445
+ errors: {
7446
+ status?: string | undefined;
7447
+ code?: string | undefined;
7448
+ id?: string | undefined;
7449
+ links?: {
7450
+ about?: string | undefined;
7451
+ } | undefined;
7452
+ meta?: Record<string, unknown> | undefined;
7453
+ title?: string | undefined;
7454
+ detail?: string | undefined;
7455
+ source?: {
7456
+ pointer?: string | undefined;
7457
+ parameter?: string | undefined;
7458
+ } | undefined;
7459
+ }[];
7460
+ meta?: Record<string, unknown> | undefined;
7461
+ }, {
7462
+ errors: {
7463
+ status?: string | undefined;
7464
+ code?: string | undefined;
7465
+ id?: string | undefined;
7466
+ links?: {
7467
+ about?: string | undefined;
7468
+ } | undefined;
7469
+ meta?: Record<string, unknown> | undefined;
7470
+ title?: string | undefined;
7471
+ detail?: string | undefined;
7472
+ source?: {
7473
+ pointer?: string | undefined;
7474
+ parameter?: string | undefined;
7475
+ } | undefined;
7476
+ }[];
7477
+ meta?: Record<string, unknown> | undefined;
7478
+ }>;
7479
+ 401: z.ZodObject<{
7480
+ errors: z.ZodArray<z.ZodObject<{
7481
+ id: z.ZodOptional<z.ZodString>;
7482
+ links: z.ZodOptional<z.ZodObject<{
7483
+ about: z.ZodOptional<z.ZodString>;
7484
+ }, "strip", z.ZodTypeAny, {
7485
+ about?: string | undefined;
7486
+ }, {
7487
+ about?: string | undefined;
7488
+ }>>;
7489
+ status: z.ZodOptional<z.ZodString>;
7490
+ code: z.ZodOptional<z.ZodString>;
7491
+ title: z.ZodOptional<z.ZodString>;
7492
+ detail: z.ZodOptional<z.ZodString>;
7493
+ source: z.ZodOptional<z.ZodObject<{
7494
+ pointer: z.ZodOptional<z.ZodString>;
7495
+ parameter: z.ZodOptional<z.ZodString>;
7496
+ }, "strip", z.ZodTypeAny, {
7497
+ pointer?: string | undefined;
7498
+ parameter?: string | undefined;
7499
+ }, {
7500
+ pointer?: string | undefined;
7501
+ parameter?: string | undefined;
7502
+ }>>;
7503
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7504
+ }, "strip", z.ZodTypeAny, {
7505
+ status?: string | undefined;
7506
+ code?: string | undefined;
7507
+ id?: string | undefined;
7508
+ links?: {
7509
+ about?: string | undefined;
7510
+ } | undefined;
7511
+ meta?: Record<string, unknown> | undefined;
7512
+ title?: string | undefined;
7513
+ detail?: string | undefined;
7514
+ source?: {
7515
+ pointer?: string | undefined;
7516
+ parameter?: string | undefined;
7517
+ } | undefined;
7518
+ }, {
7519
+ status?: string | undefined;
7520
+ code?: string | undefined;
7521
+ id?: string | undefined;
7522
+ links?: {
7523
+ about?: string | undefined;
7524
+ } | undefined;
7525
+ meta?: Record<string, unknown> | undefined;
7526
+ title?: string | undefined;
7527
+ detail?: string | undefined;
7528
+ source?: {
7529
+ pointer?: string | undefined;
7530
+ parameter?: string | undefined;
7531
+ } | undefined;
7532
+ }>, "many">;
7533
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7534
+ }, "strip", z.ZodTypeAny, {
7535
+ errors: {
7536
+ status?: string | undefined;
7537
+ code?: string | undefined;
7538
+ id?: string | undefined;
7539
+ links?: {
7540
+ about?: string | undefined;
7541
+ } | undefined;
7542
+ meta?: Record<string, unknown> | undefined;
7543
+ title?: string | undefined;
7544
+ detail?: string | undefined;
7545
+ source?: {
7546
+ pointer?: string | undefined;
7547
+ parameter?: string | undefined;
7548
+ } | undefined;
7549
+ }[];
7550
+ meta?: Record<string, unknown> | undefined;
7551
+ }, {
7552
+ errors: {
7553
+ status?: string | undefined;
7554
+ code?: string | undefined;
7555
+ id?: string | undefined;
7556
+ links?: {
7557
+ about?: string | undefined;
7558
+ } | undefined;
7559
+ meta?: Record<string, unknown> | undefined;
7560
+ title?: string | undefined;
7561
+ detail?: string | undefined;
7562
+ source?: {
7563
+ pointer?: string | undefined;
7564
+ parameter?: string | undefined;
7565
+ } | undefined;
7566
+ }[];
7567
+ meta?: Record<string, unknown> | undefined;
7568
+ }>;
7569
+ 404: z.ZodObject<{
7570
+ errors: z.ZodArray<z.ZodObject<{
7571
+ id: z.ZodOptional<z.ZodString>;
7572
+ links: z.ZodOptional<z.ZodObject<{
7573
+ about: z.ZodOptional<z.ZodString>;
7574
+ }, "strip", z.ZodTypeAny, {
7575
+ about?: string | undefined;
7576
+ }, {
7577
+ about?: string | undefined;
7578
+ }>>;
7579
+ status: z.ZodOptional<z.ZodString>;
7580
+ code: z.ZodOptional<z.ZodString>;
7581
+ title: z.ZodOptional<z.ZodString>;
7582
+ detail: z.ZodOptional<z.ZodString>;
7583
+ source: z.ZodOptional<z.ZodObject<{
7584
+ pointer: z.ZodOptional<z.ZodString>;
7585
+ parameter: z.ZodOptional<z.ZodString>;
7586
+ }, "strip", z.ZodTypeAny, {
7587
+ pointer?: string | undefined;
7588
+ parameter?: string | undefined;
7589
+ }, {
7590
+ pointer?: string | undefined;
7591
+ parameter?: string | undefined;
7592
+ }>>;
7593
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7594
+ }, "strip", z.ZodTypeAny, {
7595
+ status?: string | undefined;
7596
+ code?: string | undefined;
7597
+ id?: string | undefined;
7598
+ links?: {
7599
+ about?: string | undefined;
7600
+ } | undefined;
7601
+ meta?: Record<string, unknown> | undefined;
7602
+ title?: string | undefined;
7603
+ detail?: string | undefined;
7604
+ source?: {
7605
+ pointer?: string | undefined;
7606
+ parameter?: string | undefined;
7607
+ } | undefined;
7608
+ }, {
7609
+ status?: string | undefined;
7610
+ code?: string | undefined;
7611
+ id?: string | undefined;
7612
+ links?: {
7613
+ about?: string | undefined;
7614
+ } | undefined;
7615
+ meta?: Record<string, unknown> | undefined;
7616
+ title?: string | undefined;
7617
+ detail?: string | undefined;
7618
+ source?: {
7619
+ pointer?: string | undefined;
7620
+ parameter?: string | undefined;
7621
+ } | undefined;
7622
+ }>, "many">;
7623
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7624
+ }, "strip", z.ZodTypeAny, {
7625
+ errors: {
7626
+ status?: string | undefined;
7627
+ code?: string | undefined;
7628
+ id?: string | undefined;
7629
+ links?: {
7630
+ about?: string | undefined;
7631
+ } | undefined;
7632
+ meta?: Record<string, unknown> | undefined;
7633
+ title?: string | undefined;
7634
+ detail?: string | undefined;
7635
+ source?: {
7636
+ pointer?: string | undefined;
7637
+ parameter?: string | undefined;
7638
+ } | undefined;
7639
+ }[];
7640
+ meta?: Record<string, unknown> | undefined;
7641
+ }, {
7642
+ errors: {
7643
+ status?: string | undefined;
7644
+ code?: string | undefined;
7645
+ id?: string | undefined;
7646
+ links?: {
7647
+ about?: string | undefined;
7648
+ } | undefined;
7649
+ meta?: Record<string, unknown> | undefined;
7650
+ title?: string | undefined;
7651
+ detail?: string | undefined;
7652
+ source?: {
7653
+ pointer?: string | undefined;
7654
+ parameter?: string | undefined;
7655
+ } | undefined;
7656
+ }[];
7657
+ meta?: Record<string, unknown> | undefined;
7658
+ }>;
7659
+ };
7660
+ };
7305
7661
  financeMagicEntry: {
7306
7662
  pathParams: z.ZodObject<{
7307
7663
  farmId: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"finance.routes.d.ts","sourceRoot":"","sources":["../../src/routes/finance.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAibxB,CAAC"}
1
+ {"version":3,"file":"finance.routes.d.ts","sourceRoot":"","sources":["../../src/routes/finance.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2RpB,sEAAsE;;YAEtE;;;eAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgMP,CAAC"}
@@ -259,8 +259,24 @@ export const financeRouter = c.router({
259
259
  pathParams: z.object({ farmId: z.string().uuid() }),
260
260
  contentType: 'multipart/form-data',
261
261
  body: z.object({
262
- type: z.enum(['expenses', 'revenues']),
263
- file: z.unknown(), // File upload handled via interceptor
262
+ // ts-rest's default multipart encoder JSON.stringifies strings → '"expenses"'. Accept both.
263
+ type: z.preprocess((value) => {
264
+ if (typeof value !== 'string')
265
+ return value;
266
+ const trimmed = value.trim();
267
+ if ((trimmed.startsWith('"') && trimmed.endsWith('"')) ||
268
+ (trimmed.startsWith("'") && trimmed.endsWith("'"))) {
269
+ return trimmed.slice(1, -1);
270
+ }
271
+ return trimmed;
272
+ }, z.enum(['expenses', 'revenues'])),
273
+ /** Excel file upload (parsed on server when `records` is omitted). */
274
+ file: z.unknown().optional(),
275
+ /**
276
+ * Optional JSON string of previewed/edited rows.
277
+ * When present, server imports these instead of re-parsing the file.
278
+ */
279
+ records: z.string().optional(),
264
280
  }),
265
281
  responses: {
266
282
  200: z.object({
@@ -278,7 +294,34 @@ export const financeRouter = c.router({
278
294
  404: jsonApiErrorResponseSchema,
279
295
  },
280
296
  summary: 'Bulk import finance records',
281
- description: 'Import expenses or revenue records from an Excel file.',
297
+ description: 'Import expenses or revenue from an Excel file, or from previewed records JSON (multipart field `records`).',
298
+ },
299
+ mapFinanceImportColumns: {
300
+ method: 'POST',
301
+ path: '/farms/:farmId/finance/import/map-columns',
302
+ pathParams: z.object({ farmId: z.string().uuid() }),
303
+ body: z.object({
304
+ type: z.enum(['expenses', 'revenues']),
305
+ headers: z.array(z.string()).min(1),
306
+ sampleRows: z.array(z.record(z.unknown())).max(10),
307
+ }),
308
+ responses: {
309
+ 200: z.object({
310
+ data: z.object({
311
+ type: z.literal('finance-import-column-map'),
312
+ attributes: z.object({
313
+ mapping: z.record(z.string().nullable()),
314
+ confidence: z.number(),
315
+ notes: z.string().optional(),
316
+ }),
317
+ }),
318
+ }),
319
+ 400: jsonApiErrorResponseSchema,
320
+ 401: jsonApiErrorResponseSchema,
321
+ 404: jsonApiErrorResponseSchema,
322
+ },
323
+ summary: 'AI-map Excel columns for finance import',
324
+ description: 'When rule-based header matching is uncertain, map spreadsheet headers to FarmPro finance fields using AI and sample rows.',
282
325
  },
283
326
  financeMagicEntry: {
284
327
  method: 'POST',
@@ -43,12 +43,12 @@ export declare const notificationsRouter: {
43
43
  body: z.ZodString;
44
44
  readAt: z.ZodNullable<z.ZodString>;
45
45
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
46
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
46
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
47
47
  createdAt: z.ZodString;
48
48
  }, "strip", z.ZodTypeAny, {
49
49
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
50
50
  title: string;
51
- source: "field_alert" | "notification" | "vendor_payment";
51
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
52
52
  createdAt: string;
53
53
  metadata: Record<string, unknown> | null;
54
54
  body: string;
@@ -58,7 +58,7 @@ export declare const notificationsRouter: {
58
58
  }, {
59
59
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
60
60
  title: string;
61
- source: "field_alert" | "notification" | "vendor_payment";
61
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
62
62
  createdAt: string;
63
63
  metadata: Record<string, unknown> | null;
64
64
  body: string;
@@ -75,7 +75,7 @@ export declare const notificationsRouter: {
75
75
  attributes: {
76
76
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
77
77
  title: string;
78
- source: "field_alert" | "notification" | "vendor_payment";
78
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
79
79
  createdAt: string;
80
80
  metadata: Record<string, unknown> | null;
81
81
  body: string;
@@ -92,7 +92,7 @@ export declare const notificationsRouter: {
92
92
  attributes: {
93
93
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
94
94
  title: string;
95
- source: "field_alert" | "notification" | "vendor_payment";
95
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
96
96
  createdAt: string;
97
97
  metadata: Record<string, unknown> | null;
98
98
  body: string;
@@ -135,7 +135,7 @@ export declare const notificationsRouter: {
135
135
  attributes: {
136
136
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
137
137
  title: string;
138
- source: "field_alert" | "notification" | "vendor_payment";
138
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
139
139
  createdAt: string;
140
140
  metadata: Record<string, unknown> | null;
141
141
  body: string;
@@ -164,7 +164,7 @@ export declare const notificationsRouter: {
164
164
  attributes: {
165
165
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
166
166
  title: string;
167
- source: "field_alert" | "notification" | "vendor_payment";
167
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
168
168
  createdAt: string;
169
169
  metadata: Record<string, unknown> | null;
170
170
  body: string;
@@ -488,12 +488,12 @@ export declare const notificationsRouter: {
488
488
  body: z.ZodString;
489
489
  readAt: z.ZodNullable<z.ZodString>;
490
490
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
491
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
491
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
492
492
  createdAt: z.ZodString;
493
493
  }, "strip", z.ZodTypeAny, {
494
494
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
495
495
  title: string;
496
- source: "field_alert" | "notification" | "vendor_payment";
496
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
497
497
  createdAt: string;
498
498
  metadata: Record<string, unknown> | null;
499
499
  body: string;
@@ -503,7 +503,7 @@ export declare const notificationsRouter: {
503
503
  }, {
504
504
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
505
505
  title: string;
506
- source: "field_alert" | "notification" | "vendor_payment";
506
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
507
507
  createdAt: string;
508
508
  metadata: Record<string, unknown> | null;
509
509
  body: string;
@@ -520,7 +520,7 @@ export declare const notificationsRouter: {
520
520
  attributes: {
521
521
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
522
522
  title: string;
523
- source: "field_alert" | "notification" | "vendor_payment";
523
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
524
524
  createdAt: string;
525
525
  metadata: Record<string, unknown> | null;
526
526
  body: string;
@@ -537,7 +537,7 @@ export declare const notificationsRouter: {
537
537
  attributes: {
538
538
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
539
539
  title: string;
540
- source: "field_alert" | "notification" | "vendor_payment";
540
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
541
541
  createdAt: string;
542
542
  metadata: Record<string, unknown> | null;
543
543
  body: string;
@@ -580,7 +580,7 @@ export declare const notificationsRouter: {
580
580
  attributes: {
581
581
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
582
582
  title: string;
583
- source: "field_alert" | "notification" | "vendor_payment";
583
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
584
584
  createdAt: string;
585
585
  metadata: Record<string, unknown> | null;
586
586
  body: string;
@@ -609,7 +609,7 @@ export declare const notificationsRouter: {
609
609
  attributes: {
610
610
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
611
611
  title: string;
612
- source: "field_alert" | "notification" | "vendor_payment";
612
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
613
613
  createdAt: string;
614
614
  metadata: Record<string, unknown> | null;
615
615
  body: string;
@@ -64,6 +64,7 @@ export declare const weatherRouter: {
64
64
  message: z.ZodString;
65
65
  fieldId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
66
66
  date: z.ZodString;
67
+ recommendation: z.ZodOptional<z.ZodString>;
67
68
  recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
68
69
  priority: z.ZodNumber;
69
70
  action: z.ZodString;
@@ -173,6 +174,7 @@ export declare const weatherRouter: {
173
174
  riskLevel?: string | undefined;
174
175
  }[] | undefined;
175
176
  fieldId?: string | null | undefined;
177
+ recommendation?: string | undefined;
176
178
  }, {
177
179
  type: "drought" | "heavy-rain" | "frost" | "optimal" | "wind";
178
180
  message: string;
@@ -202,6 +204,7 @@ export declare const weatherRouter: {
202
204
  riskLevel?: string | undefined;
203
205
  }[] | undefined;
204
206
  fieldId?: string | null | undefined;
207
+ recommendation?: string | undefined;
205
208
  }>, "many">>;
206
209
  }, "strip", z.ZodTypeAny, {
207
210
  farmId: string;
@@ -248,6 +251,7 @@ export declare const weatherRouter: {
248
251
  riskLevel?: string | undefined;
249
252
  }[] | undefined;
250
253
  fieldId?: string | null | undefined;
254
+ recommendation?: string | undefined;
251
255
  }[] | undefined;
252
256
  }, {
253
257
  farmId: string;
@@ -294,6 +298,7 @@ export declare const weatherRouter: {
294
298
  riskLevel?: string | undefined;
295
299
  }[] | undefined;
296
300
  fieldId?: string | null | undefined;
301
+ recommendation?: string | undefined;
297
302
  }[] | undefined;
298
303
  }>;
299
304
  relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -347,6 +352,7 @@ export declare const weatherRouter: {
347
352
  riskLevel?: string | undefined;
348
353
  }[] | undefined;
349
354
  fieldId?: string | null | undefined;
355
+ recommendation?: string | undefined;
350
356
  }[] | undefined;
351
357
  };
352
358
  relationships?: Record<string, unknown> | undefined;
@@ -400,6 +406,7 @@ export declare const weatherRouter: {
400
406
  riskLevel?: string | undefined;
401
407
  }[] | undefined;
402
408
  fieldId?: string | null | undefined;
409
+ recommendation?: string | undefined;
403
410
  }[] | undefined;
404
411
  };
405
412
  relationships?: Record<string, unknown> | undefined;
@@ -479,6 +486,7 @@ export declare const weatherRouter: {
479
486
  riskLevel?: string | undefined;
480
487
  }[] | undefined;
481
488
  fieldId?: string | null | undefined;
489
+ recommendation?: string | undefined;
482
490
  }[] | undefined;
483
491
  };
484
492
  relationships?: Record<string, unknown> | undefined;
@@ -544,6 +552,7 @@ export declare const weatherRouter: {
544
552
  riskLevel?: string | undefined;
545
553
  }[] | undefined;
546
554
  fieldId?: string | null | undefined;
555
+ recommendation?: string | undefined;
547
556
  }[] | undefined;
548
557
  };
549
558
  relationships?: Record<string, unknown> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"weather.routes.d.ts","sourceRoot":"","sources":["../../src/routes/weather.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BxB,CAAC"}
1
+ {"version":3,"file":"weather.routes.d.ts","sourceRoot":"","sources":["../../src/routes/weather.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BxB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  export declare const notificationTypeSchema: z.ZodEnum<["field_alert", "weather", "task", "payment", "system", "subscription", "team", "camera"]>;
3
- export declare const notificationSourceSchema: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
3
+ export declare const notificationSourceSchema: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
4
4
  export declare const notificationAttributesSchema: z.ZodObject<{
5
5
  userId: z.ZodString;
6
6
  farmId: z.ZodNullable<z.ZodString>;
@@ -9,12 +9,12 @@ export declare const notificationAttributesSchema: z.ZodObject<{
9
9
  body: z.ZodString;
10
10
  readAt: z.ZodNullable<z.ZodString>;
11
11
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
12
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
12
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
13
13
  createdAt: z.ZodString;
14
14
  }, "strip", z.ZodTypeAny, {
15
15
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
16
16
  title: string;
17
- source: "field_alert" | "notification" | "vendor_payment";
17
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
18
18
  createdAt: string;
19
19
  metadata: Record<string, unknown> | null;
20
20
  body: string;
@@ -24,7 +24,7 @@ export declare const notificationAttributesSchema: z.ZodObject<{
24
24
  }, {
25
25
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
26
26
  title: string;
27
- source: "field_alert" | "notification" | "vendor_payment";
27
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
28
28
  createdAt: string;
29
29
  metadata: Record<string, unknown> | null;
30
30
  body: string;
@@ -43,12 +43,12 @@ export declare const notificationResourceSchema: z.ZodObject<{
43
43
  body: z.ZodString;
44
44
  readAt: z.ZodNullable<z.ZodString>;
45
45
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
46
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
46
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
47
47
  createdAt: z.ZodString;
48
48
  }, "strip", z.ZodTypeAny, {
49
49
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
50
50
  title: string;
51
- source: "field_alert" | "notification" | "vendor_payment";
51
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
52
52
  createdAt: string;
53
53
  metadata: Record<string, unknown> | null;
54
54
  body: string;
@@ -58,7 +58,7 @@ export declare const notificationResourceSchema: z.ZodObject<{
58
58
  }, {
59
59
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
60
60
  title: string;
61
- source: "field_alert" | "notification" | "vendor_payment";
61
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
62
62
  createdAt: string;
63
63
  metadata: Record<string, unknown> | null;
64
64
  body: string;
@@ -75,7 +75,7 @@ export declare const notificationResourceSchema: z.ZodObject<{
75
75
  attributes: {
76
76
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
77
77
  title: string;
78
- source: "field_alert" | "notification" | "vendor_payment";
78
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
79
79
  createdAt: string;
80
80
  metadata: Record<string, unknown> | null;
81
81
  body: string;
@@ -92,7 +92,7 @@ export declare const notificationResourceSchema: z.ZodObject<{
92
92
  attributes: {
93
93
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
94
94
  title: string;
95
- source: "field_alert" | "notification" | "vendor_payment";
95
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
96
96
  createdAt: string;
97
97
  metadata: Record<string, unknown> | null;
98
98
  body: string;
@@ -116,12 +116,12 @@ export declare const notificationResponseSchema: z.ZodObject<{
116
116
  body: z.ZodString;
117
117
  readAt: z.ZodNullable<z.ZodString>;
118
118
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
119
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
119
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
120
120
  createdAt: z.ZodString;
121
121
  }, "strip", z.ZodTypeAny, {
122
122
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
123
123
  title: string;
124
- source: "field_alert" | "notification" | "vendor_payment";
124
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
125
125
  createdAt: string;
126
126
  metadata: Record<string, unknown> | null;
127
127
  body: string;
@@ -131,7 +131,7 @@ export declare const notificationResponseSchema: z.ZodObject<{
131
131
  }, {
132
132
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
133
133
  title: string;
134
- source: "field_alert" | "notification" | "vendor_payment";
134
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
135
135
  createdAt: string;
136
136
  metadata: Record<string, unknown> | null;
137
137
  body: string;
@@ -148,7 +148,7 @@ export declare const notificationResponseSchema: z.ZodObject<{
148
148
  attributes: {
149
149
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
150
150
  title: string;
151
- source: "field_alert" | "notification" | "vendor_payment";
151
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
152
152
  createdAt: string;
153
153
  metadata: Record<string, unknown> | null;
154
154
  body: string;
@@ -165,7 +165,7 @@ export declare const notificationResponseSchema: z.ZodObject<{
165
165
  attributes: {
166
166
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
167
167
  title: string;
168
- source: "field_alert" | "notification" | "vendor_payment";
168
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
169
169
  createdAt: string;
170
170
  metadata: Record<string, unknown> | null;
171
171
  body: string;
@@ -208,7 +208,7 @@ export declare const notificationResponseSchema: z.ZodObject<{
208
208
  attributes: {
209
209
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
210
210
  title: string;
211
- source: "field_alert" | "notification" | "vendor_payment";
211
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
212
212
  createdAt: string;
213
213
  metadata: Record<string, unknown> | null;
214
214
  body: string;
@@ -237,7 +237,7 @@ export declare const notificationResponseSchema: z.ZodObject<{
237
237
  attributes: {
238
238
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
239
239
  title: string;
240
- source: "field_alert" | "notification" | "vendor_payment";
240
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
241
241
  createdAt: string;
242
242
  metadata: Record<string, unknown> | null;
243
243
  body: string;
@@ -272,12 +272,12 @@ export declare const notificationListResponseSchema: z.ZodObject<{
272
272
  body: z.ZodString;
273
273
  readAt: z.ZodNullable<z.ZodString>;
274
274
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
275
- source: z.ZodEnum<["notification", "field_alert", "vendor_payment"]>;
275
+ source: z.ZodEnum<["notification", "field_alert", "vendor_payment", "weather_alert"]>;
276
276
  createdAt: z.ZodString;
277
277
  }, "strip", z.ZodTypeAny, {
278
278
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
279
279
  title: string;
280
- source: "field_alert" | "notification" | "vendor_payment";
280
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
281
281
  createdAt: string;
282
282
  metadata: Record<string, unknown> | null;
283
283
  body: string;
@@ -287,7 +287,7 @@ export declare const notificationListResponseSchema: z.ZodObject<{
287
287
  }, {
288
288
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
289
289
  title: string;
290
- source: "field_alert" | "notification" | "vendor_payment";
290
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
291
291
  createdAt: string;
292
292
  metadata: Record<string, unknown> | null;
293
293
  body: string;
@@ -304,7 +304,7 @@ export declare const notificationListResponseSchema: z.ZodObject<{
304
304
  attributes: {
305
305
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
306
306
  title: string;
307
- source: "field_alert" | "notification" | "vendor_payment";
307
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
308
308
  createdAt: string;
309
309
  metadata: Record<string, unknown> | null;
310
310
  body: string;
@@ -321,7 +321,7 @@ export declare const notificationListResponseSchema: z.ZodObject<{
321
321
  attributes: {
322
322
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
323
323
  title: string;
324
- source: "field_alert" | "notification" | "vendor_payment";
324
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
325
325
  createdAt: string;
326
326
  metadata: Record<string, unknown> | null;
327
327
  body: string;
@@ -364,7 +364,7 @@ export declare const notificationListResponseSchema: z.ZodObject<{
364
364
  attributes: {
365
365
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
366
366
  title: string;
367
- source: "field_alert" | "notification" | "vendor_payment";
367
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
368
368
  createdAt: string;
369
369
  metadata: Record<string, unknown> | null;
370
370
  body: string;
@@ -393,7 +393,7 @@ export declare const notificationListResponseSchema: z.ZodObject<{
393
393
  attributes: {
394
394
  type: "team" | "weather" | "field_alert" | "task" | "payment" | "system" | "subscription" | "camera";
395
395
  title: string;
396
- source: "field_alert" | "notification" | "vendor_payment";
396
+ source: "field_alert" | "notification" | "vendor_payment" | "weather_alert";
397
397
  createdAt: string;
398
398
  metadata: Record<string, unknown> | null;
399
399
  body: string;
@@ -1 +1 @@
1
- {"version":3,"file":"notifications.schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/notifications.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,sBAAsB,sGASjC,CAAC;AAEH,eAAO,MAAM,wBAAwB,8DAInC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGtC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEtC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQpC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"notifications.schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/notifications.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,sBAAsB,sGASjC,CAAC;AAEH,eAAO,MAAM,wBAAwB,+EAKnC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGtC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEtC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQpC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -14,6 +14,7 @@ export const notificationSourceSchema = z.enum([
14
14
  'notification',
15
15
  'field_alert',
16
16
  'vendor_payment',
17
+ 'weather_alert',
17
18
  ]);
18
19
  export const notificationAttributesSchema = z.object({
19
20
  userId: z.string().uuid(),
@@ -43,12 +43,14 @@ export declare const weatherForecastSchema: z.ZodObject<{
43
43
  rain?: number | undefined;
44
44
  }>;
45
45
  export declare const weatherAlertSchema: z.ZodObject<{
46
+ /** Stable id: weather_alert:{farmId}:{type}:{YYYY-MM-DD}[:disambiguator] */
46
47
  id: z.ZodString;
47
48
  type: z.ZodEnum<["drought", "heavy-rain", "frost", "optimal", "wind"]>;
48
49
  severity: z.ZodEnum<["high", "medium", "low"]>;
49
50
  message: z.ZodString;
50
51
  fieldId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
51
52
  date: z.ZodString;
53
+ recommendation: z.ZodOptional<z.ZodString>;
52
54
  recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
53
55
  priority: z.ZodNumber;
54
56
  action: z.ZodString;
@@ -158,6 +160,7 @@ export declare const weatherAlertSchema: z.ZodObject<{
158
160
  riskLevel?: string | undefined;
159
161
  }[] | undefined;
160
162
  fieldId?: string | null | undefined;
163
+ recommendation?: string | undefined;
161
164
  }, {
162
165
  type: "drought" | "heavy-rain" | "frost" | "optimal" | "wind";
163
166
  message: string;
@@ -187,6 +190,7 @@ export declare const weatherAlertSchema: z.ZodObject<{
187
190
  riskLevel?: string | undefined;
188
191
  }[] | undefined;
189
192
  fieldId?: string | null | undefined;
193
+ recommendation?: string | undefined;
190
194
  }>;
191
195
  export declare const weatherAttributesSchema: z.ZodObject<{
192
196
  farmId: z.ZodString;
@@ -229,12 +233,14 @@ export declare const weatherAttributesSchema: z.ZodObject<{
229
233
  rain?: number | undefined;
230
234
  }>, "many">;
231
235
  alerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
236
+ /** Stable id: weather_alert:{farmId}:{type}:{YYYY-MM-DD}[:disambiguator] */
232
237
  id: z.ZodString;
233
238
  type: z.ZodEnum<["drought", "heavy-rain", "frost", "optimal", "wind"]>;
234
239
  severity: z.ZodEnum<["high", "medium", "low"]>;
235
240
  message: z.ZodString;
236
241
  fieldId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
237
242
  date: z.ZodString;
243
+ recommendation: z.ZodOptional<z.ZodString>;
238
244
  recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
239
245
  priority: z.ZodNumber;
240
246
  action: z.ZodString;
@@ -344,6 +350,7 @@ export declare const weatherAttributesSchema: z.ZodObject<{
344
350
  riskLevel?: string | undefined;
345
351
  }[] | undefined;
346
352
  fieldId?: string | null | undefined;
353
+ recommendation?: string | undefined;
347
354
  }, {
348
355
  type: "drought" | "heavy-rain" | "frost" | "optimal" | "wind";
349
356
  message: string;
@@ -373,6 +380,7 @@ export declare const weatherAttributesSchema: z.ZodObject<{
373
380
  riskLevel?: string | undefined;
374
381
  }[] | undefined;
375
382
  fieldId?: string | null | undefined;
383
+ recommendation?: string | undefined;
376
384
  }>, "many">>;
377
385
  }, "strip", z.ZodTypeAny, {
378
386
  farmId: string;
@@ -419,6 +427,7 @@ export declare const weatherAttributesSchema: z.ZodObject<{
419
427
  riskLevel?: string | undefined;
420
428
  }[] | undefined;
421
429
  fieldId?: string | null | undefined;
430
+ recommendation?: string | undefined;
422
431
  }[] | undefined;
423
432
  }, {
424
433
  farmId: string;
@@ -465,6 +474,7 @@ export declare const weatherAttributesSchema: z.ZodObject<{
465
474
  riskLevel?: string | undefined;
466
475
  }[] | undefined;
467
476
  fieldId?: string | null | undefined;
477
+ recommendation?: string | undefined;
468
478
  }[] | undefined;
469
479
  }>;
470
480
  export declare const plannerRiskLevelSchema: z.ZodEnum<["low", "medium", "high"]>;
@@ -1187,12 +1197,14 @@ export declare const weatherResourceSchema: z.ZodObject<{
1187
1197
  rain?: number | undefined;
1188
1198
  }>, "many">;
1189
1199
  alerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
1200
+ /** Stable id: weather_alert:{farmId}:{type}:{YYYY-MM-DD}[:disambiguator] */
1190
1201
  id: z.ZodString;
1191
1202
  type: z.ZodEnum<["drought", "heavy-rain", "frost", "optimal", "wind"]>;
1192
1203
  severity: z.ZodEnum<["high", "medium", "low"]>;
1193
1204
  message: z.ZodString;
1194
1205
  fieldId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1195
1206
  date: z.ZodString;
1207
+ recommendation: z.ZodOptional<z.ZodString>;
1196
1208
  recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
1197
1209
  priority: z.ZodNumber;
1198
1210
  action: z.ZodString;
@@ -1302,6 +1314,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1302
1314
  riskLevel?: string | undefined;
1303
1315
  }[] | undefined;
1304
1316
  fieldId?: string | null | undefined;
1317
+ recommendation?: string | undefined;
1305
1318
  }, {
1306
1319
  type: "drought" | "heavy-rain" | "frost" | "optimal" | "wind";
1307
1320
  message: string;
@@ -1331,6 +1344,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1331
1344
  riskLevel?: string | undefined;
1332
1345
  }[] | undefined;
1333
1346
  fieldId?: string | null | undefined;
1347
+ recommendation?: string | undefined;
1334
1348
  }>, "many">>;
1335
1349
  }, "strip", z.ZodTypeAny, {
1336
1350
  farmId: string;
@@ -1377,6 +1391,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1377
1391
  riskLevel?: string | undefined;
1378
1392
  }[] | undefined;
1379
1393
  fieldId?: string | null | undefined;
1394
+ recommendation?: string | undefined;
1380
1395
  }[] | undefined;
1381
1396
  }, {
1382
1397
  farmId: string;
@@ -1423,6 +1438,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1423
1438
  riskLevel?: string | undefined;
1424
1439
  }[] | undefined;
1425
1440
  fieldId?: string | null | undefined;
1441
+ recommendation?: string | undefined;
1426
1442
  }[] | undefined;
1427
1443
  }>;
1428
1444
  relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1476,6 +1492,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1476
1492
  riskLevel?: string | undefined;
1477
1493
  }[] | undefined;
1478
1494
  fieldId?: string | null | undefined;
1495
+ recommendation?: string | undefined;
1479
1496
  }[] | undefined;
1480
1497
  };
1481
1498
  relationships?: Record<string, unknown> | undefined;
@@ -1529,6 +1546,7 @@ export declare const weatherResourceSchema: z.ZodObject<{
1529
1546
  riskLevel?: string | undefined;
1530
1547
  }[] | undefined;
1531
1548
  fieldId?: string | null | undefined;
1549
+ recommendation?: string | undefined;
1532
1550
  }[] | undefined;
1533
1551
  };
1534
1552
  relationships?: Record<string, unknown> | undefined;
@@ -1580,12 +1598,14 @@ export declare const weatherResponseSchema: z.ZodObject<{
1580
1598
  rain?: number | undefined;
1581
1599
  }>, "many">;
1582
1600
  alerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
1601
+ /** Stable id: weather_alert:{farmId}:{type}:{YYYY-MM-DD}[:disambiguator] */
1583
1602
  id: z.ZodString;
1584
1603
  type: z.ZodEnum<["drought", "heavy-rain", "frost", "optimal", "wind"]>;
1585
1604
  severity: z.ZodEnum<["high", "medium", "low"]>;
1586
1605
  message: z.ZodString;
1587
1606
  fieldId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1588
1607
  date: z.ZodString;
1608
+ recommendation: z.ZodOptional<z.ZodString>;
1589
1609
  recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
1590
1610
  priority: z.ZodNumber;
1591
1611
  action: z.ZodString;
@@ -1695,6 +1715,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1695
1715
  riskLevel?: string | undefined;
1696
1716
  }[] | undefined;
1697
1717
  fieldId?: string | null | undefined;
1718
+ recommendation?: string | undefined;
1698
1719
  }, {
1699
1720
  type: "drought" | "heavy-rain" | "frost" | "optimal" | "wind";
1700
1721
  message: string;
@@ -1724,6 +1745,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1724
1745
  riskLevel?: string | undefined;
1725
1746
  }[] | undefined;
1726
1747
  fieldId?: string | null | undefined;
1748
+ recommendation?: string | undefined;
1727
1749
  }>, "many">>;
1728
1750
  }, "strip", z.ZodTypeAny, {
1729
1751
  farmId: string;
@@ -1770,6 +1792,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1770
1792
  riskLevel?: string | undefined;
1771
1793
  }[] | undefined;
1772
1794
  fieldId?: string | null | undefined;
1795
+ recommendation?: string | undefined;
1773
1796
  }[] | undefined;
1774
1797
  }, {
1775
1798
  farmId: string;
@@ -1816,6 +1839,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1816
1839
  riskLevel?: string | undefined;
1817
1840
  }[] | undefined;
1818
1841
  fieldId?: string | null | undefined;
1842
+ recommendation?: string | undefined;
1819
1843
  }[] | undefined;
1820
1844
  }>;
1821
1845
  relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1869,6 +1893,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1869
1893
  riskLevel?: string | undefined;
1870
1894
  }[] | undefined;
1871
1895
  fieldId?: string | null | undefined;
1896
+ recommendation?: string | undefined;
1872
1897
  }[] | undefined;
1873
1898
  };
1874
1899
  relationships?: Record<string, unknown> | undefined;
@@ -1922,6 +1947,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
1922
1947
  riskLevel?: string | undefined;
1923
1948
  }[] | undefined;
1924
1949
  fieldId?: string | null | undefined;
1950
+ recommendation?: string | undefined;
1925
1951
  }[] | undefined;
1926
1952
  };
1927
1953
  relationships?: Record<string, unknown> | undefined;
@@ -2001,6 +2027,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
2001
2027
  riskLevel?: string | undefined;
2002
2028
  }[] | undefined;
2003
2029
  fieldId?: string | null | undefined;
2030
+ recommendation?: string | undefined;
2004
2031
  }[] | undefined;
2005
2032
  };
2006
2033
  relationships?: Record<string, unknown> | undefined;
@@ -2066,6 +2093,7 @@ export declare const weatherResponseSchema: z.ZodObject<{
2066
2093
  riskLevel?: string | undefined;
2067
2094
  }[] | undefined;
2068
2095
  fieldId?: string | null | undefined;
2096
+ recommendation?: string | undefined;
2069
2097
  }[] | undefined;
2070
2098
  };
2071
2099
  relationships?: Record<string, unknown> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"weather.schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/weather.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;GAEG;AAGH,eAAO,MAAM,sBAAsB,kEAAgE,CAAC;AAGpG,eAAO,MAAM,0BAA0B,sCAAoC,CAAC;AAG5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;EAM/B,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;EAMhC,CAAC;AAGH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ7B,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKlC,CAAC;AAEH,eAAO,MAAM,sBAAsB,sCAAoC,CAAC;AACxE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;EAKrC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWlC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIzC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMvC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAkE,CAAC;AAGrG,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAqD,CAAC;AAGxF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
1
+ {"version":3,"file":"weather.schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/weather.schemas.ts"],"names":[],"mappings":"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"}
@@ -26,12 +26,14 @@ export const weatherForecastSchema = z.object({
26
26
  });
27
27
  // Weather alert
28
28
  export const weatherAlertSchema = z.object({
29
- id: z.string().uuid(),
29
+ /** Stable id: weather_alert:{farmId}:{type}:{YYYY-MM-DD}[:disambiguator] */
30
+ id: z.string().min(1),
30
31
  type: weatherAlertTypeSchema,
31
32
  severity: weatherAlertSeveritySchema,
32
33
  message: z.string(),
33
34
  fieldId: z.string().uuid().nullable().optional(), // Field-specific alerts
34
35
  date: z.string().datetime(),
36
+ recommendation: z.string().optional(),
35
37
  recommendations: z.array(recommendationSchema).optional(),
36
38
  });
37
39
  // Weather attributes schema (for JSON:API attributes object)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deepintel-ltd/farmpro-contracts",
3
- "version": "1.11.11",
3
+ "version": "1.11.12",
4
4
  "description": "Type-safe API contracts for FarmPro API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",