@flowselections/floriday-afhandeling-module 1.0.44 → 1.0.46
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/ControlePage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/ControlePage.js +93 -55
- package/dist-lib/components/afhandeling/DagDetailDialog.js +1 -1
- package/dist-lib/components/afhandeling/ScanControleView.js +1 -1
- package/dist-lib/components/afhandeling/VervoerdersPage.js +1 -1
- package/dist-lib/components/afhandeling/VerzetOrderDialog.js +1 -1
- package/dist-lib/components/afhandeling/WerkplekWaarschuwing.d.ts +9 -9
- package/dist-lib/components/afhandeling/WerkplekWaarschuwing.js +28 -28
- package/dist-lib/components/ui/responsive-dialog.js +1 -1
- package/dist-lib/hooks/useCartIndex.d.ts.map +1 -1
- package/dist-lib/hooks/useCartIndex.js +16 -7
- package/dist-lib/hooks/useEngineBufferEvents.d.ts +5 -0
- package/dist-lib/hooks/useEngineBufferEvents.d.ts.map +1 -1
- package/dist-lib/hooks/useEngineBufferEvents.js +18 -13
- package/dist-lib/hooks/useEngineTasks.d.ts.map +1 -1
- package/dist-lib/hooks/useEngineTasks.js +8 -18
- package/dist-lib/hooks/useKnownOrders.d.ts.map +1 -1
- package/dist-lib/hooks/useKnownOrders.js +2 -1
- package/dist-lib/hooks/useOrderPickDates.d.ts +1 -1
- package/dist-lib/hooks/useOrderPickDates.d.ts.map +1 -1
- package/dist-lib/hooks/useOrderPickDates.js +5 -3
- package/dist-lib/hooks/usePickAgenda.d.ts.map +1 -1
- package/dist-lib/hooks/usePickAgenda.js +17 -13
- package/dist-lib/hooks/usePickMode.d.ts +8 -2
- package/dist-lib/hooks/usePickMode.d.ts.map +1 -1
- package/dist-lib/hooks/usePickMode.js +17 -9
- package/dist-lib/index.d.ts +1 -2
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +1 -33
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +5145 -373
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +5145 -373
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.js +1 -1
- package/dist-lib/integrations/supabase/moduleClient.d.ts +5160 -386
- package/dist-lib/integrations/supabase/moduleClient.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.d.ts +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.js +8 -1
- package/dist-lib/integrations/supabase/types.d.ts +5173 -345
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/afhandelingSettings.functions.d.ts +9558 -14
- package/dist-lib/lib/afhandelingSettings.functions.d.ts.map +1 -1
- package/dist-lib/lib/carriers.functions.d.ts +23910 -40
- package/dist-lib/lib/carriers.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartAssignments.functions.d.ts +23895 -35
- package/dist-lib/lib/cartAssignments.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.d.ts +52679 -104
- package/dist-lib/lib/cartControl.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.js +389 -259
- package/dist-lib/lib/deliveryNote.functions.d.ts +5145 -373
- package/dist-lib/lib/deliveryNote.functions.d.ts.map +1 -1
- package/dist-lib/lib/deliveryNotePrint.d.ts +33 -33
- package/dist-lib/lib/deliveryNotePrint.js +219 -219
- package/dist-lib/lib/engineLayouts.functions.d.ts +5145 -373
- package/dist-lib/lib/engineLayouts.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday.functions.d.ts +9558 -14
- package/dist-lib/lib/floriday.functions.d.ts.map +1 -1
- package/dist-lib/lib/logisticsEngine/capacity.js +1 -1
- package/dist-lib/lib/logisticsEngine/staffPlanning.js +1 -1
- package/dist-lib/lib/orderFulfilment.functions.d.ts +5145 -373
- package/dist-lib/lib/orderFulfilment.functions.d.ts.map +1 -1
- package/dist-lib/lib/pickDates.functions.d.ts +5163 -386
- package/dist-lib/lib/pickDates.functions.d.ts.map +1 -1
- package/dist-lib/lib/pickDates.functions.js +30 -3
- package/dist-lib/lib/pickMode.d.ts +20 -2
- package/dist-lib/lib/pickMode.d.ts.map +1 -1
- package/dist-lib/lib/pickMode.js +65 -16
- package/dist-lib/lib/realtimeBus.d.ts +20 -0
- package/dist-lib/lib/realtimeBus.d.ts.map +1 -0
- package/dist-lib/lib/realtimeBus.js +56 -0
- package/dist-lib/lib/serverFnError.d.ts +12 -0
- package/dist-lib/lib/serverFnError.d.ts.map +1 -1
- package/dist-lib/lib/serverFnError.js +48 -1
- package/dist-lib/moduleDefinition.d.ts +3 -0
- package/dist-lib/moduleDefinition.d.ts.map +1 -0
- package/dist-lib/moduleDefinition.js +36 -0
- package/package.json +3 -3
|
@@ -3,6 +3,7 @@ import { useQuery } from "@tanstack/react-query";
|
|
|
3
3
|
import { useServerFn } from "@tanstack/react-start";
|
|
4
4
|
import { listOrderPickDates } from "../lib/pickDates.functions";
|
|
5
5
|
import { normalizeOrderNumber } from "../lib/orderRefs";
|
|
6
|
+
import { callServerFn } from "../lib/serverFnError";
|
|
6
7
|
function keyOf(value) {
|
|
7
8
|
if (!value)
|
|
8
9
|
return null;
|
|
@@ -16,13 +17,14 @@ function keyOf(value) {
|
|
|
16
17
|
* door naar vandaag; een order hoort te staan op de dag waarop hij ooit
|
|
17
18
|
* gepland is en nooit ná zijn leverdatum.
|
|
18
19
|
*/
|
|
19
|
-
export function useOrderPickDates() {
|
|
20
|
+
export function useOrderPickDates(from, to) {
|
|
20
21
|
const fetchDates = useServerFn(listOrderPickDates);
|
|
21
22
|
const query = useQuery({
|
|
22
|
-
queryKey: ["order-pick-dates"],
|
|
23
|
-
queryFn: () => fetchDates(),
|
|
23
|
+
queryKey: ["order-pick-dates", from ?? null, to ?? null],
|
|
24
|
+
queryFn: () => callServerFn(() => fetchDates({ data: { from: from ?? undefined, to: to ?? undefined } }), "listOrderPickDates"),
|
|
24
25
|
staleTime: 60000,
|
|
25
26
|
retry: 1,
|
|
27
|
+
placeholderData: (prev) => prev,
|
|
26
28
|
});
|
|
27
29
|
const map = useMemo(() => {
|
|
28
30
|
const m = new Map();
|
|
@@ -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":"AAQA,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;IACjB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;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,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAwCD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;;;;;EA6GnE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
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 { debounce, subscribeTable } from "../lib/realtimeBus";
|
|
4
5
|
import { useKnownOrders } from "./useKnownOrders";
|
|
5
6
|
import { useOrderPickDates } from "./useOrderPickDates";
|
|
6
7
|
function toOrders(value) {
|
|
@@ -30,9 +31,10 @@ function shiftDay(day, delta) {
|
|
|
30
31
|
}
|
|
31
32
|
export function usePickAgenda(from, to) {
|
|
32
33
|
const queryClient = useQueryClient();
|
|
33
|
-
//
|
|
34
|
-
// zetten ze terug op hun oorspronkelijke dag
|
|
35
|
-
|
|
34
|
+
// Beperkte marge rond de zichtbare week: de Engine schuift oude taken naar
|
|
35
|
+
// vandaag en wij zetten ze terug op hun oorspronkelijke dag. Een venster van
|
|
36
|
+
// een half jaar haalde honderden dagen op die daarna toch werden weggefilterd.
|
|
37
|
+
const wideFrom = from ? shiftDay(from, -21) : null;
|
|
36
38
|
const wideTo = to ? shiftDay(to, 30) : null;
|
|
37
39
|
const queryKey = ["logistics-pick-agenda", wideFrom, wideTo];
|
|
38
40
|
const query = useQuery({
|
|
@@ -41,7 +43,10 @@ export function usePickAgenda(from, to) {
|
|
|
41
43
|
staleTime: 30000,
|
|
42
44
|
retry: false,
|
|
43
45
|
refetchInterval: 60000,
|
|
46
|
+
refetchIntervalInBackground: false,
|
|
44
47
|
refetchOnWindowFocus: true,
|
|
48
|
+
// Vorige week blijft zichtbaar tijdens het laden van een nieuwe week.
|
|
49
|
+
placeholderData: (prev) => prev,
|
|
45
50
|
queryFn: async () => {
|
|
46
51
|
const { data, error } = await supabase.rpc("logistics_pick_agenda", {
|
|
47
52
|
p_from: wideFrom,
|
|
@@ -63,25 +68,24 @@ export function usePickAgenda(from, to) {
|
|
|
63
68
|
}));
|
|
64
69
|
},
|
|
65
70
|
});
|
|
66
|
-
// Ververs zodra de Engine taken wijzigt
|
|
67
|
-
//
|
|
68
|
-
//
|
|
71
|
+
// Ververs zodra de Engine taken wijzigt, via één gedeelde verbinding en met
|
|
72
|
+
// samenvoegen van seintjes: de Engine schrijft tientallen taken achter elkaar
|
|
73
|
+
// en elke wijziging afzonderlijk opnieuw ophalen liet het scherm blokkeren.
|
|
69
74
|
useEffect(() => {
|
|
70
|
-
const
|
|
71
|
-
.channel(`pick-agenda-logistics-tasks-${Math.random().toString(36).slice(2)}`)
|
|
72
|
-
.on("postgres_changes", { event: "*", schema: "public", table: "logistics_tasks" }, () => {
|
|
75
|
+
const refresh = debounce(() => {
|
|
73
76
|
queryClient.invalidateQueries({ queryKey: ["logistics-pick-agenda"] });
|
|
74
|
-
})
|
|
75
|
-
|
|
77
|
+
}, 750);
|
|
78
|
+
const off = subscribeTable("logistics_tasks", refresh);
|
|
76
79
|
return () => {
|
|
77
|
-
|
|
80
|
+
refresh.cancel();
|
|
81
|
+
off();
|
|
78
82
|
};
|
|
79
83
|
}, [queryClient]);
|
|
80
84
|
// Orders die de Verkoop-module niet kent horen hier niet te staan, en orders
|
|
81
85
|
// die de Engine ná hun leverdatum plant gaan terug naar hun eigen dag. De
|
|
82
86
|
// dagtotalen worden opnieuw opgeteld uit wat overblijft.
|
|
83
87
|
const { isKnownRef, isFulfilledRef } = useKnownOrders();
|
|
84
|
-
const { correctPickDate } = useOrderPickDates();
|
|
88
|
+
const { correctPickDate } = useOrderPickDates(wideFrom, wideTo);
|
|
85
89
|
const days = useMemo(() => {
|
|
86
90
|
const perDay = new Map();
|
|
87
91
|
for (const d of query.data ?? []) {
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
+
import { type PickModeInfo } from "../lib/pickMode";
|
|
1
2
|
/**
|
|
2
3
|
* De Engine bepaalt de actieve pickmethode. Alleen bij "picken per kar"
|
|
3
|
-
* bestaat er een karcontrolestap.
|
|
4
|
+
* bestaat er een karcontrolestap. Mislukt het ophalen, dan blijft de laatst
|
|
5
|
+
* bekende werkwijze gelden en melden we dat als fout — nooit stil uitzetten.
|
|
4
6
|
*/
|
|
5
7
|
export declare function usePickMode(): {
|
|
6
|
-
pickMode: "
|
|
8
|
+
pickMode: import("..").PickMode;
|
|
7
9
|
showCartControl: boolean;
|
|
8
10
|
isLoading: boolean;
|
|
11
|
+
isError: boolean;
|
|
12
|
+
isUnknown: boolean;
|
|
13
|
+
error: string | undefined;
|
|
14
|
+
refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise<import("@tanstack/query-core").QueryObserverResult<PickModeInfo, Error>>;
|
|
9
15
|
};
|
|
10
16
|
//# sourceMappingURL=usePickMode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePickMode.d.ts","sourceRoot":"","sources":["../../src/hooks/usePickMode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePickMode.d.ts","sourceRoot":"","sources":["../../src/hooks/usePickMode.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAEzB;;;;GAIG;AACH,wBAAgB,WAAW;;;;;;;;EAkC1B"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { useEffect } from "react";
|
|
2
2
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
3
|
-
import { fetchPickMode, startPickModeWatch, subscribePickMode, } from "../lib/pickMode";
|
|
3
|
+
import { fetchPickMode, getPickMode, startPickModeWatch, subscribePickMode, } from "../lib/pickMode";
|
|
4
4
|
/**
|
|
5
5
|
* De Engine bepaalt de actieve pickmethode. Alleen bij "picken per kar"
|
|
6
|
-
* bestaat er een karcontrolestap.
|
|
6
|
+
* bestaat er een karcontrolestap. Mislukt het ophalen, dan blijft de laatst
|
|
7
|
+
* bekende werkwijze gelden en melden we dat als fout — nooit stil uitzetten.
|
|
7
8
|
*/
|
|
8
9
|
export function usePickMode() {
|
|
9
10
|
const queryClient = useQueryClient();
|
|
10
11
|
const query = useQuery({
|
|
11
12
|
queryKey: ["logistics-pick-mode"],
|
|
12
|
-
staleTime:
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
staleTime: 60000,
|
|
14
|
+
refetchOnWindowFocus: false,
|
|
15
|
+
refetchOnMount: false,
|
|
16
|
+
retry: 1,
|
|
17
|
+
retryDelay: (attempt) => Math.min(1000 * 2 ** attempt, 15000),
|
|
17
18
|
queryFn: fetchPickMode,
|
|
18
19
|
});
|
|
19
20
|
// Live meelopen met wijzigingen in de instellingen van de Engine.
|
|
@@ -23,9 +24,16 @@ export function usePickMode() {
|
|
|
23
24
|
queryClient.invalidateQueries({ queryKey: ["logistics-pick-mode"] });
|
|
24
25
|
});
|
|
25
26
|
}, [queryClient]);
|
|
27
|
+
// Bij een fout heeft de query geen data; de module-cache houdt de laatst
|
|
28
|
+
// succesvol opgehaalde werkwijze vast.
|
|
29
|
+
const info = query.data ?? getPickMode();
|
|
26
30
|
return {
|
|
27
|
-
pickMode:
|
|
28
|
-
showCartControl:
|
|
31
|
+
pickMode: info.pickMode,
|
|
32
|
+
showCartControl: info.showCartControl === true,
|
|
29
33
|
isLoading: query.isLoading,
|
|
34
|
+
isError: query.isError,
|
|
35
|
+
isUnknown: info.status !== "ok",
|
|
36
|
+
error: query.error instanceof Error ? query.error.message : info.lastError,
|
|
37
|
+
refetch: query.refetch,
|
|
30
38
|
};
|
|
31
39
|
}
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { FlowModule } from "@flowselections/core";
|
|
2
1
|
export * from "./_core-safelist";
|
|
3
2
|
export { LeveringenPage } from "./components/afhandeling/LeveringenPage";
|
|
4
3
|
export { VervoerdersPage } from "./components/afhandeling/VervoerdersPage";
|
|
@@ -16,5 +15,5 @@ export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_M
|
|
|
16
15
|
export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, type CarrierOrderTarget, type CarrierPlanningInfo, } from "./lib/carrierPlanning";
|
|
17
16
|
export { ensurePickMode, fetchPickMode, getPickMode, refreshPickMode, startPickModeWatch, subscribePickMode, type PickMode, type PickModeInfo } from "./lib/pickMode";
|
|
18
17
|
export { usePickMode } from "./hooks/usePickMode";
|
|
19
|
-
export
|
|
18
|
+
export { floridayAfhandelingModule } from "./moduleDefinition";
|
|
20
19
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,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;AAE/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;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist-lib/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { PackageCheck, CalendarCheck, CalendarRange, ClipboardCheck } from "lucide-react";
|
|
2
1
|
export * from "./_core-safelist";
|
|
3
2
|
export { LeveringenPage } from "./components/afhandeling/LeveringenPage";
|
|
4
3
|
export { VervoerdersPage } from "./components/afhandeling/VervoerdersPage";
|
|
@@ -14,37 +13,6 @@ export { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettin
|
|
|
14
13
|
export { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
|
|
15
14
|
export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_MOMENT, } from "./lib/planning";
|
|
16
15
|
export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, } from "./lib/carrierPlanning";
|
|
17
|
-
import { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettingsCard";
|
|
18
|
-
import { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
|
|
19
|
-
import { ensurePickMode, getPickMode } from "./lib/pickMode";
|
|
20
16
|
export { ensurePickMode, fetchPickMode, getPickMode, refreshPickMode, startPickModeWatch, subscribePickMode } from "./lib/pickMode";
|
|
21
17
|
export { usePickMode } from "./hooks/usePickMode";
|
|
22
|
-
|
|
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
|
-
};
|
|
31
|
-
export const floridayAfhandelingModule = {
|
|
32
|
-
id: "afhandeling",
|
|
33
|
-
name: "Afhandeling",
|
|
34
|
-
version: "1.4.0",
|
|
35
|
-
nav: {
|
|
36
|
-
label: "Afhandeling",
|
|
37
|
-
href: "/afhandeling/picking",
|
|
38
|
-
icon: PackageCheck,
|
|
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
|
-
},
|
|
45
|
-
},
|
|
46
|
-
settingsCards: [
|
|
47
|
-
{ component: VervoerdersSettingsCard, order: 80 },
|
|
48
|
-
{ component: AfhandelingSettingsCard, order: 100 },
|
|
49
|
-
],
|
|
50
|
-
};
|
|
18
|
+
export { floridayAfhandelingModule } from "./moduleDefinition";
|