@flowselections/logistiek-engine 1.0.157 → 1.0.159

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist-lib/components/AfrondWachtrijCard.js +1 -1
  2. package/dist-lib/components/BeheerPage.js +5 -5
  3. package/dist-lib/components/BeladingIndelingCard.js +3 -3
  4. package/dist-lib/components/BeladingsafwijkingenCard.js +1 -1
  5. package/dist-lib/components/BufferDebugCard.d.ts +1 -1
  6. package/dist-lib/components/BufferDebugCard.js +1 -1
  7. package/dist-lib/components/CapaciteitMeldingenCard.js +1 -1
  8. package/dist-lib/components/FloridayPoortCard.js +1 -1
  9. package/dist-lib/components/FloridayPushCard.js +1 -1
  10. package/dist-lib/components/FlowCanvas.d.ts +5 -5
  11. package/dist-lib/components/FlowCanvas.js +4 -4
  12. package/dist-lib/components/FlowOrders.d.ts +1 -1
  13. package/dist-lib/components/FlowOrders.js +3 -3
  14. package/dist-lib/components/FlowPage.js +21 -21
  15. package/dist-lib/components/GearchiveerdeOrdersCard.js +1 -1
  16. package/dist-lib/components/GeblokkeerdeOrdersCard.js +1 -1
  17. package/dist-lib/components/KardekkingCard.js +1 -1
  18. package/dist-lib/components/LadingdragersPage.js +2 -2
  19. package/dist-lib/components/LogistiekEnginePage.js +5 -5
  20. package/dist-lib/components/LogistiekEngineQueuePage.js +3 -3
  21. package/dist-lib/components/MinuutrondeCard.js +3 -3
  22. package/dist-lib/components/ModulePromptsPage.js +3 -3
  23. package/dist-lib/components/NodeTracePanel.d.ts +2 -2
  24. package/dist-lib/components/NodeTracePanel.js +4 -4
  25. package/dist-lib/components/OrderJourneyBar.d.ts +1 -1
  26. package/dist-lib/components/OrderJourneyBar.js +2 -2
  27. package/dist-lib/components/OrderLogboek.d.ts +1 -1
  28. package/dist-lib/components/OrderLogboek.js +1 -1
  29. package/dist-lib/components/OrderStopBanner.d.ts +1 -1
  30. package/dist-lib/components/OrderStopBanner.js +4 -4
  31. package/dist-lib/components/OrderTraceDetails.d.ts +1 -1
  32. package/dist-lib/components/OrderTraceDetails.js +2 -2
  33. package/dist-lib/components/PlanWachtrijPage.js +3 -3
  34. package/dist-lib/components/PlannerDiffCard.js +1 -1
  35. package/dist-lib/components/PrintjobsCard.js +1 -1
  36. package/dist-lib/components/RegiePage.js +11 -11
  37. package/dist-lib/components/RolPoort.d.ts +1 -1
  38. package/dist-lib/components/RolPoort.js +1 -1
  39. package/dist-lib/components/RuleEnginePage.js +11 -11
  40. package/dist-lib/components/StrategieDialog.d.ts +1 -1
  41. package/dist-lib/components/TaakGezondheidCard.js +1 -1
  42. package/dist-lib/components/VertragingMeldingenCard.js +1 -1
  43. package/dist-lib/components/VoorraadMeldingenCard.js +1 -1
  44. package/dist-lib/components/WerktijdenCard.js +1 -1
  45. package/dist-lib/components/WerkwijzeHerindelingCard.js +1 -1
  46. package/dist-lib/components/rule-engine/CollapsibleGroup.js +1 -1
  47. package/dist-lib/components/rule-engine/ConditionsEditor.d.ts +1 -1
  48. package/dist-lib/components/rule-engine/ConditionsEditor.js +1 -1
  49. package/dist-lib/components/rule-engine/ImpactPanel.d.ts +1 -1
  50. package/dist-lib/components/rule-engine/ImpactPanel.js +1 -1
  51. package/dist-lib/components/rule-engine/RuleFieldInput.d.ts +1 -1
  52. package/dist-lib/components/rule-engine/RuleFieldInput.js +5 -5
  53. package/dist-lib/components/rule-engine/VersionsPanel.d.ts +2 -2
  54. package/dist-lib/components/rule-engine/VersionsPanel.js +1 -1
  55. package/dist-lib/hooks/useFloridayPushes.js +1 -1
  56. package/dist-lib/hooks/useLadingdragers.d.ts +1 -1
  57. package/dist-lib/hooks/useLogistiekTaken.d.ts +1 -1
  58. package/dist-lib/hooks/useLogistiekTaken.js +1 -1
  59. package/dist-lib/hooks/useOrderNodeTrace.d.ts +3 -3
  60. package/dist-lib/hooks/useOrderNodeTrace.js +3 -3
  61. package/dist-lib/hooks/useOrderVersies.d.ts +2 -2
  62. package/dist-lib/hooks/useOrderVersies.js +1 -1
  63. package/dist-lib/hooks/useRecalcJob.js +1 -1
  64. package/dist-lib/hooks/useRuleEngine.d.ts +1 -1
  65. package/dist-lib/hooks/useRuleEngine.js +1 -1
  66. package/dist-lib/hooks/useShellAdres.d.ts +1 -1
  67. package/dist-lib/hooks/useShellAdres.js +2 -2
  68. package/dist-lib/hooks/useWerkwijzeStatus.js +1 -1
  69. package/dist-lib/index.d.ts +74 -74
  70. package/dist-lib/index.js +75 -75
  71. package/dist-lib/integrations/supabase/auth-attacher.js +1 -1
  72. package/dist-lib/integrations/supabase/auth-middleware.d.ts +1 -1
  73. package/dist-lib/integrations/supabase/client.server.d.ts +1 -1
  74. package/dist-lib/integrations/supabase/moduleClient.d.ts +1 -1
  75. package/dist-lib/lib/dimensionData.server.d.ts +3 -3
  76. package/dist-lib/lib/floridayDocuments.functions.d.ts +1 -1
  77. package/dist-lib/lib/floridayDocuments.functions.js +3 -3
  78. package/dist-lib/lib/floridayPush.functions.js +1 -1
  79. package/dist-lib/lib/flowGraph.d.ts +2 -2
  80. package/dist-lib/lib/flowGraph.js +2 -2
  81. package/dist-lib/lib/flowJourney.d.ts +2 -2
  82. package/dist-lib/lib/flowJourney.js +1 -1
  83. package/dist-lib/lib/flowRoute.d.ts +4 -4
  84. package/dist-lib/lib/flowRoute.js +4 -4
  85. package/dist-lib/lib/flowTree.d.ts +1 -1
  86. package/dist-lib/lib/flowTree.js +2 -2
  87. package/dist-lib/lib/loadCarrierPlanning.functions.d.ts +4 -4
  88. package/dist-lib/lib/loadCarrierPlanning.functions.js +7 -7
  89. package/dist-lib/lib/loadCarrierPlanning.server.d.ts +3 -3
  90. package/dist-lib/lib/loadCarrierPlanning.server.js +6 -6
  91. package/dist-lib/lib/loadCarrierTaskSync.server.d.ts +1 -1
  92. package/dist-lib/lib/loadCarrierTypes.d.ts +1 -1
  93. package/dist-lib/lib/logisticsPlanner.d.ts +2 -2
  94. package/dist-lib/lib/logisticsPlanner.js +2 -2
  95. package/dist-lib/lib/logisticsRecalcJob.functions.js +2 -2
  96. package/dist-lib/lib/modulePrompts.js +1 -1
  97. package/dist-lib/lib/moduleVersion.d.ts +1 -1
  98. package/dist-lib/lib/moduleVersion.js +1 -1
  99. package/dist-lib/lib/nodeTrace.d.ts +1 -1
  100. package/dist-lib/lib/nodeTrace.js +1 -1
  101. package/dist-lib/lib/plannerDiff.functions.js +1 -1
  102. package/dist-lib/lib/ruleEngineImpact.d.ts +1 -1
  103. package/dist-lib/lib/ruleEngineImpact.js +1 -1
  104. package/dist-lib/lib/ruleEngineWizard.d.ts +1 -1
  105. package/dist-lib/lib/ruleEngineWizard.js +1 -1
  106. package/dist-lib/lib/stopReden.d.ts +3 -3
  107. package/dist-lib/lib/stopReden.js +3 -3
  108. package/dist-lib/lib/vakUitleg.d.ts +1 -1
  109. package/dist-lib/lib/vakUitleg.js +3 -3
  110. package/package.json +2 -2
@@ -6,7 +6,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  // wanneer iets te lang wacht. Alleen lezen, behalve de knoppen.
7
7
  // ============================================================================
8
8
  import { AlertTriangle, CheckCircle2, RefreshCw } from "lucide-react";
9
- import { useAfrondWachtrij } from "../hooks/useAfrondWachtrij";
9
+ import { useAfrondWachtrij } from "../hooks/useAfrondWachtrij.js";
10
10
  function duur(seconden) {
11
11
  if (seconden < 60)
12
12
  return `${seconden} sec`;
@@ -10,11 +10,11 @@ import { useState } from "react";
10
10
  import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Label, } from "@flowselections/core";
11
11
  import { RotateCcw } from "lucide-react";
12
12
  import { supabase } from "../integrations/supabase/moduleClient.js";
13
- import { RolPoort } from "./RolPoort";
14
- import { OudeOrderregelsCard } from "./OudeOrderregelsCard";
15
- import { AutomatischVersturenCard } from "./AutomatischVersturenCard";
16
- import { OpruimlijstKarrenCard } from "./OpruimlijstKarrenCard";
17
- import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
13
+ import { RolPoort } from "./RolPoort.js";
14
+ import { OudeOrderregelsCard } from "./OudeOrderregelsCard.js";
15
+ import { AutomatischVersturenCard } from "./AutomatischVersturenCard.js";
16
+ import { OpruimlijstKarrenCard } from "./OpruimlijstKarrenCard.js";
17
+ import { ENGINE_TOEGANG } from "../hooks/useEngineRollen.js";
18
18
  function HerindelenBeheer() {
19
19
  const [datum, setDatum] = useState("");
20
20
  const [ookBevroren, setOokBevroren] = useState(false);
@@ -9,9 +9,9 @@ import { useState } from "react";
9
9
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Label, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, supabase, toast, } from "@flowselections/core";
10
10
  import { useServerFn } from "@tanstack/react-start";
11
11
  import { Boxes, Search } from "lucide-react";
12
- import { previewLoadCarrierPlan, replanOrderLoadCarriers } from "../lib/loadCarrierPlanning.functions";
13
- import { carrierLabel } from "../lib/loadCarrierTypes";
14
- import { layerUtilizationPct } from "../lib/layerUtilization";
12
+ import { previewLoadCarrierPlan, replanOrderLoadCarriers } from "../lib/loadCarrierPlanning.functions.js";
13
+ import { carrierLabel } from "../lib/loadCarrierTypes.js";
14
+ import { layerUtilizationPct } from "../lib/layerUtilization.js";
15
15
  const db = () => supabase;
16
16
  export function BeladingIndelingCard() {
17
17
  const preview = useServerFn(previewLoadCarrierPlan);
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
10
10
  // ============================================================================
11
11
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
12
12
  import { Boxes, Check, RefreshCw } from "lucide-react";
13
- import { useBeladingsafwijkingen, } from "../hooks/useBeladingsafwijkingen";
13
+ import { useBeladingsafwijkingen, } from "../hooks/useBeladingsafwijkingen.js";
14
14
  function beladingTekst(b) {
15
15
  const deel = [
16
16
  b.piecesPerPackage == null ? "?" : String(b.piecesPerPackage),
@@ -1,4 +1,4 @@
1
- import type { BulkIndelingTotaal, LogistiekTaak } from "../hooks/useLogistiekTaken";
1
+ import type { BulkIndelingTotaal, LogistiekTaak } from "../hooks/useLogistiekTaken.js";
2
2
  interface Props {
3
3
  taken: LogistiekTaak[];
4
4
  strategyId?: string | null;
@@ -8,7 +8,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  import { useMemo, useState } from "react";
9
9
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@flowselections/core";
10
10
  import { Boxes, Layers, RefreshCw, Wand2, Zap } from "lucide-react";
11
- import { bufferCriterionLabel, bufferReasonLabel } from "../lib/bufferMatching";
11
+ import { bufferCriterionLabel, bufferReasonLabel } from "../lib/bufferMatching.js";
12
12
  export function BufferDebugCard({ taken, strategyId, simuleerBuffers, herindelenBuffers, herindelenOrders, deelAllesIn, }) {
13
13
  const [voortgang, setVoortgang] = useState(null);
14
14
  const [indelingTotaal, setIndelingTotaal] = useState(null);
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  // ============================================================================
5
5
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
6
6
  import { AlertTriangle, CheckCircle2, RefreshCw } from "lucide-react";
7
- import { useCapaciteitMeldingen } from "../hooks/useCapaciteitMeldingen";
7
+ import { useCapaciteitMeldingen } from "../hooks/useCapaciteitMeldingen.js";
8
8
  function datum(value) {
9
9
  if (!value)
10
10
  return "onbekend";
@@ -7,7 +7,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
7
7
  // ============================================================================
8
8
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
9
9
  import { RefreshCw, ShieldCheck, ShieldOff } from "lucide-react";
10
- import { useFloridayGate } from "../hooks/useFloridayGate";
10
+ import { useFloridayGate } from "../hooks/useFloridayGate.js";
11
11
  function tijd(value) {
12
12
  if (!value)
13
13
  return "-";
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  // ============================================================================
5
5
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
6
6
  import { CheckCircle2, RefreshCw, Send } from "lucide-react";
7
- import { PUSH_STATUS_LABELS, isEindstatus, useFloridayPushes } from "../hooks/useFloridayPushes";
7
+ import { PUSH_STATUS_LABELS, isEindstatus, useFloridayPushes } from "../hooks/useFloridayPushes.js";
8
8
  function tijd(value) {
9
9
  if (!value)
10
10
  return "-";
@@ -1,9 +1,9 @@
1
1
  import "@xyflow/react/dist/style.css";
2
- import { type FlowTree } from "../lib/flowTree";
3
- import type { RouteMarker } from "../lib/flowRoute";
4
- import type { StopReden } from "../lib/stopReden";
5
- import type { NodeTraceGroep } from "../lib/nodeTrace";
6
- import type { RuleEngineSettings } from "../lib/ruleEngineSchema";
2
+ import { type FlowTree } from "../lib/flowTree.js";
3
+ import type { RouteMarker } from "../lib/flowRoute.js";
4
+ import type { StopReden } from "../lib/stopReden.js";
5
+ import type { NodeTraceGroep } from "../lib/nodeTrace.js";
6
+ import type { RuleEngineSettings } from "../lib/ruleEngineSchema.js";
7
7
  export type { RouteMarker };
8
8
  interface Props {
9
9
  tree: FlowTree;
@@ -13,10 +13,10 @@ import dagre from "@dagrejs/dagre";
13
13
  import { Button } from "@flowselections/core";
14
14
  import { AlertTriangle, ArrowDownUp, ArrowLeftRight, CheckCircle2, ChevronDown, ChevronRight, ChevronUp, Clock, Maximize2, Minimize2, Expand, ListChecks, Pencil, Settings2, Minus, Plus, X, } from "lucide-react";
15
15
  import "@xyflow/react/dist/style.css";
16
- import { fieldsFor } from "../lib/flowTree";
17
- import { RuleFieldInput } from "./rule-engine/RuleFieldInput";
18
- import { NodeTracePanel } from "./NodeTracePanel";
19
- import { duur as duurTekst, klok } from "./OrderTraceDetails";
16
+ import { fieldsFor } from "../lib/flowTree.js";
17
+ import { RuleFieldInput } from "./rule-engine/RuleFieldInput.js";
18
+ import { NodeTracePanel } from "./NodeTracePanel.js";
19
+ import { duur as duurTekst, klok } from "./OrderTraceDetails.js";
20
20
  // ── Toestand → uiterlijk ────────────────────────────────────────────────────
21
21
  /** Extra opmaak voor vakjes op (of juist buiten) de gelopen orderroute. */
22
22
  function routeClass(node) {
@@ -1,4 +1,4 @@
1
- import { type OrderRoute, type OrderVersie } from "../lib/flowRoute";
1
+ import { type OrderRoute, type OrderVersie } from "../lib/flowRoute.js";
2
2
  interface Props {
3
3
  /** Wordt aangeroepen zodra een versie gekozen/losgelaten wordt. */
4
4
  onRoute: (route: OrderRoute | null, label: string | null, orderRef: string | null, versie: OrderVersie | null) => void;
@@ -12,9 +12,9 @@ import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitl
12
12
  import { AlertTriangle, CheckCircle2, ChevronDown, ChevronRight, Clock, RefreshCw, RotateCcw, Search, X } from "lucide-react";
13
13
  import { toast } from "sonner";
14
14
  import { supabase } from "../integrations/supabase/moduleClient.js";
15
- import { useAlleOrders, useOrderVersies, useVersieEvents } from "../hooks/useOrderVersies";
16
- import { bepaalRoute, redenTekst } from "../lib/flowRoute";
17
- import { Gebeurtenis } from "./OrderLogboek";
15
+ import { useAlleOrders, useOrderVersies, useVersieEvents } from "../hooks/useOrderVersies.js";
16
+ import { bepaalRoute, redenTekst } from "../lib/flowRoute.js";
17
+ import { Gebeurtenis } from "./OrderLogboek.js";
18
18
  function tijd(v) {
19
19
  if (!v)
20
20
  return "—";
@@ -10,27 +10,27 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
11
11
  import { Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Skeleton, toast, } from "@flowselections/core";
12
12
  import { CheckCircle2, RefreshCw, Save, X } from "lucide-react";
13
- import { fieldVisible, } from "../lib/ruleEngineSchema";
14
- import { WIZARD_STEPS, groupSummary, isAdvancedField } from "../lib/ruleEngineWizard";
15
- import { buildFlowTree, pasMergeOverridesToe, verbergEindnodeLijnen, verduidelijkVerzendbrief, mergeVoorwaarde, MERGE_MAX_WACHT_MINUTEN, } from "../lib/flowTree";
16
- import { applyRoute } from "../lib/flowRoute";
17
- import { ontbrekendeJourneyEvents } from "../lib/flowJourney";
18
- import { FlowCanvas } from "./FlowCanvas";
19
- import { FlowOrders } from "./FlowOrders";
20
- import { OrderJourneyBar } from "./OrderJourneyBar";
21
- import { OrderStopBanner } from "./OrderStopBanner";
22
- import { useOrderNodeTrace } from "../hooks/useOrderNodeTrace";
23
- import { useShippingNoteDiagnose } from "../hooks/useShippingNoteDiagnose";
24
- import { stopReden, verzendbriefStop } from "../lib/stopReden";
25
- import { useOrderTraceStand } from "../hooks/useOrderTrace";
26
- import { useRuleEngine } from "../hooks/useRuleEngine";
27
- import { useLogistiekStrategieen } from "../hooks/useLogistiekStrategieen";
28
- import { useRecalcJob, phaseLabel } from "../hooks/useRecalcJob";
29
- import { RuleFieldInput } from "./rule-engine/RuleFieldInput";
30
- import { CollapsibleGroup } from "./rule-engine/CollapsibleGroup";
31
- import { ConditionsEditor } from "./rule-engine/ConditionsEditor";
32
- import { RolPoort } from "./RolPoort";
33
- import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
13
+ import { fieldVisible, } from "../lib/ruleEngineSchema.js";
14
+ import { WIZARD_STEPS, groupSummary, isAdvancedField } from "../lib/ruleEngineWizard.js";
15
+ import { buildFlowTree, pasMergeOverridesToe, verbergEindnodeLijnen, verduidelijkVerzendbrief, mergeVoorwaarde, MERGE_MAX_WACHT_MINUTEN, } from "../lib/flowTree.js";
16
+ import { applyRoute } from "../lib/flowRoute.js";
17
+ import { ontbrekendeJourneyEvents } from "../lib/flowJourney.js";
18
+ import { FlowCanvas } from "./FlowCanvas.js";
19
+ import { FlowOrders } from "./FlowOrders.js";
20
+ import { OrderJourneyBar } from "./OrderJourneyBar.js";
21
+ import { OrderStopBanner } from "./OrderStopBanner.js";
22
+ import { useOrderNodeTrace } from "../hooks/useOrderNodeTrace.js";
23
+ import { useShippingNoteDiagnose } from "../hooks/useShippingNoteDiagnose.js";
24
+ import { stopReden, verzendbriefStop } from "../lib/stopReden.js";
25
+ import { useOrderTraceStand } from "../hooks/useOrderTrace.js";
26
+ import { useRuleEngine } from "../hooks/useRuleEngine.js";
27
+ import { useLogistiekStrategieen } from "../hooks/useLogistiekStrategieen.js";
28
+ import { useRecalcJob, phaseLabel } from "../hooks/useRecalcJob.js";
29
+ import { RuleFieldInput } from "./rule-engine/RuleFieldInput.js";
30
+ import { CollapsibleGroup } from "./rule-engine/CollapsibleGroup.js";
31
+ import { ConditionsEditor } from "./rule-engine/ConditionsEditor.js";
32
+ import { RolPoort } from "./RolPoort.js";
33
+ import { ENGINE_TOEGANG } from "../hooks/useEngineRollen.js";
34
34
  const WIDE_TYPES = ["priority", "toggle", "days", "radio", "textarea", "guidance"];
35
35
  function fieldClass(field) {
36
36
  return WIDE_TYPES.includes(field.type) ? "md:col-span-2" : "";
@@ -8,7 +8,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  import { useState } from "react";
9
9
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
10
10
  import { Archive, RefreshCw, RotateCcw } from "lucide-react";
11
- import { redenLabel, useGearchiveerdeOrders } from "../hooks/useGeblokkeerdeOrders";
11
+ import { redenLabel, useGearchiveerdeOrders } from "../hooks/useGeblokkeerdeOrders.js";
12
12
  function datum(waarde) {
13
13
  if (!waarde)
14
14
  return "—";
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
10
10
  import { useMemo, useState } from "react";
11
11
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
12
12
  import { AlertTriangle, RefreshCw, RotateCcw } from "lucide-react";
13
- import { useGeblokkeerdeOrders, redenLabel } from "../hooks/useGeblokkeerdeOrders";
13
+ import { useGeblokkeerdeOrders, redenLabel } from "../hooks/useGeblokkeerdeOrders.js";
14
14
  function datum(waarde) {
15
15
  if (!waarde)
16
16
  return "—";
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useQuery } from "@tanstack/react-query";
3
3
  import { useServerFn } from "@tanstack/react-start";
4
4
  import { Badge, Skeleton, Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@flowselections/core";
5
- import { getCartCoverage } from "../lib/cartCoverage.functions";
5
+ import { getCartCoverage } from "../lib/cartCoverage.functions.js";
6
6
  const LABEL = {
7
7
  gelijk: "Gelijk",
8
8
  gelijk_afgerond: "Gelijk (afgerond op fust)",
@@ -10,8 +10,8 @@ import { useState } from "react";
10
10
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, Input, Label, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Skeleton, Switch, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@flowselections/core";
11
11
  import { Container, Pencil, Plus, RefreshCw, Trash2 } from "lucide-react";
12
12
  import { Link } from "@tanstack/react-router";
13
- import { useLadingdragers } from "../hooks/useLadingdragers";
14
- import { CAPACITY_MODEL_LABELS } from "../lib/loadCarrierTypes";
13
+ import { useLadingdragers } from "../hooks/useLadingdragers.js";
14
+ import { CAPACITY_MODEL_LABELS } from "../lib/loadCarrierTypes.js";
15
15
  const LEEG = {
16
16
  code: "",
17
17
  name: "",
@@ -9,11 +9,11 @@ import { useState } from "react";
9
9
  import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Badge, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Skeleton, } from "@flowselections/core";
10
10
  import { Container, GitBranch, ListChecks, Pencil, Plus, Puzzle, ShieldCheck, SlidersHorizontal, Trash2, Workflow } from "lucide-react";
11
11
  import { Link } from "@tanstack/react-router";
12
- import { StrategieDialog } from "./StrategieDialog";
13
- import { WerkwijzeHerindelingCard } from "./WerkwijzeHerindelingCard";
14
- import { WerktijdenCard } from "./WerktijdenCard";
15
- import { ENGINE_TOEGANG, heeftToegang, useEngineRollen } from "../hooks/useEngineRollen";
16
- import { useLogistiekStrategieen, } from "../hooks/useLogistiekStrategieen";
12
+ import { StrategieDialog } from "./StrategieDialog.js";
13
+ import { WerkwijzeHerindelingCard } from "./WerkwijzeHerindelingCard.js";
14
+ import { WerktijdenCard } from "./WerktijdenCard.js";
15
+ import { ENGINE_TOEGANG, heeftToegang, useEngineRollen } from "../hooks/useEngineRollen.js";
16
+ import { useLogistiekStrategieen, } from "../hooks/useLogistiekStrategieen.js";
17
17
  const SNELKOPPELINGEN = [
18
18
  {
19
19
  to: "/logistiek-engine/rule-engine",
@@ -5,9 +5,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  // Gebruikt hetzelfde orderlogboek als het overzicht, zodat er één weergave is.
6
6
  // GEEN <Header /> hier — die levert de shell.
7
7
  // ============================================================================
8
- import { OrderLogboek } from "./OrderLogboek";
9
- import { AfrondWachtrijCard } from "./AfrondWachtrijCard";
10
- import { TaakGezondheidCard } from "./TaakGezondheidCard";
8
+ import { OrderLogboek } from "./OrderLogboek.js";
9
+ import { AfrondWachtrijCard } from "./AfrondWachtrijCard.js";
10
+ import { TaakGezondheidCard } from "./TaakGezondheidCard.js";
11
11
  export function LogistiekEngineQueuePage() {
12
12
  return (_jsxs("div", { className: "space-y-4 p-4", children: [_jsx(AfrondWachtrijCard, {}), _jsx(TaakGezondheidCard, {}), _jsx(OrderLogboek, { titel: "Queue \u2014 volledige orderflow", omschrijving: "Per order precies wat de Logistiek Engine heeft gedaan, waarom, en wat er is gewijzigd. Alleen echt vastgelegde stappen; er wordt niets aangevuld." })] }));
13
13
  }
@@ -6,9 +6,9 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
6
6
  // laatste rondes echt door de Engine zijn ontvangen. Alleen lezen.
7
7
  // ============================================================================
8
8
  import { AlertTriangle, CheckCircle2, Info, RefreshCw } from "lucide-react";
9
- import { useMinuutronde } from "../hooks/useMinuutronde";
10
- import { useShellAdres } from "../hooks/useShellAdres";
11
- import { SHELL_ADRES_TEKST } from "../lib/shellAdres";
9
+ import { useMinuutronde } from "../hooks/useMinuutronde.js";
10
+ import { useShellAdres } from "../hooks/useShellAdres.js";
11
+ import { SHELL_ADRES_TEKST } from "../lib/shellAdres.js";
12
12
  function tijd(t) {
13
13
  if (!t)
14
14
  return "nooit";
@@ -9,9 +9,9 @@ import { useState } from "react";
9
9
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, toast, } from "@flowselections/core";
10
10
  import { Check, ChevronDown, ChevronUp, Copy, Download, Puzzle } from "lucide-react";
11
11
  import { Link } from "@tanstack/react-router";
12
- import { MODULE_PROMPTS, buildAllModulePrompts, buildRevisionPrompt, modulePromptFilename, } from "../lib/modulePrompts";
13
- import { RolPoort } from "./RolPoort";
14
- import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
12
+ import { MODULE_PROMPTS, buildAllModulePrompts, buildRevisionPrompt, modulePromptFilename, } from "../lib/modulePrompts.js";
13
+ import { RolPoort } from "./RolPoort.js";
14
+ import { ENGINE_TOEGANG } from "../hooks/useEngineRollen.js";
15
15
  function downloadMarkdown(filename, content) {
16
16
  const blob = new Blob([content], { type: "text/markdown;charset=utf-8" });
17
17
  const url = URL.createObjectURL(blob);
@@ -1,5 +1,5 @@
1
- import { type NodeTraceGroep } from "../lib/nodeTrace";
2
- import type { StopReden } from "../lib/stopReden";
1
+ import { type NodeTraceGroep } from "../lib/nodeTrace.js";
2
+ import type { StopReden } from "../lib/stopReden.js";
3
3
  interface Props {
4
4
  groep: NodeTraceGroep;
5
5
  /** Gevuld als de reis van de order bij dit vakje ophoudt. */
@@ -10,10 +10,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  import { useMemo, useState } from "react";
11
11
  import { Badge, Button } from "@flowselections/core";
12
12
  import { ChevronDown, ChevronRight, X } from "lucide-react";
13
- import { flowNodeLabel } from "../lib/flowNodes";
14
- import { bundelGebeurtenissen, samenvatVak, } from "../lib/nodeTrace";
15
- import { vakUitleg } from "../lib/vakUitleg";
16
- import { FOUTSOORT_LABEL, FOUTSOORT_UITLEG, STATUS_KLEUR, Stap, Veld, duur, tijd, } from "./OrderTraceDetails";
13
+ import { flowNodeLabel } from "../lib/flowNodes.js";
14
+ import { bundelGebeurtenissen, samenvatVak, } from "../lib/nodeTrace.js";
15
+ import { vakUitleg } from "../lib/vakUitleg.js";
16
+ import { FOUTSOORT_LABEL, FOUTSOORT_UITLEG, STATUS_KLEUR, Stap, Veld, duur, tijd, } from "./OrderTraceDetails.js";
17
17
  const EERSTE_AANTAL = 20;
18
18
  function Bundel({ item, debug }) {
19
19
  const [open, setOpen] = useState(false);
@@ -1,4 +1,4 @@
1
- import type { NodeTraceGroep } from "../lib/nodeTrace";
1
+ import type { NodeTraceGroep } from "../lib/nodeTrace.js";
2
2
  interface Props {
3
3
  reis: NodeTraceGroep[];
4
4
  actiefNodeId: string | null;
@@ -6,8 +6,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  // opent datzelfde vakje op de kaart. Alleen lezen.
7
7
  // ============================================================================
8
8
  import { AlertTriangle, CheckCircle2, ChevronRight, Clock } from "lucide-react";
9
- import { flowNodeLabel } from "../lib/flowNodes";
10
- import { duur, klok } from "./OrderTraceDetails";
9
+ import { flowNodeLabel } from "../lib/flowNodes.js";
10
+ import { duur, klok } from "./OrderTraceDetails.js";
11
11
  export function OrderJourneyBar({ reis, actiefNodeId, onKies }) {
12
12
  const veilig = Array.isArray(reis) ? reis : [];
13
13
  if (veilig.length === 0)
@@ -1,4 +1,4 @@
1
- import { type TraceEventRow } from "../hooks/useLogisticsTrace";
1
+ import { type TraceEventRow } from "../hooks/useLogisticsTrace.js";
2
2
  export declare function Gebeurtenis({ event }: {
3
3
  event: TraceEventRow;
4
4
  }): import("react").JSX.Element;
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  import { useMemo, useState } from "react";
11
11
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Skeleton, } from "@flowselections/core";
12
12
  import { AlertTriangle, ChevronDown, ChevronRight, Clock, Database, ExternalLink, FileText, RefreshCw, Search, } from "lucide-react";
13
- import { useLogisticsTrace, useLogisticsTraceTimeline, } from "../hooks/useLogisticsTrace";
13
+ import { useLogisticsTrace, useLogisticsTraceTimeline, } from "../hooks/useLogisticsTrace.js";
14
14
  const STATUS_FILTERS = [
15
15
  { waarde: "", label: "Alles" },
16
16
  { waarde: "bezig", label: "Bezig" },
@@ -1,4 +1,4 @@
1
- import { type StopReden } from "../lib/stopReden";
1
+ import { type StopReden } from "../lib/stopReden.js";
2
2
  interface Props {
3
3
  orderRef: string;
4
4
  /** De reden bij het laatste vakje van de route (uit de flowkaart). */
@@ -6,10 +6,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  // zo is, wat de bepalende gegevens zijn en wat er moet gebeuren. Alleen lezen.
7
7
  // ============================================================================
8
8
  import { AlertTriangle, CheckCircle2, Clock } from "lucide-react";
9
- import { useOrderTraceStand } from "../hooks/useOrderTrace";
10
- import { flowNodeLabel } from "../lib/flowNodes";
11
- import { stopReden } from "../lib/stopReden";
12
- import { Veld, sinds, tijd } from "./OrderTraceDetails";
9
+ import { useOrderTraceStand } from "../hooks/useOrderTrace.js";
10
+ import { flowNodeLabel } from "../lib/flowNodes.js";
11
+ import { stopReden } from "../lib/stopReden.js";
12
+ import { Veld, sinds, tijd } from "./OrderTraceDetails.js";
13
13
  const KLEUR = {
14
14
  mislukt: "border-destructive/50 bg-destructive/5",
15
15
  wachtrij: "border-amber-500/40 bg-amber-500/5",
@@ -1,4 +1,4 @@
1
- import type { TraceEventRow } from "../hooks/useLogisticsTrace";
1
+ import type { TraceEventRow } from "../hooks/useLogisticsTrace.js";
2
2
  export declare const FOUTSOORT_LABEL: Record<string, string>;
3
3
  export declare const FOUTSOORT_UITLEG: Record<string, string>;
4
4
  export declare const STATUS_KLEUR: Record<string, string>;
@@ -9,8 +9,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
9
9
  import { useState } from "react";
10
10
  import { Badge } from "@flowselections/core";
11
11
  import { AlertTriangle, ChevronDown, ChevronRight, Database, ExternalLink } from "lucide-react";
12
- import { flowNodeLabel } from "../lib/flowNodes";
13
- import { foutTekst } from "../lib/foutTekst";
12
+ import { flowNodeLabel } from "../lib/flowNodes.js";
13
+ import { foutTekst } from "../lib/foutTekst.js";
14
14
  export const FOUTSOORT_LABEL = {
15
15
  technisch: "Technische fout",
16
16
  ontbrekende_gegevens: "Ontbrekende gegevens",
@@ -10,9 +10,9 @@ import { useMemo, useState } from "react";
10
10
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Skeleton, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@flowselections/core";
11
11
  import { AlertTriangle, RefreshCw, RotateCcw } from "lucide-react";
12
12
  import { toast } from "sonner";
13
- import { usePlanWachtrij } from "../hooks/usePlanWachtrij";
14
- import { foutTekst } from "../lib/foutTekst";
15
- import { GearchiveerdeOrdersCard } from "./GearchiveerdeOrdersCard";
13
+ import { usePlanWachtrij } from "../hooks/usePlanWachtrij.js";
14
+ import { foutTekst } from "../lib/foutTekst.js";
15
+ import { GearchiveerdeOrdersCard } from "./GearchiveerdeOrdersCard.js";
16
16
  const STAND_KLEUR = {
17
17
  wacht: "bg-amber-500/15 text-amber-700 dark:text-amber-300",
18
18
  bezig: "bg-sky-500/15 text-sky-700 dark:text-sky-300",
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useQuery } from "@tanstack/react-query";
3
3
  import { useServerFn } from "@tanstack/react-start";
4
4
  import { Badge, Skeleton, Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@flowselections/core";
5
- import { getPlannerDiffOverview } from "../lib/plannerDiff.functions";
5
+ import { getPlannerDiffOverview } from "../lib/plannerDiff.functions.js";
6
6
  const MODUS = {
7
7
  off: "Uit (wissen en opnieuw opbouwen)",
8
8
  dry_run: "Proef (oude aanpak leidend, vergelijking ernaast)",
@@ -5,7 +5,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  // ============================================================================
6
6
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
7
7
  import { AlertTriangle, Printer, RefreshCw } from "lucide-react";
8
- import { PRINTJOB_STATUS_LABEL, PRINTJOB_STUCK_MINUTES, formatAge, usePrintjobs, } from "../hooks/usePrintjobs";
8
+ import { PRINTJOB_STATUS_LABEL, PRINTJOB_STUCK_MINUTES, formatAge, usePrintjobs, } from "../hooks/usePrintjobs.js";
9
9
  function tijd(value) {
10
10
  try {
11
11
  return new Date(value).toLocaleString("nl-NL", { dateStyle: "short", timeStyle: "short" });
@@ -10,17 +10,17 @@ import { useCallback, useEffect, useState } from "react";
10
10
  import { Button, Card, CardContent, CardDescription, CardHeader, CardTitle, supabase, } from "@flowselections/core";
11
11
  import { RefreshCw, Workflow } from "lucide-react";
12
12
  import { Link } from "@tanstack/react-router";
13
- import { ConsistentieCard } from "./ConsistentieCard";
14
- import { KarplanStatusCard } from "./KarplanStatusCard";
15
- import { KardekkingCard } from "./KardekkingCard";
16
- import { MisluktVerzendbrievenCard } from "./MisluktVerzendbrievenCard";
17
- import { PlannerDiffCard } from "./PlannerDiffCard";
18
- import { BeladingsafwijkingenCard } from "./BeladingsafwijkingenCard";
19
- import { OrderLogboek } from "./OrderLogboek";
20
- import { MinuutrondeCard } from "./MinuutrondeCard";
21
- import { InklapbaarVenster } from "./InklapbaarVenster";
22
- import { tellOpenTaken } from "../lib/taskCounts";
23
- import { LOGISTICS_MODULES } from "../lib/logisticsTasks";
13
+ import { ConsistentieCard } from "./ConsistentieCard.js";
14
+ import { KarplanStatusCard } from "./KarplanStatusCard.js";
15
+ import { KardekkingCard } from "./KardekkingCard.js";
16
+ import { MisluktVerzendbrievenCard } from "./MisluktVerzendbrievenCard.js";
17
+ import { PlannerDiffCard } from "./PlannerDiffCard.js";
18
+ import { BeladingsafwijkingenCard } from "./BeladingsafwijkingenCard.js";
19
+ import { OrderLogboek } from "./OrderLogboek.js";
20
+ import { MinuutrondeCard } from "./MinuutrondeCard.js";
21
+ import { InklapbaarVenster } from "./InklapbaarVenster.js";
22
+ import { tellOpenTaken } from "../lib/taskCounts.js";
23
+ import { LOGISTICS_MODULES } from "../lib/logisticsTasks.js";
24
24
  export function RegiePage() {
25
25
  // Alleen open en geplande taken, geteld in de database (geen 500-grens, geen geannuleerde).
26
26
  const [perModule, setPerModule] = useState({});
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from "react";
2
- import { type EngineRol } from "../hooks/useEngineRollen";
2
+ import { type EngineRol } from "../hooks/useEngineRollen.js";
3
3
  export declare function RolPoort({ rollen, children }: {
4
4
  rollen: readonly EngineRol[];
5
5
  children: ReactNode;
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Card, CardContent, Skeleton } from "@flowselections/core";
3
- import { heeftToegang, useEngineRollen } from "../hooks/useEngineRollen";
3
+ import { heeftToegang, useEngineRollen } from "../hooks/useEngineRollen.js";
4
4
  export function RolPoort({ rollen, children }) {
5
5
  const { rollen: mijn, geladen } = useEngineRollen();
6
6
  if (!geladen)
@@ -8,17 +8,17 @@ import { useSearch } from "@tanstack/react-router";
8
8
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, Input, Label, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Skeleton, } from "@flowselections/core";
9
9
  import { AlertTriangle, CheckCircle2, ChevronLeft, ChevronRight, MoreVertical, Plus, RefreshCw, Save, Trash2, } from "lucide-react";
10
10
  import { toast } from "@flowselections/core";
11
- import { useRecalcJob, phaseLabel } from "../hooks/useRecalcJob";
12
- import { fieldVisible, } from "../lib/ruleEngineSchema";
13
- import { WIZARD_STEPS, groupSummary, isAdvancedField, } from "../lib/ruleEngineWizard";
14
- import { useRuleEngine } from "../hooks/useRuleEngine";
15
- import { RuleFieldInput } from "./rule-engine/RuleFieldInput";
16
- import { CollapsibleGroup } from "./rule-engine/CollapsibleGroup";
17
- import { ConditionsEditor } from "./rule-engine/ConditionsEditor";
18
- import { ImpactPanel } from "./rule-engine/ImpactPanel";
19
- import { VersionsPanel } from "./rule-engine/VersionsPanel";
20
- import { RolPoort } from "./RolPoort";
21
- import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
11
+ import { useRecalcJob, phaseLabel } from "../hooks/useRecalcJob.js";
12
+ import { fieldVisible, } from "../lib/ruleEngineSchema.js";
13
+ import { WIZARD_STEPS, groupSummary, isAdvancedField, } from "../lib/ruleEngineWizard.js";
14
+ import { useRuleEngine } from "../hooks/useRuleEngine.js";
15
+ import { RuleFieldInput } from "./rule-engine/RuleFieldInput.js";
16
+ import { CollapsibleGroup } from "./rule-engine/CollapsibleGroup.js";
17
+ import { ConditionsEditor } from "./rule-engine/ConditionsEditor.js";
18
+ import { ImpactPanel } from "./rule-engine/ImpactPanel.js";
19
+ import { VersionsPanel } from "./rule-engine/VersionsPanel.js";
20
+ import { RolPoort } from "./RolPoort.js";
21
+ import { ENGINE_TOEGANG } from "../hooks/useEngineRollen.js";
22
22
  const WIDE_TYPES = ["priority", "toggle", "days", "radio", "textarea", "guidance"];
23
23
  function fieldClass(field) {
24
24
  return WIDE_TYPES.includes(field.type) ? "md:col-span-2" : "";
@@ -1,4 +1,4 @@
1
- import type { LogistiekStrategie, StrategieInput } from "../hooks/useLogistiekStrategieen";
1
+ import type { LogistiekStrategie, StrategieInput } from "../hooks/useLogistiekStrategieen.js";
2
2
  interface Props {
3
3
  open: boolean;
4
4
  onOpenChange: (open: boolean) => void;
@@ -6,7 +6,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  // en of hij mislukt. Alleen lezen.
7
7
  // ============================================================================
8
8
  import { AlertTriangle, CheckCircle2, RefreshCw } from "lucide-react";
9
- import { useTaakGezondheid } from "../hooks/useTaakGezondheid";
9
+ import { useTaakGezondheid } from "../hooks/useTaakGezondheid.js";
10
10
  function geleden(tijd) {
11
11
  if (!tijd)
12
12
  return "nooit gedraaid";
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  // ============================================================================
5
5
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
6
6
  import { CheckCircle2, Clock, RefreshCw, ThumbsUp } from "lucide-react";
7
- import { VERTRAGING_PRIORITEIT, useVertragingMeldingen } from "../hooks/useVertragingMeldingen";
7
+ import { VERTRAGING_PRIORITEIT, useVertragingMeldingen } from "../hooks/useVertragingMeldingen.js";
8
8
  function tijd(value) {
9
9
  if (!value)
10
10
  return "onbekend";
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  // ============================================================================
5
5
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
6
6
  import { AlertTriangle, CheckCircle2, Mail, RefreshCw } from "lucide-react";
7
- import { PRIORITEIT_LABELS, useVoorraadMeldingen } from "../hooks/useVoorraadMeldingen";
7
+ import { PRIORITEIT_LABELS, useVoorraadMeldingen } from "../hooks/useVoorraadMeldingen.js";
8
8
  function tijd(value) {
9
9
  try {
10
10
  return new Date(value).toLocaleString("nl-NL", { dateStyle: "short", timeStyle: "short" });
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
10
10
  import { useState } from "react";
11
11
  import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Skeleton, } from "@flowselections/core";
12
12
  import { Clock, Plus, RefreshCw, Trash2 } from "lucide-react";
13
- import { useWerktijden } from "../hooks/useWerktijden";
13
+ import { useWerktijden } from "../hooks/useWerktijden.js";
14
14
  const DAGEN = ["Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag"];
15
15
  export function WerktijdenCard() {
16
16
  const { status, loading, error, refresh, zetTijdzone, voegVensterToe, verwijderVenster, voegUitzonderingToe, verwijderUitzondering, } = useWerktijden();
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
10
10
  import { useCallback, useEffect, useRef, useState } from "react";
11
11
  import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Skeleton, } from "@flowselections/core";
12
12
  import { RefreshCw, Ruler, Boxes } from "lucide-react";
13
- import { useWerkwijzeStatus } from "../hooks/useWerkwijzeStatus";
13
+ import { useWerkwijzeStatus } from "../hooks/useWerkwijzeStatus.js";
14
14
  const METHODE_LABEL = {
15
15
  belading: "Indelen op basis van belading",
16
16
  afmetingen: "Indelen op basis van afmetingen",