@flowselections/floriday-afhandeling-module 1.0.41 → 1.0.43
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.
- package/dist-lib/components/afhandeling/AutoProcessStatus.d.ts +3 -1
- package/dist-lib/components/afhandeling/AutoProcessStatus.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/AutoProcessStatus.js +36 -3
- package/dist-lib/components/afhandeling/ControlePage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/ControlePage.js +53 -13
- package/dist-lib/components/afhandeling/DagDetailDialog.d.ts +1 -1
- package/dist-lib/components/afhandeling/DagDetailDialog.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/DagDetailDialog.js +409 -120
- package/dist-lib/components/afhandeling/PickAgendaView.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/PickAgendaView.js +4 -4
- package/dist-lib/components/afhandeling/PickingPage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/PickingPage.js +1 -1
- package/dist-lib/components/afhandeling/ScanControleView.d.ts +2 -0
- package/dist-lib/components/afhandeling/ScanControleView.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/ScanControleView.js +158 -0
- package/dist-lib/components/afhandeling/WeekAgendaView.js +1 -1
- package/dist-lib/hooks/useCartIndex.d.ts.map +1 -1
- package/dist-lib/hooks/useCartIndex.js +6 -1
- package/dist-lib/hooks/useEngineTasks.js +1 -1
- package/dist-lib/hooks/useKnownOrders.d.ts +11 -0
- package/dist-lib/hooks/useKnownOrders.d.ts.map +1 -0
- package/dist-lib/hooks/useKnownOrders.js +54 -0
- package/dist-lib/hooks/useOrderBuffers.d.ts +17 -0
- package/dist-lib/hooks/useOrderBuffers.d.ts.map +1 -0
- package/dist-lib/hooks/useOrderBuffers.js +53 -0
- package/dist-lib/hooks/useOrderPickDates.d.ts +10 -0
- package/dist-lib/hooks/useOrderPickDates.d.ts.map +1 -0
- package/dist-lib/hooks/useOrderPickDates.js +62 -0
- package/dist-lib/hooks/useOrderPlanning.d.ts +1 -3
- package/dist-lib/hooks/useOrderPlanning.d.ts.map +1 -1
- package/dist-lib/hooks/useOrderPlanning.js +9 -13
- package/dist-lib/hooks/usePickAgenda.d.ts +1 -6
- package/dist-lib/hooks/usePickAgenda.d.ts.map +1 -1
- package/dist-lib/hooks/usePickAgenda.js +62 -9
- package/dist-lib/hooks/usePickMode.d.ts +10 -0
- package/dist-lib/hooks/usePickMode.d.ts.map +1 -0
- package/dist-lib/hooks/usePickMode.js +31 -0
- package/dist-lib/index.d.ts +2 -0
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +19 -6
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +3598 -1225
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +3598 -1225
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/moduleClient.d.ts +3598 -1225
- package/dist-lib/integrations/supabase/moduleClient.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +3645 -1246
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.js +1 -0
- package/dist-lib/lib/afhandelingSettings.functions.d.ts +6076 -1330
- package/dist-lib/lib/afhandelingSettings.functions.d.ts.map +1 -1
- package/dist-lib/lib/carriers.functions.d.ts +15052 -3187
- package/dist-lib/lib/carriers.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartAssignments.functions.d.ts +15052 -3187
- package/dist-lib/lib/cartAssignments.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.d.ts +55913 -6313
- package/dist-lib/lib/cartControl.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.js +134 -10
- package/dist-lib/lib/deliveryNote.functions.d.ts +25891 -0
- package/dist-lib/lib/deliveryNote.functions.d.ts.map +1 -0
- package/dist-lib/lib/deliveryNote.functions.js +32 -0
- package/dist-lib/lib/engineLayouts.functions.d.ts +25889 -0
- package/dist-lib/lib/engineLayouts.functions.d.ts.map +1 -0
- package/dist-lib/lib/engineLayouts.functions.js +42 -0
- package/dist-lib/lib/floriday.functions.d.ts +28979 -712
- package/dist-lib/lib/floriday.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday.functions.js +118 -343
- package/dist-lib/lib/logisticsEngine/reschedule.d.ts +17 -0
- package/dist-lib/lib/logisticsEngine/reschedule.d.ts.map +1 -1
- package/dist-lib/lib/logisticsEngine/reschedule.js +63 -0
- package/dist-lib/lib/orderFulfilment.functions.d.ts +25891 -0
- package/dist-lib/lib/orderFulfilment.functions.d.ts.map +1 -0
- package/dist-lib/lib/orderFulfilment.functions.js +35 -0
- package/dist-lib/lib/orderStatus.d.ts +10 -0
- package/dist-lib/lib/orderStatus.d.ts.map +1 -0
- package/dist-lib/lib/orderStatus.js +81 -0
- package/dist-lib/lib/pickDates.functions.d.ts +25896 -0
- package/dist-lib/lib/pickDates.functions.d.ts.map +1 -0
- package/dist-lib/lib/pickDates.functions.js +56 -0
- package/dist-lib/lib/pickMode.d.ts +14 -0
- package/dist-lib/lib/pickMode.d.ts.map +1 -0
- package/dist-lib/lib/pickMode.js +103 -0
- package/dist-lib/lib/printing.d.ts +3 -1
- package/dist-lib/lib/printing.d.ts.map +1 -1
- package/dist-lib/lib/printing.js +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePickAgenda.d.ts","sourceRoot":"","sources":["../../src/hooks/usePickAgenda.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePickAgenda.d.ts","sourceRoot":"","sources":["../../src/hooks/usePickAgenda.ts"],"names":[],"mappings":"AAOA,kDAAkD;AAClD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,gDAAgD;AAChD,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAuCD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;;;;;EAuGnE"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { useEffect } from "react";
|
|
1
|
+
import { useEffect, useMemo } from "react";
|
|
2
2
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
3
3
|
import { supabase } from "../integrations/supabase/moduleClient";
|
|
4
|
+
import { useKnownOrders } from "./useKnownOrders";
|
|
5
|
+
import { useOrderPickDates } from "./useOrderPickDates";
|
|
4
6
|
function toOrders(value) {
|
|
5
7
|
if (!Array.isArray(value))
|
|
6
8
|
return [];
|
|
@@ -21,20 +23,29 @@ function toOrders(value) {
|
|
|
21
23
|
* berekent zelf geen pickdagen meer en doet geen datum- of tijdzonelogica.
|
|
22
24
|
* Dagen zonder rij tonen simpelweg nullen.
|
|
23
25
|
*/
|
|
26
|
+
function shiftDay(day, delta) {
|
|
27
|
+
const d = new Date(`${day}T12:00:00Z`);
|
|
28
|
+
d.setUTCDate(d.getUTCDate() + delta);
|
|
29
|
+
return d.toISOString().slice(0, 10);
|
|
30
|
+
}
|
|
24
31
|
export function usePickAgenda(from, to) {
|
|
25
32
|
const queryClient = useQueryClient();
|
|
26
|
-
|
|
33
|
+
// Ruimer ophalen dan gevraagd: de Engine schuift oude taken naar vandaag, wij
|
|
34
|
+
// zetten ze terug op hun oorspronkelijke dag en dat kan buiten de week vallen.
|
|
35
|
+
const wideFrom = from ? shiftDay(from, -180) : null;
|
|
36
|
+
const wideTo = to ? shiftDay(to, 30) : null;
|
|
37
|
+
const queryKey = ["logistics-pick-agenda", wideFrom, wideTo];
|
|
27
38
|
const query = useQuery({
|
|
28
39
|
queryKey,
|
|
29
|
-
enabled: !!
|
|
40
|
+
enabled: !!wideFrom && !!wideTo,
|
|
30
41
|
staleTime: 30000,
|
|
31
42
|
retry: false,
|
|
32
43
|
refetchInterval: 60000,
|
|
33
44
|
refetchOnWindowFocus: true,
|
|
34
45
|
queryFn: async () => {
|
|
35
46
|
const { data, error } = await supabase.rpc("logistics_pick_agenda", {
|
|
36
|
-
p_from:
|
|
37
|
-
p_to:
|
|
47
|
+
p_from: wideFrom,
|
|
48
|
+
p_to: wideTo,
|
|
38
49
|
});
|
|
39
50
|
if (error)
|
|
40
51
|
throw new Error(error.message);
|
|
@@ -51,10 +62,12 @@ export function usePickAgenda(from, to) {
|
|
|
51
62
|
}));
|
|
52
63
|
},
|
|
53
64
|
});
|
|
54
|
-
// Ververs zodra de Engine taken wijzigt.
|
|
65
|
+
// Ververs zodra de Engine taken wijzigt. Elke hook-instantie krijgt een eigen
|
|
66
|
+
// kanaalnaam; hergebruik van dezelfde naam laat Supabase een al-geabonneerd
|
|
67
|
+
// kanaal terugvinden en gooit "cannot add postgres_changes after subscribe()".
|
|
55
68
|
useEffect(() => {
|
|
56
69
|
const channel = supabase
|
|
57
|
-
.channel(
|
|
70
|
+
.channel(`pick-agenda-logistics-tasks-${Math.random().toString(36).slice(2)}`)
|
|
58
71
|
.on("postgres_changes", { event: "*", schema: "public", table: "logistics_tasks" }, () => {
|
|
59
72
|
queryClient.invalidateQueries({ queryKey: ["logistics-pick-agenda"] });
|
|
60
73
|
})
|
|
@@ -63,11 +76,51 @@ export function usePickAgenda(from, to) {
|
|
|
63
76
|
supabase.removeChannel(channel);
|
|
64
77
|
};
|
|
65
78
|
}, [queryClient]);
|
|
79
|
+
// Orders die de Verkoop-module niet kent horen hier niet te staan, en orders
|
|
80
|
+
// die de Engine ná hun leverdatum plant gaan terug naar hun eigen dag. De
|
|
81
|
+
// dagtotalen worden opnieuw opgeteld uit wat overblijft.
|
|
82
|
+
const { isKnownRef } = useKnownOrders();
|
|
83
|
+
const { correctPickDate } = useOrderPickDates();
|
|
84
|
+
const days = useMemo(() => {
|
|
85
|
+
const perDay = new Map();
|
|
86
|
+
for (const d of query.data ?? []) {
|
|
87
|
+
if (!perDay.has(d.pickDate))
|
|
88
|
+
perDay.set(d.pickDate, []);
|
|
89
|
+
for (const o of d.orders) {
|
|
90
|
+
if (!isKnownRef(o.orderRef))
|
|
91
|
+
continue;
|
|
92
|
+
const dag = correctPickDate(o.orderRef, d.pickDate);
|
|
93
|
+
const list = perDay.get(dag) ?? [];
|
|
94
|
+
list.push(o);
|
|
95
|
+
perDay.set(dag, list);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const out = [];
|
|
99
|
+
for (const [pickDate, orders] of perDay) {
|
|
100
|
+
if (from && pickDate < from)
|
|
101
|
+
continue;
|
|
102
|
+
if (to && pickDate > to)
|
|
103
|
+
continue;
|
|
104
|
+
const ready = orders.filter((o) => o.status === "ready" || o.status === "done").length;
|
|
105
|
+
out.push({
|
|
106
|
+
pickDate,
|
|
107
|
+
orders,
|
|
108
|
+
orderCount: orders.length,
|
|
109
|
+
cartCount: orders.reduce((s, o) => s + (o.carts || 0), 0),
|
|
110
|
+
plantCount: orders.reduce((s, o) => s + (o.plants || 0), 0),
|
|
111
|
+
ready,
|
|
112
|
+
inPreparation: Math.max(0, orders.length - ready),
|
|
113
|
+
shiftedCount: orders.filter((o) => o.shifted).length,
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
out.sort((a, b) => a.pickDate.localeCompare(b.pickDate));
|
|
117
|
+
return out;
|
|
118
|
+
}, [query.data, isKnownRef, correctPickDate, from, to]);
|
|
66
119
|
const byDate = new Map();
|
|
67
|
-
for (const d of
|
|
120
|
+
for (const d of days)
|
|
68
121
|
byDate.set(d.pickDate, d);
|
|
69
122
|
return {
|
|
70
|
-
days
|
|
123
|
+
days,
|
|
71
124
|
byDate,
|
|
72
125
|
isLoading: query.isLoading,
|
|
73
126
|
error: query.error instanceof Error ? query.error.message : null,
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* De Engine bepaalt de actieve pickmethode. Alleen bij "picken per kar"
|
|
3
|
+
* bestaat er een karcontrolestap. Zonder antwoord blijft die verborgen.
|
|
4
|
+
*/
|
|
5
|
+
export declare function usePickMode(): {
|
|
6
|
+
pickMode: "order" | "buffer" | "cart" | "smallest" | null;
|
|
7
|
+
showCartControl: boolean;
|
|
8
|
+
isLoading: boolean;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=usePickMode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePickMode.d.ts","sourceRoot":"","sources":["../../src/hooks/usePickMode.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,wBAAgB,WAAW;;;;EA0B1B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { useEffect } from "react";
|
|
2
|
+
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
3
|
+
import { fetchPickMode, startPickModeWatch, subscribePickMode, } from "../lib/pickMode";
|
|
4
|
+
/**
|
|
5
|
+
* De Engine bepaalt de actieve pickmethode. Alleen bij "picken per kar"
|
|
6
|
+
* bestaat er een karcontrolestap. Zonder antwoord blijft die verborgen.
|
|
7
|
+
*/
|
|
8
|
+
export function usePickMode() {
|
|
9
|
+
const queryClient = useQueryClient();
|
|
10
|
+
const query = useQuery({
|
|
11
|
+
queryKey: ["logistics-pick-mode"],
|
|
12
|
+
staleTime: 5000,
|
|
13
|
+
refetchInterval: 30000,
|
|
14
|
+
refetchOnWindowFocus: true,
|
|
15
|
+
refetchOnMount: "always",
|
|
16
|
+
retry: false,
|
|
17
|
+
queryFn: fetchPickMode,
|
|
18
|
+
});
|
|
19
|
+
// Live meelopen met wijzigingen in de instellingen van de Engine.
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
startPickModeWatch();
|
|
22
|
+
return subscribePickMode(() => {
|
|
23
|
+
queryClient.invalidateQueries({ queryKey: ["logistics-pick-mode"] });
|
|
24
|
+
});
|
|
25
|
+
}, [queryClient]);
|
|
26
|
+
return {
|
|
27
|
+
pickMode: query.data?.pickMode ?? null,
|
|
28
|
+
showCartControl: query.data?.showCartControl === true,
|
|
29
|
+
isLoading: query.isLoading,
|
|
30
|
+
};
|
|
31
|
+
}
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -14,5 +14,7 @@ export { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettin
|
|
|
14
14
|
export { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
|
|
15
15
|
export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_MOMENT, type EarliestDeliveryRules, type OrderPlanning, type PickupMoment, } from "./lib/planning";
|
|
16
16
|
export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, type CarrierOrderTarget, type CarrierPlanningInfo, } from "./lib/carrierPlanning";
|
|
17
|
+
export { ensurePickMode, fetchPickMode, getPickMode, refreshPickMode, startPickModeWatch, subscribePickMode, type PickMode, type PickModeInfo } from "./lib/pickMode";
|
|
18
|
+
export { usePickMode } from "./hooks/usePickMode";
|
|
17
19
|
export declare const floridayAfhandelingModule: FlowModule;
|
|
18
20
|
//# sourceMappingURL=index.d.ts.map
|
package/dist-lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC;AAM/B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACtK,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAalD,eAAO,MAAM,yBAAyB,EAAE,UAmBvC,CAAC"}
|
package/dist-lib/index.js
CHANGED
|
@@ -16,19 +16,32 @@ export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_M
|
|
|
16
16
|
export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, } from "./lib/carrierPlanning";
|
|
17
17
|
import { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettingsCard";
|
|
18
18
|
import { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
|
|
19
|
+
import { ensurePickMode, getPickMode } from "./lib/pickMode";
|
|
20
|
+
export { ensurePickMode, fetchPickMode, getPickMode, refreshPickMode, startPickModeWatch, subscribePickMode } from "./lib/pickMode";
|
|
21
|
+
export { usePickMode } from "./hooks/usePickMode";
|
|
22
|
+
const baseChildren = [
|
|
23
|
+
{ label: "Pick Agenda", href: "/afhandeling/picking", icon: CalendarCheck },
|
|
24
|
+
{ label: "Planning en leveringen", href: "/afhandeling/leveringen", icon: CalendarRange },
|
|
25
|
+
];
|
|
26
|
+
const cartControlChild = {
|
|
27
|
+
label: "Controle karren",
|
|
28
|
+
href: "/afhandeling/controle",
|
|
29
|
+
icon: ClipboardCheck,
|
|
30
|
+
};
|
|
19
31
|
export const floridayAfhandelingModule = {
|
|
20
32
|
id: "afhandeling",
|
|
21
33
|
name: "Afhandeling",
|
|
22
|
-
version: "1.
|
|
34
|
+
version: "1.4.0",
|
|
23
35
|
nav: {
|
|
24
36
|
label: "Afhandeling",
|
|
25
37
|
href: "/afhandeling/picking",
|
|
26
38
|
icon: PackageCheck,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
39
|
+
// De Engine beslist: karcontrole hoort alleen bij "picken per kar".
|
|
40
|
+
// Zonder antwoord blijft het item verborgen (fail closed).
|
|
41
|
+
get children() {
|
|
42
|
+
void ensurePickMode();
|
|
43
|
+
return getPickMode().showCartControl ? [...baseChildren, cartControlChild] : baseChildren;
|
|
44
|
+
},
|
|
32
45
|
},
|
|
33
46
|
settingsCards: [
|
|
34
47
|
{ component: VervoerdersSettingsCard, order: 80 },
|