@flowselections/logistiek-engine 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +24 -24
  2. package/dist-lib/components/RuleEnginePage.d.ts +1 -1
  3. package/dist-lib/components/RuleEnginePage.d.ts.map +1 -1
  4. package/dist-lib/components/RuleEnginePage.js +22 -2
  5. package/dist-lib/hooks/useRecalcJob.js +1 -1
  6. package/dist-lib/hooks/useRuleEngine.d.ts.map +1 -1
  7. package/dist-lib/hooks/useRuleEngine.js +3 -1
  8. package/dist-lib/integrations/supabase/auth-attacher.js +1 -1
  9. package/dist-lib/integrations/supabase/auth-middleware.d.ts +695 -128
  10. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  11. package/dist-lib/integrations/supabase/client.d.ts +8 -787
  12. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  13. package/dist-lib/integrations/supabase/client.server.d.ts +695 -128
  14. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  15. package/dist-lib/integrations/supabase/moduleClient.d.ts +21640 -0
  16. package/dist-lib/integrations/supabase/moduleClient.d.ts.map +1 -0
  17. package/dist-lib/integrations/supabase/moduleClient.js +31 -0
  18. package/dist-lib/integrations/supabase/types.d.ts +727 -155
  19. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  20. package/dist-lib/integrations/supabase/types.js +3 -0
  21. package/dist-lib/lib/floridayDocuments.functions.d.ts +2085 -384
  22. package/dist-lib/lib/floridayDocuments.functions.d.ts.map +1 -1
  23. package/dist-lib/lib/floridayPush.functions.d.ts +695 -128
  24. package/dist-lib/lib/floridayPush.functions.d.ts.map +1 -1
  25. package/dist-lib/lib/loadCarrierPlanning.functions.d.ts +3505 -645
  26. package/dist-lib/lib/loadCarrierPlanning.functions.d.ts.map +1 -1
  27. package/dist-lib/lib/logisticsRecalcJob.functions.d.ts +1390 -256
  28. package/dist-lib/lib/logisticsRecalcJob.functions.d.ts.map +1 -1
  29. package/dist-lib/lib/logisticsRecalculate.functions.d.ts +695 -128
  30. package/dist-lib/lib/logisticsRecalculate.functions.d.ts.map +1 -1
  31. package/dist-lib/lib/modulePrompts.d.ts +0 -1
  32. package/dist-lib/lib/modulePrompts.d.ts.map +1 -1
  33. package/dist-lib/lib/modulePrompts.js +970 -960
  34. package/package.json +1 -1
@@ -871,6 +871,126 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
871
871
  };
872
872
  Relationships: [];
873
873
  };
874
+ cao_holidays: {
875
+ Row: {
876
+ created_at: string;
877
+ description: string | null;
878
+ holiday_date: string;
879
+ id: string;
880
+ updated_at: string;
881
+ };
882
+ Insert: {
883
+ created_at?: string;
884
+ description?: string | null;
885
+ holiday_date: string;
886
+ id?: string;
887
+ updated_at?: string;
888
+ };
889
+ Update: {
890
+ created_at?: string;
891
+ description?: string | null;
892
+ holiday_date?: string;
893
+ id?: string;
894
+ updated_at?: string;
895
+ };
896
+ Relationships: [];
897
+ };
898
+ cao_settings: {
899
+ Row: {
900
+ auto_break_after_hours: number;
901
+ auto_break_minutes: number;
902
+ auto_break_unpaid: boolean;
903
+ auto_stop_after_hours: number;
904
+ callout_fee: number;
905
+ created_at: string;
906
+ daily_regular_hours: number;
907
+ default_hourly_rate: number;
908
+ id: string;
909
+ materials_markup_percent: number;
910
+ max_daily_hours: number;
911
+ max_weekly_hours: number;
912
+ meal_allowance_amount: number;
913
+ overtime_pct_178: number;
914
+ overtime_pct_189: number;
915
+ overtime_pct_212: number;
916
+ reminder_after_hours: number;
917
+ standby_evening_amount: number;
918
+ standby_weekend_amount: number;
919
+ travel_cost_per_km: number | null;
920
+ travel_cost_threshold_km: number | null;
921
+ travel_counts_as_work: boolean;
922
+ travel_hourly_rate: number;
923
+ travel_rate_per_hour: number;
924
+ travel_threshold_minutes: number;
925
+ updated_at: string;
926
+ weekend_always_212: boolean;
927
+ window_end: string;
928
+ window_start: string;
929
+ };
930
+ Insert: {
931
+ auto_break_after_hours?: number;
932
+ auto_break_minutes?: number;
933
+ auto_break_unpaid?: boolean;
934
+ auto_stop_after_hours?: number;
935
+ callout_fee?: number;
936
+ created_at?: string;
937
+ daily_regular_hours?: number;
938
+ default_hourly_rate?: number;
939
+ id?: string;
940
+ materials_markup_percent?: number;
941
+ max_daily_hours?: number;
942
+ max_weekly_hours?: number;
943
+ meal_allowance_amount?: number;
944
+ overtime_pct_178?: number;
945
+ overtime_pct_189?: number;
946
+ overtime_pct_212?: number;
947
+ reminder_after_hours?: number;
948
+ standby_evening_amount?: number;
949
+ standby_weekend_amount?: number;
950
+ travel_cost_per_km?: number | null;
951
+ travel_cost_threshold_km?: number | null;
952
+ travel_counts_as_work?: boolean;
953
+ travel_hourly_rate?: number;
954
+ travel_rate_per_hour?: number;
955
+ travel_threshold_minutes?: number;
956
+ updated_at?: string;
957
+ weekend_always_212?: boolean;
958
+ window_end?: string;
959
+ window_start?: string;
960
+ };
961
+ Update: {
962
+ auto_break_after_hours?: number;
963
+ auto_break_minutes?: number;
964
+ auto_break_unpaid?: boolean;
965
+ auto_stop_after_hours?: number;
966
+ callout_fee?: number;
967
+ created_at?: string;
968
+ daily_regular_hours?: number;
969
+ default_hourly_rate?: number;
970
+ id?: string;
971
+ materials_markup_percent?: number;
972
+ max_daily_hours?: number;
973
+ max_weekly_hours?: number;
974
+ meal_allowance_amount?: number;
975
+ overtime_pct_178?: number;
976
+ overtime_pct_189?: number;
977
+ overtime_pct_212?: number;
978
+ reminder_after_hours?: number;
979
+ standby_evening_amount?: number;
980
+ standby_weekend_amount?: number;
981
+ travel_cost_per_km?: number | null;
982
+ travel_cost_threshold_km?: number | null;
983
+ travel_counts_as_work?: boolean;
984
+ travel_hourly_rate?: number;
985
+ travel_rate_per_hour?: number;
986
+ travel_threshold_minutes?: number;
987
+ updated_at?: string;
988
+ weekend_always_212?: boolean;
989
+ window_end?: string;
990
+ window_start?: string;
991
+ };
992
+ Relationships: [];
993
+ };
874
994
  carrier_shipping_rates: {
875
995
  Row: {
876
996
  carrier_id: string;
@@ -7765,7 +7885,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
7765
7885
  start_date: string;
7766
7886
  start_time: string | null;
7767
7887
  status: string;
7768
- tenant_id: string;
7769
7888
  updated_at: string;
7770
7889
  user_id: string;
7771
7890
  };
@@ -7783,7 +7902,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
7783
7902
  start_date: string;
7784
7903
  start_time?: string | null;
7785
7904
  status?: string;
7786
- tenant_id?: string;
7787
7905
  updated_at?: string;
7788
7906
  user_id: string;
7789
7907
  };
@@ -7801,7 +7919,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
7801
7919
  start_date?: string;
7802
7920
  start_time?: string | null;
7803
7921
  status?: string;
7804
- tenant_id?: string;
7805
7922
  updated_at?: string;
7806
7923
  user_id?: string;
7807
7924
  };
@@ -7809,13 +7926,13 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
7809
7926
  foreignKeyName: "leave_requests_monteur_id_fkey";
7810
7927
  columns: ["monteur_id"];
7811
7928
  isOneToOne: false;
7812
- referencedRelation: "monteurs";
7929
+ referencedRelation: "profiles";
7813
7930
  referencedColumns: ["id"];
7814
7931
  }, {
7815
7932
  foreignKeyName: "leave_requests_user_id_fkey";
7816
7933
  columns: ["user_id"];
7817
7934
  isOneToOne: false;
7818
- referencedRelation: "monteurs";
7935
+ referencedRelation: "profiles";
7819
7936
  referencedColumns: ["id"];
7820
7937
  }];
7821
7938
  };
@@ -9970,6 +10087,90 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
9970
10087
  };
9971
10088
  Relationships: [];
9972
10089
  };
10090
+ material_usage: {
10091
+ Row: {
10092
+ created_at: string;
10093
+ id: string;
10094
+ material_name: string;
10095
+ monteur_id: string | null;
10096
+ price_at_time: number;
10097
+ quantity_used: number;
10098
+ updated_at: string;
10099
+ van_inventory_id: string | null;
10100
+ work_order_id: string;
10101
+ };
10102
+ Insert: {
10103
+ created_at?: string;
10104
+ id?: string;
10105
+ material_name: string;
10106
+ monteur_id?: string | null;
10107
+ price_at_time?: number;
10108
+ quantity_used?: number;
10109
+ updated_at?: string;
10110
+ van_inventory_id?: string | null;
10111
+ work_order_id: string;
10112
+ };
10113
+ Update: {
10114
+ created_at?: string;
10115
+ id?: string;
10116
+ material_name?: string;
10117
+ monteur_id?: string | null;
10118
+ price_at_time?: number;
10119
+ quantity_used?: number;
10120
+ updated_at?: string;
10121
+ van_inventory_id?: string | null;
10122
+ work_order_id?: string;
10123
+ };
10124
+ Relationships: [{
10125
+ foreignKeyName: "material_usage_monteur_id_fkey";
10126
+ columns: ["monteur_id"];
10127
+ isOneToOne: false;
10128
+ referencedRelation: "profiles";
10129
+ referencedColumns: ["id"];
10130
+ }, {
10131
+ foreignKeyName: "material_usage_van_inventory_id_fkey";
10132
+ columns: ["van_inventory_id"];
10133
+ isOneToOne: false;
10134
+ referencedRelation: "van_inventories";
10135
+ referencedColumns: ["id"];
10136
+ }, {
10137
+ foreignKeyName: "material_usage_work_order_id_fkey";
10138
+ columns: ["work_order_id"];
10139
+ isOneToOne: false;
10140
+ referencedRelation: "work_orders";
10141
+ referencedColumns: ["id"];
10142
+ }];
10143
+ };
10144
+ module_features: {
10145
+ Row: {
10146
+ created_at: string;
10147
+ feature_id: string;
10148
+ id: string;
10149
+ is_active: boolean;
10150
+ last_seen_at: string;
10151
+ module_id: string;
10152
+ name: string;
10153
+ };
10154
+ Insert: {
10155
+ created_at?: string;
10156
+ feature_id: string;
10157
+ id?: string;
10158
+ is_active?: boolean;
10159
+ last_seen_at?: string;
10160
+ module_id: string;
10161
+ name: string;
10162
+ };
10163
+ Update: {
10164
+ created_at?: string;
10165
+ feature_id?: string;
10166
+ id?: string;
10167
+ is_active?: boolean;
10168
+ last_seen_at?: string;
10169
+ module_id?: string;
10170
+ name?: string;
10171
+ };
10172
+ Relationships: [];
10173
+ };
9973
10174
  module_permissions: {
9974
10175
  Row: {
9975
10176
  created_at: string;
@@ -10000,6 +10201,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10000
10201
  module_registry: {
10001
10202
  Row: {
10002
10203
  created_at: string;
10204
+ enforce: boolean;
10003
10205
  is_active: boolean;
10004
10206
  last_seen_at: string;
10005
10207
  module_id: string;
@@ -10009,6 +10211,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10009
10211
  };
10010
10212
  Insert: {
10011
10213
  created_at?: string;
10214
+ enforce?: boolean;
10012
10215
  is_active?: boolean;
10013
10216
  last_seen_at?: string;
10014
10217
  module_id: string;
@@ -10018,6 +10221,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10018
10221
  };
10019
10222
  Update: {
10020
10223
  created_at?: string;
10224
+ enforce?: boolean;
10021
10225
  is_active?: boolean;
10022
10226
  last_seen_at?: string;
10023
10227
  module_id?: string;
@@ -10078,63 +10282,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10078
10282
  };
10079
10283
  Relationships: [];
10080
10284
  };
10081
- monteurs: {
10082
- Row: {
10083
- avatar_url: string | null;
10084
- color: string | null;
10085
- created_at: string;
10086
- email: string | null;
10087
- id: string;
10088
- is_active: boolean;
10089
- leave_balance_hours: number;
10090
- name: string;
10091
- persnr: number | null;
10092
- phone: string | null;
10093
- role: string;
10094
- tenant_id: string;
10095
- updated_at: string;
10096
- user_id: string | null;
10097
- };
10098
- Insert: {
10099
- avatar_url?: string | null;
10100
- color?: string | null;
10101
- created_at?: string;
10102
- email?: string | null;
10103
- id?: string;
10104
- is_active?: boolean;
10105
- leave_balance_hours?: number;
10106
- name: string;
10107
- persnr?: number | null;
10108
- phone?: string | null;
10109
- role?: string;
10110
- tenant_id: string;
10111
- updated_at?: string;
10112
- user_id?: string | null;
10113
- };
10114
- Update: {
10115
- avatar_url?: string | null;
10116
- color?: string | null;
10117
- created_at?: string;
10118
- email?: string | null;
10119
- id?: string;
10120
- is_active?: boolean;
10121
- leave_balance_hours?: number;
10122
- name?: string;
10123
- persnr?: number | null;
10124
- phone?: string | null;
10125
- role?: string;
10126
- tenant_id?: string;
10127
- updated_at?: string;
10128
- user_id?: string | null;
10129
- };
10130
- Relationships: [{
10131
- foreignKeyName: "monteurs_tenant_id_fkey";
10132
- columns: ["tenant_id"];
10133
- isOneToOne: false;
10134
- referencedRelation: "tenants";
10135
- referencedColumns: ["id"];
10136
- }];
10137
- };
10138
10285
  nmbrs_component_mapping: {
10139
10286
  Row: {
10140
10287
  created_at: string;
@@ -10205,13 +10352,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10205
10352
  nmbrs_employee_number?: string;
10206
10353
  updated_at?: string;
10207
10354
  };
10208
- Relationships: [{
10209
- foreignKeyName: "nmbrs_employee_mapping_monteur_id_fkey";
10210
- columns: ["monteur_id"];
10211
- isOneToOne: true;
10212
- referencedRelation: "monteurs";
10213
- referencedColumns: ["id"];
10214
- }];
10355
+ Relationships: [];
10215
10356
  };
10216
10357
  nmbrs_export_lines: {
10217
10358
  Row: {
@@ -10260,12 +10401,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
10260
10401
  wage_code?: string;
10261
10402
  };
10262
10403
  Relationships: [{
10263
- foreignKeyName: "nmbrs_export_lines_monteur_id_fkey";
10264
- columns: ["monteur_id"];
10265
- isOneToOne: false;
10266
- referencedRelation: "monteurs";
10267
- referencedColumns: ["id"];
10268
- }, {
10269
10404
  foreignKeyName: "nmbrs_export_lines_run_id_fkey";
10270
10405
  columns: ["run_id"];
10271
10406
  isOneToOne: false;
@@ -12656,6 +12791,9 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
12656
12791
  created_at: string;
12657
12792
  id: string;
12658
12793
  laatst_gezien: string;
12794
+ laatste_fout: string | null;
12795
+ laatste_request_id: number | null;
12796
+ mislukte_posts: number;
12659
12797
  tick_sleutel: string;
12660
12798
  updated_at: string;
12661
12799
  };
@@ -12665,6 +12803,9 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
12665
12803
  created_at?: string;
12666
12804
  id?: string;
12667
12805
  laatst_gezien?: string;
12806
+ laatste_fout?: string | null;
12807
+ laatste_request_id?: number | null;
12808
+ mislukte_posts?: number;
12668
12809
  tick_sleutel?: string;
12669
12810
  updated_at?: string;
12670
12811
  };
@@ -12674,6 +12815,9 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
12674
12815
  created_at?: string;
12675
12816
  id?: string;
12676
12817
  laatst_gezien?: string;
12818
+ laatste_fout?: string | null;
12819
+ laatste_request_id?: number | null;
12820
+ mislukte_posts?: number;
12677
12821
  tick_sleutel?: string;
12678
12822
  updated_at?: string;
12679
12823
  };
@@ -14182,6 +14326,96 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
14182
14326
  referencedColumns: ["id"];
14183
14327
  }];
14184
14328
  };
14329
+ role_assignments: {
14330
+ Row: {
14331
+ created_at: string;
14332
+ id: string;
14333
+ role_id: string;
14334
+ user_id: string;
14335
+ };
14336
+ Insert: {
14337
+ created_at?: string;
14338
+ id?: string;
14339
+ role_id: string;
14340
+ user_id: string;
14341
+ };
14342
+ Update: {
14343
+ created_at?: string;
14344
+ id?: string;
14345
+ role_id?: string;
14346
+ user_id?: string;
14347
+ };
14348
+ Relationships: [{
14349
+ foreignKeyName: "role_assignments_role_id_fkey";
14350
+ columns: ["role_id"];
14351
+ isOneToOne: false;
14352
+ referencedRelation: "roles";
14353
+ referencedColumns: ["id"];
14354
+ }];
14355
+ };
14356
+ role_permissions: {
14357
+ Row: {
14358
+ can_edit: boolean;
14359
+ can_view: boolean;
14360
+ feature_id: string;
14361
+ id: string;
14362
+ module_id: string;
14363
+ role_id: string;
14364
+ updated_at: string;
14365
+ };
14366
+ Insert: {
14367
+ can_edit?: boolean;
14368
+ can_view?: boolean;
14369
+ feature_id?: string;
14370
+ id?: string;
14371
+ module_id: string;
14372
+ role_id: string;
14373
+ updated_at?: string;
14374
+ };
14375
+ Update: {
14376
+ can_edit?: boolean;
14377
+ can_view?: boolean;
14378
+ feature_id?: string;
14379
+ id?: string;
14380
+ module_id?: string;
14381
+ role_id?: string;
14382
+ updated_at?: string;
14383
+ };
14384
+ Relationships: [{
14385
+ foreignKeyName: "role_permissions_role_id_fkey";
14386
+ columns: ["role_id"];
14387
+ isOneToOne: false;
14388
+ referencedRelation: "roles";
14389
+ referencedColumns: ["id"];
14390
+ }];
14391
+ };
14392
+ roles: {
14393
+ Row: {
14394
+ created_at: string;
14395
+ id: string;
14396
+ is_protected: boolean;
14397
+ key: string;
14398
+ name: string;
14399
+ updated_at: string;
14400
+ };
14401
+ Insert: {
14402
+ created_at?: string;
14403
+ id?: string;
14404
+ is_protected?: boolean;
14405
+ key: string;
14406
+ name: string;
14407
+ updated_at?: string;
14408
+ };
14409
+ Update: {
14410
+ created_at?: string;
14411
+ id?: string;
14412
+ is_protected?: boolean;
14413
+ key?: string;
14414
+ name?: string;
14415
+ updated_at?: string;
14416
+ };
14417
+ Relationships: [];
14418
+ };
14185
14419
  rooms: {
14186
14420
  Row: {
14187
14421
  capacity: number;
@@ -14851,6 +15085,54 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
14851
15085
  };
14852
15086
  Relationships: [];
14853
15087
  };
15088
+ time_compensation_entries: {
15089
+ Row: {
15090
+ created_at: string;
15091
+ employee_id: string;
15092
+ entry_date: string;
15093
+ id: string;
15094
+ km: number;
15095
+ meal_allowance: number;
15096
+ notes: string | null;
15097
+ standby_evening: number;
15098
+ standby_weekend: number;
15099
+ tvt_change: number;
15100
+ updated_at: string;
15101
+ };
15102
+ Insert: {
15103
+ created_at?: string;
15104
+ employee_id: string;
15105
+ entry_date: string;
15106
+ id?: string;
15107
+ km?: number;
15108
+ meal_allowance?: number;
15109
+ notes?: string | null;
15110
+ standby_evening?: number;
15111
+ standby_weekend?: number;
15112
+ tvt_change?: number;
15113
+ updated_at?: string;
15114
+ };
15115
+ Update: {
15116
+ created_at?: string;
15117
+ employee_id?: string;
15118
+ entry_date?: string;
15119
+ id?: string;
15120
+ km?: number;
15121
+ meal_allowance?: number;
15122
+ notes?: string | null;
15123
+ standby_evening?: number;
15124
+ standby_weekend?: number;
15125
+ tvt_change?: number;
15126
+ updated_at?: string;
15127
+ };
15128
+ Relationships: [{
15129
+ foreignKeyName: "time_compensation_entries_employee_id_fkey";
15130
+ columns: ["employee_id"];
15131
+ isOneToOne: false;
15132
+ referencedRelation: "profiles";
15133
+ referencedColumns: ["id"];
15134
+ }];
15135
+ };
14854
15136
  time_entries: {
14855
15137
  Row: {
14856
15138
  created_at: string;
@@ -14885,65 +15167,170 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
14885
15167
  undertime?: number;
14886
15168
  updated_at?: string;
14887
15169
  };
15170
+ Relationships: [];
15171
+ };
15172
+ time_log_week_approvals: {
15173
+ Row: {
15174
+ approved_at: string | null;
15175
+ approved_by: string | null;
15176
+ created_at: string;
15177
+ employee_id: string;
15178
+ id: string;
15179
+ locked: boolean;
15180
+ notes: string | null;
15181
+ status: string;
15182
+ submitted_at: string | null;
15183
+ updated_at: string;
15184
+ week_start: string;
15185
+ };
15186
+ Insert: {
15187
+ approved_at?: string | null;
15188
+ approved_by?: string | null;
15189
+ created_at?: string;
15190
+ employee_id: string;
15191
+ id?: string;
15192
+ locked?: boolean;
15193
+ notes?: string | null;
15194
+ status?: string;
15195
+ submitted_at?: string | null;
15196
+ updated_at?: string;
15197
+ week_start: string;
15198
+ };
15199
+ Update: {
15200
+ approved_at?: string | null;
15201
+ approved_by?: string | null;
15202
+ created_at?: string;
15203
+ employee_id?: string;
15204
+ id?: string;
15205
+ locked?: boolean;
15206
+ notes?: string | null;
15207
+ status?: string;
15208
+ submitted_at?: string | null;
15209
+ updated_at?: string;
15210
+ week_start?: string;
15211
+ };
14888
15212
  Relationships: [{
14889
- foreignKeyName: "time_entries_employee_id_fkey";
15213
+ foreignKeyName: "time_log_week_approvals_employee_id_fkey";
14890
15214
  columns: ["employee_id"];
14891
15215
  isOneToOne: false;
14892
- referencedRelation: "monteurs";
15216
+ referencedRelation: "profiles";
14893
15217
  referencedColumns: ["id"];
14894
15218
  }];
14895
15219
  };
14896
15220
  time_logs: {
14897
15221
  Row: {
15222
+ auto_stop_reason: string | null;
15223
+ auto_stopped: boolean;
14898
15224
  created_at: string;
15225
+ current_latitude: number | null;
15226
+ current_longitude: number | null;
15227
+ current_position_updated_at: string | null;
14899
15228
  employee_id: string;
15229
+ end_latitude: number | null;
15230
+ end_longitude: number | null;
14900
15231
  end_time: string | null;
15232
+ eta_distance_km: number | null;
15233
+ eta_minutes: number | null;
15234
+ eta_updated_at: string | null;
15235
+ hour_category: string | null;
14901
15236
  id: string;
15237
+ last_reminder_at: string | null;
14902
15238
  notes: string | null;
14903
15239
  overtime_hours: number;
14904
15240
  overtime_type: string | null;
14905
15241
  regular_hours: number;
15242
+ reminder_count: number;
15243
+ requires_review: boolean;
15244
+ start_latitude: number | null;
15245
+ start_longitude: number | null;
14906
15246
  start_time: string;
14907
15247
  travel_cost: number | null;
14908
15248
  travel_distance_km: number | null;
15249
+ travel_duration_min: number | null;
15250
+ travel_time_minutes: number | null;
14909
15251
  type: string;
14910
15252
  updated_at: string;
15253
+ work_order_id: string | null;
14911
15254
  };
14912
15255
  Insert: {
15256
+ auto_stop_reason?: string | null;
15257
+ auto_stopped?: boolean;
14913
15258
  created_at?: string;
15259
+ current_latitude?: number | null;
15260
+ current_longitude?: number | null;
15261
+ current_position_updated_at?: string | null;
14914
15262
  employee_id: string;
15263
+ end_latitude?: number | null;
15264
+ end_longitude?: number | null;
14915
15265
  end_time?: string | null;
15266
+ eta_distance_km?: number | null;
15267
+ eta_minutes?: number | null;
15268
+ eta_updated_at?: string | null;
15269
+ hour_category?: string | null;
14916
15270
  id?: string;
15271
+ last_reminder_at?: string | null;
14917
15272
  notes?: string | null;
14918
15273
  overtime_hours?: number;
14919
15274
  overtime_type?: string | null;
14920
15275
  regular_hours?: number;
15276
+ reminder_count?: number;
15277
+ requires_review?: boolean;
15278
+ start_latitude?: number | null;
15279
+ start_longitude?: number | null;
14921
15280
  start_time?: string;
14922
15281
  travel_cost?: number | null;
14923
15282
  travel_distance_km?: number | null;
15283
+ travel_duration_min?: number | null;
15284
+ travel_time_minutes?: number | null;
14924
15285
  type: string;
14925
15286
  updated_at?: string;
15287
+ work_order_id?: string | null;
14926
15288
  };
14927
15289
  Update: {
15290
+ auto_stop_reason?: string | null;
15291
+ auto_stopped?: boolean;
14928
15292
  created_at?: string;
15293
+ current_latitude?: number | null;
15294
+ current_longitude?: number | null;
15295
+ current_position_updated_at?: string | null;
14929
15296
  employee_id?: string;
15297
+ end_latitude?: number | null;
15298
+ end_longitude?: number | null;
14930
15299
  end_time?: string | null;
15300
+ eta_distance_km?: number | null;
15301
+ eta_minutes?: number | null;
15302
+ eta_updated_at?: string | null;
15303
+ hour_category?: string | null;
14931
15304
  id?: string;
15305
+ last_reminder_at?: string | null;
14932
15306
  notes?: string | null;
14933
15307
  overtime_hours?: number;
14934
15308
  overtime_type?: string | null;
14935
15309
  regular_hours?: number;
15310
+ reminder_count?: number;
15311
+ requires_review?: boolean;
15312
+ start_latitude?: number | null;
15313
+ start_longitude?: number | null;
14936
15314
  start_time?: string;
14937
15315
  travel_cost?: number | null;
14938
15316
  travel_distance_km?: number | null;
15317
+ travel_duration_min?: number | null;
15318
+ travel_time_minutes?: number | null;
14939
15319
  type?: string;
14940
15320
  updated_at?: string;
15321
+ work_order_id?: string | null;
14941
15322
  };
14942
15323
  Relationships: [{
14943
15324
  foreignKeyName: "time_logs_employee_id_fkey";
14944
15325
  columns: ["employee_id"];
14945
15326
  isOneToOne: false;
14946
- referencedRelation: "monteurs";
15327
+ referencedRelation: "profiles";
15328
+ referencedColumns: ["id"];
15329
+ }, {
15330
+ foreignKeyName: "time_logs_work_order_id_fkey";
15331
+ columns: ["work_order_id"];
15332
+ isOneToOne: false;
15333
+ referencedRelation: "work_orders";
14947
15334
  referencedColumns: ["id"];
14948
15335
  }];
14949
15336
  };
@@ -14982,7 +15369,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
14982
15369
  foreignKeyName: "time_off_entries_employee_id_fkey";
14983
15370
  columns: ["employee_id"];
14984
15371
  isOneToOne: false;
14985
- referencedRelation: "monteurs";
15372
+ referencedRelation: "profiles";
14986
15373
  referencedColumns: ["id"];
14987
15374
  }];
14988
15375
  };
@@ -15292,6 +15679,39 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
15292
15679
  };
15293
15680
  Relationships: [];
15294
15681
  };
15682
+ twinfield_cron_locks: {
15683
+ Row: {
15684
+ created_at: string;
15685
+ heartbeat_at: string;
15686
+ job_name: string;
15687
+ last_error: string | null;
15688
+ last_finished_at: string | null;
15689
+ locked_at: string;
15690
+ run_id: string;
15691
+ updated_at: string;
15692
+ };
15693
+ Insert: {
15694
+ created_at?: string;
15695
+ heartbeat_at?: string;
15696
+ job_name: string;
15697
+ last_error?: string | null;
15698
+ last_finished_at?: string | null;
15699
+ locked_at?: string;
15700
+ run_id?: string;
15701
+ updated_at?: string;
15702
+ };
15703
+ Update: {
15704
+ created_at?: string;
15705
+ heartbeat_at?: string;
15706
+ job_name?: string;
15707
+ last_error?: string | null;
15708
+ last_finished_at?: string | null;
15709
+ locked_at?: string;
15710
+ run_id?: string;
15711
+ updated_at?: string;
15712
+ };
15713
+ Relationships: [];
15714
+ };
15295
15715
  twinfield_customers: {
15296
15716
  Row: {
15297
15717
  address: string | null;
@@ -15892,6 +16312,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
15892
16312
  twinfield_push_queue: {
15893
16313
  Row: {
15894
16314
  action: string;
16315
+ attempt_started_at: string | null;
15895
16316
  attempts: number;
15896
16317
  connection_id: string | null;
15897
16318
  created_at: string;
@@ -15908,6 +16329,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
15908
16329
  };
15909
16330
  Insert: {
15910
16331
  action?: string;
16332
+ attempt_started_at?: string | null;
15911
16333
  attempts?: number;
15912
16334
  connection_id?: string | null;
15913
16335
  created_at?: string;
@@ -15924,6 +16346,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
15924
16346
  };
15925
16347
  Update: {
15926
16348
  action?: string;
16349
+ attempt_started_at?: string | null;
15927
16350
  attempts?: number;
15928
16351
  connection_id?: string | null;
15929
16352
  created_at?: string;
@@ -16121,13 +16544,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16121
16544
  workday_end?: string | null;
16122
16545
  workday_start?: string | null;
16123
16546
  };
16124
- Relationships: [{
16125
- foreignKeyName: "uren_cao_profiles_monteur_id_fkey";
16126
- columns: ["monteur_id"];
16127
- isOneToOne: true;
16128
- referencedRelation: "monteurs";
16129
- referencedColumns: ["id"];
16130
- }];
16547
+ Relationships: [];
16131
16548
  };
16132
16549
  uren_entries: {
16133
16550
  Row: {
@@ -16173,12 +16590,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16173
16590
  werkbon_id?: string | null;
16174
16591
  };
16175
16592
  Relationships: [{
16176
- foreignKeyName: "uren_entries_monteur_id_fkey";
16177
- columns: ["monteur_id"];
16178
- isOneToOne: false;
16179
- referencedRelation: "monteurs";
16180
- referencedColumns: ["id"];
16181
- }, {
16182
16593
  foreignKeyName: "uren_entries_werkbon_id_fkey";
16183
16594
  columns: ["werkbon_id"];
16184
16595
  isOneToOne: false;
@@ -16646,17 +17057,12 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16646
17057
  submitted_at?: string | null;
16647
17058
  updated_at?: string;
16648
17059
  };
16649
- Relationships: [{
16650
- foreignKeyName: "uren_weekstaten_monteur_id_fkey";
16651
- columns: ["monteur_id"];
16652
- isOneToOne: false;
16653
- referencedRelation: "monteurs";
16654
- referencedColumns: ["id"];
16655
- }];
17060
+ Relationships: [];
16656
17061
  };
16657
17062
  user_module_permissions: {
16658
17063
  Row: {
16659
17064
  created_at: string;
17065
+ feature_id: string;
16660
17066
  id: string;
16661
17067
  module_id: string;
16662
17068
  permission: string;
@@ -16665,6 +17071,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16665
17071
  };
16666
17072
  Insert: {
16667
17073
  created_at?: string;
17074
+ feature_id?: string;
16668
17075
  id?: string;
16669
17076
  module_id: string;
16670
17077
  permission: string;
@@ -16673,6 +17080,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16673
17080
  };
16674
17081
  Update: {
16675
17082
  created_at?: string;
17083
+ feature_id?: string;
16676
17084
  id?: string;
16677
17085
  module_id?: string;
16678
17086
  permission?: string;
@@ -16708,6 +17116,51 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
16708
17116
  referencedColumns: ["id"];
16709
17117
  }];
16710
17118
  };
17119
+ van_inventories: {
17120
+ Row: {
17121
+ barcode: string | null;
17122
+ created_at: string;
17123
+ id: string;
17124
+ monteur_id: string | null;
17125
+ price_per_unit: number;
17126
+ product_name: string;
17127
+ quantity_current: number;
17128
+ quantity_min: number;
17129
+ unit: string;
17130
+ updated_at: string;
17131
+ };
17132
+ Insert: {
17133
+ barcode?: string | null;
17134
+ created_at?: string;
17135
+ id?: string;
17136
+ monteur_id?: string | null;
17137
+ price_per_unit?: number;
17138
+ product_name: string;
17139
+ quantity_current?: number;
17140
+ quantity_min?: number;
17141
+ unit?: string;
17142
+ updated_at?: string;
17143
+ };
17144
+ Update: {
17145
+ barcode?: string | null;
17146
+ created_at?: string;
17147
+ id?: string;
17148
+ monteur_id?: string | null;
17149
+ price_per_unit?: number;
17150
+ product_name?: string;
17151
+ quantity_current?: number;
17152
+ quantity_min?: number;
17153
+ unit?: string;
17154
+ updated_at?: string;
17155
+ };
17156
+ Relationships: [{
17157
+ foreignKeyName: "van_inventories_monteur_id_fkey";
17158
+ columns: ["monteur_id"];
17159
+ isOneToOne: false;
17160
+ referencedRelation: "profiles";
17161
+ referencedColumns: ["id"];
17162
+ }];
17163
+ };
16711
17164
  voorraad_custom_fields: {
16712
17165
  Row: {
16713
17166
  created_at: string;
@@ -17658,7 +18111,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17658
18111
  foreignKeyName: "work_order_monteurs_monteur_id_fkey";
17659
18112
  columns: ["monteur_id"];
17660
18113
  isOneToOne: false;
17661
- referencedRelation: "monteurs";
18114
+ referencedRelation: "profiles";
17662
18115
  referencedColumns: ["id"];
17663
18116
  }, {
17664
18117
  foreignKeyName: "work_order_monteurs_work_order_id_fkey";
@@ -17668,6 +18121,60 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17668
18121
  referencedColumns: ["id"];
17669
18122
  }];
17670
18123
  };
18124
+ work_order_photos: {
18125
+ Row: {
18126
+ ai_caption: string | null;
18127
+ ai_categorized_at: string | null;
18128
+ ai_labels: import("../integrations/supabase/types").Json | null;
18129
+ caption: string | null;
18130
+ created_at: string;
18131
+ id: string;
18132
+ monteur_id: string | null;
18133
+ photo_type: string;
18134
+ storage_path: string;
18135
+ updated_at: string;
18136
+ work_order_id: string;
18137
+ };
18138
+ Insert: {
18139
+ ai_caption?: string | null;
18140
+ ai_categorized_at?: string | null;
18141
+ ai_labels?: import("../integrations/supabase/types").Json | null;
18142
+ caption?: string | null;
18143
+ created_at?: string;
18144
+ id?: string;
18145
+ monteur_id?: string | null;
18146
+ photo_type?: string;
18147
+ storage_path: string;
18148
+ updated_at?: string;
18149
+ work_order_id: string;
18150
+ };
18151
+ Update: {
18152
+ ai_caption?: string | null;
18153
+ ai_categorized_at?: string | null;
18154
+ ai_labels?: import("../integrations/supabase/types").Json | null;
18155
+ caption?: string | null;
18156
+ created_at?: string;
18157
+ id?: string;
18158
+ monteur_id?: string | null;
18159
+ photo_type?: string;
18160
+ storage_path?: string;
18161
+ updated_at?: string;
18162
+ work_order_id?: string;
18163
+ };
18164
+ Relationships: [{
18165
+ foreignKeyName: "work_order_photos_monteur_id_fkey";
18166
+ columns: ["monteur_id"];
18167
+ isOneToOne: false;
18168
+ referencedRelation: "profiles";
18169
+ referencedColumns: ["id"];
18170
+ }, {
18171
+ foreignKeyName: "work_order_photos_work_order_id_fkey";
18172
+ columns: ["work_order_id"];
18173
+ isOneToOne: false;
18174
+ referencedRelation: "work_orders";
18175
+ referencedColumns: ["id"];
18176
+ }];
18177
+ };
17671
18178
  work_orders: {
17672
18179
  Row: {
17673
18180
  assigned_to: string | null;
@@ -17699,7 +18206,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17699
18206
  scheduled_end_time: string | null;
17700
18207
  scheduled_start_time: string | null;
17701
18208
  status: string;
17702
- tenant_id: string;
17703
18209
  total_hours_worked: number | null;
17704
18210
  total_price: number | null;
17705
18211
  travel_time_minutes: number | null;
@@ -17737,7 +18243,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17737
18243
  scheduled_end_time?: string | null;
17738
18244
  scheduled_start_time?: string | null;
17739
18245
  status?: string;
17740
- tenant_id: string;
17741
18246
  total_hours_worked?: number | null;
17742
18247
  total_price?: number | null;
17743
18248
  travel_time_minutes?: number | null;
@@ -17775,7 +18280,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17775
18280
  scheduled_end_time?: string | null;
17776
18281
  scheduled_start_time?: string | null;
17777
18282
  status?: string;
17778
- tenant_id?: string;
17779
18283
  total_hours_worked?: number | null;
17780
18284
  total_price?: number | null;
17781
18285
  travel_time_minutes?: number | null;
@@ -17789,12 +18293,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
17789
18293
  isOneToOne: false;
17790
18294
  referencedRelation: "work_orders";
17791
18295
  referencedColumns: ["id"];
17792
- }, {
17793
- foreignKeyName: "work_orders_tenant_id_fkey";
17794
- columns: ["tenant_id"];
17795
- isOneToOne: false;
17796
- referencedRelation: "tenants";
17797
- referencedColumns: ["id"];
17798
18296
  }];
17799
18297
  };
17800
18298
  };
@@ -18479,6 +18977,19 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
18479
18977
  };
18480
18978
  Returns: undefined;
18481
18979
  };
18980
+ approve_mailbox_order_proposal: {
18981
+ Args: {
18982
+ p_custom_fields: import("../integrations/supabase/types").Json;
18983
+ p_customer_id: string;
18984
+ p_delivery_date: string;
18985
+ p_field_values?: import("../integrations/supabase/types").Json;
18986
+ p_lines: import("../integrations/supabase/types").Json;
18987
+ p_notes: string;
18988
+ p_proposal_id: string;
18989
+ p_reviewed_by: string;
18990
+ };
18991
+ Returns: import("../integrations/supabase/types").Json;
18992
+ };
18482
18993
  assign_cart_numbers: {
18483
18994
  Args: {
18484
18995
  p_carts: import("../integrations/supabase/types").Json;
@@ -18530,6 +19041,10 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
18530
19041
  };
18531
19042
  Returns: number;
18532
19043
  };
19044
+ can_manage_hours: {
19045
+ Args: never;
19046
+ Returns: boolean;
19047
+ };
18533
19048
  check_offer_product_available_stock: {
18534
19049
  Args: {
18535
19050
  p_campaign_product_id: string;
@@ -18719,6 +19234,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
18719
19234
  };
18720
19235
  Returns: {
18721
19236
  action: string;
19237
+ attempt_started_at: string | null;
18722
19238
  attempts: number;
18723
19239
  connection_id: string | null;
18724
19240
  created_at: string;
@@ -18806,6 +19322,30 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
18806
19322
  agent_naam: string;
18807
19323
  }[];
18808
19324
  };
19325
+ consume_van_inventory: {
19326
+ Args: {
19327
+ p_inventory_id: string;
19328
+ p_quantity: number;
19329
+ };
19330
+ Returns: {
19331
+ barcode: string | null;
19332
+ created_at: string;
19333
+ id: string;
19334
+ monteur_id: string | null;
19335
+ price_per_unit: number;
19336
+ product_name: string;
19337
+ quantity_current: number;
19338
+ quantity_min: number;
19339
+ unit: string;
19340
+ updated_at: string;
19341
+ };
19342
+ SetofOptions: {
19343
+ from: "*";
19344
+ to: "van_inventories";
19345
+ isOneToOne: true;
19346
+ isSetofReturn: false;
19347
+ };
19348
+ };
18809
19349
  control_get_todays_carts: {
18810
19350
  Args: never;
18811
19351
  Returns: {
@@ -18879,6 +19419,13 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
18879
19419
  _user_id: string;
18880
19420
  };
18881
19421
  Returns: string;
19422
+ } | {
19423
+ Args: {
19424
+ _feature_id: string;
19425
+ _module_id: string;
19426
+ _user_id: string;
19427
+ };
19428
+ Returns: string;
18882
19429
  };
18883
19430
  email_auth_decrypt: {
18884
19431
  Args: {
@@ -19230,12 +19777,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
19230
19777
  Args: never;
19231
19778
  Returns: string;
19232
19779
  };
19233
- get_work_order_tenant_id: {
19234
- Args: {
19235
- wo_id: string;
19236
- };
19237
- Returns: string;
19238
- };
19239
19780
  has_module_permission: {
19240
19781
  Args: {
19241
19782
  _min: string;
@@ -19269,6 +19810,13 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
19269
19810
  };
19270
19811
  Returns: boolean;
19271
19812
  };
19813
+ is_time_log_week_locked: {
19814
+ Args: {
19815
+ p_employee_id: string;
19816
+ p_start_time: string;
19817
+ };
19818
+ Returns: boolean;
19819
+ };
19272
19820
  is_user_admin: {
19273
19821
  Args: never;
19274
19822
  Returns: boolean;
@@ -19283,13 +19831,14 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
19283
19831
  };
19284
19832
  Returns: boolean;
19285
19833
  };
19286
- list_monteurs: {
19834
+ list_medewerkers: {
19287
19835
  Args: never;
19288
19836
  Returns: {
19289
19837
  avatar_url: string;
19290
19838
  display_name: string;
19291
19839
  email: string;
19292
19840
  id: string;
19841
+ roles: string[];
19293
19842
  }[];
19294
19843
  };
19295
19844
  list_my_planning_items: {
@@ -19615,17 +20164,6 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
19615
20164
  Returns: string;
19616
20165
  };
19617
20166
  logistics_emit_event: {
19618
- Args: {
19619
- p_event_type: string;
19620
- p_idempotency_key?: string;
19621
- p_order_ref: string;
19622
- p_payload?: import("../integrations/supabase/types").Json;
19623
- p_shadow?: boolean;
19624
- p_source_module: string;
19625
- p_strategy_id?: string;
19626
- };
19627
- Returns: import("../integrations/supabase/types").Json;
19628
- } | {
19629
20167
  Args: {
19630
20168
  p_event_type: string;
19631
20169
  p_idempotency_key?: string;
@@ -20080,6 +20618,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
20080
20618
  my_module_permissions: {
20081
20619
  Args: never;
20082
20620
  Returns: {
20621
+ feature_id: string;
20083
20622
  module_id: string;
20084
20623
  permission: string;
20085
20624
  }[];
@@ -20960,6 +21499,16 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
20960
21499
  };
20961
21500
  Returns: string[];
20962
21501
  };
21502
+ switch_time_log: {
21503
+ Args: {
21504
+ p_employee_id: string;
21505
+ p_start_lat?: number;
21506
+ p_start_lng?: number;
21507
+ p_type: string;
21508
+ p_work_order_id?: string;
21509
+ };
21510
+ Returns: import("../integrations/supabase/types").Json;
21511
+ };
20963
21512
  sync_all_layer_stocks: {
20964
21513
  Args: never;
20965
21514
  Returns: undefined;
@@ -21010,6 +21559,24 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
21010
21559
  };
21011
21560
  Returns: boolean;
21012
21561
  };
21562
+ twinfield_cron_lock_acquire: {
21563
+ Args: {
21564
+ _job_name: string;
21565
+ _stale_seconds?: number;
21566
+ };
21567
+ Returns: boolean;
21568
+ };
21569
+ twinfield_cron_lock_release: {
21570
+ Args: {
21571
+ _error?: string;
21572
+ _job_name: string;
21573
+ };
21574
+ Returns: undefined;
21575
+ };
21576
+ twinfield_prune_push_queue: {
21577
+ Args: never;
21578
+ Returns: number;
21579
+ };
21013
21580
  twinfield_register_cron: {
21014
21581
  Args: {
21015
21582
  apikey?: string;
@@ -21053,7 +21620,7 @@ export declare const startRecalcJob: import("@tanstack/start-client-core").Optio
21053
21620
  Enums: {
21054
21621
  ai_import_status: "nieuw" | "verwerken" | "bevestigen" | "klaar" | "mislukt";
21055
21622
  app_role: "admin" | "planner" | "monteur" | "administratie" | "ai_admin" | "manager" | "warehouse" | "sales" | "developer" | "receptie";
21056
- doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon";
21623
+ doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief";
21057
21624
  doc_orientation: "portrait" | "landscape";
21058
21625
  exact_env: "staging" | "live";
21059
21626
  exact_push_status: "pending" | "sent" | "error";
@@ -21953,6 +22520,126 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
21953
22520
  };
21954
22521
  Relationships: [];
21955
22522
  };
22523
+ cao_holidays: {
22524
+ Row: {
22525
+ created_at: string;
22526
+ description: string | null;
22527
+ holiday_date: string;
22528
+ id: string;
22529
+ updated_at: string;
22530
+ };
22531
+ Insert: {
22532
+ created_at?: string;
22533
+ description?: string | null;
22534
+ holiday_date: string;
22535
+ id?: string;
22536
+ updated_at?: string;
22537
+ };
22538
+ Update: {
22539
+ created_at?: string;
22540
+ description?: string | null;
22541
+ holiday_date?: string;
22542
+ id?: string;
22543
+ updated_at?: string;
22544
+ };
22545
+ Relationships: [];
22546
+ };
22547
+ cao_settings: {
22548
+ Row: {
22549
+ auto_break_after_hours: number;
22550
+ auto_break_minutes: number;
22551
+ auto_break_unpaid: boolean;
22552
+ auto_stop_after_hours: number;
22553
+ callout_fee: number;
22554
+ created_at: string;
22555
+ daily_regular_hours: number;
22556
+ default_hourly_rate: number;
22557
+ id: string;
22558
+ materials_markup_percent: number;
22559
+ max_daily_hours: number;
22560
+ max_weekly_hours: number;
22561
+ meal_allowance_amount: number;
22562
+ overtime_pct_178: number;
22563
+ overtime_pct_189: number;
22564
+ overtime_pct_212: number;
22565
+ reminder_after_hours: number;
22566
+ standby_evening_amount: number;
22567
+ standby_weekend_amount: number;
22568
+ travel_cost_per_km: number | null;
22569
+ travel_cost_threshold_km: number | null;
22570
+ travel_counts_as_work: boolean;
22571
+ travel_hourly_rate: number;
22572
+ travel_rate_per_hour: number;
22573
+ travel_threshold_minutes: number;
22574
+ updated_at: string;
22575
+ weekend_always_212: boolean;
22576
+ window_end: string;
22577
+ window_start: string;
22578
+ };
22579
+ Insert: {
22580
+ auto_break_after_hours?: number;
22581
+ auto_break_minutes?: number;
22582
+ auto_break_unpaid?: boolean;
22583
+ auto_stop_after_hours?: number;
22584
+ callout_fee?: number;
22585
+ created_at?: string;
22586
+ daily_regular_hours?: number;
22587
+ default_hourly_rate?: number;
22588
+ id?: string;
22589
+ materials_markup_percent?: number;
22590
+ max_daily_hours?: number;
22591
+ max_weekly_hours?: number;
22592
+ meal_allowance_amount?: number;
22593
+ overtime_pct_178?: number;
22594
+ overtime_pct_189?: number;
22595
+ overtime_pct_212?: number;
22596
+ reminder_after_hours?: number;
22597
+ standby_evening_amount?: number;
22598
+ standby_weekend_amount?: number;
22599
+ travel_cost_per_km?: number | null;
22600
+ travel_cost_threshold_km?: number | null;
22601
+ travel_counts_as_work?: boolean;
22602
+ travel_hourly_rate?: number;
22603
+ travel_rate_per_hour?: number;
22604
+ travel_threshold_minutes?: number;
22605
+ updated_at?: string;
22606
+ weekend_always_212?: boolean;
22607
+ window_end?: string;
22608
+ window_start?: string;
22609
+ };
22610
+ Update: {
22611
+ auto_break_after_hours?: number;
22612
+ auto_break_minutes?: number;
22613
+ auto_break_unpaid?: boolean;
22614
+ auto_stop_after_hours?: number;
22615
+ callout_fee?: number;
22616
+ created_at?: string;
22617
+ daily_regular_hours?: number;
22618
+ default_hourly_rate?: number;
22619
+ id?: string;
22620
+ materials_markup_percent?: number;
22621
+ max_daily_hours?: number;
22622
+ max_weekly_hours?: number;
22623
+ meal_allowance_amount?: number;
22624
+ overtime_pct_178?: number;
22625
+ overtime_pct_189?: number;
22626
+ overtime_pct_212?: number;
22627
+ reminder_after_hours?: number;
22628
+ standby_evening_amount?: number;
22629
+ standby_weekend_amount?: number;
22630
+ travel_cost_per_km?: number | null;
22631
+ travel_cost_threshold_km?: number | null;
22632
+ travel_counts_as_work?: boolean;
22633
+ travel_hourly_rate?: number;
22634
+ travel_rate_per_hour?: number;
22635
+ travel_threshold_minutes?: number;
22636
+ updated_at?: string;
22637
+ weekend_always_212?: boolean;
22638
+ window_end?: string;
22639
+ window_start?: string;
22640
+ };
22641
+ Relationships: [];
22642
+ };
21956
22643
  carrier_shipping_rates: {
21957
22644
  Row: {
21958
22645
  carrier_id: string;
@@ -28847,7 +29534,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
28847
29534
  start_date: string;
28848
29535
  start_time: string | null;
28849
29536
  status: string;
28850
- tenant_id: string;
28851
29537
  updated_at: string;
28852
29538
  user_id: string;
28853
29539
  };
@@ -28865,7 +29551,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
28865
29551
  start_date: string;
28866
29552
  start_time?: string | null;
28867
29553
  status?: string;
28868
- tenant_id?: string;
28869
29554
  updated_at?: string;
28870
29555
  user_id: string;
28871
29556
  };
@@ -28883,7 +29568,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
28883
29568
  start_date?: string;
28884
29569
  start_time?: string | null;
28885
29570
  status?: string;
28886
- tenant_id?: string;
28887
29571
  updated_at?: string;
28888
29572
  user_id?: string;
28889
29573
  };
@@ -28891,13 +29575,13 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
28891
29575
  foreignKeyName: "leave_requests_monteur_id_fkey";
28892
29576
  columns: ["monteur_id"];
28893
29577
  isOneToOne: false;
28894
- referencedRelation: "monteurs";
29578
+ referencedRelation: "profiles";
28895
29579
  referencedColumns: ["id"];
28896
29580
  }, {
28897
29581
  foreignKeyName: "leave_requests_user_id_fkey";
28898
29582
  columns: ["user_id"];
28899
29583
  isOneToOne: false;
28900
- referencedRelation: "monteurs";
29584
+ referencedRelation: "profiles";
28901
29585
  referencedColumns: ["id"];
28902
29586
  }];
28903
29587
  };
@@ -31052,6 +31736,90 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31052
31736
  };
31053
31737
  Relationships: [];
31054
31738
  };
31739
+ material_usage: {
31740
+ Row: {
31741
+ created_at: string;
31742
+ id: string;
31743
+ material_name: string;
31744
+ monteur_id: string | null;
31745
+ price_at_time: number;
31746
+ quantity_used: number;
31747
+ updated_at: string;
31748
+ van_inventory_id: string | null;
31749
+ work_order_id: string;
31750
+ };
31751
+ Insert: {
31752
+ created_at?: string;
31753
+ id?: string;
31754
+ material_name: string;
31755
+ monteur_id?: string | null;
31756
+ price_at_time?: number;
31757
+ quantity_used?: number;
31758
+ updated_at?: string;
31759
+ van_inventory_id?: string | null;
31760
+ work_order_id: string;
31761
+ };
31762
+ Update: {
31763
+ created_at?: string;
31764
+ id?: string;
31765
+ material_name?: string;
31766
+ monteur_id?: string | null;
31767
+ price_at_time?: number;
31768
+ quantity_used?: number;
31769
+ updated_at?: string;
31770
+ van_inventory_id?: string | null;
31771
+ work_order_id?: string;
31772
+ };
31773
+ Relationships: [{
31774
+ foreignKeyName: "material_usage_monteur_id_fkey";
31775
+ columns: ["monteur_id"];
31776
+ isOneToOne: false;
31777
+ referencedRelation: "profiles";
31778
+ referencedColumns: ["id"];
31779
+ }, {
31780
+ foreignKeyName: "material_usage_van_inventory_id_fkey";
31781
+ columns: ["van_inventory_id"];
31782
+ isOneToOne: false;
31783
+ referencedRelation: "van_inventories";
31784
+ referencedColumns: ["id"];
31785
+ }, {
31786
+ foreignKeyName: "material_usage_work_order_id_fkey";
31787
+ columns: ["work_order_id"];
31788
+ isOneToOne: false;
31789
+ referencedRelation: "work_orders";
31790
+ referencedColumns: ["id"];
31791
+ }];
31792
+ };
31793
+ module_features: {
31794
+ Row: {
31795
+ created_at: string;
31796
+ feature_id: string;
31797
+ id: string;
31798
+ is_active: boolean;
31799
+ last_seen_at: string;
31800
+ module_id: string;
31801
+ name: string;
31802
+ };
31803
+ Insert: {
31804
+ created_at?: string;
31805
+ feature_id: string;
31806
+ id?: string;
31807
+ is_active?: boolean;
31808
+ last_seen_at?: string;
31809
+ module_id: string;
31810
+ name: string;
31811
+ };
31812
+ Update: {
31813
+ created_at?: string;
31814
+ feature_id?: string;
31815
+ id?: string;
31816
+ is_active?: boolean;
31817
+ last_seen_at?: string;
31818
+ module_id?: string;
31819
+ name?: string;
31820
+ };
31821
+ Relationships: [];
31822
+ };
31055
31823
  module_permissions: {
31056
31824
  Row: {
31057
31825
  created_at: string;
@@ -31082,6 +31850,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31082
31850
  module_registry: {
31083
31851
  Row: {
31084
31852
  created_at: string;
31853
+ enforce: boolean;
31085
31854
  is_active: boolean;
31086
31855
  last_seen_at: string;
31087
31856
  module_id: string;
@@ -31091,6 +31860,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31091
31860
  };
31092
31861
  Insert: {
31093
31862
  created_at?: string;
31863
+ enforce?: boolean;
31094
31864
  is_active?: boolean;
31095
31865
  last_seen_at?: string;
31096
31866
  module_id: string;
@@ -31100,6 +31870,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31100
31870
  };
31101
31871
  Update: {
31102
31872
  created_at?: string;
31873
+ enforce?: boolean;
31103
31874
  is_active?: boolean;
31104
31875
  last_seen_at?: string;
31105
31876
  module_id?: string;
@@ -31160,63 +31931,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31160
31931
  };
31161
31932
  Relationships: [];
31162
31933
  };
31163
- monteurs: {
31164
- Row: {
31165
- avatar_url: string | null;
31166
- color: string | null;
31167
- created_at: string;
31168
- email: string | null;
31169
- id: string;
31170
- is_active: boolean;
31171
- leave_balance_hours: number;
31172
- name: string;
31173
- persnr: number | null;
31174
- phone: string | null;
31175
- role: string;
31176
- tenant_id: string;
31177
- updated_at: string;
31178
- user_id: string | null;
31179
- };
31180
- Insert: {
31181
- avatar_url?: string | null;
31182
- color?: string | null;
31183
- created_at?: string;
31184
- email?: string | null;
31185
- id?: string;
31186
- is_active?: boolean;
31187
- leave_balance_hours?: number;
31188
- name: string;
31189
- persnr?: number | null;
31190
- phone?: string | null;
31191
- role?: string;
31192
- tenant_id: string;
31193
- updated_at?: string;
31194
- user_id?: string | null;
31195
- };
31196
- Update: {
31197
- avatar_url?: string | null;
31198
- color?: string | null;
31199
- created_at?: string;
31200
- email?: string | null;
31201
- id?: string;
31202
- is_active?: boolean;
31203
- leave_balance_hours?: number;
31204
- name?: string;
31205
- persnr?: number | null;
31206
- phone?: string | null;
31207
- role?: string;
31208
- tenant_id?: string;
31209
- updated_at?: string;
31210
- user_id?: string | null;
31211
- };
31212
- Relationships: [{
31213
- foreignKeyName: "monteurs_tenant_id_fkey";
31214
- columns: ["tenant_id"];
31215
- isOneToOne: false;
31216
- referencedRelation: "tenants";
31217
- referencedColumns: ["id"];
31218
- }];
31219
- };
31220
31934
  nmbrs_component_mapping: {
31221
31935
  Row: {
31222
31936
  created_at: string;
@@ -31287,13 +32001,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31287
32001
  nmbrs_employee_number?: string;
31288
32002
  updated_at?: string;
31289
32003
  };
31290
- Relationships: [{
31291
- foreignKeyName: "nmbrs_employee_mapping_monteur_id_fkey";
31292
- columns: ["monteur_id"];
31293
- isOneToOne: true;
31294
- referencedRelation: "monteurs";
31295
- referencedColumns: ["id"];
31296
- }];
32004
+ Relationships: [];
31297
32005
  };
31298
32006
  nmbrs_export_lines: {
31299
32007
  Row: {
@@ -31342,12 +32050,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
31342
32050
  wage_code?: string;
31343
32051
  };
31344
32052
  Relationships: [{
31345
- foreignKeyName: "nmbrs_export_lines_monteur_id_fkey";
31346
- columns: ["monteur_id"];
31347
- isOneToOne: false;
31348
- referencedRelation: "monteurs";
31349
- referencedColumns: ["id"];
31350
- }, {
31351
32053
  foreignKeyName: "nmbrs_export_lines_run_id_fkey";
31352
32054
  columns: ["run_id"];
31353
32055
  isOneToOne: false;
@@ -33738,6 +34440,9 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
33738
34440
  created_at: string;
33739
34441
  id: string;
33740
34442
  laatst_gezien: string;
34443
+ laatste_fout: string | null;
34444
+ laatste_request_id: number | null;
34445
+ mislukte_posts: number;
33741
34446
  tick_sleutel: string;
33742
34447
  updated_at: string;
33743
34448
  };
@@ -33747,6 +34452,9 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
33747
34452
  created_at?: string;
33748
34453
  id?: string;
33749
34454
  laatst_gezien?: string;
34455
+ laatste_fout?: string | null;
34456
+ laatste_request_id?: number | null;
34457
+ mislukte_posts?: number;
33750
34458
  tick_sleutel?: string;
33751
34459
  updated_at?: string;
33752
34460
  };
@@ -33756,6 +34464,9 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
33756
34464
  created_at?: string;
33757
34465
  id?: string;
33758
34466
  laatst_gezien?: string;
34467
+ laatste_fout?: string | null;
34468
+ laatste_request_id?: number | null;
34469
+ mislukte_posts?: number;
33759
34470
  tick_sleutel?: string;
33760
34471
  updated_at?: string;
33761
34472
  };
@@ -35264,6 +35975,96 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
35264
35975
  referencedColumns: ["id"];
35265
35976
  }];
35266
35977
  };
35978
+ role_assignments: {
35979
+ Row: {
35980
+ created_at: string;
35981
+ id: string;
35982
+ role_id: string;
35983
+ user_id: string;
35984
+ };
35985
+ Insert: {
35986
+ created_at?: string;
35987
+ id?: string;
35988
+ role_id: string;
35989
+ user_id: string;
35990
+ };
35991
+ Update: {
35992
+ created_at?: string;
35993
+ id?: string;
35994
+ role_id?: string;
35995
+ user_id?: string;
35996
+ };
35997
+ Relationships: [{
35998
+ foreignKeyName: "role_assignments_role_id_fkey";
35999
+ columns: ["role_id"];
36000
+ isOneToOne: false;
36001
+ referencedRelation: "roles";
36002
+ referencedColumns: ["id"];
36003
+ }];
36004
+ };
36005
+ role_permissions: {
36006
+ Row: {
36007
+ can_edit: boolean;
36008
+ can_view: boolean;
36009
+ feature_id: string;
36010
+ id: string;
36011
+ module_id: string;
36012
+ role_id: string;
36013
+ updated_at: string;
36014
+ };
36015
+ Insert: {
36016
+ can_edit?: boolean;
36017
+ can_view?: boolean;
36018
+ feature_id?: string;
36019
+ id?: string;
36020
+ module_id: string;
36021
+ role_id: string;
36022
+ updated_at?: string;
36023
+ };
36024
+ Update: {
36025
+ can_edit?: boolean;
36026
+ can_view?: boolean;
36027
+ feature_id?: string;
36028
+ id?: string;
36029
+ module_id?: string;
36030
+ role_id?: string;
36031
+ updated_at?: string;
36032
+ };
36033
+ Relationships: [{
36034
+ foreignKeyName: "role_permissions_role_id_fkey";
36035
+ columns: ["role_id"];
36036
+ isOneToOne: false;
36037
+ referencedRelation: "roles";
36038
+ referencedColumns: ["id"];
36039
+ }];
36040
+ };
36041
+ roles: {
36042
+ Row: {
36043
+ created_at: string;
36044
+ id: string;
36045
+ is_protected: boolean;
36046
+ key: string;
36047
+ name: string;
36048
+ updated_at: string;
36049
+ };
36050
+ Insert: {
36051
+ created_at?: string;
36052
+ id?: string;
36053
+ is_protected?: boolean;
36054
+ key: string;
36055
+ name: string;
36056
+ updated_at?: string;
36057
+ };
36058
+ Update: {
36059
+ created_at?: string;
36060
+ id?: string;
36061
+ is_protected?: boolean;
36062
+ key?: string;
36063
+ name?: string;
36064
+ updated_at?: string;
36065
+ };
36066
+ Relationships: [];
36067
+ };
35267
36068
  rooms: {
35268
36069
  Row: {
35269
36070
  capacity: number;
@@ -35933,6 +36734,54 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
35933
36734
  };
35934
36735
  Relationships: [];
35935
36736
  };
36737
+ time_compensation_entries: {
36738
+ Row: {
36739
+ created_at: string;
36740
+ employee_id: string;
36741
+ entry_date: string;
36742
+ id: string;
36743
+ km: number;
36744
+ meal_allowance: number;
36745
+ notes: string | null;
36746
+ standby_evening: number;
36747
+ standby_weekend: number;
36748
+ tvt_change: number;
36749
+ updated_at: string;
36750
+ };
36751
+ Insert: {
36752
+ created_at?: string;
36753
+ employee_id: string;
36754
+ entry_date: string;
36755
+ id?: string;
36756
+ km?: number;
36757
+ meal_allowance?: number;
36758
+ notes?: string | null;
36759
+ standby_evening?: number;
36760
+ standby_weekend?: number;
36761
+ tvt_change?: number;
36762
+ updated_at?: string;
36763
+ };
36764
+ Update: {
36765
+ created_at?: string;
36766
+ employee_id?: string;
36767
+ entry_date?: string;
36768
+ id?: string;
36769
+ km?: number;
36770
+ meal_allowance?: number;
36771
+ notes?: string | null;
36772
+ standby_evening?: number;
36773
+ standby_weekend?: number;
36774
+ tvt_change?: number;
36775
+ updated_at?: string;
36776
+ };
36777
+ Relationships: [{
36778
+ foreignKeyName: "time_compensation_entries_employee_id_fkey";
36779
+ columns: ["employee_id"];
36780
+ isOneToOne: false;
36781
+ referencedRelation: "profiles";
36782
+ referencedColumns: ["id"];
36783
+ }];
36784
+ };
35936
36785
  time_entries: {
35937
36786
  Row: {
35938
36787
  created_at: string;
@@ -35967,65 +36816,170 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
35967
36816
  undertime?: number;
35968
36817
  updated_at?: string;
35969
36818
  };
36819
+ Relationships: [];
36820
+ };
36821
+ time_log_week_approvals: {
36822
+ Row: {
36823
+ approved_at: string | null;
36824
+ approved_by: string | null;
36825
+ created_at: string;
36826
+ employee_id: string;
36827
+ id: string;
36828
+ locked: boolean;
36829
+ notes: string | null;
36830
+ status: string;
36831
+ submitted_at: string | null;
36832
+ updated_at: string;
36833
+ week_start: string;
36834
+ };
36835
+ Insert: {
36836
+ approved_at?: string | null;
36837
+ approved_by?: string | null;
36838
+ created_at?: string;
36839
+ employee_id: string;
36840
+ id?: string;
36841
+ locked?: boolean;
36842
+ notes?: string | null;
36843
+ status?: string;
36844
+ submitted_at?: string | null;
36845
+ updated_at?: string;
36846
+ week_start: string;
36847
+ };
36848
+ Update: {
36849
+ approved_at?: string | null;
36850
+ approved_by?: string | null;
36851
+ created_at?: string;
36852
+ employee_id?: string;
36853
+ id?: string;
36854
+ locked?: boolean;
36855
+ notes?: string | null;
36856
+ status?: string;
36857
+ submitted_at?: string | null;
36858
+ updated_at?: string;
36859
+ week_start?: string;
36860
+ };
35970
36861
  Relationships: [{
35971
- foreignKeyName: "time_entries_employee_id_fkey";
36862
+ foreignKeyName: "time_log_week_approvals_employee_id_fkey";
35972
36863
  columns: ["employee_id"];
35973
36864
  isOneToOne: false;
35974
- referencedRelation: "monteurs";
36865
+ referencedRelation: "profiles";
35975
36866
  referencedColumns: ["id"];
35976
36867
  }];
35977
36868
  };
35978
36869
  time_logs: {
35979
36870
  Row: {
36871
+ auto_stop_reason: string | null;
36872
+ auto_stopped: boolean;
35980
36873
  created_at: string;
36874
+ current_latitude: number | null;
36875
+ current_longitude: number | null;
36876
+ current_position_updated_at: string | null;
35981
36877
  employee_id: string;
36878
+ end_latitude: number | null;
36879
+ end_longitude: number | null;
35982
36880
  end_time: string | null;
36881
+ eta_distance_km: number | null;
36882
+ eta_minutes: number | null;
36883
+ eta_updated_at: string | null;
36884
+ hour_category: string | null;
35983
36885
  id: string;
36886
+ last_reminder_at: string | null;
35984
36887
  notes: string | null;
35985
36888
  overtime_hours: number;
35986
36889
  overtime_type: string | null;
35987
36890
  regular_hours: number;
36891
+ reminder_count: number;
36892
+ requires_review: boolean;
36893
+ start_latitude: number | null;
36894
+ start_longitude: number | null;
35988
36895
  start_time: string;
35989
36896
  travel_cost: number | null;
35990
36897
  travel_distance_km: number | null;
36898
+ travel_duration_min: number | null;
36899
+ travel_time_minutes: number | null;
35991
36900
  type: string;
35992
36901
  updated_at: string;
36902
+ work_order_id: string | null;
35993
36903
  };
35994
36904
  Insert: {
36905
+ auto_stop_reason?: string | null;
36906
+ auto_stopped?: boolean;
35995
36907
  created_at?: string;
36908
+ current_latitude?: number | null;
36909
+ current_longitude?: number | null;
36910
+ current_position_updated_at?: string | null;
35996
36911
  employee_id: string;
36912
+ end_latitude?: number | null;
36913
+ end_longitude?: number | null;
35997
36914
  end_time?: string | null;
36915
+ eta_distance_km?: number | null;
36916
+ eta_minutes?: number | null;
36917
+ eta_updated_at?: string | null;
36918
+ hour_category?: string | null;
35998
36919
  id?: string;
36920
+ last_reminder_at?: string | null;
35999
36921
  notes?: string | null;
36000
36922
  overtime_hours?: number;
36001
36923
  overtime_type?: string | null;
36002
36924
  regular_hours?: number;
36925
+ reminder_count?: number;
36926
+ requires_review?: boolean;
36927
+ start_latitude?: number | null;
36928
+ start_longitude?: number | null;
36003
36929
  start_time?: string;
36004
36930
  travel_cost?: number | null;
36005
36931
  travel_distance_km?: number | null;
36932
+ travel_duration_min?: number | null;
36933
+ travel_time_minutes?: number | null;
36006
36934
  type: string;
36007
36935
  updated_at?: string;
36936
+ work_order_id?: string | null;
36008
36937
  };
36009
36938
  Update: {
36939
+ auto_stop_reason?: string | null;
36940
+ auto_stopped?: boolean;
36010
36941
  created_at?: string;
36942
+ current_latitude?: number | null;
36943
+ current_longitude?: number | null;
36944
+ current_position_updated_at?: string | null;
36011
36945
  employee_id?: string;
36946
+ end_latitude?: number | null;
36947
+ end_longitude?: number | null;
36012
36948
  end_time?: string | null;
36949
+ eta_distance_km?: number | null;
36950
+ eta_minutes?: number | null;
36951
+ eta_updated_at?: string | null;
36952
+ hour_category?: string | null;
36013
36953
  id?: string;
36954
+ last_reminder_at?: string | null;
36014
36955
  notes?: string | null;
36015
36956
  overtime_hours?: number;
36016
36957
  overtime_type?: string | null;
36017
36958
  regular_hours?: number;
36959
+ reminder_count?: number;
36960
+ requires_review?: boolean;
36961
+ start_latitude?: number | null;
36962
+ start_longitude?: number | null;
36018
36963
  start_time?: string;
36019
36964
  travel_cost?: number | null;
36020
36965
  travel_distance_km?: number | null;
36966
+ travel_duration_min?: number | null;
36967
+ travel_time_minutes?: number | null;
36021
36968
  type?: string;
36022
36969
  updated_at?: string;
36970
+ work_order_id?: string | null;
36023
36971
  };
36024
36972
  Relationships: [{
36025
36973
  foreignKeyName: "time_logs_employee_id_fkey";
36026
36974
  columns: ["employee_id"];
36027
36975
  isOneToOne: false;
36028
- referencedRelation: "monteurs";
36976
+ referencedRelation: "profiles";
36977
+ referencedColumns: ["id"];
36978
+ }, {
36979
+ foreignKeyName: "time_logs_work_order_id_fkey";
36980
+ columns: ["work_order_id"];
36981
+ isOneToOne: false;
36982
+ referencedRelation: "work_orders";
36029
36983
  referencedColumns: ["id"];
36030
36984
  }];
36031
36985
  };
@@ -36064,7 +37018,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
36064
37018
  foreignKeyName: "time_off_entries_employee_id_fkey";
36065
37019
  columns: ["employee_id"];
36066
37020
  isOneToOne: false;
36067
- referencedRelation: "monteurs";
37021
+ referencedRelation: "profiles";
36068
37022
  referencedColumns: ["id"];
36069
37023
  }];
36070
37024
  };
@@ -36374,6 +37328,39 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
36374
37328
  };
36375
37329
  Relationships: [];
36376
37330
  };
37331
+ twinfield_cron_locks: {
37332
+ Row: {
37333
+ created_at: string;
37334
+ heartbeat_at: string;
37335
+ job_name: string;
37336
+ last_error: string | null;
37337
+ last_finished_at: string | null;
37338
+ locked_at: string;
37339
+ run_id: string;
37340
+ updated_at: string;
37341
+ };
37342
+ Insert: {
37343
+ created_at?: string;
37344
+ heartbeat_at?: string;
37345
+ job_name: string;
37346
+ last_error?: string | null;
37347
+ last_finished_at?: string | null;
37348
+ locked_at?: string;
37349
+ run_id?: string;
37350
+ updated_at?: string;
37351
+ };
37352
+ Update: {
37353
+ created_at?: string;
37354
+ heartbeat_at?: string;
37355
+ job_name?: string;
37356
+ last_error?: string | null;
37357
+ last_finished_at?: string | null;
37358
+ locked_at?: string;
37359
+ run_id?: string;
37360
+ updated_at?: string;
37361
+ };
37362
+ Relationships: [];
37363
+ };
36377
37364
  twinfield_customers: {
36378
37365
  Row: {
36379
37366
  address: string | null;
@@ -36974,6 +37961,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
36974
37961
  twinfield_push_queue: {
36975
37962
  Row: {
36976
37963
  action: string;
37964
+ attempt_started_at: string | null;
36977
37965
  attempts: number;
36978
37966
  connection_id: string | null;
36979
37967
  created_at: string;
@@ -36990,6 +37978,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
36990
37978
  };
36991
37979
  Insert: {
36992
37980
  action?: string;
37981
+ attempt_started_at?: string | null;
36993
37982
  attempts?: number;
36994
37983
  connection_id?: string | null;
36995
37984
  created_at?: string;
@@ -37006,6 +37995,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37006
37995
  };
37007
37996
  Update: {
37008
37997
  action?: string;
37998
+ attempt_started_at?: string | null;
37009
37999
  attempts?: number;
37010
38000
  connection_id?: string | null;
37011
38001
  created_at?: string;
@@ -37203,13 +38193,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37203
38193
  workday_end?: string | null;
37204
38194
  workday_start?: string | null;
37205
38195
  };
37206
- Relationships: [{
37207
- foreignKeyName: "uren_cao_profiles_monteur_id_fkey";
37208
- columns: ["monteur_id"];
37209
- isOneToOne: true;
37210
- referencedRelation: "monteurs";
37211
- referencedColumns: ["id"];
37212
- }];
38196
+ Relationships: [];
37213
38197
  };
37214
38198
  uren_entries: {
37215
38199
  Row: {
@@ -37255,12 +38239,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37255
38239
  werkbon_id?: string | null;
37256
38240
  };
37257
38241
  Relationships: [{
37258
- foreignKeyName: "uren_entries_monteur_id_fkey";
37259
- columns: ["monteur_id"];
37260
- isOneToOne: false;
37261
- referencedRelation: "monteurs";
37262
- referencedColumns: ["id"];
37263
- }, {
37264
38242
  foreignKeyName: "uren_entries_werkbon_id_fkey";
37265
38243
  columns: ["werkbon_id"];
37266
38244
  isOneToOne: false;
@@ -37728,17 +38706,12 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37728
38706
  submitted_at?: string | null;
37729
38707
  updated_at?: string;
37730
38708
  };
37731
- Relationships: [{
37732
- foreignKeyName: "uren_weekstaten_monteur_id_fkey";
37733
- columns: ["monteur_id"];
37734
- isOneToOne: false;
37735
- referencedRelation: "monteurs";
37736
- referencedColumns: ["id"];
37737
- }];
38709
+ Relationships: [];
37738
38710
  };
37739
38711
  user_module_permissions: {
37740
38712
  Row: {
37741
38713
  created_at: string;
38714
+ feature_id: string;
37742
38715
  id: string;
37743
38716
  module_id: string;
37744
38717
  permission: string;
@@ -37747,6 +38720,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37747
38720
  };
37748
38721
  Insert: {
37749
38722
  created_at?: string;
38723
+ feature_id?: string;
37750
38724
  id?: string;
37751
38725
  module_id: string;
37752
38726
  permission: string;
@@ -37755,6 +38729,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37755
38729
  };
37756
38730
  Update: {
37757
38731
  created_at?: string;
38732
+ feature_id?: string;
37758
38733
  id?: string;
37759
38734
  module_id?: string;
37760
38735
  permission?: string;
@@ -37790,6 +38765,51 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
37790
38765
  referencedColumns: ["id"];
37791
38766
  }];
37792
38767
  };
38768
+ van_inventories: {
38769
+ Row: {
38770
+ barcode: string | null;
38771
+ created_at: string;
38772
+ id: string;
38773
+ monteur_id: string | null;
38774
+ price_per_unit: number;
38775
+ product_name: string;
38776
+ quantity_current: number;
38777
+ quantity_min: number;
38778
+ unit: string;
38779
+ updated_at: string;
38780
+ };
38781
+ Insert: {
38782
+ barcode?: string | null;
38783
+ created_at?: string;
38784
+ id?: string;
38785
+ monteur_id?: string | null;
38786
+ price_per_unit?: number;
38787
+ product_name: string;
38788
+ quantity_current?: number;
38789
+ quantity_min?: number;
38790
+ unit?: string;
38791
+ updated_at?: string;
38792
+ };
38793
+ Update: {
38794
+ barcode?: string | null;
38795
+ created_at?: string;
38796
+ id?: string;
38797
+ monteur_id?: string | null;
38798
+ price_per_unit?: number;
38799
+ product_name?: string;
38800
+ quantity_current?: number;
38801
+ quantity_min?: number;
38802
+ unit?: string;
38803
+ updated_at?: string;
38804
+ };
38805
+ Relationships: [{
38806
+ foreignKeyName: "van_inventories_monteur_id_fkey";
38807
+ columns: ["monteur_id"];
38808
+ isOneToOne: false;
38809
+ referencedRelation: "profiles";
38810
+ referencedColumns: ["id"];
38811
+ }];
38812
+ };
37793
38813
  voorraad_custom_fields: {
37794
38814
  Row: {
37795
38815
  created_at: string;
@@ -38740,7 +39760,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38740
39760
  foreignKeyName: "work_order_monteurs_monteur_id_fkey";
38741
39761
  columns: ["monteur_id"];
38742
39762
  isOneToOne: false;
38743
- referencedRelation: "monteurs";
39763
+ referencedRelation: "profiles";
38744
39764
  referencedColumns: ["id"];
38745
39765
  }, {
38746
39766
  foreignKeyName: "work_order_monteurs_work_order_id_fkey";
@@ -38750,6 +39770,60 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38750
39770
  referencedColumns: ["id"];
38751
39771
  }];
38752
39772
  };
39773
+ work_order_photos: {
39774
+ Row: {
39775
+ ai_caption: string | null;
39776
+ ai_categorized_at: string | null;
39777
+ ai_labels: import("../integrations/supabase/types").Json | null;
39778
+ caption: string | null;
39779
+ created_at: string;
39780
+ id: string;
39781
+ monteur_id: string | null;
39782
+ photo_type: string;
39783
+ storage_path: string;
39784
+ updated_at: string;
39785
+ work_order_id: string;
39786
+ };
39787
+ Insert: {
39788
+ ai_caption?: string | null;
39789
+ ai_categorized_at?: string | null;
39790
+ ai_labels?: import("../integrations/supabase/types").Json | null;
39791
+ caption?: string | null;
39792
+ created_at?: string;
39793
+ id?: string;
39794
+ monteur_id?: string | null;
39795
+ photo_type?: string;
39796
+ storage_path: string;
39797
+ updated_at?: string;
39798
+ work_order_id: string;
39799
+ };
39800
+ Update: {
39801
+ ai_caption?: string | null;
39802
+ ai_categorized_at?: string | null;
39803
+ ai_labels?: import("../integrations/supabase/types").Json | null;
39804
+ caption?: string | null;
39805
+ created_at?: string;
39806
+ id?: string;
39807
+ monteur_id?: string | null;
39808
+ photo_type?: string;
39809
+ storage_path?: string;
39810
+ updated_at?: string;
39811
+ work_order_id?: string;
39812
+ };
39813
+ Relationships: [{
39814
+ foreignKeyName: "work_order_photos_monteur_id_fkey";
39815
+ columns: ["monteur_id"];
39816
+ isOneToOne: false;
39817
+ referencedRelation: "profiles";
39818
+ referencedColumns: ["id"];
39819
+ }, {
39820
+ foreignKeyName: "work_order_photos_work_order_id_fkey";
39821
+ columns: ["work_order_id"];
39822
+ isOneToOne: false;
39823
+ referencedRelation: "work_orders";
39824
+ referencedColumns: ["id"];
39825
+ }];
39826
+ };
38753
39827
  work_orders: {
38754
39828
  Row: {
38755
39829
  assigned_to: string | null;
@@ -38781,7 +39855,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38781
39855
  scheduled_end_time: string | null;
38782
39856
  scheduled_start_time: string | null;
38783
39857
  status: string;
38784
- tenant_id: string;
38785
39858
  total_hours_worked: number | null;
38786
39859
  total_price: number | null;
38787
39860
  travel_time_minutes: number | null;
@@ -38819,7 +39892,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38819
39892
  scheduled_end_time?: string | null;
38820
39893
  scheduled_start_time?: string | null;
38821
39894
  status?: string;
38822
- tenant_id: string;
38823
39895
  total_hours_worked?: number | null;
38824
39896
  total_price?: number | null;
38825
39897
  travel_time_minutes?: number | null;
@@ -38857,7 +39929,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38857
39929
  scheduled_end_time?: string | null;
38858
39930
  scheduled_start_time?: string | null;
38859
39931
  status?: string;
38860
- tenant_id?: string;
38861
39932
  total_hours_worked?: number | null;
38862
39933
  total_price?: number | null;
38863
39934
  travel_time_minutes?: number | null;
@@ -38871,12 +39942,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
38871
39942
  isOneToOne: false;
38872
39943
  referencedRelation: "work_orders";
38873
39944
  referencedColumns: ["id"];
38874
- }, {
38875
- foreignKeyName: "work_orders_tenant_id_fkey";
38876
- columns: ["tenant_id"];
38877
- isOneToOne: false;
38878
- referencedRelation: "tenants";
38879
- referencedColumns: ["id"];
38880
39945
  }];
38881
39946
  };
38882
39947
  };
@@ -39561,6 +40626,19 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
39561
40626
  };
39562
40627
  Returns: undefined;
39563
40628
  };
40629
+ approve_mailbox_order_proposal: {
40630
+ Args: {
40631
+ p_custom_fields: import("../integrations/supabase/types").Json;
40632
+ p_customer_id: string;
40633
+ p_delivery_date: string;
40634
+ p_field_values?: import("../integrations/supabase/types").Json;
40635
+ p_lines: import("../integrations/supabase/types").Json;
40636
+ p_notes: string;
40637
+ p_proposal_id: string;
40638
+ p_reviewed_by: string;
40639
+ };
40640
+ Returns: import("../integrations/supabase/types").Json;
40641
+ };
39564
40642
  assign_cart_numbers: {
39565
40643
  Args: {
39566
40644
  p_carts: import("../integrations/supabase/types").Json;
@@ -39612,6 +40690,10 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
39612
40690
  };
39613
40691
  Returns: number;
39614
40692
  };
40693
+ can_manage_hours: {
40694
+ Args: never;
40695
+ Returns: boolean;
40696
+ };
39615
40697
  check_offer_product_available_stock: {
39616
40698
  Args: {
39617
40699
  p_campaign_product_id: string;
@@ -39801,6 +40883,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
39801
40883
  };
39802
40884
  Returns: {
39803
40885
  action: string;
40886
+ attempt_started_at: string | null;
39804
40887
  attempts: number;
39805
40888
  connection_id: string | null;
39806
40889
  created_at: string;
@@ -39888,6 +40971,30 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
39888
40971
  agent_naam: string;
39889
40972
  }[];
39890
40973
  };
40974
+ consume_van_inventory: {
40975
+ Args: {
40976
+ p_inventory_id: string;
40977
+ p_quantity: number;
40978
+ };
40979
+ Returns: {
40980
+ barcode: string | null;
40981
+ created_at: string;
40982
+ id: string;
40983
+ monteur_id: string | null;
40984
+ price_per_unit: number;
40985
+ product_name: string;
40986
+ quantity_current: number;
40987
+ quantity_min: number;
40988
+ unit: string;
40989
+ updated_at: string;
40990
+ };
40991
+ SetofOptions: {
40992
+ from: "*";
40993
+ to: "van_inventories";
40994
+ isOneToOne: true;
40995
+ isSetofReturn: false;
40996
+ };
40997
+ };
39891
40998
  control_get_todays_carts: {
39892
40999
  Args: never;
39893
41000
  Returns: {
@@ -39961,6 +41068,13 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
39961
41068
  _user_id: string;
39962
41069
  };
39963
41070
  Returns: string;
41071
+ } | {
41072
+ Args: {
41073
+ _feature_id: string;
41074
+ _module_id: string;
41075
+ _user_id: string;
41076
+ };
41077
+ Returns: string;
39964
41078
  };
39965
41079
  email_auth_decrypt: {
39966
41080
  Args: {
@@ -40312,12 +41426,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
40312
41426
  Args: never;
40313
41427
  Returns: string;
40314
41428
  };
40315
- get_work_order_tenant_id: {
40316
- Args: {
40317
- wo_id: string;
40318
- };
40319
- Returns: string;
40320
- };
40321
41429
  has_module_permission: {
40322
41430
  Args: {
40323
41431
  _min: string;
@@ -40351,6 +41459,13 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
40351
41459
  };
40352
41460
  Returns: boolean;
40353
41461
  };
41462
+ is_time_log_week_locked: {
41463
+ Args: {
41464
+ p_employee_id: string;
41465
+ p_start_time: string;
41466
+ };
41467
+ Returns: boolean;
41468
+ };
40354
41469
  is_user_admin: {
40355
41470
  Args: never;
40356
41471
  Returns: boolean;
@@ -40365,13 +41480,14 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
40365
41480
  };
40366
41481
  Returns: boolean;
40367
41482
  };
40368
- list_monteurs: {
41483
+ list_medewerkers: {
40369
41484
  Args: never;
40370
41485
  Returns: {
40371
41486
  avatar_url: string;
40372
41487
  display_name: string;
40373
41488
  email: string;
40374
41489
  id: string;
41490
+ roles: string[];
40375
41491
  }[];
40376
41492
  };
40377
41493
  list_my_planning_items: {
@@ -40697,17 +41813,6 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
40697
41813
  Returns: string;
40698
41814
  };
40699
41815
  logistics_emit_event: {
40700
- Args: {
40701
- p_event_type: string;
40702
- p_idempotency_key?: string;
40703
- p_order_ref: string;
40704
- p_payload?: import("../integrations/supabase/types").Json;
40705
- p_shadow?: boolean;
40706
- p_source_module: string;
40707
- p_strategy_id?: string;
40708
- };
40709
- Returns: import("../integrations/supabase/types").Json;
40710
- } | {
40711
41816
  Args: {
40712
41817
  p_event_type: string;
40713
41818
  p_idempotency_key?: string;
@@ -41162,6 +42267,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
41162
42267
  my_module_permissions: {
41163
42268
  Args: never;
41164
42269
  Returns: {
42270
+ feature_id: string;
41165
42271
  module_id: string;
41166
42272
  permission: string;
41167
42273
  }[];
@@ -42042,6 +43148,16 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
42042
43148
  };
42043
43149
  Returns: string[];
42044
43150
  };
43151
+ switch_time_log: {
43152
+ Args: {
43153
+ p_employee_id: string;
43154
+ p_start_lat?: number;
43155
+ p_start_lng?: number;
43156
+ p_type: string;
43157
+ p_work_order_id?: string;
43158
+ };
43159
+ Returns: import("../integrations/supabase/types").Json;
43160
+ };
42045
43161
  sync_all_layer_stocks: {
42046
43162
  Args: never;
42047
43163
  Returns: undefined;
@@ -42092,6 +43208,24 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
42092
43208
  };
42093
43209
  Returns: boolean;
42094
43210
  };
43211
+ twinfield_cron_lock_acquire: {
43212
+ Args: {
43213
+ _job_name: string;
43214
+ _stale_seconds?: number;
43215
+ };
43216
+ Returns: boolean;
43217
+ };
43218
+ twinfield_cron_lock_release: {
43219
+ Args: {
43220
+ _error?: string;
43221
+ _job_name: string;
43222
+ };
43223
+ Returns: undefined;
43224
+ };
43225
+ twinfield_prune_push_queue: {
43226
+ Args: never;
43227
+ Returns: number;
43228
+ };
42095
43229
  twinfield_register_cron: {
42096
43230
  Args: {
42097
43231
  apikey?: string;
@@ -42135,7 +43269,7 @@ export declare const tickRecalcJob: import("@tanstack/start-client-core").Option
42135
43269
  Enums: {
42136
43270
  ai_import_status: "nieuw" | "verwerken" | "bevestigen" | "klaar" | "mislukt";
42137
43271
  app_role: "admin" | "planner" | "monteur" | "administratie" | "ai_admin" | "manager" | "warehouse" | "sales" | "developer" | "receptie";
42138
- doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon";
43272
+ doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief";
42139
43273
  doc_orientation: "portrait" | "landscape";
42140
43274
  exact_env: "staging" | "live";
42141
43275
  exact_push_status: "pending" | "sent" | "error";