@flowselections/floriday-verkoop-module 1.0.87 → 1.0.93
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/verkoop/CreateOrderPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/CreateOrderPage.js +2 -2
- package/dist-lib/components/verkoop/DiagnoseConnectionDialog.js +1 -1
- package/dist-lib/components/verkoop/EditLocalOrderDialog.js +3 -3
- package/dist-lib/components/verkoop/OrderControlStatusCard.js +1 -1
- package/dist-lib/components/verkoop/OrderKarindelingCard.js +2 -2
- package/dist-lib/components/verkoop/OrderLinePackingCard.js +1 -1
- package/dist-lib/components/verkoop/OrderPickupMomentPicker.d.ts +2 -2
- package/dist-lib/components/verkoop/OrderPickupMomentPicker.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderPickupMomentPicker.js +10 -23
- package/dist-lib/components/verkoop/OrderShipmentsCard.js +1 -1
- package/dist-lib/components/verkoop/ProductDimensionsSettings.js +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.js +12 -12
- package/dist-lib/components/verkoop/SalesOrdersFilterPanel.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrdersFilters.js +1 -1
- package/dist-lib/components/verkoop/SalesOrdersTable.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrdersTable.js +2 -2
- package/dist-lib/components/verkoop/StockConsumptionAlertsBanner.js +1 -1
- package/dist-lib/components/verkoop/VerkoopOrdersPage.js +15 -15
- package/dist-lib/index.d.ts +4 -5
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +5 -6
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +162 -0
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/belading.server.js +1 -1
- package/dist-lib/lib/buffer-events.functions.d.ts +1 -1
- package/dist-lib/lib/buffer-events.functions.js +1 -1
- package/dist-lib/lib/cart-layers.functions.d.ts +4 -4
- package/dist-lib/lib/cart-layers.functions.js +2 -2
- package/dist-lib/lib/cart-lock.functions.d.ts +1 -1
- package/dist-lib/lib/cart-lock.functions.js +2 -2
- package/dist-lib/lib/cart-planning-settings.functions.d.ts +11 -11
- package/dist-lib/lib/cart-planning-settings.functions.js +1 -1
- package/dist-lib/lib/cart-replan.functions.d.ts +4 -4
- package/dist-lib/lib/cart-replan.functions.js +9 -9
- package/dist-lib/lib/create-order.functions.d.ts +18 -18
- package/dist-lib/lib/create-order.functions.js +15 -15
- package/dist-lib/lib/cron/index.d.ts +3 -3
- package/dist-lib/lib/cron/index.js +3 -3
- package/dist-lib/lib/cron/invoice-due.js +1 -1
- package/dist-lib/lib/cron/sync-salesorders.js +2 -2
- package/dist-lib/lib/cron/sync-tradeitems.js +1 -1
- package/dist-lib/lib/engine-block-alerts.server.js +4 -4
- package/dist-lib/lib/expand-group-order-items.d.ts +1 -1
- package/dist-lib/lib/floriday-change-diff.check.js +2 -2
- package/dist-lib/lib/floriday-gateway.server.d.ts +1 -1
- package/dist-lib/lib/floriday-gateway.server.js +2 -2
- package/dist-lib/lib/floriday-logistic-labels.functions.d.ts +2 -2
- package/dist-lib/lib/floriday-logistic-labels.functions.js +5 -5
- package/dist-lib/lib/floriday-mirror.functions.d.ts +1 -1
- package/dist-lib/lib/floriday-mirror.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday-mirror.functions.js +19 -12
- package/dist-lib/lib/floriday-public.functions.d.ts +7 -7
- package/dist-lib/lib/floriday-public.functions.js +2 -2
- package/dist-lib/lib/floriday-status.d.ts +1 -1
- package/dist-lib/lib/floriday-status.server.d.ts +1 -1
- package/dist-lib/lib/floriday-status.server.js +2 -2
- package/dist-lib/lib/floriday-sync.js +1 -1
- package/dist-lib/lib/floriday-unlinked-products.js +1 -1
- package/dist-lib/lib/floriday-writes.functions.d.ts +3 -3
- package/dist-lib/lib/floriday-writes.functions.js +3 -3
- package/dist-lib/lib/invoice-timing.check.d.ts +2 -0
- package/dist-lib/lib/invoice-timing.check.d.ts.map +1 -0
- package/dist-lib/lib/invoice-timing.check.js +19 -0
- package/dist-lib/lib/invoice-timing.d.ts +2 -0
- package/dist-lib/lib/invoice-timing.d.ts.map +1 -1
- package/dist-lib/lib/invoice-timing.functions.d.ts +5 -5
- package/dist-lib/lib/invoice-timing.functions.js +8 -8
- package/dist-lib/lib/invoice-timing.js +22 -4
- package/dist-lib/lib/invoice-timing.server.d.ts +8 -3
- package/dist-lib/lib/invoice-timing.server.d.ts.map +1 -1
- package/dist-lib/lib/invoice-timing.server.js +70 -34
- package/dist-lib/lib/load-carriers.functions.d.ts +2 -2
- package/dist-lib/lib/load-carriers.functions.js +2 -2
- package/dist-lib/lib/load-carriers.server.d.ts +1 -1
- package/dist-lib/lib/load-carriers.server.js +1 -1
- package/dist-lib/lib/logistics-buffer.server.js +1 -1
- package/dist-lib/lib/logistics-engine.functions.d.ts +8 -8
- package/dist-lib/lib/logistics-engine.functions.js +6 -6
- package/dist-lib/lib/logistics-engine.server.d.ts +1 -1
- package/dist-lib/lib/logistics-engine.server.js +4 -4
- package/dist-lib/lib/logistics-stock.functions.d.ts +3 -3
- package/dist-lib/lib/logistics-stock.functions.js +3 -3
- package/dist-lib/lib/order-addresses.functions.d.ts +1 -1
- package/dist-lib/lib/order-addresses.functions.js +2 -2
- package/dist-lib/lib/order-block-mail.server.js +3 -3
- package/dist-lib/lib/order-buffers.functions.d.ts +3 -3
- package/dist-lib/lib/order-buffers.functions.js +3 -3
- package/dist-lib/lib/order-cancel.server.js +6 -6
- package/dist-lib/lib/order-carrier.functions.d.ts +2 -2
- package/dist-lib/lib/order-carrier.functions.js +2 -2
- package/dist-lib/lib/order-departure.check.d.ts +2 -0
- package/dist-lib/lib/order-departure.check.d.ts.map +1 -0
- package/dist-lib/lib/order-departure.check.js +25 -0
- package/dist-lib/lib/order-departure.d.ts +25 -0
- package/dist-lib/lib/order-departure.d.ts.map +1 -0
- package/dist-lib/lib/order-departure.js +54 -0
- package/dist-lib/lib/order-departure.server.d.ts +4 -0
- package/dist-lib/lib/order-departure.server.d.ts.map +1 -0
- package/dist-lib/lib/order-departure.server.js +62 -0
- package/dist-lib/lib/order-fulfill.functions.d.ts +1 -1
- package/dist-lib/lib/order-fulfill.functions.js +3 -3
- package/dist-lib/lib/order-item-packing.functions.d.ts +3 -3
- package/dist-lib/lib/order-item-packing.functions.js +3 -3
- package/dist-lib/lib/order-patch.check.d.ts +2 -0
- package/dist-lib/lib/order-patch.check.d.ts.map +1 -0
- package/dist-lib/lib/order-patch.check.js +40 -0
- package/dist-lib/lib/order-patch.d.ts +18 -0
- package/dist-lib/lib/order-patch.d.ts.map +1 -0
- package/dist-lib/lib/order-patch.js +105 -0
- package/dist-lib/lib/order-pickup.functions.d.ts +10 -15
- package/dist-lib/lib/order-pickup.functions.d.ts.map +1 -1
- package/dist-lib/lib/order-pickup.functions.js +51 -78
- package/dist-lib/lib/order-shipments.functions.d.ts +4 -4
- package/dist-lib/lib/order-shipments.functions.js +6 -6
- package/dist-lib/lib/plan-coverage.check.js +1 -1
- package/dist-lib/lib/plan-coverage.server.d.ts +1 -1
- package/dist-lib/lib/plan-coverage.server.js +1 -1
- package/dist-lib/lib/product-dimensions.functions.d.ts +2 -2
- package/dist-lib/lib/product-dimensions.functions.js +1 -1
- package/dist-lib/lib/salesorders-list.functions.d.ts +5 -5
- package/dist-lib/lib/salesorders-list.functions.js +4 -4
- package/dist-lib/lib/salesorders-list.server.d.ts +2 -2
- package/dist-lib/lib/salesorders-list.server.d.ts.map +1 -1
- package/dist-lib/lib/salesorders-list.server.js +39 -53
- package/dist-lib/lib/salesorders-mapping.d.ts +3 -3
- package/dist-lib/lib/salesorders-mapping.js +2 -2
- package/dist-lib/lib/salesorders.functions.d.ts +7 -7
- package/dist-lib/lib/salesorders.functions.js +20 -20
- package/dist-lib/lib/stock-consumption-alerts.functions.d.ts +2 -2
- package/dist-lib/lib/stock-consumption-alerts.functions.js +1 -1
- package/dist-lib/lib/tradeitems.functions.d.ts +1068 -1068
- package/dist-lib/lib/tradeitems.functions.js +3 -3
- package/dist-lib/lib/useAllowedLoadCarriers.d.ts +1 -1
- package/dist-lib/lib/useAllowedLoadCarriers.js +1 -1
- package/dist-lib/lib/useBufferEvents.d.ts +1 -1
- package/dist-lib/lib/useBufferEvents.js +2 -2
- package/dist-lib/lib/useLocalSalesOrderDetailQuery.d.ts +2 -2
- package/dist-lib/lib/useLocalSalesOrderDetailQuery.js +2 -2
- package/dist-lib/lib/useSalesOrderDetailQuery.d.ts +1 -1
- package/dist-lib/lib/useSalesOrderDetailQuery.js +2 -2
- package/dist-lib/lib/useSalesOrdersQuery.d.ts +2 -2
- package/dist-lib/lib/useSalesOrdersQuery.js +3 -3
- package/package.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Beladingen (packing-configuraties) per product — centrale bron.
|
|
2
2
|
// Geen eigen controle op ladingdragers: alleen de Logistiek Engine beslist
|
|
3
3
|
// of een belading kan (koppelprompt 22).
|
|
4
|
-
import { cratePackageName, loadCarrierName } from "./load-carrier-labels";
|
|
4
|
+
import { cratePackageName, loadCarrierName } from "./load-carrier-labels.js";
|
|
5
5
|
/**
|
|
6
6
|
* Alle beladingen per product, al gefilterd op de ladingdragers die de
|
|
7
7
|
* Logistics Engine toestaat. Nooit cachen: de Engine-instelling kan tijdens
|
|
@@ -8,7 +8,7 @@ export interface BufferEventRow {
|
|
|
8
8
|
}
|
|
9
9
|
/** Laatste bufferseintjes van de Engine (nieuwste eerst). */
|
|
10
10
|
export declare const listBufferEvents: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
11
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
11
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
12
12
|
userId: string;
|
|
13
13
|
claims: import("@supabase/auth-js").User;
|
|
14
14
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Seintjes van de Logistics Engine over buffers. De Verkoop-module beslist
|
|
2
2
|
// niets zelf: hij luistert alleen en herberekent daarna zijn weergave.
|
|
3
3
|
import { createServerFn } from "@tanstack/react-start";
|
|
4
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
4
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
5
5
|
export const BUFFER_EVENT_TYPES = ["buffer.closed", "buffer.order_detached"];
|
|
6
6
|
/** Laatste bufferseintjes van de Engine (nieuwste eerst). */
|
|
7
7
|
export const listBufferEvents = createServerFn({ method: "GET" })
|
|
@@ -25,7 +25,7 @@ export interface CartLayer {
|
|
|
25
25
|
kegs: CartLayerKeg[];
|
|
26
26
|
}
|
|
27
27
|
export declare const listCartLayers: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
28
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
28
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
29
29
|
userId: string;
|
|
30
30
|
claims: import("@supabase/auth-js").User;
|
|
31
31
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -46,7 +46,7 @@ export declare const listCartLayers: import("@tanstack/start-client-core").Optio
|
|
|
46
46
|
* als handmatig aangepast, zodat de Logistiek Engine ze niet overschrijft.
|
|
47
47
|
*/
|
|
48
48
|
export declare const swapCartLayerPositions: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
49
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
49
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
50
50
|
userId: string;
|
|
51
51
|
claims: import("@supabase/auth-js").User;
|
|
52
52
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -65,7 +65,7 @@ export declare const swapCartLayerPositions: import("@tanstack/start-client-core
|
|
|
65
65
|
* handmatig aangepast zodat de Engine hem laat staan.
|
|
66
66
|
*/
|
|
67
67
|
export declare const moveCartLayerPosition: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
68
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
68
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
69
69
|
userId: string;
|
|
70
70
|
claims: import("@supabase/auth-js").User;
|
|
71
71
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -85,7 +85,7 @@ export declare const moveCartLayerPosition: import("@tanstack/start-client-core"
|
|
|
85
85
|
* Logistiek Engine die heeft aangeleverd.
|
|
86
86
|
*/
|
|
87
87
|
export declare const resetCartLayerPositions: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
88
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
88
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
89
89
|
userId: string;
|
|
90
90
|
claims: import("@supabase/auth-js").User;
|
|
91
91
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
// wij tonen uitsluitend wat daar staat. Geen fallback, geen geschatte posities.
|
|
4
4
|
import { createServerFn } from "@tanstack/react-start";
|
|
5
5
|
import { z } from "zod";
|
|
6
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
7
|
-
import { resolveProductName } from "./product-name";
|
|
6
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
7
|
+
import { resolveProductName } from "./product-name.js";
|
|
8
8
|
export const listCartLayers = createServerFn({ method: "GET" })
|
|
9
9
|
.middleware([requireSupabaseAuth])
|
|
10
10
|
.inputValidator((input) => z.object({ cartId: z.string().uuid() }).parse(input))
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const lockOrderPlanFromPickstation: import("@tanstack/start-client-core").RequiredFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
2
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
2
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
3
3
|
userId: string;
|
|
4
4
|
claims: import("@supabase/auth-js").User;
|
|
5
5
|
}, undefined, undefined, undefined>], (input: {
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
// Pickstation is geprint. Idempotent: her-aanroepen wijzigt niets.
|
|
3
3
|
import { createServerFn } from "@tanstack/react-start";
|
|
4
4
|
import { z } from "zod";
|
|
5
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
5
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
6
6
|
export const lockOrderPlanFromPickstation = createServerFn({ method: "POST" })
|
|
7
7
|
.middleware([requireSupabaseAuth])
|
|
8
8
|
.inputValidator((input) => z
|
|
9
9
|
.object({ orderId: z.string().uuid(), ref: z.string().nullish() })
|
|
10
10
|
.parse(input))
|
|
11
11
|
.handler(async ({ data }) => {
|
|
12
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
12
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
13
13
|
const { data: current } = await supabaseAdmin
|
|
14
14
|
.from("orders")
|
|
15
15
|
.select("id, plan_locked_at, plan_locked_ref")
|
|
@@ -43,7 +43,7 @@ export interface CrateType {
|
|
|
43
43
|
plants_per_crate: number;
|
|
44
44
|
}
|
|
45
45
|
export declare const getCartPlanningBundle: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
46
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
46
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
47
47
|
userId: string;
|
|
48
48
|
claims: import("@supabase/auth-js").User;
|
|
49
49
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -53,7 +53,7 @@ export declare const getCartPlanningBundle: import("@tanstack/start-client-core"
|
|
|
53
53
|
crateTypes: CrateType[];
|
|
54
54
|
}>>;
|
|
55
55
|
export declare const updateCartPlanningSettings: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
56
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
56
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
57
57
|
userId: string;
|
|
58
58
|
claims: import("@supabase/auth-js").User;
|
|
59
59
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -82,7 +82,7 @@ export declare const updateCartPlanningSettings: import("@tanstack/start-client-
|
|
|
82
82
|
ok: true;
|
|
83
83
|
}>>;
|
|
84
84
|
export declare const upsertPickTime: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
85
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
85
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
86
86
|
userId: string;
|
|
87
87
|
claims: import("@supabase/auth-js").User;
|
|
88
88
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -93,7 +93,7 @@ export declare const upsertPickTime: import("@tanstack/start-client-core").Optio
|
|
|
93
93
|
ok: true;
|
|
94
94
|
}>>;
|
|
95
95
|
export declare const deletePickTime: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
96
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
96
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
97
97
|
userId: string;
|
|
98
98
|
claims: import("@supabase/auth-js").User;
|
|
99
99
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -113,7 +113,7 @@ export interface UsedCratePackage {
|
|
|
113
113
|
label: string;
|
|
114
114
|
}
|
|
115
115
|
export declare const listUsedCratePackages: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
116
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
116
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
117
117
|
userId: string;
|
|
118
118
|
claims: import("@supabase/auth-js").User;
|
|
119
119
|
}, undefined, undefined, undefined>], undefined, Promise<UsedCratePackage[]>>;
|
|
@@ -128,12 +128,12 @@ export interface UsedCartCarrier {
|
|
|
128
128
|
label: string;
|
|
129
129
|
}
|
|
130
130
|
export declare const listUsedCartCarriers: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
131
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
131
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
132
132
|
userId: string;
|
|
133
133
|
claims: import("@supabase/auth-js").User;
|
|
134
134
|
}, undefined, undefined, undefined>], undefined, Promise<UsedCartCarrier[]>>;
|
|
135
135
|
export declare const upsertCartType: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
136
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
136
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
137
137
|
userId: string;
|
|
138
138
|
claims: import("@supabase/auth-js").User;
|
|
139
139
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -147,7 +147,7 @@ export declare const upsertCartType: import("@tanstack/start-client-core").Optio
|
|
|
147
147
|
ok: true;
|
|
148
148
|
}>>;
|
|
149
149
|
export declare const deleteCartType: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
150
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
150
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
151
151
|
userId: string;
|
|
152
152
|
claims: import("@supabase/auth-js").User;
|
|
153
153
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -156,7 +156,7 @@ export declare const deleteCartType: import("@tanstack/start-client-core").Optio
|
|
|
156
156
|
ok: true;
|
|
157
157
|
}>>;
|
|
158
158
|
export declare const setDefaultCartType: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
159
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
159
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
160
160
|
userId: string;
|
|
161
161
|
claims: import("@supabase/auth-js").User;
|
|
162
162
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -165,7 +165,7 @@ export declare const setDefaultCartType: import("@tanstack/start-client-core").O
|
|
|
165
165
|
ok: true;
|
|
166
166
|
}>>;
|
|
167
167
|
export declare const upsertCrateType: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
168
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
168
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
169
169
|
userId: string;
|
|
170
170
|
claims: import("@supabase/auth-js").User;
|
|
171
171
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -178,7 +178,7 @@ export declare const upsertCrateType: import("@tanstack/start-client-core").Opti
|
|
|
178
178
|
ok: true;
|
|
179
179
|
}>>;
|
|
180
180
|
export declare const deleteCrateType: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
181
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
181
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
182
182
|
userId: string;
|
|
183
183
|
claims: import("@supabase/auth-js").User;
|
|
184
184
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Server-fns voor de Karindeling-instellingen module.
|
|
2
2
|
import { createServerFn } from "@tanstack/react-start";
|
|
3
3
|
import { z } from "zod";
|
|
4
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
4
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
5
5
|
export const getCartPlanningBundle = createServerFn({ method: "GET" })
|
|
6
6
|
.middleware([requireSupabaseAuth])
|
|
7
7
|
.handler(async ({ context }) => {
|
|
@@ -45,7 +45,7 @@ export declare function replanOrderCartsFromCron(orderId: string): Promise<{
|
|
|
45
45
|
skipped?: "locked";
|
|
46
46
|
}>;
|
|
47
47
|
export declare const replanOrderCarts: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
48
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
48
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
49
49
|
userId: string;
|
|
50
50
|
claims: import("@supabase/auth-js").User;
|
|
51
51
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -71,17 +71,17 @@ export declare function drainCartReplanQueue(_limit?: number): Promise<{
|
|
|
71
71
|
}>;
|
|
72
72
|
}>;
|
|
73
73
|
export declare const getOrderPlanCoverage: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
74
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
74
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
75
75
|
userId: string;
|
|
76
76
|
claims: import("@supabase/auth-js").User;
|
|
77
77
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
78
78
|
orderId: string;
|
|
79
79
|
}, Promise<{
|
|
80
80
|
orderId: string;
|
|
81
|
-
coverage: import("./plan-coverage").PlanCoverage;
|
|
81
|
+
coverage: import("./plan-coverage.js").PlanCoverage;
|
|
82
82
|
}>>;
|
|
83
83
|
export declare const replanBufferForOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
84
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
84
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
85
85
|
userId: string;
|
|
86
86
|
claims: import("@supabase/auth-js").User;
|
|
87
87
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
// - handmatige "Herbereken" knop in de order-detail
|
|
5
5
|
// - cron endpoint /api/public/cron/replan-carts (drain van cart_replan_queue)
|
|
6
6
|
import { createServerFn } from "@tanstack/react-start";
|
|
7
|
-
import { productNameForStorage } from "./product-name";
|
|
7
|
+
import { productNameForStorage } from "./product-name.js";
|
|
8
8
|
import { z } from "zod";
|
|
9
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
10
|
-
import { resolveOrderRow } from "./order-row.server";
|
|
11
|
-
import { CART_PLANNER_VERSION, planCarts, } from "./cart-planner";
|
|
12
|
-
import { resolveBufferForOrderInternal } from "./order-buffers.functions";
|
|
9
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
10
|
+
import { resolveOrderRow } from "./order-row.server.js";
|
|
11
|
+
import { CART_PLANNER_VERSION, planCarts, } from "./cart-planner.js";
|
|
12
|
+
import { resolveBufferForOrderInternal } from "./order-buffers.functions.js";
|
|
13
13
|
export async function replanBufferInternal(bufferId) {
|
|
14
14
|
return replanScopeInternal({ bufferId });
|
|
15
15
|
}
|
|
@@ -18,7 +18,7 @@ export async function replanBufferInternal(bufferId) {
|
|
|
18
18
|
* (orderId) wanneer de Engine zegt dat er niet gebufferd wordt.
|
|
19
19
|
*/
|
|
20
20
|
export async function replanScopeInternal(scope) {
|
|
21
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
21
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
22
22
|
const bufferId = scope.bufferId ?? null;
|
|
23
23
|
const soloOrderId = bufferId ? null : (scope.orderId ?? null);
|
|
24
24
|
if (!bufferId && !soloOrderId)
|
|
@@ -332,7 +332,7 @@ export async function replanScopeInternal(scope) {
|
|
|
332
332
|
// blokkade opnieuw gemaild mag worden.
|
|
333
333
|
if (cartsCreated > 0) {
|
|
334
334
|
const plannedOrderIds = Array.from(new Set(Array.from(itemToOrder.values()).filter((v) => !!v)));
|
|
335
|
-
const { clearOrderBlockNotifications } = await import("./order-block-mail.server");
|
|
335
|
+
const { clearOrderBlockNotifications } = await import("./order-block-mail.server.js");
|
|
336
336
|
await clearOrderBlockNotifications(plannedOrderIds);
|
|
337
337
|
}
|
|
338
338
|
return {
|
|
@@ -389,8 +389,8 @@ export const getOrderPlanCoverage = createServerFn({ method: "GET" })
|
|
|
389
389
|
.handler(async ({ data, context }) => {
|
|
390
390
|
const orderRow = await resolveOrderRow(context.supabase, data.orderId);
|
|
391
391
|
const dbOrderId = String(orderRow.id);
|
|
392
|
-
const { loadPlanCoverage } = await import("./plan-coverage.server");
|
|
393
|
-
const { unknownCoverage } = await import("./plan-coverage");
|
|
392
|
+
const { loadPlanCoverage } = await import("./plan-coverage.server.js");
|
|
393
|
+
const { unknownCoverage } = await import("./plan-coverage.js");
|
|
394
394
|
const cov = (await loadPlanCoverage(context.supabase, [dbOrderId])).get(dbOrderId) ??
|
|
395
395
|
unknownCoverage("Geen antwoord van de Engine");
|
|
396
396
|
return { orderId: dbOrderId, coverage: cov };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
export declare const listCustomersForCreateOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
2
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
2
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
3
3
|
userId: string;
|
|
4
4
|
claims: import("@supabase/auth-js").User;
|
|
5
5
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
6
6
|
items: any[];
|
|
7
7
|
}>>;
|
|
8
8
|
export declare const ensureCustomerFromTwinfield: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
9
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
9
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
10
10
|
userId: string;
|
|
11
11
|
claims: import("@supabase/auth-js").User;
|
|
12
12
|
}, undefined, undefined, undefined>], (d: unknown) => {
|
|
@@ -15,7 +15,7 @@ export declare const ensureCustomerFromTwinfield: import("@tanstack/start-client
|
|
|
15
15
|
id: string;
|
|
16
16
|
}>>;
|
|
17
17
|
export declare const listProductsForCreateOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
18
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
18
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
19
19
|
userId: string;
|
|
20
20
|
claims: import("@supabase/auth-js").User;
|
|
21
21
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -36,7 +36,7 @@ export declare const listProductsForCreateOrder: import("@tanstack/start-client-
|
|
|
36
36
|
}[];
|
|
37
37
|
}>>;
|
|
38
38
|
export declare const listDeliveryLocationsForCustomerCO: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
39
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
39
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
40
40
|
userId: string;
|
|
41
41
|
claims: import("@supabase/auth-js").User;
|
|
42
42
|
}, undefined, undefined, undefined>], (d: unknown) => {
|
|
@@ -63,7 +63,7 @@ export declare const listDeliveryLocationsForCustomerCO: import("@tanstack/start
|
|
|
63
63
|
}[];
|
|
64
64
|
}>>;
|
|
65
65
|
export declare const listPickupLocationsCO: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
66
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
66
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
67
67
|
userId: string;
|
|
68
68
|
claims: import("@supabase/auth-js").User;
|
|
69
69
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -73,7 +73,7 @@ export declare const listPickupLocationsCO: import("@tanstack/start-client-core"
|
|
|
73
73
|
}[];
|
|
74
74
|
}>>;
|
|
75
75
|
export declare const listCarriersForCreateOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
76
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
76
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
77
77
|
userId: string;
|
|
78
78
|
claims: import("@supabase/auth-js").User;
|
|
79
79
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -88,20 +88,20 @@ export declare const listCarriersForCreateOrder: import("@tanstack/start-client-
|
|
|
88
88
|
signup_days_before_delivery: number;
|
|
89
89
|
pickup_weekdays: number[];
|
|
90
90
|
delivery_weekdays: number[];
|
|
91
|
-
pickup_moments: import("../integrations/supabase/types").Json;
|
|
91
|
+
pickup_moments: import("../integrations/supabase/types.js").Json;
|
|
92
92
|
}[];
|
|
93
93
|
}>>;
|
|
94
94
|
export declare const listBeladingOptionsForProducts: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
95
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
95
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
96
96
|
userId: string;
|
|
97
97
|
claims: import("@supabase/auth-js").User;
|
|
98
98
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
99
99
|
productIds: string[];
|
|
100
100
|
}, Promise<{
|
|
101
|
-
byProduct: Record<string, import("./belading.server").BeladingOption[]>;
|
|
101
|
+
byProduct: Record<string, import("./belading.server.js").BeladingOption[]>;
|
|
102
102
|
}>>;
|
|
103
103
|
export declare const listBeladingOptions: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
104
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
104
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
105
105
|
userId: string;
|
|
106
106
|
claims: import("@supabase/auth-js").User;
|
|
107
107
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
@@ -115,14 +115,14 @@ export declare const listBeladingOptions: import("@tanstack/start-client-core").
|
|
|
115
115
|
}[];
|
|
116
116
|
}>>;
|
|
117
117
|
export declare const getOrderPickDaysCO: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
118
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
118
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
119
119
|
userId: string;
|
|
120
120
|
claims: import("@supabase/auth-js").User;
|
|
121
121
|
}, undefined, undefined, undefined>], undefined, Promise<{
|
|
122
122
|
pickDays: number;
|
|
123
123
|
}>>;
|
|
124
124
|
export declare const createManualOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
125
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
125
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
126
126
|
userId: string;
|
|
127
127
|
claims: import("@supabase/auth-js").User;
|
|
128
128
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -151,7 +151,7 @@ export declare const createManualOrder: import("@tanstack/start-client-core").Op
|
|
|
151
151
|
orderId: string;
|
|
152
152
|
}>>;
|
|
153
153
|
export declare const cancelLocalOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
154
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
154
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
155
155
|
userId: string;
|
|
156
156
|
claims: import("@supabase/auth-js").User;
|
|
157
157
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -163,7 +163,7 @@ export declare const cancelLocalOrder: import("@tanstack/start-client-core").Opt
|
|
|
163
163
|
reversedKeys: number;
|
|
164
164
|
}>>;
|
|
165
165
|
export declare const deleteLocalOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
166
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
166
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
167
167
|
userId: string;
|
|
168
168
|
claims: import("@supabase/auth-js").User;
|
|
169
169
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -178,7 +178,7 @@ export declare const deleteLocalOrder: import("@tanstack/start-client-core").Opt
|
|
|
178
178
|
* voorstel plus zijn regels verwijderen.
|
|
179
179
|
*/
|
|
180
180
|
export declare const deleteMailboxProposal: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
181
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
181
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
182
182
|
userId: string;
|
|
183
183
|
claims: import("@supabase/auth-js").User;
|
|
184
184
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -187,7 +187,7 @@ export declare const deleteMailboxProposal: import("@tanstack/start-client-core"
|
|
|
187
187
|
ok: true;
|
|
188
188
|
}>>;
|
|
189
189
|
export declare const getLocalOrderForEdit: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
190
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
190
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
191
191
|
userId: string;
|
|
192
192
|
claims: import("@supabase/auth-js").User;
|
|
193
193
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -213,7 +213,7 @@ export declare const getLocalOrderForEdit: import("@tanstack/start-client-core")
|
|
|
213
213
|
}[];
|
|
214
214
|
}>>;
|
|
215
215
|
export declare const updateLocalOrder: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
216
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
216
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
217
217
|
userId: string;
|
|
218
218
|
claims: import("@supabase/auth-js").User;
|
|
219
219
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -238,7 +238,7 @@ export declare const updateLocalOrder: import("@tanstack/start-client-core").Opt
|
|
|
238
238
|
ok: true;
|
|
239
239
|
}>>;
|
|
240
240
|
export declare const getEffectivePrices: import("@tanstack/start-client-core").OptionalFetcher<readonly [import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
241
|
-
supabase: import("../integrations/supabase/auth-middleware").AuthedSupabaseClient;
|
|
241
|
+
supabase: import("../integrations/supabase/auth-middleware.js").AuthedSupabaseClient;
|
|
242
242
|
userId: string;
|
|
243
243
|
claims: import("@supabase/auth-js").User;
|
|
244
244
|
}, undefined, undefined, undefined>], (input: unknown) => {
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
// Deelt DB-queries met de Mailbox-module zodat beide manieren van
|
|
3
3
|
// orderinvoer identieke lijsten, validaties en berekeningen gebruiken.
|
|
4
4
|
import { createServerFn } from "@tanstack/react-start";
|
|
5
|
-
import { productNameForStorage } from "./product-name";
|
|
5
|
+
import { productNameForStorage } from "./product-name.js";
|
|
6
6
|
import { z } from "zod";
|
|
7
|
-
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
7
|
+
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware.js";
|
|
8
8
|
// ─── Klanten ────────────────────────────────────────────────────────────────
|
|
9
9
|
// Bron 1: lokale `customers` (incl. eerder geïmporteerde Twinfield-klanten).
|
|
10
10
|
// Bron 2: `twinfield_customers_cache` — klanten die alleen in Twinfield staan.
|
|
@@ -557,7 +557,7 @@ export const listBeladingOptionsForProducts = createServerFn({ method: "POST" })
|
|
|
557
557
|
.middleware([requireSupabaseAuth])
|
|
558
558
|
.inputValidator((input) => z.object({ productIds: z.array(z.string()).max(200) }).parse(input))
|
|
559
559
|
.handler(async ({ data, context }) => {
|
|
560
|
-
const { computeBeladingByProduct } = await import("./belading.server");
|
|
560
|
+
const { computeBeladingByProduct } = await import("./belading.server.js");
|
|
561
561
|
const byProduct = await computeBeladingByProduct(context.supabase, data.productIds);
|
|
562
562
|
return { byProduct };
|
|
563
563
|
});
|
|
@@ -674,7 +674,7 @@ export const createManualOrder = createServerFn({ method: "POST" })
|
|
|
674
674
|
// Voorraadcontrole van de Engine — die beslist of een order met producten
|
|
675
675
|
// zonder voorraad aangemaakt mag worden.
|
|
676
676
|
{
|
|
677
|
-
const { assertOrderAllowed } = await import("./logistics-stock.server");
|
|
677
|
+
const { assertOrderAllowed } = await import("./logistics-stock.server.js");
|
|
678
678
|
await assertOrderAllowed(context.supabase, data.lines.map((l) => ({ productId: l.product_id, quantity: Number(l.quantity) })));
|
|
679
679
|
}
|
|
680
680
|
// Validatie eerst mogelijke leverdatum — o.b.v. de aanmeldmomenten van de
|
|
@@ -684,7 +684,7 @@ export const createManualOrder = createServerFn({ method: "POST" })
|
|
|
684
684
|
throw new Error("Selecteer een vervoerder");
|
|
685
685
|
}
|
|
686
686
|
// Ladingdrager: zonder keuze de standaard van de Engine; geen eigen controle.
|
|
687
|
-
const { resolveLoadCarrierType } = await import("./load-carriers.server");
|
|
687
|
+
const { resolveLoadCarrierType } = await import("./load-carriers.server.js");
|
|
688
688
|
const loadCarrierType = await resolveLoadCarrierType(context.supabase, data.loadCarrierType);
|
|
689
689
|
const c = data.carrierId
|
|
690
690
|
? (await context.supabase
|
|
@@ -700,7 +700,7 @@ export const createManualOrder = createServerFn({ method: "POST" })
|
|
|
700
700
|
.order("updated_at", { ascending: false })
|
|
701
701
|
.limit(1).maybeSingle();
|
|
702
702
|
const pickDays = Math.max(0, Number(settings?.pick_days_before_transport ?? 0));
|
|
703
|
-
const { computeEarliestDelivery, nowInAmsterdam, resolveDeliveryTimeForDate } = await import("./carrier-availability");
|
|
703
|
+
const { computeEarliestDelivery, nowInAmsterdam, resolveDeliveryTimeForDate } = await import("./carrier-availability.js");
|
|
704
704
|
const nowLocal = nowInAmsterdam();
|
|
705
705
|
const earliest = computeEarliestDelivery(c, pickDays, nowLocal);
|
|
706
706
|
// Aanlevertijd van het aanmeldmoment dat bij deze leverdatum hoort (bv. 20:00).
|
|
@@ -717,7 +717,7 @@ export const createManualOrder = createServerFn({ method: "POST" })
|
|
|
717
717
|
throw new Error(`Leverdatum (${data.deliveryDate}) ligt voor de eerst mogelijke datum (${earliestISO}). Het eerstvolgende aanmeldmoment van de vervoerder is ${earliest.signupDeadlineISO ?? "onbekend"} (orderpicktijd ${pickDays}d, levertijd ${carrierDeliveryDays}d).`);
|
|
718
718
|
}
|
|
719
719
|
}
|
|
720
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
720
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
721
721
|
// Zorg dat elk product_id (= identiteit uit de voorraadmodule) een rij
|
|
722
722
|
// in `products` heeft — de order_items FK vereist dit én de karindeling
|
|
723
723
|
// van de Engine joined op products voor de packing-waarden.
|
|
@@ -867,7 +867,7 @@ export const createManualOrder = createServerFn({ method: "POST" })
|
|
|
867
867
|
// deze module stoot dat niet zelf meer aan.
|
|
868
868
|
// Logistics Engine informeren (schaduwmodus): Engine plant de keten.
|
|
869
869
|
try {
|
|
870
|
-
const { notifyEngineOrder } = await import("./logistics-engine.server");
|
|
870
|
+
const { notifyEngineOrder } = await import("./logistics-engine.server.js");
|
|
871
871
|
await notifyEngineOrder(order.id, "order.received");
|
|
872
872
|
}
|
|
873
873
|
catch (err) {
|
|
@@ -885,7 +885,7 @@ export const cancelLocalOrder = createServerFn({ method: "POST" })
|
|
|
885
885
|
.object({ orderId: z.string().uuid(), reason: z.string().max(500).optional() })
|
|
886
886
|
.parse(input))
|
|
887
887
|
.handler(async ({ data, context }) => {
|
|
888
|
-
const { cancelLocalOrderInternal } = await import("./order-cancel.server");
|
|
888
|
+
const { cancelLocalOrderInternal } = await import("./order-cancel.server.js");
|
|
889
889
|
return await cancelLocalOrderInternal({
|
|
890
890
|
orderId: data.orderId,
|
|
891
891
|
reason: data.reason ?? null,
|
|
@@ -901,7 +901,7 @@ export const deleteLocalOrder = createServerFn({ method: "POST" })
|
|
|
901
901
|
.middleware([requireSupabaseAuth])
|
|
902
902
|
.inputValidator((input) => z.object({ orderId: z.string().uuid() }).parse(input))
|
|
903
903
|
.handler(async ({ data, context }) => {
|
|
904
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
904
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
905
905
|
const { data: order, error: oErr } = await supabaseAdmin
|
|
906
906
|
.from("orders")
|
|
907
907
|
.select("id, custom_fields, order_source")
|
|
@@ -1006,7 +1006,7 @@ export const deleteMailboxProposal = createServerFn({ method: "POST" })
|
|
|
1006
1006
|
.middleware([requireSupabaseAuth])
|
|
1007
1007
|
.inputValidator((input) => z.object({ proposalId: z.string().uuid() }).parse(input))
|
|
1008
1008
|
.handler(async ({ data }) => {
|
|
1009
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
1009
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
1010
1010
|
const { data: proposal, error: pErr } = await supabaseAdmin
|
|
1011
1011
|
.from("mailbox_order_proposals")
|
|
1012
1012
|
.select("id, created_order_id")
|
|
@@ -1252,7 +1252,7 @@ export const updateLocalOrder = createServerFn({ method: "POST" })
|
|
|
1252
1252
|
.middleware([requireSupabaseAuth])
|
|
1253
1253
|
.inputValidator((input) => UpdateLocalOrderInput.parse(input))
|
|
1254
1254
|
.handler(async ({ data, context }) => {
|
|
1255
|
-
const { supabaseAdmin } = await import("../integrations/supabase/client.server");
|
|
1255
|
+
const { supabaseAdmin } = await import("../integrations/supabase/client.server.js");
|
|
1256
1256
|
const { data: order, error: oErr } = await supabaseAdmin
|
|
1257
1257
|
.from("orders")
|
|
1258
1258
|
.select("id, custom_fields, order_source, is_reservation, plan_locked_at")
|
|
@@ -1324,7 +1324,7 @@ export const updateLocalOrder = createServerFn({ method: "POST" })
|
|
|
1324
1324
|
for (const n of newItems)
|
|
1325
1325
|
lines.push({ productId: n.productId, quantity: n.quantity });
|
|
1326
1326
|
if (lines.length > 0) {
|
|
1327
|
-
const { assertOrderAllowed } = await import("./logistics-stock.server");
|
|
1327
|
+
const { assertOrderAllowed } = await import("./logistics-stock.server.js");
|
|
1328
1328
|
await assertOrderAllowed(context.supabase, lines);
|
|
1329
1329
|
}
|
|
1330
1330
|
}
|
|
@@ -1386,7 +1386,7 @@ export const updateLocalOrder = createServerFn({ method: "POST" })
|
|
|
1386
1386
|
.select("delivery_days, signup_time_1, signup_time_2, signup_days_before_delivery, pickup_weekdays, delivery_weekdays, pickup_moments")
|
|
1387
1387
|
.eq("id", cf.carrier)
|
|
1388
1388
|
.maybeSingle();
|
|
1389
|
-
const { resolveDeliveryTimeForDate, nowInAmsterdam } = await import("./carrier-availability");
|
|
1389
|
+
const { resolveDeliveryTimeForDate, nowInAmsterdam } = await import("./carrier-availability.js");
|
|
1390
1390
|
newDeliveryTime =
|
|
1391
1391
|
resolveDeliveryTimeForDate(carrierRow, data.deliveryDate, nowInAmsterdam()) ??
|
|
1392
1392
|
newDeliveryTime;
|
|
@@ -1428,7 +1428,7 @@ export const updateLocalOrder = createServerFn({ method: "POST" })
|
|
|
1428
1428
|
// Karindeling: de Logistiek Engine plant opnieuw in haar eigen ronde.
|
|
1429
1429
|
// Logistics Engine informeren (schaduwmodus): Engine plant de keten.
|
|
1430
1430
|
try {
|
|
1431
|
-
const { notifyEngineOrder } = await import("./logistics-engine.server");
|
|
1431
|
+
const { notifyEngineOrder } = await import("./logistics-engine.server.js");
|
|
1432
1432
|
await notifyEngineOrder(data.orderId, "order.changed");
|
|
1433
1433
|
}
|
|
1434
1434
|
catch (err) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { replanCartsCron, replanCartsCronHint } from "./replan-carts";
|
|
2
|
-
export { syncSalesOrdersCron, syncSalesOrdersCronHint } from "./sync-salesorders";
|
|
3
|
-
export { invoiceDueCron, invoiceDueCronHint } from "./invoice-due";
|
|
1
|
+
export { replanCartsCron, replanCartsCronHint } from "./replan-carts.js";
|
|
2
|
+
export { syncSalesOrdersCron, syncSalesOrdersCronHint } from "./sync-salesorders.js";
|
|
3
|
+
export { invoiceDueCron, invoiceDueCronHint } from "./invoice-due.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { replanCartsCron, replanCartsCronHint } from "./replan-carts";
|
|
2
|
-
export { syncSalesOrdersCron, syncSalesOrdersCronHint } from "./sync-salesorders";
|
|
3
|
-
export { invoiceDueCron, invoiceDueCronHint } from "./invoice-due";
|
|
1
|
+
export { replanCartsCron, replanCartsCronHint } from "./replan-carts.js";
|
|
2
|
+
export { syncSalesOrdersCron, syncSalesOrdersCronHint } from "./sync-salesorders.js";
|
|
3
|
+
export { invoiceDueCron, invoiceDueCronHint } from "./invoice-due.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { runInvoiceTimingCycle } from "../invoice-timing.server";
|
|
1
|
+
import { runInvoiceTimingCycle } from "../invoice-timing.server.js";
|
|
2
2
|
export async function invoiceDueCron(request, _supabase) {
|
|
3
3
|
const apikey = request.headers.get("apikey") ?? request.headers.get("x-api-key");
|
|
4
4
|
const expected = process.env.SUPABASE_PUBLISHABLE_KEY;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { runSalesOrdersSyncFromCron } from "../salesorders.functions";
|
|
1
|
+
import { runSalesOrdersSyncFromCron } from "../salesorders.functions.js";
|
|
2
2
|
const LOCK_KEY = "verkoop:salesorders-sync";
|
|
3
3
|
const LOCK_SECONDS = 600;
|
|
4
4
|
export async function syncSalesOrdersCron(request, _supabase) {
|
|
@@ -7,7 +7,7 @@ export async function syncSalesOrdersCron(request, _supabase) {
|
|
|
7
7
|
if (!expected || !apikey || apikey !== expected) {
|
|
8
8
|
return new Response("Unauthorized", { status: 401 });
|
|
9
9
|
}
|
|
10
|
-
const { supabaseAdmin } = await import("../../integrations/supabase/client.server");
|
|
10
|
+
const { supabaseAdmin } = await import("../../integrations/supabase/client.server.js");
|
|
11
11
|
// Slot: voorkomt dat twee rondes elkaar overlappen. Faalt gesloten.
|
|
12
12
|
const { data: acquired, error: lockErr } = await supabaseAdmin.rpc("try_acquire_job_lock", { _key: LOCK_KEY, _seconds: LOCK_SECONDS, _owner: "sync-salesorders" });
|
|
13
13
|
if (lockErr) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { runTradeItemsSyncFromCron } from "../tradeitems.functions";
|
|
1
|
+
import { runTradeItemsSyncFromCron } from "../tradeitems.functions.js";
|
|
2
2
|
export async function syncTradeItemsCron(request, _supabase) {
|
|
3
3
|
const apikey = request.headers.get("apikey") ?? request.headers.get("x-api-key");
|
|
4
4
|
const expected = process.env.SUPABASE_PUBLISHABLE_KEY;
|