@flowselections/logistiek-engine 1.0.147 → 1.0.151

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 (33) hide show
  1. package/dist-lib/components/AutomatischVersturenCard.d.ts +2 -0
  2. package/dist-lib/components/AutomatischVersturenCard.d.ts.map +1 -0
  3. package/dist-lib/components/AutomatischVersturenCard.js +22 -0
  4. package/dist-lib/components/BeheerPage.d.ts.map +1 -1
  5. package/dist-lib/components/BeheerPage.js +3 -1
  6. package/dist-lib/components/OudeOrderregelsCard.d.ts +2 -0
  7. package/dist-lib/components/OudeOrderregelsCard.d.ts.map +1 -0
  8. package/dist-lib/components/OudeOrderregelsCard.js +28 -0
  9. package/dist-lib/integrations/supabase/previewAuthStorage.d.ts.map +1 -1
  10. package/dist-lib/integrations/supabase/previewAuthStorage.js +22 -4
  11. package/dist-lib/integrations/supabase/types.d.ts +264 -2
  12. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  13. package/dist-lib/integrations/supabase/types.js +1 -0
  14. package/dist-lib/lib/autoSend.d.ts +21 -0
  15. package/dist-lib/lib/autoSend.d.ts.map +1 -0
  16. package/dist-lib/lib/autoSend.functions.d.ts +10 -0
  17. package/dist-lib/lib/autoSend.functions.d.ts.map +1 -0
  18. package/dist-lib/lib/autoSend.functions.js +18 -0
  19. package/dist-lib/lib/autoSend.js +69 -0
  20. package/dist-lib/lib/autoSend.server.d.ts +13 -0
  21. package/dist-lib/lib/autoSend.server.d.ts.map +1 -0
  22. package/dist-lib/lib/autoSend.server.js +75 -0
  23. package/dist-lib/lib/centralSecrets.server.d.ts +13 -0
  24. package/dist-lib/lib/centralSecrets.server.d.ts.map +1 -0
  25. package/dist-lib/lib/centralSecrets.server.js +82 -0
  26. package/dist-lib/lib/handlers/logistics-tick.server.js +10 -0
  27. package/dist-lib/lib/modulePrompts.d.ts.map +1 -1
  28. package/dist-lib/lib/modulePrompts.js +116 -0
  29. package/dist-lib/lib/moduleVersion.d.ts +1 -1
  30. package/dist-lib/lib/moduleVersion.js +1 -1
  31. package/dist-lib/lib/ruleEngineSchema.d.ts.map +1 -1
  32. package/dist-lib/lib/ruleEngineSchema.js +7 -0
  33. package/package.json +4 -4
@@ -0,0 +1,2 @@
1
+ export declare function AutomatischVersturenCard(): import("react").JSX.Element;
2
+ //# sourceMappingURL=AutomatischVersturenCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutomatischVersturenCard.d.ts","sourceRoot":"","sources":["../../src/components/AutomatischVersturenCard.tsx"],"names":[],"mappings":"AAMA,wBAAgB,wBAAwB,gCA0CvC"}
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ // src/components/AutomatischVersturenCard.tsx — toont alleen óf de sleutel op te halen is en het Shell-adres aanwezig is.
3
+ import { useEffect, useState } from "react";
4
+ import { useServerFn } from "@tanstack/react-start";
5
+ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@flowselections/core";
6
+ import { getAutoSendConfig } from "../lib/autoSend.functions.js";
7
+ export function AutomatischVersturenCard() {
8
+ const lees = useServerFn(getAutoSendConfig);
9
+ const [stand, setStand] = useState(null);
10
+ const [fout, setFout] = useState(null);
11
+ useEffect(() => {
12
+ let actief = true;
13
+ lees()
14
+ .then((r) => actief && setStand(r && typeof r === "object" ? r : null))
15
+ .catch((e) => actief && setFout(String(e?.message ?? e)));
16
+ return () => {
17
+ actief = false;
18
+ };
19
+ }, [lees]);
20
+ const jaNee = (v) => (v ? "ja" : "nee");
21
+ return (_jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Automatisch versturen" }), _jsx(CardDescription, { children: "Alleen voor Floriday-orders, als \"Automatisch versturen\" in de werkwijze aan staat. Is de sleutel niet op te halen of ontbreekt het Shell-adres, dan wordt er niets verstuurd." })] }), _jsx(CardContent, { className: "space-y-1 text-sm", children: fout ? (_jsxs("p", { className: "text-destructive", children: ["Stand onbekend: ", fout] })) : !stand ? (_jsx("p", { className: "text-muted-foreground", children: "Bezig met controleren\u2026" })) : (_jsxs(_Fragment, { children: [_jsxs("p", { children: ["Sleutel op te halen: ", jaNee(stand.sleutelOpTeHalen), !stand.sleutelOpTeHalen && stand.sleutelReden ? ` (${stand.sleutelReden})` : ""] }), _jsxs("p", { children: ["Shell-adres aanwezig: ", jaNee(stand.adresAanwezig)] })] })) })] }));
22
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"BeheerPage.d.ts","sourceRoot":"","sources":["../../src/components/BeheerPage.tsx"],"names":[],"mappings":"AAmJA,wBAAgB,UAAU,gCAQzB"}
1
+ {"version":3,"file":"BeheerPage.d.ts","sourceRoot":"","sources":["../../src/components/BeheerPage.tsx"],"names":[],"mappings":"AAqJA,wBAAgB,UAAU,gCAUzB"}
@@ -11,6 +11,8 @@ import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent,
11
11
  import { RotateCcw } from "lucide-react";
12
12
  import { supabase } from "../integrations/supabase/moduleClient.js";
13
13
  import { RolPoort } from "./RolPoort";
14
+ import { OudeOrderregelsCard } from "./OudeOrderregelsCard";
15
+ import { AutomatischVersturenCard } from "./AutomatischVersturenCard";
14
16
  import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
15
17
  function HerindelenBeheer() {
16
18
  const [datum, setDatum] = useState("");
@@ -69,5 +71,5 @@ function HerindelenBeheer() {
69
71
  : `${voor?.geprintOfGepickt ?? 0} order(s) die al geprint of gepickt zijn, blijven ongemoeid.` })] }), _jsxs(AlertDialogFooter, { children: [_jsx(AlertDialogCancel, { children: "Annuleren" }), _jsxs(AlertDialogAction, { onClick: () => void voerUit(), disabled: (voor?.aantal ?? 0) === 0, children: ["Ja, ", voor?.aantal ?? 0, " order(s) opnieuw indelen"] })] })] }) })] }));
70
72
  }
71
73
  export function BeheerPage() {
72
- return (_jsx(RolPoort, { rollen: ENGINE_TOEGANG.beheer, children: _jsx("div", { className: "space-y-6 p-6", children: _jsx(HerindelenBeheer, {}) }) }));
74
+ return (_jsx(RolPoort, { rollen: ENGINE_TOEGANG.beheer, children: _jsxs("div", { className: "space-y-6 p-6", children: [_jsx(HerindelenBeheer, {}), _jsx(OudeOrderregelsCard, {}), _jsx(AutomatischVersturenCard, {})] }) }));
73
75
  }
@@ -0,0 +1,2 @@
1
+ export declare function OudeOrderregelsCard(): import("react").JSX.Element;
2
+ //# sourceMappingURL=OudeOrderregelsCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OudeOrderregelsCard.d.ts","sourceRoot":"","sources":["../../src/components/OudeOrderregelsCard.tsx"],"names":[],"mappings":"AAeA,wBAAgB,mBAAmB,gCAiDlC"}
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // src/components/OudeOrderregelsCard.tsx — orders met een oude pakbon-orderregel
3
+ // (bron: logistics_pakbon_oude_orderregels, alleen lezen).
4
+ import { useEffect, useState } from "react";
5
+ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@flowselections/core";
6
+ import { supabase } from "../integrations/supabase/moduleClient.js";
7
+ export function OudeOrderregelsCard() {
8
+ const [rijen, setRijen] = useState([]);
9
+ const [fout, setFout] = useState(null);
10
+ useEffect(() => {
11
+ let actief = true;
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
+ supabase.rpc("logistics_pakbon_oude_orderregels").then(({ data, error }) => {
14
+ if (!actief)
15
+ return;
16
+ if (error)
17
+ setFout(error.message);
18
+ else
19
+ setRijen(Array.isArray(data) ? data : []);
20
+ });
21
+ return () => {
22
+ actief = false;
23
+ };
24
+ }, []);
25
+ return (_jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Oude pakbon-orderregels" }), _jsx(CardDescription, { children: "Orders die geen pakbon per kar krijgen omdat er al een oude orderregel bestaat. Er wordt niets aangepast zonder akkoord." })] }), _jsx(CardContent, { children: fout ? (_jsxs("p", { className: "text-sm text-destructive", children: ["Kon het overzicht niet laden: ", fout] })) : rijen.length === 0 ? (_jsx("p", { className: "text-sm text-muted-foreground", children: "Geen orders met een oude orderregel." })) : (_jsx("ul", { className: "space-y-2 text-sm", children: rijen.map((r) => (_jsxs("li", { children: [_jsx("span", { className: "font-medium", children: r.orderNumber }), ": ", r.melding, r.oudeRegel ? ` (${r.oudeRegel})` : "", Array.isArray(r.bufferOrders) && r.bufferOrders.length > 1
26
+ ? ` — buffer: ${r.bufferOrders.join(", ")}`
27
+ : ""] }, `${r.orderId}-${r.oudeRegel ?? ""}`))) })) })] }));
28
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"previewAuthStorage.d.ts","sourceRoot":"","sources":["../../../src/integrations/supabase/previewAuthStorage.ts"],"names":[],"mappings":"AAIA,wBAAgB,sBAAsB;mBA2Db,MAAM;mBAeZ,MAAM,SAAS,MAAM;sBASlB,MAAM;cAK3B"}
1
+ {"version":3,"file":"previewAuthStorage.d.ts","sourceRoot":"","sources":["../../../src/integrations/supabase/previewAuthStorage.ts"],"names":[],"mappings":"AAIA,wBAAgB,sBAAsB;mBA6Db,MAAM;mBAwBZ,MAAM,SAAS,MAAM;sBASlB,MAAM;cAM3B"}
@@ -61,21 +61,38 @@ export function brokeredPreviewStorage() {
61
61
  // The editor may not be listening yet at the first getItem, so retry once.
62
62
  let firstGet = true;
63
63
  const RETRY_DELAY = 250;
64
+ // Blocked third-party storage throws here; seeding must not break broker reads.
65
+ const readLocal = (key) => { try {
66
+ return localStorage.getItem(key);
67
+ }
68
+ catch {
69
+ return undefined;
70
+ } };
64
71
  return {
65
72
  getItem: async (key) => {
66
- let res = await request('lovable-preview-auth:get', key);
73
+ // Sent with GET and REMOVE so an editor that never cached this session can check or revoke it.
74
+ const local = readLocal(key);
75
+ let res = await request('lovable-preview-auth:get', key, local ?? undefined);
67
76
  if (!res && firstGet) {
68
77
  await new Promise((r) => setTimeout(r, RETRY_DELAY));
69
- res = await request('lovable-preview-auth:get', key);
78
+ res = await request('lovable-preview-auth:get', key, local ?? undefined);
70
79
  }
71
80
  firstGet = false;
72
81
  // '' is the logout tombstone: clear the local copy too so it can't resurrect if
73
82
  // the broker later goes silent. A null reply means never-synced -> keep local.
74
83
  if (res && res.ok && typeof res.value === 'string') {
75
84
  if (res.value === '') {
76
- localStorage.removeItem(key);
85
+ if (local !== undefined && readLocal(key) === local)
86
+ localStorage.removeItem(key);
77
87
  return null;
78
88
  }
89
+ // Seed this origin so a new tab, whose editor holds no session, stays signed in.
90
+ if (local === null && readLocal(key) === null) {
91
+ try {
92
+ localStorage.setItem(key, res.value);
93
+ }
94
+ catch { /* storage full: still return the editor's session */ }
95
+ }
79
96
  return res.value;
80
97
  }
81
98
  return localStorage.getItem(key);
@@ -92,8 +109,9 @@ export function brokeredPreviewStorage() {
92
109
  });
93
110
  },
94
111
  removeItem: (key) => {
112
+ const local = readLocal(key);
95
113
  localStorage.removeItem(key);
96
- return request('lovable-preview-auth:remove', key).then(() => undefined);
114
+ return request('lovable-preview-auth:remove', key, local ?? undefined).then(() => undefined);
97
115
  },
98
116
  };
99
117
  }
@@ -2611,6 +2611,7 @@ export type Database = {
2611
2611
  twinfield_base_snapshot: Json | null;
2612
2612
  twinfield_base_version: number | null;
2613
2613
  twinfield_code: string | null;
2614
+ twinfield_create_on_insert: boolean;
2614
2615
  twinfield_last_hash: string | null;
2615
2616
  twinfield_missing_since: string | null;
2616
2617
  twinfield_present: boolean;
@@ -2702,6 +2703,7 @@ export type Database = {
2702
2703
  twinfield_base_snapshot?: Json | null;
2703
2704
  twinfield_base_version?: number | null;
2704
2705
  twinfield_code?: string | null;
2706
+ twinfield_create_on_insert?: boolean;
2705
2707
  twinfield_last_hash?: string | null;
2706
2708
  twinfield_missing_since?: string | null;
2707
2709
  twinfield_present?: boolean;
@@ -2793,6 +2795,7 @@ export type Database = {
2793
2795
  twinfield_base_snapshot?: Json | null;
2794
2796
  twinfield_base_version?: number | null;
2795
2797
  twinfield_code?: string | null;
2798
+ twinfield_create_on_insert?: boolean;
2796
2799
  twinfield_last_hash?: string | null;
2797
2800
  twinfield_missing_since?: string | null;
2798
2801
  twinfield_present?: boolean;
@@ -11612,6 +11615,57 @@ export type Database = {
11612
11615
  };
11613
11616
  Relationships: [];
11614
11617
  };
11618
+ logistics_auto_send: {
11619
+ Row: {
11620
+ attempts: number;
11621
+ cart_ids: string[];
11622
+ created_at: string;
11623
+ id: string;
11624
+ idempotency_key: string;
11625
+ last_http_status: number | null;
11626
+ locked_until: string | null;
11627
+ max_attempts: number;
11628
+ next_attempt_at: string;
11629
+ order_id: string;
11630
+ reason: string | null;
11631
+ sent_at: string | null;
11632
+ status: string;
11633
+ updated_at: string;
11634
+ };
11635
+ Insert: {
11636
+ attempts?: number;
11637
+ cart_ids?: string[];
11638
+ created_at?: string;
11639
+ id?: string;
11640
+ idempotency_key: string;
11641
+ last_http_status?: number | null;
11642
+ locked_until?: string | null;
11643
+ max_attempts?: number;
11644
+ next_attempt_at?: string;
11645
+ order_id: string;
11646
+ reason?: string | null;
11647
+ sent_at?: string | null;
11648
+ status?: string;
11649
+ updated_at?: string;
11650
+ };
11651
+ Update: {
11652
+ attempts?: number;
11653
+ cart_ids?: string[];
11654
+ created_at?: string;
11655
+ id?: string;
11656
+ idempotency_key?: string;
11657
+ last_http_status?: number | null;
11658
+ locked_until?: string | null;
11659
+ max_attempts?: number;
11660
+ next_attempt_at?: string;
11661
+ order_id?: string;
11662
+ reason?: string | null;
11663
+ sent_at?: string | null;
11664
+ status?: string;
11665
+ updated_at?: string;
11666
+ };
11667
+ Relationships: [];
11668
+ };
11615
11669
  logistics_autolink_audit: {
11616
11670
  Row: {
11617
11671
  created_at: string;
@@ -18511,6 +18565,7 @@ export type Database = {
18511
18565
  created_at: string;
18512
18566
  default_end: string;
18513
18567
  default_start: string;
18568
+ eigen_vervoer: boolean;
18514
18569
  end_address: string | null;
18515
18570
  home_address: string | null;
18516
18571
  id: string;
@@ -18522,6 +18577,7 @@ export type Database = {
18522
18577
  created_at?: string;
18523
18578
  default_end?: string;
18524
18579
  default_start?: string;
18580
+ eigen_vervoer?: boolean;
18525
18581
  end_address?: string | null;
18526
18582
  home_address?: string | null;
18527
18583
  id?: string;
@@ -18533,6 +18589,7 @@ export type Database = {
18533
18589
  created_at?: string;
18534
18590
  default_end?: string;
18535
18591
  default_start?: string;
18592
+ eigen_vervoer?: boolean;
18536
18593
  end_address?: string | null;
18537
18594
  home_address?: string | null;
18538
18595
  id?: string;
@@ -26935,9 +26992,59 @@ export type Database = {
26935
26992
  };
26936
26993
  Relationships: [];
26937
26994
  };
26995
+ werkbon_standby_tijdvakken: {
26996
+ Row: {
26997
+ created_at: string;
26998
+ datum: string;
26999
+ eind_tijd: string;
27000
+ id: string;
27001
+ monteur_id: string;
27002
+ start_tijd: string;
27003
+ updated_at: string;
27004
+ werkbon_id: string;
27005
+ };
27006
+ Insert: {
27007
+ created_at?: string;
27008
+ datum: string;
27009
+ eind_tijd: string;
27010
+ id?: string;
27011
+ monteur_id: string;
27012
+ start_tijd: string;
27013
+ updated_at?: string;
27014
+ werkbon_id: string;
27015
+ };
27016
+ Update: {
27017
+ created_at?: string;
27018
+ datum?: string;
27019
+ eind_tijd?: string;
27020
+ id?: string;
27021
+ monteur_id?: string;
27022
+ start_tijd?: string;
27023
+ updated_at?: string;
27024
+ werkbon_id?: string;
27025
+ };
27026
+ Relationships: [
27027
+ {
27028
+ foreignKeyName: "werkbon_standby_tijdvakken_werkbon_id_fkey";
27029
+ columns: ["werkbon_id"];
27030
+ isOneToOne: false;
27031
+ referencedRelation: "werkbonnen";
27032
+ referencedColumns: ["id"];
27033
+ },
27034
+ {
27035
+ foreignKeyName: "werkbon_standby_tijdvakken_werkbon_id_fkey";
27036
+ columns: ["werkbon_id"];
27037
+ isOneToOne: false;
27038
+ referencedRelation: "wo_overview";
27039
+ referencedColumns: ["id"];
27040
+ }
27041
+ ];
27042
+ };
26938
27043
  werkbon_time_logs: {
26939
27044
  Row: {
26940
27045
  activity: string;
27046
+ auto_stop_reason: string | null;
27047
+ auto_stopped: boolean;
26941
27048
  created_at: string;
26942
27049
  ended_at: string | null;
26943
27050
  id: string;
@@ -26948,6 +27055,8 @@ export type Database = {
26948
27055
  };
26949
27056
  Insert: {
26950
27057
  activity: string;
27058
+ auto_stop_reason?: string | null;
27059
+ auto_stopped?: boolean;
26951
27060
  created_at?: string;
26952
27061
  ended_at?: string | null;
26953
27062
  id?: string;
@@ -26958,6 +27067,8 @@ export type Database = {
26958
27067
  };
26959
27068
  Update: {
26960
27069
  activity?: string;
27070
+ auto_stop_reason?: string | null;
27071
+ auto_stopped?: boolean;
26961
27072
  created_at?: string;
26962
27073
  ended_at?: string | null;
26963
27074
  id?: string;
@@ -29161,6 +29272,10 @@ export type Database = {
29161
29272
  Args: never;
29162
29273
  Returns: Json;
29163
29274
  };
29275
+ dashboard_alert_counts_v2: {
29276
+ Args: never;
29277
+ Returns: Json;
29278
+ };
29164
29279
  dashboard_alert_rows: {
29165
29280
  Args: {
29166
29281
  check_id: string;
@@ -29168,6 +29283,17 @@ export type Database = {
29168
29283
  };
29169
29284
  Returns: Json;
29170
29285
  };
29286
+ dashboard_alert_rows_v2: {
29287
+ Args: {
29288
+ check_id: string;
29289
+ row_limit?: number;
29290
+ };
29291
+ Returns: Json;
29292
+ };
29293
+ dashboard_ensure_start_page: {
29294
+ Args: never;
29295
+ Returns: string;
29296
+ };
29171
29297
  dashboard_funnel_betaald: {
29172
29298
  Args: {
29173
29299
  _bedragen: number[];
@@ -29189,6 +29315,12 @@ export type Database = {
29189
29315
  table_name: string;
29190
29316
  }[];
29191
29317
  };
29318
+ dashboard_order_state: {
29319
+ Args: {
29320
+ _order_id: string;
29321
+ };
29322
+ Returns: string;
29323
+ };
29192
29324
  dashboard_pit_tellingen: {
29193
29325
  Args: {
29194
29326
  _mail_connecties?: string[];
@@ -30268,6 +30400,13 @@ export type Database = {
30268
30400
  };
30269
30401
  Returns: Json;
30270
30402
  };
30403
+ invoice_status_transition_ok: {
30404
+ Args: {
30405
+ _from: string;
30406
+ _to: string;
30407
+ };
30408
+ Returns: boolean;
30409
+ };
30271
30410
  invoice_update_full: {
30272
30411
  Args: {
30273
30412
  _invoice_id: string;
@@ -30570,6 +30709,56 @@ export type Database = {
30570
30709
  reason_code: string;
30571
30710
  }[];
30572
30711
  };
30712
+ logistics_auto_send_claim: {
30713
+ Args: {
30714
+ p_limit?: number;
30715
+ };
30716
+ Returns: {
30717
+ attempts: number;
30718
+ cart_ids: string[];
30719
+ created_at: string;
30720
+ id: string;
30721
+ idempotency_key: string;
30722
+ last_http_status: number | null;
30723
+ locked_until: string | null;
30724
+ max_attempts: number;
30725
+ next_attempt_at: string;
30726
+ order_id: string;
30727
+ reason: string | null;
30728
+ sent_at: string | null;
30729
+ status: string;
30730
+ updated_at: string;
30731
+ }[];
30732
+ SetofOptions: {
30733
+ from: "*";
30734
+ to: "logistics_auto_send";
30735
+ isOneToOne: false;
30736
+ isSetofReturn: true;
30737
+ };
30738
+ };
30739
+ logistics_auto_send_enqueue_for_order: {
30740
+ Args: {
30741
+ p_order_id: string;
30742
+ };
30743
+ Returns: boolean;
30744
+ };
30745
+ logistics_auto_send_finish: {
30746
+ Args: {
30747
+ p_config_missing?: boolean;
30748
+ p_definitief?: boolean;
30749
+ p_http?: number;
30750
+ p_id: string;
30751
+ p_ok: boolean;
30752
+ p_reason: string;
30753
+ };
30754
+ Returns: Json;
30755
+ };
30756
+ logistics_auto_send_status: {
30757
+ Args: {
30758
+ p_order_id: string;
30759
+ };
30760
+ Returns: Json;
30761
+ };
30573
30762
  logistics_backorder_allowed: {
30574
30763
  Args: {
30575
30764
  p_strategy_id?: string;
@@ -31911,6 +32100,10 @@ export type Database = {
31911
32100
  };
31912
32101
  Returns: Json;
31913
32102
  };
32103
+ logistics_orphan_carts_summary: {
32104
+ Args: never;
32105
+ Returns: Json;
32106
+ };
31914
32107
  logistics_packing_autofix: {
31915
32108
  Args: {
31916
32109
  p_limit?: number;
@@ -31968,6 +32161,16 @@ export type Database = {
31968
32161
  };
31969
32162
  Returns: boolean;
31970
32163
  };
32164
+ logistics_pakbon_old_order_row: {
32165
+ Args: {
32166
+ p_ids: string[];
32167
+ };
32168
+ Returns: boolean;
32169
+ };
32170
+ logistics_pakbon_oude_orderregels: {
32171
+ Args: never;
32172
+ Returns: Json;
32173
+ };
31971
32174
  logistics_parse_pickup: {
31972
32175
  Args: {
31973
32176
  p_value: string;
@@ -32533,6 +32736,12 @@ export type Database = {
32533
32736
  };
32534
32737
  Returns: string;
32535
32738
  };
32739
+ logistics_reserved_order_excluded: {
32740
+ Args: {
32741
+ p_order_id: string;
32742
+ };
32743
+ Returns: boolean;
32744
+ };
32536
32745
  logistics_reserved_stock_nightly: {
32537
32746
  Args: never;
32538
32747
  Returns: undefined;
@@ -34215,6 +34424,10 @@ export type Database = {
34215
34424
  isSetofReturn: true;
34216
34425
  };
34217
34426
  };
34427
+ planning_mijn_eigen_vervoer: {
34428
+ Args: never;
34429
+ Returns: boolean;
34430
+ };
34218
34431
  planning_set_assistants: {
34219
34432
  Args: {
34220
34433
  _monteur_ids: string[];
@@ -34247,6 +34460,18 @@ export type Database = {
34247
34460
  };
34248
34461
  Returns: string;
34249
34462
  };
34463
+ print_is_etiketsoort: {
34464
+ Args: {
34465
+ _t: string;
34466
+ };
34467
+ Returns: boolean;
34468
+ };
34469
+ print_is_labelprinter: {
34470
+ Args: {
34471
+ _printer_id: string;
34472
+ };
34473
+ Returns: boolean;
34474
+ };
34250
34475
  print_job_status_uitgebreid: {
34251
34476
  Args: {
34252
34477
  _job_id: string;
@@ -35799,6 +36024,12 @@ export type Database = {
35799
36024
  };
35800
36025
  Returns: undefined;
35801
36026
  };
36027
+ uren_overuren_intrekken: {
36028
+ Args: {
36029
+ _datum: string;
36030
+ };
36031
+ Returns: undefined;
36032
+ };
35802
36033
  uren_pagina_toegang_instellen: {
35803
36034
  Args: {
35804
36035
  _toegang: boolean;
@@ -36202,6 +36433,13 @@ export type Database = {
36202
36433
  Args: never;
36203
36434
  Returns: Json;
36204
36435
  };
36436
+ wo_boek_standby_tijdvakken: {
36437
+ Args: {
36438
+ _tijdvakken: Json;
36439
+ _werkbon_id: string;
36440
+ };
36441
+ Returns: Json;
36442
+ };
36205
36443
  wo_boek_standby_uren: {
36206
36444
  Args: {
36207
36445
  _datum: string;
@@ -36317,11 +36555,35 @@ export type Database = {
36317
36555
  };
36318
36556
  Returns: Json;
36319
36557
  };
36558
+ wo_standby_dag_herberekenen: {
36559
+ Args: {
36560
+ _datum: string;
36561
+ _monteur: string;
36562
+ };
36563
+ Returns: Json;
36564
+ };
36565
+ wo_standby_ov_dag: {
36566
+ Args: {
36567
+ _dienst: Json;
36568
+ _dow: number;
36569
+ _feest: boolean;
36570
+ _vakken: Json;
36571
+ };
36572
+ Returns: Json;
36573
+ };
36574
+ wo_standby_tijdzone: {
36575
+ Args: never;
36576
+ Returns: string;
36577
+ };
36578
+ wo_timer_stop_0400: {
36579
+ Args: never;
36580
+ Returns: number;
36581
+ };
36320
36582
  };
36321
36583
  Enums: {
36322
36584
  ai_import_status: "nieuw" | "verwerken" | "bevestigen" | "klaar" | "mislukt";
36323
36585
  app_role: "admin" | "planner" | "monteur" | "administratie" | "ai_admin" | "manager" | "warehouse" | "sales" | "developer" | "receptie" | "superadmin";
36324
- doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief";
36586
+ doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief" | "traysticker";
36325
36587
  doc_orientation: "portrait" | "landscape";
36326
36588
  exact_env: "staging" | "live";
36327
36589
  exact_push_status: "pending" | "sent" | "error";
@@ -36392,7 +36654,7 @@ export declare const Constants: {
36392
36654
  readonly Enums: {
36393
36655
  readonly ai_import_status: readonly ["nieuw", "verwerken", "bevestigen", "klaar", "mislukt"];
36394
36656
  readonly app_role: readonly ["admin", "planner", "monteur", "administratie", "ai_admin", "manager", "warehouse", "sales", "developer", "receptie", "superadmin"];
36395
- readonly doc_layout_type: readonly ["pakbon", "factuur", "offerte", "orderbevestiging", "etiket", "verzendlabel", "productlabel", "barcode_label", "magazijnlijst", "controlelijst", "transportdocument", "vrij", "sticker", "productiebon", "veilingbon", "afleverbrief", "veilingbrief"];
36657
+ readonly doc_layout_type: readonly ["pakbon", "factuur", "offerte", "orderbevestiging", "etiket", "verzendlabel", "productlabel", "barcode_label", "magazijnlijst", "controlelijst", "transportdocument", "vrij", "sticker", "productiebon", "veilingbon", "afleverbrief", "veilingbrief", "traysticker"];
36396
36658
  readonly doc_orientation: readonly ["portrait", "landscape"];
36397
36659
  readonly exact_env: readonly ["staging", "live"];
36398
36660
  readonly exact_push_status: readonly ["pending", "sent", "error"];