@flowselections/floriday-verkoop-module 1.0.87 → 1.0.90
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.js +1 -1
- 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/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/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.functions.d.ts +5 -5
- package/dist-lib/lib/invoice-timing.functions.js +8 -8
- 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-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 +2 -2
- package/dist-lib/lib/order-pickup.functions.js +3 -3
- 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.js +17 -17
- 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
|
@@ -10,7 +10,7 @@ import { Link, useNavigate } from "@tanstack/react-router";
|
|
|
10
10
|
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
11
11
|
import { ArrowLeft, Plus, Trash2 } from "lucide-react";
|
|
12
12
|
import { useServerFn } from "@tanstack/react-start";
|
|
13
|
-
import { SearchableSelect } from "./SearchableSelect";
|
|
13
|
+
import { SearchableSelect } from "./SearchableSelect.js";
|
|
14
14
|
import { computeEarliestDelivery } from "../../lib/carrier-availability.js";
|
|
15
15
|
import { listCustomersForCreateOrder, ensureCustomerFromTwinfield, listProductsForCreateOrder, listDeliveryLocationsForCustomerCO, listPickupLocationsCO, listCarriersForCreateOrder, getOrderPickDaysCO, listBeladingOptionsForProducts, createManualOrder, getEffectivePrices, } from "../../lib/create-order.functions.js";
|
|
16
16
|
import { checkOrderStockAllowed } from "../../lib/logistics-stock.functions.js";
|
|
@@ -3,7 +3,7 @@ import { useEffect, useState } from "react";
|
|
|
3
3
|
import { Button, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, toast, } from "@flowselections/core";
|
|
4
4
|
import { useServerFn } from "@tanstack/react-start";
|
|
5
5
|
import { CheckCircle2, XCircle, Loader2, RefreshCw } from "lucide-react";
|
|
6
|
-
import { diagnoseFloridayConnection } from "../../lib/salesorders.functions";
|
|
6
|
+
import { diagnoseFloridayConnection } from "../../lib/salesorders.functions.js";
|
|
7
7
|
export function DiagnoseConnectionDialog({ open, onOpenChange, }) {
|
|
8
8
|
const run = useServerFn(diagnoseFloridayConnection);
|
|
9
9
|
const [loading, setLoading] = useState(false);
|
|
@@ -4,9 +4,9 @@ import { Button, Input, toast } from "@flowselections/core";
|
|
|
4
4
|
import { Trash2 } from "lucide-react";
|
|
5
5
|
import { useServerFn } from "@tanstack/react-start";
|
|
6
6
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
7
|
-
import { getLocalOrderForEdit, updateLocalOrder, listProductsForCreateOrder, } from "../../lib/create-order.functions";
|
|
8
|
-
import { checkOrderStockAllowed } from "../../lib/logistics-stock.functions";
|
|
9
|
-
import { SearchableSelect } from "./SearchableSelect";
|
|
7
|
+
import { getLocalOrderForEdit, updateLocalOrder, listProductsForCreateOrder, } from "../../lib/create-order.functions.js";
|
|
8
|
+
import { checkOrderStockAllowed } from "../../lib/logistics-stock.functions.js";
|
|
9
|
+
import { SearchableSelect } from "./SearchableSelect.js";
|
|
10
10
|
/** Positief geheel getal of null — ontbrekende belading blijft onbekend. */
|
|
11
11
|
const pos = (v) => {
|
|
12
12
|
const n = Number(v);
|
|
@@ -6,7 +6,7 @@ import { useServerFn } from "@tanstack/react-start";
|
|
|
6
6
|
import { Button } from "@flowselections/core";
|
|
7
7
|
import { toast } from "sonner";
|
|
8
8
|
import { CheckCircle2, ClipboardCheck } from "lucide-react";
|
|
9
|
-
import { setSalesOrderControlled } from "../../lib/salesorders.functions";
|
|
9
|
+
import { setSalesOrderControlled } from "../../lib/salesorders.functions.js";
|
|
10
10
|
function fmt(iso) {
|
|
11
11
|
if (!iso)
|
|
12
12
|
return "";
|
|
@@ -11,8 +11,8 @@ import { LayoutGrid, RefreshCw } from "lucide-react";
|
|
|
11
11
|
import { getOrderPlanCoverage } from "../../lib/cart-replan.functions.js";
|
|
12
12
|
import { summarize } from "../../lib/plan-coverage.js";
|
|
13
13
|
import { resolveProductName } from "../../lib/product-name.js";
|
|
14
|
-
import { CartLayersDialog } from "./CartLayersDialog";
|
|
15
|
-
import { PlanCoverageBadge } from "./PlanCoverageBadge";
|
|
14
|
+
import { CartLayersDialog } from "./CartLayersDialog.js";
|
|
15
|
+
import { PlanCoverageBadge } from "./PlanCoverageBadge.js";
|
|
16
16
|
const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
17
17
|
const PICK_LABEL = {
|
|
18
18
|
geen_pickrij: "Geen pickrij",
|
|
@@ -9,7 +9,7 @@ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
|
9
9
|
import { useServerFn } from "@tanstack/react-start";
|
|
10
10
|
import { Badge, Button, Input, toast } from "@flowselections/core";
|
|
11
11
|
import { Lock, LockOpen } from "lucide-react";
|
|
12
|
-
import { listOrderItemPacking, setOrderItemPacking, clearOrderItemPackingLock, } from "../../lib/order-item-packing.functions";
|
|
12
|
+
import { listOrderItemPacking, setOrderItemPacking, clearOrderItemPackingLock, } from "../../lib/order-item-packing.functions.js";
|
|
13
13
|
function fmtWhen(iso) {
|
|
14
14
|
if (!iso)
|
|
15
15
|
return "";
|
|
@@ -5,7 +5,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
5
5
|
import { useMemo, useState } from "react";
|
|
6
6
|
import { Badge, Button, Card, CardContent, CardHeader, CardTitle, Input, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, toast, } from "@flowselections/core";
|
|
7
7
|
import { CalendarPlus, CheckCircle2, Pencil, Trash2, Truck } from "lucide-react";
|
|
8
|
-
import { EditLocalOrderDialog } from "./EditLocalOrderDialog";
|
|
8
|
+
import { EditLocalOrderDialog } from "./EditLocalOrderDialog.js";
|
|
9
9
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
10
10
|
import { useServerFn } from "@tanstack/react-start";
|
|
11
11
|
import { formatBeladingNotation } from "../../lib/load-carrier-labels.js";
|
|
@@ -7,7 +7,7 @@ import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
|
7
7
|
import { useServerFn } from "@tanstack/react-start";
|
|
8
8
|
import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Label, Switch, toast, } from "@flowselections/core";
|
|
9
9
|
import { AlertTriangle, Ruler, Search } from "lucide-react";
|
|
10
|
-
import { SearchableSelect } from "./SearchableSelect";
|
|
10
|
+
import { SearchableSelect } from "./SearchableSelect.js";
|
|
11
11
|
import { listProductDimensions, saveProductDimensions, } from "../../lib/product-dimensions.functions.js";
|
|
12
12
|
export function ProductDimensionsSettingsCard() {
|
|
13
13
|
const [search, setSearch] = useState("");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SalesOrderDTO } from "../../lib/salesorders-mapping";
|
|
1
|
+
import type { SalesOrderDTO } from "../../lib/salesorders-mapping.js";
|
|
2
2
|
export declare function SalesOrderDetailView({ order, sellerFallback, hideKarindeling, }: {
|
|
3
3
|
order: SalesOrderDTO;
|
|
4
4
|
sellerFallback?: string | null;
|
|
@@ -2,18 +2,18 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
2
2
|
import { CheckCircle2, ImageIcon, MapPin, Truck } from "lucide-react";
|
|
3
3
|
import { useQuery } from "@tanstack/react-query";
|
|
4
4
|
import { useServerFn } from "@tanstack/react-start";
|
|
5
|
-
import { formatBeladingNotation, formatLoadUnits } from "../../lib/load-carrier-labels";
|
|
6
|
-
import { orderStageLabel, orderStageBadgeClass } from "../../lib/order-status";
|
|
7
|
-
import { getOrderAddresses } from "../../lib/order-addresses.functions";
|
|
8
|
-
import { OrderKarindelingCard } from "./OrderKarindelingCard";
|
|
9
|
-
import { OrderLinePackingCard } from "./OrderLinePackingCard";
|
|
10
|
-
import { OrderAfleverbrievenCard } from "./OrderAfleverbrievenCard";
|
|
11
|
-
import { OrderShipmentsCard } from "./OrderShipmentsCard";
|
|
12
|
-
import { OrderControlStatusCard } from "./OrderControlStatusCard";
|
|
13
|
-
import { OrderCarrierPicker } from "./OrderCarrierPicker";
|
|
14
|
-
import { OrderPickupMomentPicker } from "./OrderPickupMomentPicker";
|
|
15
|
-
import { PlanCoverageBadge } from "./PlanCoverageBadge";
|
|
16
|
-
import { FloridayStageLine } from "./FloridayStageLine";
|
|
5
|
+
import { formatBeladingNotation, formatLoadUnits } from "../../lib/load-carrier-labels.js";
|
|
6
|
+
import { orderStageLabel, orderStageBadgeClass } from "../../lib/order-status.js";
|
|
7
|
+
import { getOrderAddresses } from "../../lib/order-addresses.functions.js";
|
|
8
|
+
import { OrderKarindelingCard } from "./OrderKarindelingCard.js";
|
|
9
|
+
import { OrderLinePackingCard } from "./OrderLinePackingCard.js";
|
|
10
|
+
import { OrderAfleverbrievenCard } from "./OrderAfleverbrievenCard.js";
|
|
11
|
+
import { OrderShipmentsCard } from "./OrderShipmentsCard.js";
|
|
12
|
+
import { OrderControlStatusCard } from "./OrderControlStatusCard.js";
|
|
13
|
+
import { OrderCarrierPicker } from "./OrderCarrierPicker.js";
|
|
14
|
+
import { OrderPickupMomentPicker } from "./OrderPickupMomentPicker.js";
|
|
15
|
+
import { PlanCoverageBadge } from "./PlanCoverageBadge.js";
|
|
16
|
+
import { FloridayStageLine } from "./FloridayStageLine.js";
|
|
17
17
|
function AddressCard({ icon, lines, extra, }) {
|
|
18
18
|
return (_jsxs("div", { className: "inline-flex max-w-xs items-start gap-3 rounded-md border border-border bg-card p-3", children: [_jsx("div", { className: "flex h-9 w-9 items-center justify-center rounded-md bg-primary/10 text-primary", children: icon }), _jsxs("div", { className: "text-sm", children: [lines.length > 0 ? lines.map((l, i) => _jsx("div", { children: l }, i)) : _jsx("div", { children: "\u2014" }), extra && _jsx("div", { className: "mt-1 text-xs text-muted-foreground", children: extra })] })] }));
|
|
19
19
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Filters } from "./SalesOrdersFilters";
|
|
1
|
+
import type { Filters } from "./SalesOrdersFilters.js";
|
|
2
2
|
export declare function countActiveFilters(f: Filters): number;
|
|
3
3
|
export declare function SalesOrdersFilterPanel({ open, onOpenChange, value, onChange, }: {
|
|
4
4
|
open: boolean;
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
import { useState } from "react";
|
|
3
3
|
import { DropdownMenu, DropdownMenuContent, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger, Input, Popover, PopoverContent, PopoverTrigger, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@flowselections/core";
|
|
4
4
|
import { ChevronDown, ChevronLeft, ChevronRight, MoreVertical, Search, } from "lucide-react";
|
|
5
|
-
import { WeekCalendar } from "./WeekCalendar";
|
|
5
|
+
import { WeekCalendar } from "./WeekCalendar.js";
|
|
6
6
|
function getCurrentWeek() {
|
|
7
7
|
const now = new Date();
|
|
8
8
|
const target = new Date(Date.UTC(now.getFullYear(), now.getMonth(), now.getDate()));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type { SalesOrderDTO } from "../../lib/salesorders-mapping";
|
|
2
|
+
import type { SalesOrderDTO } from "../../lib/salesorders-mapping.js";
|
|
3
3
|
/** Stabiele rij-id: buffers zijn serverside al samengevouwen tot één rij. */
|
|
4
4
|
export declare function salesOrderRowId(row: SalesOrderDTO): string;
|
|
5
5
|
export declare function SalesOrdersTable({ orders, loading, onSelectOrder, onDeleteOrder, onEditOrder, onFulfillOrder, fulfillingId, selectedIds, onSelectionChange, }: {
|
|
@@ -5,8 +5,8 @@ import { formatLoadUnits } from "../../lib/load-carrier-labels.js";
|
|
|
5
5
|
import { orderStageBadgeClass, orderStageLabel } from "../../lib/order-status.js";
|
|
6
6
|
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@flowselections/core";
|
|
7
7
|
import { MoreVertical, AlertTriangle, ArrowDown } from "lucide-react";
|
|
8
|
-
import { PlanCoverageBadge } from "./PlanCoverageBadge";
|
|
9
|
-
import { FloridayStageLine, MissingPriceBadge } from "./FloridayStageLine";
|
|
8
|
+
import { PlanCoverageBadge } from "./PlanCoverageBadge.js";
|
|
9
|
+
import { FloridayStageLine, MissingPriceBadge } from "./FloridayStageLine.js";
|
|
10
10
|
function formatDateShort(iso) {
|
|
11
11
|
if (!iso)
|
|
12
12
|
return { date: "—", time: "" };
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
3
3
|
import { useServerFn } from "@tanstack/react-start";
|
|
4
4
|
import { AlertTriangle, X } from "lucide-react";
|
|
5
|
-
import { listOpenStockConsumptionAlerts, resolveStockConsumptionAlert, } from "../../lib/stock-consumption-alerts.functions";
|
|
5
|
+
import { listOpenStockConsumptionAlerts, resolveStockConsumptionAlert, } from "../../lib/stock-consumption-alerts.functions.js";
|
|
6
6
|
/**
|
|
7
7
|
* Toont voorraadafboekingen die zijn overgeslagen (product niet gekoppeld) of
|
|
8
8
|
* geblokkeerd (statusovergang zonder bewijs van vertrek).
|
|
@@ -5,21 +5,21 @@ import { Download, Plus, AlertTriangle, RefreshCw, ChevronLeft, ChevronRight, Fi
|
|
|
5
5
|
import { useServerFn } from "@tanstack/react-start";
|
|
6
6
|
import { useNavigate } from "@tanstack/react-router";
|
|
7
7
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
8
|
-
import { supabase } from "../../integrations/supabase/client";
|
|
9
|
-
import { getFloridaySyncHealth, runSalesOrdersSync } from "../../lib/salesorders.functions";
|
|
10
|
-
import { cancelLocalOrder, deleteLocalOrder } from "../../lib/create-order.functions";
|
|
11
|
-
import { markOrdersShipped } from "../../lib/order-fulfill.functions";
|
|
12
|
-
import { ordersToCsv, parseOrderRowId, } from "../../lib/salesorders-mapping";
|
|
13
|
-
import { listSalesOrders } from "../../lib/salesorders-list.functions";
|
|
14
|
-
import { derivePeriodWindow, useSalesOrdersQuery } from "../../lib/useSalesOrdersQuery";
|
|
15
|
-
import { useBufferEvents } from "../../lib/useBufferEvents";
|
|
16
|
-
import { AnalyticsCards } from "./AnalyticsCards";
|
|
17
|
-
import { SalesOrdersFilters } from "./SalesOrdersFilters";
|
|
18
|
-
import { SalesOrdersFilterPanel, countActiveFilters, } from "./SalesOrdersFilterPanel";
|
|
19
|
-
import { SalesOrdersTable, salesOrderRowId } from "./SalesOrdersTable";
|
|
20
|
-
import { EditLocalOrderDialog } from "./EditLocalOrderDialog";
|
|
21
|
-
import { StockConsumptionAlertsBanner } from "./StockConsumptionAlertsBanner";
|
|
22
|
-
import { ORDER_STAGES } from "../../lib/order-status";
|
|
8
|
+
import { supabase } from "../../integrations/supabase/client.js";
|
|
9
|
+
import { getFloridaySyncHealth, runSalesOrdersSync } from "../../lib/salesorders.functions.js";
|
|
10
|
+
import { cancelLocalOrder, deleteLocalOrder } from "../../lib/create-order.functions.js";
|
|
11
|
+
import { markOrdersShipped } from "../../lib/order-fulfill.functions.js";
|
|
12
|
+
import { ordersToCsv, parseOrderRowId, } from "../../lib/salesorders-mapping.js";
|
|
13
|
+
import { listSalesOrders } from "../../lib/salesorders-list.functions.js";
|
|
14
|
+
import { derivePeriodWindow, useSalesOrdersQuery } from "../../lib/useSalesOrdersQuery.js";
|
|
15
|
+
import { useBufferEvents } from "../../lib/useBufferEvents.js";
|
|
16
|
+
import { AnalyticsCards } from "./AnalyticsCards.js";
|
|
17
|
+
import { SalesOrdersFilters } from "./SalesOrdersFilters.js";
|
|
18
|
+
import { SalesOrdersFilterPanel, countActiveFilters, } from "./SalesOrdersFilterPanel.js";
|
|
19
|
+
import { SalesOrdersTable, salesOrderRowId } from "./SalesOrdersTable.js";
|
|
20
|
+
import { EditLocalOrderDialog } from "./EditLocalOrderDialog.js";
|
|
21
|
+
import { StockConsumptionAlertsBanner } from "./StockConsumptionAlertsBanner.js";
|
|
22
|
+
import { ORDER_STAGES } from "../../lib/order-status.js";
|
|
23
23
|
const BACKLOG_TAB = {
|
|
24
24
|
id: "backlog",
|
|
25
25
|
label: "Te picken (achterstand)",
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { FlowModule } from "@flowselections/core";
|
|
2
|
-
export * from "./_core-safelist";
|
|
3
|
-
export { VerkoopOrdersPage } from "./components/verkoop/VerkoopOrdersPage";
|
|
4
|
-
export { SalesOrderDetailPage } from "./components/verkoop/SalesOrderDetailPage";
|
|
5
|
-
export { CreateOrderPage } from "./components/verkoop/CreateOrderPage";
|
|
6
|
-
export { ProductDimensionsSettingsCard } from "./components/verkoop/ProductDimensionsSettings";
|
|
2
|
+
export * from "./_core-safelist.js";
|
|
3
|
+
export { VerkoopOrdersPage } from "./components/verkoop/VerkoopOrdersPage.js";
|
|
4
|
+
export { SalesOrderDetailPage } from "./components/verkoop/SalesOrderDetailPage.js";
|
|
5
|
+
export { CreateOrderPage } from "./components/verkoop/CreateOrderPage.js";
|
|
7
6
|
export declare const floridayVerkoopModule: FlowModule;
|
|
8
7
|
//# 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;AAGvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAIvE,eAAO,MAAM,qBAAqB,EAAE,UAoBnC,CAAC"}
|
package/dist-lib/index.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { ShoppingCart, ListOrdered } from "lucide-react";
|
|
2
|
-
import { ProductDimensionsSettingsCard } from "./components/verkoop/ProductDimensionsSettings";
|
|
3
|
-
export * from "./_core-safelist";
|
|
4
|
-
export { VerkoopOrdersPage } from "./components/verkoop/VerkoopOrdersPage";
|
|
5
|
-
export { SalesOrderDetailPage } from "./components/verkoop/SalesOrderDetailPage";
|
|
6
|
-
export { CreateOrderPage } from "./components/verkoop/CreateOrderPage";
|
|
7
|
-
export { ProductDimensionsSettingsCard } from "./components/verkoop/ProductDimensionsSettings";
|
|
2
|
+
import { ProductDimensionsSettingsCard } from "./components/verkoop/ProductDimensionsSettings.js";
|
|
3
|
+
export * from "./_core-safelist.js";
|
|
4
|
+
export { VerkoopOrdersPage } from "./components/verkoop/VerkoopOrdersPage.js";
|
|
5
|
+
export { SalesOrderDetailPage } from "./components/verkoop/SalesOrderDetailPage.js";
|
|
6
|
+
export { CreateOrderPage } from "./components/verkoop/CreateOrderPage.js";
|
|
8
7
|
export const floridayVerkoopModule = {
|
|
9
8
|
id: "verkoop",
|
|
10
9
|
name: "Orders",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SupabaseClient } from '@supabase/supabase-js';
|
|
2
|
-
import type { Database } from './types';
|
|
2
|
+
import type { Database } from './types.js';
|
|
3
3
|
export interface AuthedSupabaseClient extends SupabaseClient<Database> {
|
|
4
4
|
}
|
|
5
5
|
export declare const requireSupabaseAuth: import("@tanstack/start-client-core").FunctionMiddlewareAfterServer<{}, unknown, undefined, {
|
|
@@ -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 };
|