@flowselections/floriday-klanten-module 1.0.12 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist-lib/components/klanten/DiscountsTab.d.ts +4 -0
  2. package/dist-lib/components/klanten/DiscountsTab.d.ts.map +1 -0
  3. package/dist-lib/components/klanten/DiscountsTab.js +92 -0
  4. package/dist-lib/components/klanten/GroupedKlantDetail.d.ts.map +1 -1
  5. package/dist-lib/components/klanten/GroupedKlantDetail.js +4 -1
  6. package/dist-lib/components/klanten/ImportKlanten.d.ts +2 -0
  7. package/dist-lib/components/klanten/ImportKlanten.d.ts.map +1 -0
  8. package/dist-lib/components/klanten/ImportKlanten.js +406 -0
  9. package/dist-lib/components/klanten/KlantDetail.d.ts.map +1 -1
  10. package/dist-lib/components/klanten/KlantDetail.js +2 -1
  11. package/dist-lib/components/klanten/KlantenOverzicht.d.ts.map +1 -1
  12. package/dist-lib/components/klanten/KlantenOverzicht.js +83 -23
  13. package/dist-lib/components/klanten/LocalDiscountFormDialog.d.ts +10 -0
  14. package/dist-lib/components/klanten/LocalDiscountFormDialog.d.ts.map +1 -0
  15. package/dist-lib/components/klanten/LocalDiscountFormDialog.js +107 -0
  16. package/dist-lib/components/klanten/LocalDiscountsTab.d.ts +4 -0
  17. package/dist-lib/components/klanten/LocalDiscountsTab.d.ts.map +1 -0
  18. package/dist-lib/components/klanten/LocalDiscountsTab.js +101 -0
  19. package/dist-lib/components/klanten/NieuweKlant.d.ts.map +1 -1
  20. package/dist-lib/components/klanten/NieuweKlant.js +10 -1
  21. package/dist-lib/index.d.ts +1 -0
  22. package/dist-lib/index.d.ts.map +1 -1
  23. package/dist-lib/index.js +1 -0
  24. package/dist-lib/integrations/supabase/auth-middleware.d.ts +1857 -32
  25. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  26. package/dist-lib/integrations/supabase/client.d.ts +1857 -32
  27. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  28. package/dist-lib/integrations/supabase/client.server.d.ts +1857 -32
  29. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  30. package/dist-lib/integrations/supabase/types.d.ts +1873 -18
  31. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  32. package/dist-lib/lib/accounting.functions.d.ts +5790 -315
  33. package/dist-lib/lib/accounting.functions.d.ts.map +1 -1
  34. package/dist-lib/lib/customer-analytics.functions.d.ts +1857 -32
  35. package/dist-lib/lib/customer-analytics.functions.d.ts.map +1 -1
  36. package/dist-lib/lib/customer-schemas.d.ts +147 -0
  37. package/dist-lib/lib/customer-schemas.d.ts.map +1 -1
  38. package/dist-lib/lib/customer-schemas.js +64 -7
  39. package/dist-lib/lib/customers.functions.d.ts +24512 -182
  40. package/dist-lib/lib/customers.functions.d.ts.map +1 -1
  41. package/dist-lib/lib/customers.functions.js +76 -17
  42. package/dist-lib/lib/delivery-locations.functions.d.ts +7300 -0
  43. package/dist-lib/lib/delivery-locations.functions.d.ts.map +1 -1
  44. package/dist-lib/lib/external-customers.functions.d.ts +7300 -0
  45. package/dist-lib/lib/external-customers.functions.d.ts.map +1 -1
  46. package/dist-lib/lib/floriday-discounts.functions.d.ts +22716 -0
  47. package/dist-lib/lib/floriday-discounts.functions.d.ts.map +1 -0
  48. package/dist-lib/lib/floriday-discounts.functions.js +83 -0
  49. package/dist-lib/lib/local-discounts.functions.d.ts +79495 -0
  50. package/dist-lib/lib/local-discounts.functions.d.ts.map +1 -0
  51. package/dist-lib/lib/local-discounts.functions.js +185 -0
  52. package/dist-lib/lib/overdue-invoices.functions.d.ts +11355 -0
  53. package/dist-lib/lib/overdue-invoices.functions.d.ts.map +1 -0
  54. package/dist-lib/lib/overdue-invoices.functions.js +72 -0
  55. package/package.json +9 -2
@@ -9,11 +9,15 @@ export type Database = {
9
9
  Tables: {
10
10
  afhandeling_settings: {
11
11
  Row: {
12
+ auto_print_delivery_note: boolean;
13
+ auto_process_paused: boolean;
12
14
  created_at: string;
15
+ extra_pick_days_with_stickers: number;
13
16
  id: string;
14
17
  max_workdays_earlier_pick: number;
15
18
  pick_days_before_transport: number;
16
19
  pick_distribution_enabled: boolean;
20
+ pick_weekdays: number[];
17
21
  signup_mail_enabled: boolean;
18
22
  signup_mail_lead_minutes: number;
19
23
  signup_mail_purpose: string;
@@ -22,11 +26,15 @@ export type Database = {
22
26
  user_id: string;
23
27
  };
24
28
  Insert: {
29
+ auto_print_delivery_note?: boolean;
30
+ auto_process_paused?: boolean;
25
31
  created_at?: string;
32
+ extra_pick_days_with_stickers?: number;
26
33
  id?: string;
27
34
  max_workdays_earlier_pick?: number;
28
35
  pick_days_before_transport?: number;
29
36
  pick_distribution_enabled?: boolean;
37
+ pick_weekdays?: number[];
30
38
  signup_mail_enabled?: boolean;
31
39
  signup_mail_lead_minutes?: number;
32
40
  signup_mail_purpose?: string;
@@ -35,11 +43,15 @@ export type Database = {
35
43
  user_id: string;
36
44
  };
37
45
  Update: {
46
+ auto_print_delivery_note?: boolean;
47
+ auto_process_paused?: boolean;
38
48
  created_at?: string;
49
+ extra_pick_days_with_stickers?: number;
39
50
  id?: string;
40
51
  max_workdays_earlier_pick?: number;
41
52
  pick_days_before_transport?: number;
42
53
  pick_distribution_enabled?: boolean;
54
+ pick_weekdays?: number[];
43
55
  signup_mail_enabled?: boolean;
44
56
  signup_mail_lead_minutes?: number;
45
57
  signup_mail_purpose?: string;
@@ -265,6 +277,9 @@ export type Database = {
265
277
  created_at: string;
266
278
  extra_id: string;
267
279
  id: string;
280
+ original_unit_price: number | null;
281
+ override_reason: string | null;
282
+ override_unit_price: number | null;
268
283
  quantity: number;
269
284
  total_price: number;
270
285
  unit_price: number;
@@ -274,6 +289,9 @@ export type Database = {
274
289
  created_at?: string;
275
290
  extra_id: string;
276
291
  id?: string;
292
+ original_unit_price?: number | null;
293
+ override_reason?: string | null;
294
+ override_unit_price?: number | null;
277
295
  quantity?: number;
278
296
  total_price?: number;
279
297
  unit_price?: number;
@@ -283,6 +301,9 @@ export type Database = {
283
301
  created_at?: string;
284
302
  extra_id?: string;
285
303
  id?: string;
304
+ original_unit_price?: number | null;
305
+ override_reason?: string | null;
306
+ override_unit_price?: number | null;
286
307
  quantity?: number;
287
308
  total_price?: number;
288
309
  unit_price?: number;
@@ -306,11 +327,15 @@ export type Database = {
306
327
  };
307
328
  bookings: {
308
329
  Row: {
330
+ archive_reason: string | null;
331
+ archived_at: string | null;
332
+ archived_by: string | null;
309
333
  company_name: string | null;
310
334
  conflict_checked_at: string | null;
311
335
  conflict_reason: string | null;
312
336
  created_at: string;
313
337
  created_by_role: string | null;
338
+ customer_address: string | null;
314
339
  customer_email: string | null;
315
340
  customer_name: string | null;
316
341
  end_time: string;
@@ -322,7 +347,12 @@ export type Database = {
322
347
  invoiced_at: string | null;
323
348
  notes: string | null;
324
349
  number_of_people: number;
350
+ overridden_at: string | null;
351
+ overridden_by: string | null;
352
+ override_reason: string | null;
353
+ price_override: boolean;
325
354
  room_id: string;
355
+ room_price_override: number | null;
326
356
  start_time: string;
327
357
  status: string;
328
358
  total_excl_vat: number | null;
@@ -331,11 +361,15 @@ export type Database = {
331
361
  vat_amount: number | null;
332
362
  };
333
363
  Insert: {
364
+ archive_reason?: string | null;
365
+ archived_at?: string | null;
366
+ archived_by?: string | null;
334
367
  company_name?: string | null;
335
368
  conflict_checked_at?: string | null;
336
369
  conflict_reason?: string | null;
337
370
  created_at?: string;
338
371
  created_by_role?: string | null;
372
+ customer_address?: string | null;
339
373
  customer_email?: string | null;
340
374
  customer_name?: string | null;
341
375
  end_time: string;
@@ -347,7 +381,12 @@ export type Database = {
347
381
  invoiced_at?: string | null;
348
382
  notes?: string | null;
349
383
  number_of_people?: number;
384
+ overridden_at?: string | null;
385
+ overridden_by?: string | null;
386
+ override_reason?: string | null;
387
+ price_override?: boolean;
350
388
  room_id: string;
389
+ room_price_override?: number | null;
351
390
  start_time: string;
352
391
  status?: string;
353
392
  total_excl_vat?: number | null;
@@ -356,11 +395,15 @@ export type Database = {
356
395
  vat_amount?: number | null;
357
396
  };
358
397
  Update: {
398
+ archive_reason?: string | null;
399
+ archived_at?: string | null;
400
+ archived_by?: string | null;
359
401
  company_name?: string | null;
360
402
  conflict_checked_at?: string | null;
361
403
  conflict_reason?: string | null;
362
404
  created_at?: string;
363
405
  created_by_role?: string | null;
406
+ customer_address?: string | null;
364
407
  customer_email?: string | null;
365
408
  customer_name?: string | null;
366
409
  end_time?: string;
@@ -372,7 +415,12 @@ export type Database = {
372
415
  invoiced_at?: string | null;
373
416
  notes?: string | null;
374
417
  number_of_people?: number;
418
+ overridden_at?: string | null;
419
+ overridden_by?: string | null;
420
+ override_reason?: string | null;
421
+ price_override?: boolean;
375
422
  room_id?: string;
423
+ room_price_override?: number | null;
376
424
  start_time?: string;
377
425
  status?: string;
378
426
  total_excl_vat?: number | null;
@@ -458,6 +506,48 @@ export type Database = {
458
506
  }
459
507
  ];
460
508
  };
509
+ carrier_signup_dispatch_runs: {
510
+ Row: {
511
+ detail: Json | null;
512
+ error: string | null;
513
+ finished_at: string | null;
514
+ groups: number;
515
+ id: string;
516
+ ok: boolean;
517
+ reason: string | null;
518
+ sent: number;
519
+ skipped: Json;
520
+ started_at: string;
521
+ unassigned: Json;
522
+ };
523
+ Insert: {
524
+ detail?: Json | null;
525
+ error?: string | null;
526
+ finished_at?: string | null;
527
+ groups?: number;
528
+ id?: string;
529
+ ok?: boolean;
530
+ reason?: string | null;
531
+ sent?: number;
532
+ skipped?: Json;
533
+ started_at?: string;
534
+ unassigned?: Json;
535
+ };
536
+ Update: {
537
+ detail?: Json | null;
538
+ error?: string | null;
539
+ finished_at?: string | null;
540
+ groups?: number;
541
+ id?: string;
542
+ ok?: boolean;
543
+ reason?: string | null;
544
+ sent?: number;
545
+ skipped?: Json;
546
+ started_at?: string;
547
+ unassigned?: Json;
548
+ };
549
+ Relationships: [];
550
+ };
461
551
  carrier_signup_dispatches: {
462
552
  Row: {
463
553
  carrier_id: string;
@@ -511,6 +601,7 @@ export type Database = {
511
601
  contact_person: string | null;
512
602
  created_at: string;
513
603
  delivery_days: number | null;
604
+ delivery_weekdays: number[];
514
605
  email: string | null;
515
606
  id: string;
516
607
  is_default: boolean;
@@ -518,6 +609,7 @@ export type Database = {
518
609
  notes: string | null;
519
610
  phone: string | null;
520
611
  pickup_moments: Json;
612
+ pickup_weekdays: number[];
521
613
  service_cities: string[];
522
614
  service_countries: string[];
523
615
  service_provinces: string[];
@@ -533,6 +625,7 @@ export type Database = {
533
625
  contact_person?: string | null;
534
626
  created_at?: string;
535
627
  delivery_days?: number | null;
628
+ delivery_weekdays?: number[];
536
629
  email?: string | null;
537
630
  id?: string;
538
631
  is_default?: boolean;
@@ -540,6 +633,7 @@ export type Database = {
540
633
  notes?: string | null;
541
634
  phone?: string | null;
542
635
  pickup_moments?: Json;
636
+ pickup_weekdays?: number[];
543
637
  service_cities?: string[];
544
638
  service_countries?: string[];
545
639
  service_provinces?: string[];
@@ -555,6 +649,7 @@ export type Database = {
555
649
  contact_person?: string | null;
556
650
  created_at?: string;
557
651
  delivery_days?: number | null;
652
+ delivery_weekdays?: number[];
558
653
  email?: string | null;
559
654
  id?: string;
560
655
  is_default?: boolean;
@@ -562,6 +657,7 @@ export type Database = {
562
657
  notes?: string | null;
563
658
  phone?: string | null;
564
659
  pickup_moments?: Json;
660
+ pickup_weekdays?: number[];
565
661
  service_cities?: string[];
566
662
  service_countries?: string[];
567
663
  service_provinces?: string[];
@@ -574,6 +670,182 @@ export type Database = {
574
670
  };
575
671
  Relationships: [];
576
672
  };
673
+ cart_control_draft: {
674
+ Row: {
675
+ cart_states: Json;
676
+ checked_keys: Json;
677
+ draft_date: string;
678
+ form_state: Json;
679
+ notes: string;
680
+ updated_at: string;
681
+ user_id: string;
682
+ };
683
+ Insert: {
684
+ cart_states?: Json;
685
+ checked_keys?: Json;
686
+ draft_date: string;
687
+ form_state?: Json;
688
+ notes?: string;
689
+ updated_at?: string;
690
+ user_id: string;
691
+ };
692
+ Update: {
693
+ cart_states?: Json;
694
+ checked_keys?: Json;
695
+ draft_date?: string;
696
+ form_state?: Json;
697
+ notes?: string;
698
+ updated_at?: string;
699
+ user_id?: string;
700
+ };
701
+ Relationships: [];
702
+ };
703
+ cart_control_items: {
704
+ Row: {
705
+ action: string;
706
+ block_reason: string | null;
707
+ carrier_name: string | null;
708
+ cart_index: number;
709
+ cart_number_id: string | null;
710
+ cart_number_label: string | null;
711
+ created_at: string;
712
+ customer_name: string | null;
713
+ delivery_date: string | null;
714
+ id: string;
715
+ new_pick_date: string | null;
716
+ order_id: string;
717
+ order_number: string | null;
718
+ order_source: string;
719
+ pickup_date: string | null;
720
+ session_id: string;
721
+ };
722
+ Insert: {
723
+ action: string;
724
+ block_reason?: string | null;
725
+ carrier_name?: string | null;
726
+ cart_index: number;
727
+ cart_number_id?: string | null;
728
+ cart_number_label?: string | null;
729
+ created_at?: string;
730
+ customer_name?: string | null;
731
+ delivery_date?: string | null;
732
+ id?: string;
733
+ new_pick_date?: string | null;
734
+ order_id: string;
735
+ order_number?: string | null;
736
+ order_source: string;
737
+ pickup_date?: string | null;
738
+ session_id: string;
739
+ };
740
+ Update: {
741
+ action?: string;
742
+ block_reason?: string | null;
743
+ carrier_name?: string | null;
744
+ cart_index?: number;
745
+ cart_number_id?: string | null;
746
+ cart_number_label?: string | null;
747
+ created_at?: string;
748
+ customer_name?: string | null;
749
+ delivery_date?: string | null;
750
+ id?: string;
751
+ new_pick_date?: string | null;
752
+ order_id?: string;
753
+ order_number?: string | null;
754
+ order_source?: string;
755
+ pickup_date?: string | null;
756
+ session_id?: string;
757
+ };
758
+ Relationships: [
759
+ {
760
+ foreignKeyName: "cart_control_items_session_id_fkey";
761
+ columns: ["session_id"];
762
+ isOneToOne: false;
763
+ referencedRelation: "cart_control_sessions";
764
+ referencedColumns: ["id"];
765
+ }
766
+ ];
767
+ };
768
+ cart_control_sessions: {
769
+ Row: {
770
+ blocked_count: number;
771
+ checked_count: number;
772
+ control_date: string;
773
+ created_at: string;
774
+ id: string;
775
+ notes: string | null;
776
+ performed_at: string;
777
+ rescheduled_count: number;
778
+ stock_consumed_at: string | null;
779
+ total_carts: number;
780
+ updated_at: string;
781
+ user_id: string;
782
+ };
783
+ Insert: {
784
+ blocked_count?: number;
785
+ checked_count?: number;
786
+ control_date?: string;
787
+ created_at?: string;
788
+ id?: string;
789
+ notes?: string | null;
790
+ performed_at?: string;
791
+ rescheduled_count?: number;
792
+ stock_consumed_at?: string | null;
793
+ total_carts?: number;
794
+ updated_at?: string;
795
+ user_id: string;
796
+ };
797
+ Update: {
798
+ blocked_count?: number;
799
+ checked_count?: number;
800
+ control_date?: string;
801
+ created_at?: string;
802
+ id?: string;
803
+ notes?: string | null;
804
+ performed_at?: string;
805
+ rescheduled_count?: number;
806
+ stock_consumed_at?: string | null;
807
+ total_carts?: number;
808
+ updated_at?: string;
809
+ user_id?: string;
810
+ };
811
+ Relationships: [];
812
+ };
813
+ cart_numbers: {
814
+ Row: {
815
+ assigned_at: string;
816
+ cart_index: number;
817
+ cart_number: string;
818
+ day_seq: number;
819
+ id: string;
820
+ order_id: string;
821
+ order_source: string;
822
+ pick_date: string;
823
+ status: string;
824
+ };
825
+ Insert: {
826
+ assigned_at?: string;
827
+ cart_index: number;
828
+ cart_number: string;
829
+ day_seq: number;
830
+ id?: string;
831
+ order_id: string;
832
+ order_source: string;
833
+ pick_date: string;
834
+ status?: string;
835
+ };
836
+ Update: {
837
+ assigned_at?: string;
838
+ cart_index?: number;
839
+ cart_number?: string;
840
+ day_seq?: number;
841
+ id?: string;
842
+ order_id?: string;
843
+ order_source?: string;
844
+ pick_date?: string;
845
+ status?: string;
846
+ };
847
+ Relationships: [];
848
+ };
577
849
  cart_pick_overrides: {
578
850
  Row: {
579
851
  cart_index: number;
@@ -613,6 +885,38 @@ export type Database = {
613
885
  };
614
886
  Relationships: [];
615
887
  };
888
+ cart_replan_queue: {
889
+ Row: {
890
+ attempts: number;
891
+ last_error: string | null;
892
+ order_id: string;
893
+ processed_at: string | null;
894
+ requested_at: string;
895
+ };
896
+ Insert: {
897
+ attempts?: number;
898
+ last_error?: string | null;
899
+ order_id: string;
900
+ processed_at?: string | null;
901
+ requested_at?: string;
902
+ };
903
+ Update: {
904
+ attempts?: number;
905
+ last_error?: string | null;
906
+ order_id?: string;
907
+ processed_at?: string | null;
908
+ requested_at?: string;
909
+ };
910
+ Relationships: [
911
+ {
912
+ foreignKeyName: "cart_replan_queue_order_id_fkey";
913
+ columns: ["order_id"];
914
+ isOneToOne: true;
915
+ referencedRelation: "orders";
916
+ referencedColumns: ["id"];
917
+ }
918
+ ];
919
+ };
616
920
  collections: {
617
921
  Row: {
618
922
  created_at: string;
@@ -968,8 +1272,27 @@ export type Database = {
968
1272
  customers: {
969
1273
  Row: {
970
1274
  address: string | null;
1275
+ address_line1: string | null;
1276
+ address_line2: string | null;
1277
+ address_type: string | null;
1278
+ attention_to: string | null;
1279
+ bank_account_holder: string | null;
1280
+ bank_account_number: string | null;
1281
+ bank_address_line1: string | null;
1282
+ bank_address_line2: string | null;
1283
+ bank_bic: string | null;
1284
+ bank_city: string | null;
1285
+ bank_country: string | null;
1286
+ bank_house_number: string | null;
1287
+ bank_iban: string | null;
1288
+ bank_name: string | null;
1289
+ bank_national_code: string | null;
1290
+ bank_postal_code: string | null;
1291
+ bank_state: string | null;
1292
+ billing_email: string | null;
971
1293
  bio: string | null;
972
1294
  city: string | null;
1295
+ coc_number: string | null;
973
1296
  commercial_name: string | null;
974
1297
  company_name: string;
975
1298
  connection_status: string;
@@ -978,21 +1301,28 @@ export type Database = {
978
1301
  created_at: string;
979
1302
  custom_fields: Json;
980
1303
  customer_class: string | null;
1304
+ customer_number: string | null;
1305
+ discount_days: number | null;
1306
+ discount_percentage: number | null;
981
1307
  email: string | null;
982
1308
  external_id: string | null;
1309
+ fax: string | null;
983
1310
  floriday_connection_id: string | null;
984
1311
  floriday_organization_id: string | null;
985
1312
  floriday_raw: Json | null;
986
1313
  gln: string | null;
987
1314
  house_number: string | null;
1315
+ icp_country_code: string | null;
988
1316
  id: string;
989
1317
  is_active: boolean;
1318
+ language: string | null;
990
1319
  last_synced_at: string | null;
991
1320
  logo_url: string | null;
992
1321
  markets: string[];
993
1322
  notes: string | null;
994
1323
  organization_type: string | null;
995
1324
  payment_methods: string[];
1325
+ payment_term_days: number | null;
996
1326
  phone: string | null;
997
1327
  postal_code: string | null;
998
1328
  product_groups: string[];
@@ -1003,13 +1333,33 @@ export type Database = {
1003
1333
  sync_status: string;
1004
1334
  trade_forms: string[];
1005
1335
  updated_at: string;
1336
+ vat_display: string | null;
1006
1337
  vat_number: string | null;
1007
1338
  website: string | null;
1008
1339
  };
1009
1340
  Insert: {
1010
1341
  address?: string | null;
1342
+ address_line1?: string | null;
1343
+ address_line2?: string | null;
1344
+ address_type?: string | null;
1345
+ attention_to?: string | null;
1346
+ bank_account_holder?: string | null;
1347
+ bank_account_number?: string | null;
1348
+ bank_address_line1?: string | null;
1349
+ bank_address_line2?: string | null;
1350
+ bank_bic?: string | null;
1351
+ bank_city?: string | null;
1352
+ bank_country?: string | null;
1353
+ bank_house_number?: string | null;
1354
+ bank_iban?: string | null;
1355
+ bank_name?: string | null;
1356
+ bank_national_code?: string | null;
1357
+ bank_postal_code?: string | null;
1358
+ bank_state?: string | null;
1359
+ billing_email?: string | null;
1011
1360
  bio?: string | null;
1012
1361
  city?: string | null;
1362
+ coc_number?: string | null;
1013
1363
  commercial_name?: string | null;
1014
1364
  company_name: string;
1015
1365
  connection_status?: string;
@@ -1018,21 +1368,28 @@ export type Database = {
1018
1368
  created_at?: string;
1019
1369
  custom_fields?: Json;
1020
1370
  customer_class?: string | null;
1371
+ customer_number?: string | null;
1372
+ discount_days?: number | null;
1373
+ discount_percentage?: number | null;
1021
1374
  email?: string | null;
1022
1375
  external_id?: string | null;
1376
+ fax?: string | null;
1023
1377
  floriday_connection_id?: string | null;
1024
1378
  floriday_organization_id?: string | null;
1025
1379
  floriday_raw?: Json | null;
1026
1380
  gln?: string | null;
1027
1381
  house_number?: string | null;
1382
+ icp_country_code?: string | null;
1028
1383
  id?: string;
1029
1384
  is_active?: boolean;
1385
+ language?: string | null;
1030
1386
  last_synced_at?: string | null;
1031
1387
  logo_url?: string | null;
1032
1388
  markets?: string[];
1033
1389
  notes?: string | null;
1034
1390
  organization_type?: string | null;
1035
1391
  payment_methods?: string[];
1392
+ payment_term_days?: number | null;
1036
1393
  phone?: string | null;
1037
1394
  postal_code?: string | null;
1038
1395
  product_groups?: string[];
@@ -1043,13 +1400,33 @@ export type Database = {
1043
1400
  sync_status?: string;
1044
1401
  trade_forms?: string[];
1045
1402
  updated_at?: string;
1403
+ vat_display?: string | null;
1046
1404
  vat_number?: string | null;
1047
1405
  website?: string | null;
1048
1406
  };
1049
1407
  Update: {
1050
1408
  address?: string | null;
1409
+ address_line1?: string | null;
1410
+ address_line2?: string | null;
1411
+ address_type?: string | null;
1412
+ attention_to?: string | null;
1413
+ bank_account_holder?: string | null;
1414
+ bank_account_number?: string | null;
1415
+ bank_address_line1?: string | null;
1416
+ bank_address_line2?: string | null;
1417
+ bank_bic?: string | null;
1418
+ bank_city?: string | null;
1419
+ bank_country?: string | null;
1420
+ bank_house_number?: string | null;
1421
+ bank_iban?: string | null;
1422
+ bank_name?: string | null;
1423
+ bank_national_code?: string | null;
1424
+ bank_postal_code?: string | null;
1425
+ bank_state?: string | null;
1426
+ billing_email?: string | null;
1051
1427
  bio?: string | null;
1052
1428
  city?: string | null;
1429
+ coc_number?: string | null;
1053
1430
  commercial_name?: string | null;
1054
1431
  company_name?: string;
1055
1432
  connection_status?: string;
@@ -1058,21 +1435,28 @@ export type Database = {
1058
1435
  created_at?: string;
1059
1436
  custom_fields?: Json;
1060
1437
  customer_class?: string | null;
1438
+ customer_number?: string | null;
1439
+ discount_days?: number | null;
1440
+ discount_percentage?: number | null;
1061
1441
  email?: string | null;
1062
1442
  external_id?: string | null;
1443
+ fax?: string | null;
1063
1444
  floriday_connection_id?: string | null;
1064
1445
  floriday_organization_id?: string | null;
1065
1446
  floriday_raw?: Json | null;
1066
1447
  gln?: string | null;
1067
1448
  house_number?: string | null;
1449
+ icp_country_code?: string | null;
1068
1450
  id?: string;
1069
1451
  is_active?: boolean;
1452
+ language?: string | null;
1070
1453
  last_synced_at?: string | null;
1071
1454
  logo_url?: string | null;
1072
1455
  markets?: string[];
1073
1456
  notes?: string | null;
1074
1457
  organization_type?: string | null;
1075
1458
  payment_methods?: string[];
1459
+ payment_term_days?: number | null;
1076
1460
  phone?: string | null;
1077
1461
  postal_code?: string | null;
1078
1462
  product_groups?: string[];
@@ -1083,6 +1467,7 @@ export type Database = {
1083
1467
  sync_status?: string;
1084
1468
  trade_forms?: string[];
1085
1469
  updated_at?: string;
1470
+ vat_display?: string | null;
1086
1471
  vat_number?: string | null;
1087
1472
  website?: string | null;
1088
1473
  };
@@ -1266,6 +1651,54 @@ export type Database = {
1266
1651
  }
1267
1652
  ];
1268
1653
  };
1654
+ dashboard_critical_alerts: {
1655
+ Row: {
1656
+ alert_key: string;
1657
+ alert_type: string;
1658
+ created_at: string;
1659
+ description: string | null;
1660
+ id: string;
1661
+ metadata: Json | null;
1662
+ priority: string;
1663
+ raised_at: string;
1664
+ related_cart_ids: string[] | null;
1665
+ resolved_at: string | null;
1666
+ title: string;
1667
+ updated_at: string;
1668
+ user_id: string;
1669
+ };
1670
+ Insert: {
1671
+ alert_key: string;
1672
+ alert_type: string;
1673
+ created_at?: string;
1674
+ description?: string | null;
1675
+ id?: string;
1676
+ metadata?: Json | null;
1677
+ priority?: string;
1678
+ raised_at?: string;
1679
+ related_cart_ids?: string[] | null;
1680
+ resolved_at?: string | null;
1681
+ title: string;
1682
+ updated_at?: string;
1683
+ user_id: string;
1684
+ };
1685
+ Update: {
1686
+ alert_key?: string;
1687
+ alert_type?: string;
1688
+ created_at?: string;
1689
+ description?: string | null;
1690
+ id?: string;
1691
+ metadata?: Json | null;
1692
+ priority?: string;
1693
+ raised_at?: string;
1694
+ related_cart_ids?: string[] | null;
1695
+ resolved_at?: string | null;
1696
+ title?: string;
1697
+ updated_at?: string;
1698
+ user_id?: string;
1699
+ };
1700
+ Relationships: [];
1701
+ };
1269
1702
  dashboard_daily_reports: {
1270
1703
  Row: {
1271
1704
  created_at: string;
@@ -2746,34 +3179,52 @@ export type Database = {
2746
3179
  Row: {
2747
3180
  catalog_key: string | null;
2748
3181
  catalog_url: string;
3182
+ client_id: string | null;
3183
+ client_secret_ciphertext: string | null;
3184
+ client_secret_last4: string | null;
2749
3185
  created_at: string;
2750
3186
  id: number;
2751
3187
  last_meta: Json | null;
2752
3188
  last_test_at: string | null;
2753
3189
  last_test_error: string | null;
2754
3190
  last_test_ok: boolean | null;
3191
+ last_token_test_at: string | null;
3192
+ last_token_test_error: string | null;
3193
+ last_token_test_ok: boolean | null;
2755
3194
  updated_at: string;
2756
3195
  };
2757
3196
  Insert: {
2758
3197
  catalog_key?: string | null;
2759
3198
  catalog_url?: string;
3199
+ client_id?: string | null;
3200
+ client_secret_ciphertext?: string | null;
3201
+ client_secret_last4?: string | null;
2760
3202
  created_at?: string;
2761
3203
  id?: number;
2762
3204
  last_meta?: Json | null;
2763
3205
  last_test_at?: string | null;
2764
3206
  last_test_error?: string | null;
2765
3207
  last_test_ok?: boolean | null;
3208
+ last_token_test_at?: string | null;
3209
+ last_token_test_error?: string | null;
3210
+ last_token_test_ok?: boolean | null;
2766
3211
  updated_at?: string;
2767
3212
  };
2768
3213
  Update: {
2769
3214
  catalog_key?: string | null;
2770
3215
  catalog_url?: string;
3216
+ client_id?: string | null;
3217
+ client_secret_ciphertext?: string | null;
3218
+ client_secret_last4?: string | null;
2771
3219
  created_at?: string;
2772
3220
  id?: number;
2773
3221
  last_meta?: Json | null;
2774
3222
  last_test_at?: string | null;
2775
3223
  last_test_error?: string | null;
2776
3224
  last_test_ok?: boolean | null;
3225
+ last_token_test_at?: string | null;
3226
+ last_token_test_error?: string | null;
3227
+ last_token_test_ok?: boolean | null;
2777
3228
  updated_at?: string;
2778
3229
  };
2779
3230
  Relationships: [];
@@ -3014,6 +3465,56 @@ export type Database = {
3014
3465
  }
3015
3466
  ];
3016
3467
  };
3468
+ floriday_auto_fulfillment_log: {
3469
+ Row: {
3470
+ attempts: number;
3471
+ connection_id: string;
3472
+ created_at: string;
3473
+ error: string | null;
3474
+ fulfillment_order_id: string | null;
3475
+ id: string;
3476
+ last_attempt_at: string | null;
3477
+ reason: string | null;
3478
+ sales_order_id: string;
3479
+ status: string;
3480
+ updated_at: string;
3481
+ };
3482
+ Insert: {
3483
+ attempts?: number;
3484
+ connection_id: string;
3485
+ created_at?: string;
3486
+ error?: string | null;
3487
+ fulfillment_order_id?: string | null;
3488
+ id?: string;
3489
+ last_attempt_at?: string | null;
3490
+ reason?: string | null;
3491
+ sales_order_id: string;
3492
+ status?: string;
3493
+ updated_at?: string;
3494
+ };
3495
+ Update: {
3496
+ attempts?: number;
3497
+ connection_id?: string;
3498
+ created_at?: string;
3499
+ error?: string | null;
3500
+ fulfillment_order_id?: string | null;
3501
+ id?: string;
3502
+ last_attempt_at?: string | null;
3503
+ reason?: string | null;
3504
+ sales_order_id?: string;
3505
+ status?: string;
3506
+ updated_at?: string;
3507
+ };
3508
+ Relationships: [
3509
+ {
3510
+ foreignKeyName: "floriday_auto_fulfillment_log_connection_id_fkey";
3511
+ columns: ["connection_id"];
3512
+ isOneToOne: false;
3513
+ referencedRelation: "floriday_connections";
3514
+ referencedColumns: ["id"];
3515
+ }
3516
+ ];
3517
+ };
3017
3518
  floriday_base_items_cache: {
3018
3519
  Row: {
3019
3520
  connection_id: string;
@@ -3444,23 +3945,68 @@ export type Database = {
3444
3945
  }
3445
3946
  ];
3446
3947
  };
3447
- floriday_contract_trade_item_groups_cache: {
3948
+ floriday_continuous_stock_queue: {
3448
3949
  Row: {
3950
+ attempts: number;
3449
3951
  connection_id: string;
3450
- data: Json;
3451
- fetched_at: string;
3452
- floriday_id: string;
3453
- is_deleted: boolean;
3454
- sequence_number: number;
3952
+ created_at: string;
3953
+ gateway_attempt_id: string | null;
3954
+ id: string;
3955
+ last_error: string | null;
3956
+ number_of_pieces: number;
3957
+ sent_at: string | null;
3958
+ status: string;
3959
+ trade_item_id: string;
3455
3960
  updated_at: string;
3961
+ user_id: string;
3456
3962
  };
3457
3963
  Insert: {
3964
+ attempts?: number;
3458
3965
  connection_id: string;
3459
- data: Json;
3460
- fetched_at?: string;
3461
- floriday_id: string;
3462
- is_deleted?: boolean;
3463
- sequence_number?: number;
3966
+ created_at?: string;
3967
+ gateway_attempt_id?: string | null;
3968
+ id?: string;
3969
+ last_error?: string | null;
3970
+ number_of_pieces?: number;
3971
+ sent_at?: string | null;
3972
+ status?: string;
3973
+ trade_item_id: string;
3974
+ updated_at?: string;
3975
+ user_id: string;
3976
+ };
3977
+ Update: {
3978
+ attempts?: number;
3979
+ connection_id?: string;
3980
+ created_at?: string;
3981
+ gateway_attempt_id?: string | null;
3982
+ id?: string;
3983
+ last_error?: string | null;
3984
+ number_of_pieces?: number;
3985
+ sent_at?: string | null;
3986
+ status?: string;
3987
+ trade_item_id?: string;
3988
+ updated_at?: string;
3989
+ user_id?: string;
3990
+ };
3991
+ Relationships: [];
3992
+ };
3993
+ floriday_contract_trade_item_groups_cache: {
3994
+ Row: {
3995
+ connection_id: string;
3996
+ data: Json;
3997
+ fetched_at: string;
3998
+ floriday_id: string;
3999
+ is_deleted: boolean;
4000
+ sequence_number: number;
4001
+ updated_at: string;
4002
+ };
4003
+ Insert: {
4004
+ connection_id: string;
4005
+ data: Json;
4006
+ fetched_at?: string;
4007
+ floriday_id: string;
4008
+ is_deleted?: boolean;
4009
+ sequence_number?: number;
3464
4010
  updated_at?: string;
3465
4011
  };
3466
4012
  Update: {
@@ -4115,6 +4661,24 @@ export type Database = {
4115
4661
  }
4116
4662
  ];
4117
4663
  };
4664
+ floriday_rate_limit_state: {
4665
+ Row: {
4666
+ bucket: string;
4667
+ last_refill_at: string;
4668
+ tokens: number;
4669
+ };
4670
+ Insert: {
4671
+ bucket: string;
4672
+ last_refill_at?: string;
4673
+ tokens: number;
4674
+ };
4675
+ Update: {
4676
+ bucket?: string;
4677
+ last_refill_at?: string;
4678
+ tokens?: number;
4679
+ };
4680
+ Relationships: [];
4681
+ };
4118
4682
  floriday_resource_schemas: {
4119
4683
  Row: {
4120
4684
  enums: Json;
@@ -4556,6 +5120,62 @@ export type Database = {
4556
5120
  }
4557
5121
  ];
4558
5122
  };
5123
+ flow_role_assignments: {
5124
+ Row: {
5125
+ created_at: string;
5126
+ id: string;
5127
+ role_id: string;
5128
+ user_id: string;
5129
+ };
5130
+ Insert: {
5131
+ created_at?: string;
5132
+ id?: string;
5133
+ role_id: string;
5134
+ user_id: string;
5135
+ };
5136
+ Update: {
5137
+ created_at?: string;
5138
+ id?: string;
5139
+ role_id?: string;
5140
+ user_id?: string;
5141
+ };
5142
+ Relationships: [
5143
+ {
5144
+ foreignKeyName: "flow_role_assignments_role_id_fkey";
5145
+ columns: ["role_id"];
5146
+ isOneToOne: false;
5147
+ referencedRelation: "flow_roles";
5148
+ referencedColumns: ["id"];
5149
+ }
5150
+ ];
5151
+ };
5152
+ flow_roles: {
5153
+ Row: {
5154
+ created_at: string;
5155
+ description: string | null;
5156
+ id: string;
5157
+ module_access: string[];
5158
+ name: string;
5159
+ updated_at: string;
5160
+ };
5161
+ Insert: {
5162
+ created_at?: string;
5163
+ description?: string | null;
5164
+ id?: string;
5165
+ module_access?: string[];
5166
+ name: string;
5167
+ updated_at?: string;
5168
+ };
5169
+ Update: {
5170
+ created_at?: string;
5171
+ description?: string | null;
5172
+ id?: string;
5173
+ module_access?: string[];
5174
+ name?: string;
5175
+ updated_at?: string;
5176
+ };
5177
+ Relationships: [];
5178
+ };
4559
5179
  imap_accounts: {
4560
5180
  Row: {
4561
5181
  created_at: string;
@@ -4887,6 +5507,216 @@ export type Database = {
4887
5507
  };
4888
5508
  Relationships: [];
4889
5509
  };
5510
+ local_customer_agreements: {
5511
+ Row: {
5512
+ base_price: number | null;
5513
+ created_at: string;
5514
+ currency: string;
5515
+ customer_id: string;
5516
+ id: string;
5517
+ min_quantity: number;
5518
+ net_price: number;
5519
+ notes: string | null;
5520
+ product_category_id: string | null;
5521
+ product_id: string | null;
5522
+ updated_at: string;
5523
+ valid_from: string | null;
5524
+ valid_until: string | null;
5525
+ };
5526
+ Insert: {
5527
+ base_price?: number | null;
5528
+ created_at?: string;
5529
+ currency?: string;
5530
+ customer_id: string;
5531
+ id?: string;
5532
+ min_quantity?: number;
5533
+ net_price: number;
5534
+ notes?: string | null;
5535
+ product_category_id?: string | null;
5536
+ product_id?: string | null;
5537
+ updated_at?: string;
5538
+ valid_from?: string | null;
5539
+ valid_until?: string | null;
5540
+ };
5541
+ Update: {
5542
+ base_price?: number | null;
5543
+ created_at?: string;
5544
+ currency?: string;
5545
+ customer_id?: string;
5546
+ id?: string;
5547
+ min_quantity?: number;
5548
+ net_price?: number;
5549
+ notes?: string | null;
5550
+ product_category_id?: string | null;
5551
+ product_id?: string | null;
5552
+ updated_at?: string;
5553
+ valid_from?: string | null;
5554
+ valid_until?: string | null;
5555
+ };
5556
+ Relationships: [
5557
+ {
5558
+ foreignKeyName: "local_customer_agreements_customer_id_fkey";
5559
+ columns: ["customer_id"];
5560
+ isOneToOne: false;
5561
+ referencedRelation: "customers";
5562
+ referencedColumns: ["id"];
5563
+ },
5564
+ {
5565
+ foreignKeyName: "local_customer_agreements_product_category_id_fkey";
5566
+ columns: ["product_category_id"];
5567
+ isOneToOne: false;
5568
+ referencedRelation: "product_categories";
5569
+ referencedColumns: ["id"];
5570
+ },
5571
+ {
5572
+ foreignKeyName: "local_customer_agreements_product_id_fkey";
5573
+ columns: ["product_id"];
5574
+ isOneToOne: false;
5575
+ referencedRelation: "products";
5576
+ referencedColumns: ["id"];
5577
+ }
5578
+ ];
5579
+ };
5580
+ local_customer_price_groups: {
5581
+ Row: {
5582
+ created_at: string;
5583
+ currency: string;
5584
+ customer_id: string;
5585
+ discount_type: string;
5586
+ discount_value: number;
5587
+ id: string;
5588
+ min_quantity: number;
5589
+ notes: string | null;
5590
+ product_category_id: string | null;
5591
+ product_id: string | null;
5592
+ updated_at: string;
5593
+ valid_from: string | null;
5594
+ valid_until: string | null;
5595
+ };
5596
+ Insert: {
5597
+ created_at?: string;
5598
+ currency?: string;
5599
+ customer_id: string;
5600
+ discount_type: string;
5601
+ discount_value: number;
5602
+ id?: string;
5603
+ min_quantity?: number;
5604
+ notes?: string | null;
5605
+ product_category_id?: string | null;
5606
+ product_id?: string | null;
5607
+ updated_at?: string;
5608
+ valid_from?: string | null;
5609
+ valid_until?: string | null;
5610
+ };
5611
+ Update: {
5612
+ created_at?: string;
5613
+ currency?: string;
5614
+ customer_id?: string;
5615
+ discount_type?: string;
5616
+ discount_value?: number;
5617
+ id?: string;
5618
+ min_quantity?: number;
5619
+ notes?: string | null;
5620
+ product_category_id?: string | null;
5621
+ product_id?: string | null;
5622
+ updated_at?: string;
5623
+ valid_from?: string | null;
5624
+ valid_until?: string | null;
5625
+ };
5626
+ Relationships: [
5627
+ {
5628
+ foreignKeyName: "local_customer_price_groups_customer_id_fkey";
5629
+ columns: ["customer_id"];
5630
+ isOneToOne: false;
5631
+ referencedRelation: "customers";
5632
+ referencedColumns: ["id"];
5633
+ },
5634
+ {
5635
+ foreignKeyName: "local_customer_price_groups_product_category_id_fkey";
5636
+ columns: ["product_category_id"];
5637
+ isOneToOne: false;
5638
+ referencedRelation: "product_categories";
5639
+ referencedColumns: ["id"];
5640
+ },
5641
+ {
5642
+ foreignKeyName: "local_customer_price_groups_product_id_fkey";
5643
+ columns: ["product_id"];
5644
+ isOneToOne: false;
5645
+ referencedRelation: "products";
5646
+ referencedColumns: ["id"];
5647
+ }
5648
+ ];
5649
+ };
5650
+ local_customer_sales_strategies: {
5651
+ Row: {
5652
+ created_at: string;
5653
+ currency: string;
5654
+ customer_id: string;
5655
+ discount_type: string;
5656
+ discount_value: number;
5657
+ id: string;
5658
+ min_quantity: number;
5659
+ notes: string | null;
5660
+ product_category_id: string | null;
5661
+ product_id: string | null;
5662
+ updated_at: string;
5663
+ valid_from: string | null;
5664
+ valid_until: string | null;
5665
+ };
5666
+ Insert: {
5667
+ created_at?: string;
5668
+ currency?: string;
5669
+ customer_id: string;
5670
+ discount_type: string;
5671
+ discount_value: number;
5672
+ id?: string;
5673
+ min_quantity?: number;
5674
+ notes?: string | null;
5675
+ product_category_id?: string | null;
5676
+ product_id?: string | null;
5677
+ updated_at?: string;
5678
+ valid_from?: string | null;
5679
+ valid_until?: string | null;
5680
+ };
5681
+ Update: {
5682
+ created_at?: string;
5683
+ currency?: string;
5684
+ customer_id?: string;
5685
+ discount_type?: string;
5686
+ discount_value?: number;
5687
+ id?: string;
5688
+ min_quantity?: number;
5689
+ notes?: string | null;
5690
+ product_category_id?: string | null;
5691
+ product_id?: string | null;
5692
+ updated_at?: string;
5693
+ valid_from?: string | null;
5694
+ valid_until?: string | null;
5695
+ };
5696
+ Relationships: [
5697
+ {
5698
+ foreignKeyName: "local_customer_sales_strategies_customer_id_fkey";
5699
+ columns: ["customer_id"];
5700
+ isOneToOne: false;
5701
+ referencedRelation: "customers";
5702
+ referencedColumns: ["id"];
5703
+ },
5704
+ {
5705
+ foreignKeyName: "local_customer_sales_strategies_product_category_id_fkey";
5706
+ columns: ["product_category_id"];
5707
+ isOneToOne: false;
5708
+ referencedRelation: "product_categories";
5709
+ referencedColumns: ["id"];
5710
+ },
5711
+ {
5712
+ foreignKeyName: "local_customer_sales_strategies_product_id_fkey";
5713
+ columns: ["product_id"];
5714
+ isOneToOne: false;
5715
+ referencedRelation: "products";
5716
+ referencedColumns: ["id"];
5717
+ }
5718
+ ];
5719
+ };
4890
5720
  locations: {
4891
5721
  Row: {
4892
5722
  created_at: string;
@@ -5003,6 +5833,7 @@ export type Database = {
5003
5833
  matched_customer_id: string | null;
5004
5834
  message_id: string;
5005
5835
  notes: string | null;
5836
+ order_number: string | null;
5006
5837
  parsed_payload: Json | null;
5007
5838
  reviewed_at: string | null;
5008
5839
  reviewed_by: string | null;
@@ -5018,6 +5849,7 @@ export type Database = {
5018
5849
  matched_customer_id?: string | null;
5019
5850
  message_id: string;
5020
5851
  notes?: string | null;
5852
+ order_number?: string | null;
5021
5853
  parsed_payload?: Json | null;
5022
5854
  reviewed_at?: string | null;
5023
5855
  reviewed_by?: string | null;
@@ -5033,6 +5865,7 @@ export type Database = {
5033
5865
  matched_customer_id?: string | null;
5034
5866
  message_id?: string;
5035
5867
  notes?: string | null;
5868
+ order_number?: string | null;
5036
5869
  parsed_payload?: Json | null;
5037
5870
  reviewed_at?: string | null;
5038
5871
  reviewed_by?: string | null;
@@ -5413,11 +6246,286 @@ export type Database = {
5413
6246
  }
5414
6247
  ];
5415
6248
  };
5416
- notifications: {
6249
+ nmbrs_component_mapping: {
5417
6250
  Row: {
5418
6251
  created_at: string;
5419
6252
  id: string;
5420
- message: string | null;
6253
+ source_kind: string;
6254
+ source_value: string | null;
6255
+ updated_at: string;
6256
+ wage_code: string;
6257
+ };
6258
+ Insert: {
6259
+ created_at?: string;
6260
+ id?: string;
6261
+ source_kind: string;
6262
+ source_value?: string | null;
6263
+ updated_at?: string;
6264
+ wage_code: string;
6265
+ };
6266
+ Update: {
6267
+ created_at?: string;
6268
+ id?: string;
6269
+ source_kind?: string;
6270
+ source_value?: string | null;
6271
+ updated_at?: string;
6272
+ wage_code?: string;
6273
+ };
6274
+ Relationships: [
6275
+ {
6276
+ foreignKeyName: "nmbrs_component_mapping_wage_code_fkey";
6277
+ columns: ["wage_code"];
6278
+ isOneToOne: false;
6279
+ referencedRelation: "nmbrs_wage_components";
6280
+ referencedColumns: ["code"];
6281
+ }
6282
+ ];
6283
+ };
6284
+ nmbrs_employee_mapping: {
6285
+ Row: {
6286
+ active_from: string | null;
6287
+ active_to: string | null;
6288
+ contract_hours_per_week: number | null;
6289
+ created_at: string;
6290
+ hourly_wage: number | null;
6291
+ id: string;
6292
+ monteur_id: string;
6293
+ nmbrs_company_code: string | null;
6294
+ nmbrs_employee_number: string;
6295
+ updated_at: string;
6296
+ };
6297
+ Insert: {
6298
+ active_from?: string | null;
6299
+ active_to?: string | null;
6300
+ contract_hours_per_week?: number | null;
6301
+ created_at?: string;
6302
+ hourly_wage?: number | null;
6303
+ id?: string;
6304
+ monteur_id: string;
6305
+ nmbrs_company_code?: string | null;
6306
+ nmbrs_employee_number: string;
6307
+ updated_at?: string;
6308
+ };
6309
+ Update: {
6310
+ active_from?: string | null;
6311
+ active_to?: string | null;
6312
+ contract_hours_per_week?: number | null;
6313
+ created_at?: string;
6314
+ hourly_wage?: number | null;
6315
+ id?: string;
6316
+ monteur_id?: string;
6317
+ nmbrs_company_code?: string | null;
6318
+ nmbrs_employee_number?: string;
6319
+ updated_at?: string;
6320
+ };
6321
+ Relationships: [
6322
+ {
6323
+ foreignKeyName: "nmbrs_employee_mapping_monteur_id_fkey";
6324
+ columns: ["monteur_id"];
6325
+ isOneToOne: true;
6326
+ referencedRelation: "monteurs";
6327
+ referencedColumns: ["id"];
6328
+ }
6329
+ ];
6330
+ };
6331
+ nmbrs_export_lines: {
6332
+ Row: {
6333
+ amount: number;
6334
+ created_at: string;
6335
+ entry_date: string;
6336
+ hours: number;
6337
+ id: string;
6338
+ monteur_id: string;
6339
+ nmbrs_employee_number: string | null;
6340
+ notes: string | null;
6341
+ run_id: string;
6342
+ source_kind: string | null;
6343
+ source_ref_id: string | null;
6344
+ updated_at: string;
6345
+ wage_code: string;
6346
+ };
6347
+ Insert: {
6348
+ amount?: number;
6349
+ created_at?: string;
6350
+ entry_date: string;
6351
+ hours?: number;
6352
+ id?: string;
6353
+ monteur_id: string;
6354
+ nmbrs_employee_number?: string | null;
6355
+ notes?: string | null;
6356
+ run_id: string;
6357
+ source_kind?: string | null;
6358
+ source_ref_id?: string | null;
6359
+ updated_at?: string;
6360
+ wage_code: string;
6361
+ };
6362
+ Update: {
6363
+ amount?: number;
6364
+ created_at?: string;
6365
+ entry_date?: string;
6366
+ hours?: number;
6367
+ id?: string;
6368
+ monteur_id?: string;
6369
+ nmbrs_employee_number?: string | null;
6370
+ notes?: string | null;
6371
+ run_id?: string;
6372
+ source_kind?: string | null;
6373
+ source_ref_id?: string | null;
6374
+ updated_at?: string;
6375
+ wage_code?: string;
6376
+ };
6377
+ Relationships: [
6378
+ {
6379
+ foreignKeyName: "nmbrs_export_lines_monteur_id_fkey";
6380
+ columns: ["monteur_id"];
6381
+ isOneToOne: false;
6382
+ referencedRelation: "monteurs";
6383
+ referencedColumns: ["id"];
6384
+ },
6385
+ {
6386
+ foreignKeyName: "nmbrs_export_lines_run_id_fkey";
6387
+ columns: ["run_id"];
6388
+ isOneToOne: false;
6389
+ referencedRelation: "nmbrs_export_runs";
6390
+ referencedColumns: ["id"];
6391
+ },
6392
+ {
6393
+ foreignKeyName: "nmbrs_export_lines_wage_code_fkey";
6394
+ columns: ["wage_code"];
6395
+ isOneToOne: false;
6396
+ referencedRelation: "nmbrs_wage_components";
6397
+ referencedColumns: ["code"];
6398
+ }
6399
+ ];
6400
+ };
6401
+ nmbrs_export_runs: {
6402
+ Row: {
6403
+ created_at: string;
6404
+ file_name: string | null;
6405
+ generated_at: string;
6406
+ generated_by: string | null;
6407
+ id: string;
6408
+ notes: string | null;
6409
+ period_end: string;
6410
+ period_label: string;
6411
+ period_start: string;
6412
+ status: string;
6413
+ total_hours: number;
6414
+ total_lines: number;
6415
+ updated_at: string;
6416
+ };
6417
+ Insert: {
6418
+ created_at?: string;
6419
+ file_name?: string | null;
6420
+ generated_at?: string;
6421
+ generated_by?: string | null;
6422
+ id?: string;
6423
+ notes?: string | null;
6424
+ period_end: string;
6425
+ period_label: string;
6426
+ period_start: string;
6427
+ status?: string;
6428
+ total_hours?: number;
6429
+ total_lines?: number;
6430
+ updated_at?: string;
6431
+ };
6432
+ Update: {
6433
+ created_at?: string;
6434
+ file_name?: string | null;
6435
+ generated_at?: string;
6436
+ generated_by?: string | null;
6437
+ id?: string;
6438
+ notes?: string | null;
6439
+ period_end?: string;
6440
+ period_label?: string;
6441
+ period_start?: string;
6442
+ status?: string;
6443
+ total_hours?: number;
6444
+ total_lines?: number;
6445
+ updated_at?: string;
6446
+ };
6447
+ Relationships: [];
6448
+ };
6449
+ nmbrs_settings: {
6450
+ Row: {
6451
+ created_at: string;
6452
+ default_company_code: string | null;
6453
+ id: boolean;
6454
+ include_travel: boolean;
6455
+ overtime_threshold_daily: number;
6456
+ overtime_threshold_weekly: number;
6457
+ period_type: string;
6458
+ updated_at: string;
6459
+ updated_by: string | null;
6460
+ week_start_day: number;
6461
+ };
6462
+ Insert: {
6463
+ created_at?: string;
6464
+ default_company_code?: string | null;
6465
+ id?: boolean;
6466
+ include_travel?: boolean;
6467
+ overtime_threshold_daily?: number;
6468
+ overtime_threshold_weekly?: number;
6469
+ period_type?: string;
6470
+ updated_at?: string;
6471
+ updated_by?: string | null;
6472
+ week_start_day?: number;
6473
+ };
6474
+ Update: {
6475
+ created_at?: string;
6476
+ default_company_code?: string | null;
6477
+ id?: boolean;
6478
+ include_travel?: boolean;
6479
+ overtime_threshold_daily?: number;
6480
+ overtime_threshold_weekly?: number;
6481
+ period_type?: string;
6482
+ updated_at?: string;
6483
+ updated_by?: string | null;
6484
+ week_start_day?: number;
6485
+ };
6486
+ Relationships: [];
6487
+ };
6488
+ nmbrs_wage_components: {
6489
+ Row: {
6490
+ category: string;
6491
+ code: string;
6492
+ created_at: string;
6493
+ id: string;
6494
+ is_active: boolean;
6495
+ label: string;
6496
+ sort_order: number;
6497
+ unit: string;
6498
+ updated_at: string;
6499
+ };
6500
+ Insert: {
6501
+ category: string;
6502
+ code: string;
6503
+ created_at?: string;
6504
+ id?: string;
6505
+ is_active?: boolean;
6506
+ label: string;
6507
+ sort_order?: number;
6508
+ unit: string;
6509
+ updated_at?: string;
6510
+ };
6511
+ Update: {
6512
+ category?: string;
6513
+ code?: string;
6514
+ created_at?: string;
6515
+ id?: string;
6516
+ is_active?: boolean;
6517
+ label?: string;
6518
+ sort_order?: number;
6519
+ unit?: string;
6520
+ updated_at?: string;
6521
+ };
6522
+ Relationships: [];
6523
+ };
6524
+ notifications: {
6525
+ Row: {
6526
+ created_at: string;
6527
+ id: string;
6528
+ message: string | null;
5421
6529
  read: boolean;
5422
6530
  title: string;
5423
6531
  updated_at: string;
@@ -5644,6 +6752,7 @@ export type Database = {
5644
6752
  id: string;
5645
6753
  items: Json;
5646
6754
  notes: string | null;
6755
+ order_number: string | null;
5647
6756
  recipient_id: string;
5648
6757
  total_amount: number;
5649
6758
  };
@@ -5657,6 +6766,7 @@ export type Database = {
5657
6766
  id?: string;
5658
6767
  items?: Json;
5659
6768
  notes?: string | null;
6769
+ order_number?: string | null;
5660
6770
  recipient_id: string;
5661
6771
  total_amount?: number;
5662
6772
  };
@@ -5670,6 +6780,7 @@ export type Database = {
5670
6780
  id?: string;
5671
6781
  items?: Json;
5672
6782
  notes?: string | null;
6783
+ order_number?: string | null;
5673
6784
  recipient_id?: string;
5674
6785
  total_amount?: number;
5675
6786
  };
@@ -5837,6 +6948,9 @@ export type Database = {
5837
6948
  crates_per_layer: number;
5838
6949
  created_at: string;
5839
6950
  id: string;
6951
+ layer_fraction: number;
6952
+ layer_share_pct: number;
6953
+ layers_per_cart: number;
5840
6954
  order_item_id: string | null;
5841
6955
  plants_per_crate: number;
5842
6956
  product_id: string | null;
@@ -5848,6 +6962,9 @@ export type Database = {
5848
6962
  crates_per_layer?: number;
5849
6963
  created_at?: string;
5850
6964
  id?: string;
6965
+ layer_fraction?: number;
6966
+ layer_share_pct?: number;
6967
+ layers_per_cart?: number;
5851
6968
  order_item_id?: string | null;
5852
6969
  plants_per_crate?: number;
5853
6970
  product_id?: string | null;
@@ -5859,6 +6976,9 @@ export type Database = {
5859
6976
  crates_per_layer?: number;
5860
6977
  created_at?: string;
5861
6978
  id?: string;
6979
+ layer_fraction?: number;
6980
+ layer_share_pct?: number;
6981
+ layers_per_cart?: number;
5862
6982
  order_item_id?: string | null;
5863
6983
  plants_per_crate?: number;
5864
6984
  product_id?: string | null;
@@ -5890,33 +7010,45 @@ export type Database = {
5890
7010
  };
5891
7011
  order_carts: {
5892
7012
  Row: {
7013
+ algorithm_version: number;
5893
7014
  cart_number: number;
5894
7015
  created_at: string;
5895
7016
  id: string;
5896
7017
  is_auto: boolean;
5897
7018
  is_complete: boolean;
5898
7019
  notes: string | null;
7020
+ occupancy_pct: number;
5899
7021
  order_id: string;
7022
+ source: string;
7023
+ total_layers_used: number;
5900
7024
  updated_at: string;
5901
7025
  };
5902
7026
  Insert: {
7027
+ algorithm_version?: number;
5903
7028
  cart_number: number;
5904
7029
  created_at?: string;
5905
7030
  id?: string;
5906
7031
  is_auto?: boolean;
5907
7032
  is_complete?: boolean;
5908
7033
  notes?: string | null;
7034
+ occupancy_pct?: number;
5909
7035
  order_id: string;
7036
+ source?: string;
7037
+ total_layers_used?: number;
5910
7038
  updated_at?: string;
5911
7039
  };
5912
7040
  Update: {
7041
+ algorithm_version?: number;
5913
7042
  cart_number?: number;
5914
7043
  created_at?: string;
5915
7044
  id?: string;
5916
7045
  is_auto?: boolean;
5917
7046
  is_complete?: boolean;
5918
7047
  notes?: string | null;
7048
+ occupancy_pct?: number;
5919
7049
  order_id?: string;
7050
+ source?: string;
7051
+ total_layers_used?: number;
5920
7052
  updated_at?: string;
5921
7053
  };
5922
7054
  Relationships: [
@@ -6076,6 +7208,8 @@ export type Database = {
6076
7208
  order_date: string;
6077
7209
  order_number: string;
6078
7210
  order_source: string;
7211
+ plan_locked_at: string | null;
7212
+ plan_locked_ref: string | null;
6079
7213
  status: string;
6080
7214
  total: string;
6081
7215
  updated_at: string;
@@ -6092,6 +7226,8 @@ export type Database = {
6092
7226
  order_date?: string;
6093
7227
  order_number: string;
6094
7228
  order_source?: string;
7229
+ plan_locked_at?: string | null;
7230
+ plan_locked_ref?: string | null;
6095
7231
  status?: string;
6096
7232
  total?: string;
6097
7233
  updated_at?: string;
@@ -6108,6 +7244,8 @@ export type Database = {
6108
7244
  order_date?: string;
6109
7245
  order_number?: string;
6110
7246
  order_source?: string;
7247
+ plan_locked_at?: string | null;
7248
+ plan_locked_ref?: string | null;
6111
7249
  status?: string;
6112
7250
  total?: string;
6113
7251
  updated_at?: string;
@@ -6427,6 +7565,7 @@ export type Database = {
6427
7565
  purchase_price: number | null;
6428
7566
  quantity: number;
6429
7567
  sale_price: number | null;
7568
+ trade_item_key: string | null;
6430
7569
  unit: string;
6431
7570
  updated_at: string;
6432
7571
  weight: string | null;
@@ -6449,6 +7588,7 @@ export type Database = {
6449
7588
  purchase_price?: number | null;
6450
7589
  quantity?: number;
6451
7590
  sale_price?: number | null;
7591
+ trade_item_key?: string | null;
6452
7592
  unit?: string;
6453
7593
  updated_at?: string;
6454
7594
  weight?: string | null;
@@ -6471,6 +7611,7 @@ export type Database = {
6471
7611
  purchase_price?: number | null;
6472
7612
  quantity?: number;
6473
7613
  sale_price?: number | null;
7614
+ trade_item_key?: string | null;
6474
7615
  unit?: string;
6475
7616
  updated_at?: string;
6476
7617
  weight?: string | null;
@@ -6479,28 +7620,34 @@ export type Database = {
6479
7620
  };
6480
7621
  profiles: {
6481
7622
  Row: {
7623
+ address: string | null;
6482
7624
  created_at: string;
6483
7625
  display_name: string | null;
6484
7626
  email: string | null;
6485
7627
  id: string;
7628
+ is_superadmin: boolean;
6486
7629
  notification_preferences: Json;
6487
7630
  tenant_id: string | null;
6488
7631
  updated_at: string;
6489
7632
  };
6490
7633
  Insert: {
7634
+ address?: string | null;
6491
7635
  created_at?: string;
6492
7636
  display_name?: string | null;
6493
7637
  email?: string | null;
6494
7638
  id: string;
7639
+ is_superadmin?: boolean;
6495
7640
  notification_preferences?: Json;
6496
7641
  tenant_id?: string | null;
6497
7642
  updated_at?: string;
6498
7643
  };
6499
7644
  Update: {
7645
+ address?: string | null;
6500
7646
  created_at?: string;
6501
7647
  display_name?: string | null;
6502
7648
  email?: string | null;
6503
7649
  id?: string;
7650
+ is_superadmin?: boolean;
6504
7651
  notification_preferences?: Json;
6505
7652
  tenant_id?: string | null;
6506
7653
  updated_at?: string;
@@ -7322,6 +8469,120 @@ export type Database = {
7322
8469
  };
7323
8470
  Relationships: [];
7324
8471
  };
8472
+ sidebar_config: {
8473
+ Row: {
8474
+ id: string;
8475
+ module_order: string[];
8476
+ updated_at: string;
8477
+ };
8478
+ Insert: {
8479
+ id?: string;
8480
+ module_order?: string[];
8481
+ updated_at?: string;
8482
+ };
8483
+ Update: {
8484
+ id?: string;
8485
+ module_order?: string[];
8486
+ updated_at?: string;
8487
+ };
8488
+ Relationships: [];
8489
+ };
8490
+ stock_import_runs: {
8491
+ Row: {
8492
+ connection_id: string | null;
8493
+ created_at: string;
8494
+ created_rows: number;
8495
+ errors: Json;
8496
+ filename: string | null;
8497
+ id: string;
8498
+ mutations: Json;
8499
+ skipped_rows: number;
8500
+ total_rows: number;
8501
+ updated_rows: number;
8502
+ user_id: string;
8503
+ };
8504
+ Insert: {
8505
+ connection_id?: string | null;
8506
+ created_at?: string;
8507
+ created_rows?: number;
8508
+ errors?: Json;
8509
+ filename?: string | null;
8510
+ id?: string;
8511
+ mutations?: Json;
8512
+ skipped_rows?: number;
8513
+ total_rows?: number;
8514
+ updated_rows?: number;
8515
+ user_id: string;
8516
+ };
8517
+ Update: {
8518
+ connection_id?: string | null;
8519
+ created_at?: string;
8520
+ created_rows?: number;
8521
+ errors?: Json;
8522
+ filename?: string | null;
8523
+ id?: string;
8524
+ mutations?: Json;
8525
+ skipped_rows?: number;
8526
+ total_rows?: number;
8527
+ updated_rows?: number;
8528
+ user_id?: string;
8529
+ };
8530
+ Relationships: [];
8531
+ };
8532
+ stock_mutation_log: {
8533
+ Row: {
8534
+ connection_id: string | null;
8535
+ created_at: string;
8536
+ created_by: string | null;
8537
+ id: string;
8538
+ mutation_type: string;
8539
+ order_id: string | null;
8540
+ order_item_id: string | null;
8541
+ order_source: string | null;
8542
+ physical_after: number | null;
8543
+ physical_before: number | null;
8544
+ qty_delta: number;
8545
+ reason: string | null;
8546
+ reserved_after: number | null;
8547
+ reserved_before: number | null;
8548
+ trade_item_key: string | null;
8549
+ };
8550
+ Insert: {
8551
+ connection_id?: string | null;
8552
+ created_at?: string;
8553
+ created_by?: string | null;
8554
+ id?: string;
8555
+ mutation_type: string;
8556
+ order_id?: string | null;
8557
+ order_item_id?: string | null;
8558
+ order_source?: string | null;
8559
+ physical_after?: number | null;
8560
+ physical_before?: number | null;
8561
+ qty_delta: number;
8562
+ reason?: string | null;
8563
+ reserved_after?: number | null;
8564
+ reserved_before?: number | null;
8565
+ trade_item_key?: string | null;
8566
+ };
8567
+ Update: {
8568
+ connection_id?: string | null;
8569
+ created_at?: string;
8570
+ created_by?: string | null;
8571
+ id?: string;
8572
+ mutation_type?: string;
8573
+ order_id?: string | null;
8574
+ order_item_id?: string | null;
8575
+ order_source?: string | null;
8576
+ physical_after?: number | null;
8577
+ physical_before?: number | null;
8578
+ qty_delta?: number;
8579
+ reason?: string | null;
8580
+ reserved_after?: number | null;
8581
+ reserved_before?: number | null;
8582
+ trade_item_key?: string | null;
8583
+ };
8584
+ Relationships: [];
8585
+ };
7325
8586
  supplier_products: {
7326
8587
  Row: {
7327
8588
  article_number: string | null;
@@ -7587,7 +8848,13 @@ export type Database = {
7587
8848
  connection_id: string | null;
7588
8849
  created_at: string;
7589
8850
  data: Json;
8851
+ floriday_id: string | null;
8852
+ floriday_link_error: string | null;
8853
+ floriday_link_status: string;
7590
8854
  id: string;
8855
+ last_floriday_sync_at: string | null;
8856
+ missing_required_fields: string[];
8857
+ source: string;
7591
8858
  updated_at: string;
7592
8859
  user_id: string;
7593
8860
  };
@@ -7595,7 +8862,13 @@ export type Database = {
7595
8862
  connection_id?: string | null;
7596
8863
  created_at?: string;
7597
8864
  data?: Json;
8865
+ floriday_id?: string | null;
8866
+ floriday_link_error?: string | null;
8867
+ floriday_link_status?: string;
7598
8868
  id?: string;
8869
+ last_floriday_sync_at?: string | null;
8870
+ missing_required_fields?: string[];
8871
+ source?: string;
7599
8872
  updated_at?: string;
7600
8873
  user_id: string;
7601
8874
  };
@@ -7603,7 +8876,13 @@ export type Database = {
7603
8876
  connection_id?: string | null;
7604
8877
  created_at?: string;
7605
8878
  data?: Json;
8879
+ floriday_id?: string | null;
8880
+ floriday_link_error?: string | null;
8881
+ floriday_link_status?: string;
7606
8882
  id?: string;
8883
+ last_floriday_sync_at?: string | null;
8884
+ missing_required_fields?: string[];
8885
+ source?: string;
7607
8886
  updated_at?: string;
7608
8887
  user_id?: string;
7609
8888
  };
@@ -7651,12 +8930,122 @@ export type Database = {
7651
8930
  };
7652
8931
  Relationships: [];
7653
8932
  };
7654
- twinfield_connections: {
8933
+ trade_item_supply_lines: {
7655
8934
  Row: {
7656
- access_token: string | null;
7657
- client_id: string;
7658
- client_secret: string | null;
7659
- cluster_uri: string | null;
8935
+ available_quantity: number | null;
8936
+ connection_id: string;
8937
+ created_at: string;
8938
+ currency: string | null;
8939
+ endpoint_family: string | null;
8940
+ environment: string | null;
8941
+ id: string;
8942
+ last_error: string | null;
8943
+ last_status: number | null;
8944
+ packing_configuration_id: string | null;
8945
+ period_end: string | null;
8946
+ period_start: string | null;
8947
+ price_per_piece: number | null;
8948
+ sales_unit: string | null;
8949
+ supply_line_id: string | null;
8950
+ supply_type: string;
8951
+ trade_item_id: string;
8952
+ updated_at: string;
8953
+ user_id: string;
8954
+ week: number | null;
8955
+ year: number | null;
8956
+ };
8957
+ Insert: {
8958
+ available_quantity?: number | null;
8959
+ connection_id: string;
8960
+ created_at?: string;
8961
+ currency?: string | null;
8962
+ endpoint_family?: string | null;
8963
+ environment?: string | null;
8964
+ id?: string;
8965
+ last_error?: string | null;
8966
+ last_status?: number | null;
8967
+ packing_configuration_id?: string | null;
8968
+ period_end?: string | null;
8969
+ period_start?: string | null;
8970
+ price_per_piece?: number | null;
8971
+ sales_unit?: string | null;
8972
+ supply_line_id?: string | null;
8973
+ supply_type?: string;
8974
+ trade_item_id: string;
8975
+ updated_at?: string;
8976
+ user_id: string;
8977
+ week?: number | null;
8978
+ year?: number | null;
8979
+ };
8980
+ Update: {
8981
+ available_quantity?: number | null;
8982
+ connection_id?: string;
8983
+ created_at?: string;
8984
+ currency?: string | null;
8985
+ endpoint_family?: string | null;
8986
+ environment?: string | null;
8987
+ id?: string;
8988
+ last_error?: string | null;
8989
+ last_status?: number | null;
8990
+ packing_configuration_id?: string | null;
8991
+ period_end?: string | null;
8992
+ period_start?: string | null;
8993
+ price_per_piece?: number | null;
8994
+ sales_unit?: string | null;
8995
+ supply_line_id?: string | null;
8996
+ supply_type?: string;
8997
+ trade_item_id?: string;
8998
+ updated_at?: string;
8999
+ user_id?: string;
9000
+ week?: number | null;
9001
+ year?: number | null;
9002
+ };
9003
+ Relationships: [];
9004
+ };
9005
+ trade_item_warehouse_preferences: {
9006
+ Row: {
9007
+ connection_id: string;
9008
+ created_at: string;
9009
+ id: string;
9010
+ trade_item_id: string;
9011
+ updated_at: string;
9012
+ warehouse_id: string;
9013
+ warehouse_name: string | null;
9014
+ };
9015
+ Insert: {
9016
+ connection_id: string;
9017
+ created_at?: string;
9018
+ id?: string;
9019
+ trade_item_id: string;
9020
+ updated_at?: string;
9021
+ warehouse_id: string;
9022
+ warehouse_name?: string | null;
9023
+ };
9024
+ Update: {
9025
+ connection_id?: string;
9026
+ created_at?: string;
9027
+ id?: string;
9028
+ trade_item_id?: string;
9029
+ updated_at?: string;
9030
+ warehouse_id?: string;
9031
+ warehouse_name?: string | null;
9032
+ };
9033
+ Relationships: [
9034
+ {
9035
+ foreignKeyName: "trade_item_warehouse_preferences_connection_id_fkey";
9036
+ columns: ["connection_id"];
9037
+ isOneToOne: false;
9038
+ referencedRelation: "floriday_connections";
9039
+ referencedColumns: ["id"];
9040
+ }
9041
+ ];
9042
+ };
9043
+ twinfield_connections: {
9044
+ Row: {
9045
+ access_token: string | null;
9046
+ client_id: string;
9047
+ client_secret: string | null;
9048
+ cluster_uri: string | null;
7660
9049
  company_code: string | null;
7661
9050
  company_name: string | null;
7662
9051
  connected_at: string | null;
@@ -7976,6 +9365,10 @@ export type Database = {
7976
9365
  default_invoice_type: string;
7977
9366
  default_payment_term_days: number;
7978
9367
  default_vat_code: string;
9368
+ invoice_enabled_ao: boolean;
9369
+ invoice_enabled_fo: boolean;
9370
+ invoice_enabled_ho: boolean;
9371
+ invoice_enabled_mo: boolean;
7979
9372
  updated_at: string;
7980
9373
  user_id: string;
7981
9374
  };
@@ -7985,6 +9378,10 @@ export type Database = {
7985
9378
  default_invoice_type?: string;
7986
9379
  default_payment_term_days?: number;
7987
9380
  default_vat_code?: string;
9381
+ invoice_enabled_ao?: boolean;
9382
+ invoice_enabled_fo?: boolean;
9383
+ invoice_enabled_ho?: boolean;
9384
+ invoice_enabled_mo?: boolean;
7988
9385
  updated_at?: string;
7989
9386
  user_id: string;
7990
9387
  };
@@ -7994,6 +9391,10 @@ export type Database = {
7994
9391
  default_invoice_type?: string;
7995
9392
  default_payment_term_days?: number;
7996
9393
  default_vat_code?: string;
9394
+ invoice_enabled_ao?: boolean;
9395
+ invoice_enabled_fo?: boolean;
9396
+ invoice_enabled_ho?: boolean;
9397
+ invoice_enabled_mo?: boolean;
7997
9398
  updated_at?: string;
7998
9399
  user_id?: string;
7999
9400
  };
@@ -8001,6 +9402,7 @@ export type Database = {
8001
9402
  };
8002
9403
  twinfield_invoice_sync_logs: {
8003
9404
  Row: {
9405
+ action_type: string | null;
8004
9406
  created_at: string;
8005
9407
  details: Json | null;
8006
9408
  duration_ms: number | null;
@@ -8013,6 +9415,7 @@ export type Database = {
8013
9415
  user_id: string;
8014
9416
  };
8015
9417
  Insert: {
9418
+ action_type?: string | null;
8016
9419
  created_at?: string;
8017
9420
  details?: Json | null;
8018
9421
  duration_ms?: number | null;
@@ -8025,6 +9428,7 @@ export type Database = {
8025
9428
  user_id: string;
8026
9429
  };
8027
9430
  Update: {
9431
+ action_type?: string | null;
8028
9432
  created_at?: string;
8029
9433
  details?: Json | null;
8030
9434
  duration_ms?: number | null;
@@ -8264,6 +9668,57 @@ export type Database = {
8264
9668
  }
8265
9669
  ];
8266
9670
  };
9671
+ twinfield_request_metrics: {
9672
+ Row: {
9673
+ bucket_hour: string;
9674
+ connection_id: string;
9675
+ error_count: number;
9676
+ rate_limited_count: number;
9677
+ request_count: number;
9678
+ updated_at: string;
9679
+ };
9680
+ Insert: {
9681
+ bucket_hour: string;
9682
+ connection_id: string;
9683
+ error_count?: number;
9684
+ rate_limited_count?: number;
9685
+ request_count?: number;
9686
+ updated_at?: string;
9687
+ };
9688
+ Update: {
9689
+ bucket_hour?: string;
9690
+ connection_id?: string;
9691
+ error_count?: number;
9692
+ rate_limited_count?: number;
9693
+ request_count?: number;
9694
+ updated_at?: string;
9695
+ };
9696
+ Relationships: [];
9697
+ };
9698
+ twinfield_session_cache: {
9699
+ Row: {
9700
+ cluster: string;
9701
+ created_at: string;
9702
+ expires_at: string;
9703
+ session_id: string;
9704
+ user_id: string;
9705
+ };
9706
+ Insert: {
9707
+ cluster: string;
9708
+ created_at?: string;
9709
+ expires_at: string;
9710
+ session_id: string;
9711
+ user_id: string;
9712
+ };
9713
+ Update: {
9714
+ cluster?: string;
9715
+ created_at?: string;
9716
+ expires_at?: string;
9717
+ session_id?: string;
9718
+ user_id?: string;
9719
+ };
9720
+ Relationships: [];
9721
+ };
8267
9722
  twinfield_settings: {
8268
9723
  Row: {
8269
9724
  active_environment: string;
@@ -8857,6 +10312,44 @@ export type Database = {
8857
10312
  };
8858
10313
  Relationships: [];
8859
10314
  };
10315
+ floriday_customer_discounts: {
10316
+ Row: {
10317
+ base_price: number | null;
10318
+ buyer_organization_id: string | null;
10319
+ currency: string | null;
10320
+ discount_type: string | null;
10321
+ discount_value: number | null;
10322
+ min_quantity: number | null;
10323
+ net_price: number | null;
10324
+ product_group_id: string | null;
10325
+ raw: Json | null;
10326
+ source: string | null;
10327
+ source_id: string | null;
10328
+ trade_item_id: string | null;
10329
+ valid_from: string | null;
10330
+ valid_until: string | null;
10331
+ };
10332
+ Relationships: [];
10333
+ };
10334
+ local_customer_discounts: {
10335
+ Row: {
10336
+ base_price: number | null;
10337
+ currency: string | null;
10338
+ customer_id: string | null;
10339
+ discount_type: string | null;
10340
+ discount_value: number | null;
10341
+ min_quantity: number | null;
10342
+ net_price: number | null;
10343
+ product_category_id: string | null;
10344
+ product_id: string | null;
10345
+ product_name: string | null;
10346
+ source: string | null;
10347
+ source_id: string | null;
10348
+ valid_from: string | null;
10349
+ valid_until: string | null;
10350
+ };
10351
+ Relationships: [];
10352
+ };
8860
10353
  manufacture_product_possible_stock_view: {
8861
10354
  Row: {
8862
10355
  component_count: number | null;
@@ -9153,6 +10646,68 @@ export type Database = {
9153
10646
  };
9154
10647
  Returns: number;
9155
10648
  };
10649
+ afh_city_code: {
10650
+ Args: {
10651
+ _city: string;
10652
+ _country: string;
10653
+ };
10654
+ Returns: string;
10655
+ };
10656
+ afh_normalize_country: {
10657
+ Args: {
10658
+ _raw: string;
10659
+ };
10660
+ Returns: string;
10661
+ };
10662
+ afh_normalize_nl_province: {
10663
+ Args: {
10664
+ _raw: string;
10665
+ };
10666
+ Returns: string;
10667
+ };
10668
+ afh_subtract_workdays: {
10669
+ Args: {
10670
+ _date: string;
10671
+ _days: number;
10672
+ };
10673
+ Returns: string;
10674
+ };
10675
+ apply_stock_consumption: {
10676
+ Args: {
10677
+ p_order_id: string;
10678
+ p_order_item_id: string;
10679
+ p_qty: number;
10680
+ p_reason: string;
10681
+ p_source: string;
10682
+ p_trade_item_key: string;
10683
+ };
10684
+ Returns: undefined;
10685
+ };
10686
+ apply_stock_reservation: {
10687
+ Args: {
10688
+ p_order_id: string;
10689
+ p_order_item_id: string;
10690
+ p_qty: number;
10691
+ p_reason: string;
10692
+ p_source: string;
10693
+ p_trade_item_key: string;
10694
+ };
10695
+ Returns: undefined;
10696
+ };
10697
+ assign_cart_numbers: {
10698
+ Args: {
10699
+ p_carts: Json;
10700
+ };
10701
+ Returns: {
10702
+ cart_index: number;
10703
+ cart_number: string;
10704
+ day_seq: number;
10705
+ order_id: string;
10706
+ order_source: string;
10707
+ pick_date: string;
10708
+ status: string;
10709
+ }[];
10710
+ };
9156
10711
  assign_floriday_order_numbers: {
9157
10712
  Args: {
9158
10713
  p_ids: string[];
@@ -9162,13 +10717,75 @@ export type Database = {
9162
10717
  order_number: string;
9163
10718
  }[];
9164
10719
  };
10720
+ autolink_product_to_floriday: {
10721
+ Args: {
10722
+ p_product_id: string;
10723
+ };
10724
+ Returns: string;
10725
+ };
10726
+ backfill_open_order_reservations: {
10727
+ Args: never;
10728
+ Returns: {
10729
+ processed_items: number;
10730
+ }[];
10731
+ };
9165
10732
  call_exact_route: {
9166
10733
  Args: {
9167
10734
  path: string;
9168
10735
  };
9169
10736
  Returns: number;
9170
10737
  };
10738
+ check_offer_product_available_stock: {
10739
+ Args: {
10740
+ p_campaign_product_id: string;
10741
+ p_code: string;
10742
+ p_needed_qty?: number;
10743
+ p_product_name?: string;
10744
+ };
10745
+ Returns: Json;
10746
+ };
10747
+ check_trade_item_available_stock: {
10748
+ Args: {
10749
+ p_connection_id?: string;
10750
+ p_context?: string;
10751
+ p_needed_qty?: number;
10752
+ p_order_id?: string;
10753
+ p_order_item_id?: string;
10754
+ p_owner_id?: string;
10755
+ p_product_name?: string;
10756
+ p_trade_item_key: string;
10757
+ };
10758
+ Returns: Json;
10759
+ };
9171
10760
  cleanup_old_bookings: {
10761
+ Args: never;
10762
+ Returns: undefined;
10763
+ };
10764
+ consume_floriday_rate_limit: {
10765
+ Args: {
10766
+ p_bucket: string;
10767
+ p_capacity: number;
10768
+ p_cost?: number;
10769
+ p_refill_per_sec: number;
10770
+ };
10771
+ Returns: {
10772
+ granted: boolean;
10773
+ wait_ms: number;
10774
+ }[];
10775
+ };
10776
+ control_get_todays_carts: {
10777
+ Args: never;
10778
+ Returns: {
10779
+ cart_index: number;
10780
+ cart_number: string;
10781
+ cart_number_id: string;
10782
+ order_id: string;
10783
+ order_source: string;
10784
+ pick_date: string;
10785
+ status: string;
10786
+ }[];
10787
+ };
10788
+ count_distinct_regulatory_products: {
9172
10789
  Args: never;
9173
10790
  Returns: number;
9174
10791
  };
@@ -9176,6 +10793,17 @@ export type Database = {
9176
10793
  Args: never;
9177
10794
  Returns: string;
9178
10795
  };
10796
+ dashboard_alert_counts: {
10797
+ Args: never;
10798
+ Returns: Json;
10799
+ };
10800
+ dashboard_alert_rows: {
10801
+ Args: {
10802
+ check_id: string;
10803
+ row_limit?: number;
10804
+ };
10805
+ Returns: Json;
10806
+ };
9179
10807
  dashboard_list_public_schema: {
9180
10808
  Args: never;
9181
10809
  Returns: {
@@ -9184,6 +10812,12 @@ export type Database = {
9184
10812
  table_name: string;
9185
10813
  }[];
9186
10814
  };
10815
+ dispatch_carrier_signups_sql: {
10816
+ Args: {
10817
+ _catchup?: string;
10818
+ };
10819
+ Returns: Json;
10820
+ };
9187
10821
  email_auth_decrypt: {
9188
10822
  Args: {
9189
10823
  cipher: string;
@@ -9219,6 +10853,18 @@ export type Database = {
9219
10853
  status: string;
9220
10854
  }[];
9221
10855
  };
10856
+ enqueue_cart_replan_if_unlocked: {
10857
+ Args: {
10858
+ p_order_id: string;
10859
+ };
10860
+ Returns: undefined;
10861
+ };
10862
+ ensure_trade_item_stock_row: {
10863
+ Args: {
10864
+ p_key: string;
10865
+ };
10866
+ Returns: undefined;
10867
+ };
9222
10868
  ensure_user_tenant: {
9223
10869
  Args: never;
9224
10870
  Returns: string;
@@ -9256,6 +10902,38 @@ export type Database = {
9256
10902
  };
9257
10903
  Returns: boolean;
9258
10904
  };
10905
+ find_trade_item_key: {
10906
+ Args: {
10907
+ p_barcode: string;
10908
+ p_name: string;
10909
+ p_product_id: string;
10910
+ };
10911
+ Returns: string;
10912
+ };
10913
+ floriday_effective_price: {
10914
+ Args: {
10915
+ _buyer_id: string;
10916
+ _on_date?: string;
10917
+ _quantity?: number;
10918
+ _trade_item_id: string;
10919
+ };
10920
+ Returns: {
10921
+ base_price: number;
10922
+ currency: string;
10923
+ discount_type: string;
10924
+ discount_value: number;
10925
+ net_price: number;
10926
+ source: string;
10927
+ source_id: string;
10928
+ }[];
10929
+ };
10930
+ format_cart_number: {
10931
+ Args: {
10932
+ p_pick_date: string;
10933
+ p_seq: number;
10934
+ };
10935
+ Returns: string;
10936
+ };
9259
10937
  get_active_floriday_connection_public: {
9260
10938
  Args: never;
9261
10939
  Returns: {
@@ -9269,6 +10947,13 @@ export type Database = {
9269
10947
  preferred_warehouse_name: string;
9270
10948
  }[];
9271
10949
  };
10950
+ get_active_floriday_context: {
10951
+ Args: never;
10952
+ Returns: {
10953
+ connection_id: string;
10954
+ user_id: string;
10955
+ }[];
10956
+ };
9272
10957
  get_active_twinfield_public: {
9273
10958
  Args: never;
9274
10959
  Returns: {
@@ -9280,6 +10965,13 @@ export type Database = {
9280
10965
  office_code: string;
9281
10966
  }[];
9282
10967
  };
10968
+ get_floricode_record_counts: {
10969
+ Args: never;
10970
+ Returns: {
10971
+ count: number;
10972
+ resource: string;
10973
+ }[];
10974
+ };
9283
10975
  get_floriday_agreements_active: {
9284
10976
  Args: {
9285
10977
  p_on_date?: string;
@@ -9371,6 +11063,24 @@ export type Database = {
9371
11063
  };
9372
11064
  Returns: Json;
9373
11065
  };
11066
+ get_offer_delivery_options: {
11067
+ Args: {
11068
+ p_code: string;
11069
+ };
11070
+ Returns: Json;
11071
+ };
11072
+ get_offer_recipient_by_code: {
11073
+ Args: {
11074
+ p_code: string;
11075
+ };
11076
+ Returns: {
11077
+ campaign_id: string;
11078
+ clicked_at: string;
11079
+ customer_id: string;
11080
+ id: string;
11081
+ ordered_at: string;
11082
+ }[];
11083
+ };
9374
11084
  get_or_assign_floriday_order_number: {
9375
11085
  Args: {
9376
11086
  p_floriday_id: string;
@@ -9423,12 +11133,53 @@ export type Database = {
9423
11133
  Args: never;
9424
11134
  Returns: boolean;
9425
11135
  };
11136
+ is_superadmin: {
11137
+ Args: {
11138
+ _user_id: string;
11139
+ };
11140
+ Returns: boolean;
11141
+ };
11142
+ local_effective_price: {
11143
+ Args: {
11144
+ _customer_id: string;
11145
+ _on_date?: string;
11146
+ _product_id: string;
11147
+ _quantity?: number;
11148
+ };
11149
+ Returns: {
11150
+ currency: string;
11151
+ discount_type: string;
11152
+ discount_value: number;
11153
+ net_price: number;
11154
+ source: string;
11155
+ source_id: string;
11156
+ }[];
11157
+ };
11158
+ mark_offer_clicked: {
11159
+ Args: {
11160
+ p_code: string;
11161
+ };
11162
+ Returns: undefined;
11163
+ };
11164
+ mark_offer_ordered: {
11165
+ Args: {
11166
+ p_code: string;
11167
+ };
11168
+ Returns: undefined;
11169
+ };
9426
11170
  next_order_number: {
9427
11171
  Args: {
9428
11172
  p_prefix: string;
9429
11173
  };
9430
11174
  Returns: string;
9431
11175
  };
11176
+ next_order_number_for_date: {
11177
+ Args: {
11178
+ p_created_at?: string;
11179
+ p_prefix: string;
11180
+ };
11181
+ Returns: string;
11182
+ };
9432
11183
  next_work_order_number: {
9433
11184
  Args: {
9434
11185
  p_parent_work_order_id?: string;
@@ -9436,16 +11187,41 @@ export type Database = {
9436
11187
  };
9437
11188
  Returns: string;
9438
11189
  };
11190
+ normalize_order_source: {
11191
+ Args: {
11192
+ p_src: string;
11193
+ };
11194
+ Returns: string;
11195
+ };
9439
11196
  normalize_vat: {
9440
11197
  Args: {
9441
11198
  v: string;
9442
11199
  };
9443
11200
  Returns: string;
9444
11201
  };
11202
+ offer_recipient_matches: {
11203
+ Args: {
11204
+ _campaign_id: string;
11205
+ _customer_id: string;
11206
+ _recipient_id: string;
11207
+ };
11208
+ Returns: boolean;
11209
+ };
11210
+ order_number_prefix: {
11211
+ Args: {
11212
+ p_custom_fields?: Json;
11213
+ p_order_source: string;
11214
+ };
11215
+ Returns: string;
11216
+ };
9445
11217
  pickstation_get_orders_raw: {
9446
11218
  Args: never;
9447
11219
  Returns: Json;
9448
11220
  };
11221
+ pickstation_get_planning_context: {
11222
+ Args: never;
11223
+ Returns: Json;
11224
+ };
9449
11225
  pickstation_get_settings: {
9450
11226
  Args: never;
9451
11227
  Returns: Json;
@@ -9460,6 +11236,44 @@ export type Database = {
9460
11236
  };
9461
11237
  Returns: undefined;
9462
11238
  };
11239
+ pickstation_set_cart_status: {
11240
+ Args: {
11241
+ p_cart_index: number;
11242
+ p_order_id: string;
11243
+ p_order_source: string;
11244
+ p_status: string;
11245
+ };
11246
+ Returns: undefined;
11247
+ };
11248
+ promote_trade_item_key: {
11249
+ Args: {
11250
+ p_new: string;
11251
+ p_old: string;
11252
+ };
11253
+ Returns: undefined;
11254
+ };
11255
+ recompute_order_status: {
11256
+ Args: {
11257
+ p_order_id: string;
11258
+ };
11259
+ Returns: undefined;
11260
+ };
11261
+ recompute_reserved_for_order: {
11262
+ Args: {
11263
+ p_order_id: string;
11264
+ };
11265
+ Returns: undefined;
11266
+ };
11267
+ recompute_reserved_stock: {
11268
+ Args: {
11269
+ p_trade_item_key: string;
11270
+ };
11271
+ Returns: undefined;
11272
+ };
11273
+ refresh_external_customers_grouped: {
11274
+ Args: never;
11275
+ Returns: undefined;
11276
+ };
9463
11277
  refresh_floricode_derived_code_lists: {
9464
11278
  Args: never;
9465
11279
  Returns: {
@@ -9474,6 +11288,12 @@ export type Database = {
9474
11288
  };
9475
11289
  Returns: number;
9476
11290
  };
11291
+ refresh_floricode_derived_for_products: {
11292
+ Args: {
11293
+ _product_ids: string[];
11294
+ };
11295
+ Returns: number;
11296
+ };
9477
11297
  reset_floriday_sync_cursor: {
9478
11298
  Args: {
9479
11299
  p_connection_id: string;
@@ -9481,6 +11301,12 @@ export type Database = {
9481
11301
  };
9482
11302
  Returns: undefined;
9483
11303
  };
11304
+ resolve_product_id_for_item: {
11305
+ Args: {
11306
+ p_product_name: string;
11307
+ };
11308
+ Returns: string;
11309
+ };
9484
11310
  schedule_floriday_additional_services_sync: {
9485
11311
  Args: {
9486
11312
  p_apikey: string;
@@ -9758,6 +11584,24 @@ export type Database = {
9758
11584
  };
9759
11585
  Returns: string[];
9760
11586
  };
11587
+ sync_cached_packing_from_product: {
11588
+ Args: {
11589
+ p_product_id: string;
11590
+ };
11591
+ Returns: undefined;
11592
+ };
11593
+ sync_order_cart_item_packing_from_product: {
11594
+ Args: {
11595
+ p_product_id: string;
11596
+ };
11597
+ Returns: undefined;
11598
+ };
11599
+ sync_product_packing_from_floriday_cache: {
11600
+ Args: {
11601
+ p_floriday_id: string;
11602
+ };
11603
+ Returns: undefined;
11604
+ };
9761
11605
  twinfield_decrypt: {
9762
11606
  Args: {
9763
11607
  cipher: string;
@@ -9770,6 +11614,17 @@ export type Database = {
9770
11614
  };
9771
11615
  Returns: string;
9772
11616
  };
11617
+ upsert_auto_fulfillment_log: {
11618
+ Args: {
11619
+ p_connection_id: string;
11620
+ p_error?: string;
11621
+ p_fulfillment_order_id?: string;
11622
+ p_reason?: string;
11623
+ p_sales_order_id: string;
11624
+ p_status: string;
11625
+ };
11626
+ Returns: undefined;
11627
+ };
9773
11628
  };
9774
11629
  Enums: {
9775
11630
  app_role: "admin" | "manager" | "warehouse" | "sales" | "developer" | "receptie" | "monteur";