@flowselections/layout-maker 1.51.3 → 1.53.1
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/README.md +0 -1
- package/dist-lib/components/LivePrintstatusRegel.d.ts +2 -0
- package/dist-lib/components/LivePrintstatusRegel.d.ts.map +1 -0
- package/dist-lib/components/LivePrintstatusRegel.js +37 -0
- package/dist-lib/components/PrintQueuePage.d.ts.map +1 -1
- package/dist-lib/components/PrintQueuePage.js +78 -43
- package/dist-lib/components/PrintenPage.d.ts.map +1 -1
- package/dist-lib/components/PrintenPage.js +3 -2
- package/dist-lib/components/PrintplekDetailPage.d.ts.map +1 -1
- package/dist-lib/components/PrintplekDetailPage.js +30 -2
- package/dist-lib/index.d.ts +7 -1
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +6 -1
- package/dist-lib/integrations/supabase/moduleClient.d.ts +1 -31688
- package/dist-lib/integrations/supabase/moduleClient.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +3362 -128
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/foutTekst.d.ts +10 -0
- package/dist-lib/lib/foutTekst.d.ts.map +1 -1
- package/dist-lib/lib/foutTekst.js +28 -0
- package/dist-lib/lib/printApi.d.ts +33 -0
- package/dist-lib/lib/printApi.d.ts.map +1 -1
- package/dist-lib/lib/printApi.js +45 -1
- package/dist-lib/lib/printQueue.server.d.ts +6 -0
- package/dist-lib/lib/printQueue.server.d.ts.map +1 -1
- package/dist-lib/lib/printQueue.server.js +72 -20
- package/dist-lib/lib/printService.functions.d.ts +76 -0
- package/dist-lib/lib/printService.functions.d.ts.map +1 -1
- package/dist-lib/lib/printService.functions.js +130 -0
- package/dist-lib/lib/printService.server.d.ts +35 -0
- package/dist-lib/lib/printService.server.d.ts.map +1 -1
- package/dist-lib/lib/printService.server.js +104 -13
- package/dist-lib/lib/printnodeStatus.d.ts +14 -0
- package/dist-lib/lib/printnodeStatus.d.ts.map +1 -0
- package/dist-lib/lib/printnodeStatus.js +43 -0
- package/dist-lib/lib/printnodeWebhook.d.ts +23 -0
- package/dist-lib/lib/printnodeWebhook.d.ts.map +1 -0
- package/dist-lib/lib/printnodeWebhook.js +137 -0
- package/dist-lib/lib/printnodeWebhookBeheer.server.d.ts +45 -0
- package/dist-lib/lib/printnodeWebhookBeheer.server.d.ts.map +1 -0
- package/dist-lib/lib/printnodeWebhookBeheer.server.js +116 -0
- package/dist-lib/lib/queueTick.d.ts.map +1 -1
- package/dist-lib/lib/queueTick.js +9 -0
- package/dist-lib/lib/shellAdres.d.ts +10 -0
- package/dist-lib/lib/shellAdres.d.ts.map +1 -0
- package/dist-lib/lib/shellAdres.js +36 -0
- package/dist-lib/lib/standaardLayouts.server.d.ts +6 -0
- package/dist-lib/lib/standaardLayouts.server.d.ts.map +1 -0
- package/dist-lib/lib/standaardLayouts.server.js +61 -0
- package/dist-lib/lib/useDocumentData.d.ts +10 -1
- package/dist-lib/lib/useDocumentData.d.ts.map +1 -1
- package/dist-lib/lib/useDocumentData.js +16 -117
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -6,7 +6,6 @@ This project was built with [Lovable](https://lovable.dev).
|
|
|
6
6
|
|
|
7
7
|
## Build with Lovable
|
|
8
8
|
|
|
9
|
-
Continue developing this project in the [Lovable editor](https://lovable.dev/projects/4735fccb-b385-4b48-b4f8-ef135f63f4f7).
|
|
10
9
|
|
|
11
10
|
- **Ship faster**: describe what you want to build and Lovable handles the code.
|
|
12
11
|
- **Stay in sync**: every change made in Lovable is committed straight to this repository.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LivePrintstatusRegel.d.ts","sourceRoot":"","sources":["../../src/components/LivePrintstatusRegel.tsx"],"names":[],"mappings":"AAWA,wBAAgB,oBAAoB,gCA0CnC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// ============================================================================
|
|
3
|
+
// src/components/LivePrintstatusRegel.tsx — één regel "Live printstatus: aan /
|
|
4
|
+
// uit" met de knop "Opnieuw koppelen" (alleen voor herstel).
|
|
5
|
+
// ============================================================================
|
|
6
|
+
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
7
|
+
import { useServerFn } from "@tanstack/react-start";
|
|
8
|
+
import { useState } from "react";
|
|
9
|
+
import { Badge, Button, toast } from "@flowselections/core";
|
|
10
|
+
import { webhookOpnieuwKoppelen, webhookStatus } from "../lib/printService.functions.js";
|
|
11
|
+
export function LivePrintstatusRegel() {
|
|
12
|
+
const haal = useServerFn(webhookStatus);
|
|
13
|
+
const koppel = useServerFn(webhookOpnieuwKoppelen);
|
|
14
|
+
const qc = useQueryClient();
|
|
15
|
+
const [bezig, setBezig] = useState(false);
|
|
16
|
+
const { data } = useQuery({ queryKey: ["printnode-webhook-status"], queryFn: () => haal(), refetchInterval: 60000 });
|
|
17
|
+
const s = data && data.ok ? data : null;
|
|
18
|
+
const aan = !!s?.aan;
|
|
19
|
+
return (_jsxs("div", { className: "mb-4 flex flex-wrap items-center gap-3 rounded-md border border-border bg-card px-4 py-3 text-sm", children: [_jsx("span", { className: "font-medium text-foreground", children: "Live printstatus:" }), _jsx(Badge, { variant: aan ? "default" : "secondary", children: aan ? "aan" : "uit" }), _jsx("span", { className: "text-muted-foreground", children: aan
|
|
20
|
+
? s?.laatstOntvangenOp
|
|
21
|
+
? `laatste melding ${new Date(s.laatstOntvangenOp).toLocaleString("nl-NL")}`
|
|
22
|
+
: "gekoppeld, wacht op de eerste melding van PrintNode"
|
|
23
|
+
: s?.fout ?? "nog niet gekoppeld — de status wordt elke paar minuten opgevraagd" }), s?.melding && _jsxs("span", { className: "text-muted-foreground", children: ["\u00B7 ", s.melding] }), _jsx(Button, { size: "sm", variant: "outline", className: "ml-auto", disabled: bezig, onClick: async () => {
|
|
24
|
+
setBezig(true);
|
|
25
|
+
try {
|
|
26
|
+
const r = await koppel();
|
|
27
|
+
if (r.ok)
|
|
28
|
+
toast.success("Live printstatus opnieuw gekoppeld");
|
|
29
|
+
else
|
|
30
|
+
toast.error(r.reden);
|
|
31
|
+
}
|
|
32
|
+
finally {
|
|
33
|
+
setBezig(false);
|
|
34
|
+
qc.invalidateQueries({ queryKey: ["printnode-webhook-status"] });
|
|
35
|
+
}
|
|
36
|
+
}, children: bezig ? "Bezig…" : "Opnieuw koppelen" })] }));
|
|
37
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrintQueuePage.d.ts","sourceRoot":"","sources":["../../src/components/PrintQueuePage.tsx"],"names":[],"mappings":"AAkFA,wBAAgB,cAAc,
|
|
1
|
+
{"version":3,"file":"PrintQueuePage.d.ts","sourceRoot":"","sources":["../../src/components/PrintQueuePage.tsx"],"names":[],"mappings":"AAkFA,wBAAgB,cAAc,gCAiX7B"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo, useRef, useState } from "react";
|
|
2
|
+
import { useEffect, useMemo, useRef, useState } from "react";
|
|
3
3
|
import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, toast, } from "@flowselections/core";
|
|
4
4
|
import { RotateCcw, Search, XCircle } from "lucide-react";
|
|
5
5
|
import { bijgewerktTekst, useAutoRefresh } from "../lib/useAutoRefresh.js";
|
|
6
6
|
import { PrintStatusBanner } from "./PrintStatusBanner.js";
|
|
7
|
-
import {
|
|
8
|
-
import { annuleerPrintOpdrachten,
|
|
7
|
+
import { useLayouts, usePrinters, usePrintJobs, usePrintPlekNamen, } from "../lib/useDocumentData.js";
|
|
8
|
+
import { annuleerPrintOpdrachten, opnieuwPrinten, printTellingen } from "../lib/printService.functions.js";
|
|
9
|
+
import { opnieuwActie, printnodeStatusLabel, SCANBARE_SOORTEN } from "../lib/printnodeStatus.js";
|
|
10
|
+
import { supabase } from "../lib/supabaseClient.js";
|
|
9
11
|
import { vraagWachtrijRonde } from "../lib/queueTickClient.js";
|
|
10
12
|
import { documentTypeLabel } from "../lib/documentTypes.js";
|
|
11
13
|
import { jobPlekLabel } from "../lib/printQueue.js";
|
|
@@ -73,12 +75,58 @@ export function PrintQueuePage() {
|
|
|
73
75
|
return false;
|
|
74
76
|
return true;
|
|
75
77
|
});
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
78
|
+
// Echte tellingen over alle opdrachten (de lijst toont alleen de laatste 200).
|
|
79
|
+
const [tellingen, setTellingen] = useState({});
|
|
80
|
+
const herlaadTellingen = async () => {
|
|
81
|
+
try {
|
|
82
|
+
const t = await printTellingen();
|
|
83
|
+
if (t && typeof t === "object")
|
|
84
|
+
setTellingen(t);
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
/* tellingen blijven staan */
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
const printerById = useMemo(() => new Map(printers.map((p) => [p.id, p])), [printers]);
|
|
91
|
+
// "Gescand": goedgekeurde controlescan van de kar (match op cart_id). Alleen lezen.
|
|
92
|
+
const [gescand, setGescand] = useState(new Set());
|
|
93
|
+
const cartIds = useMemo(() => Array.from(new Set(jobs
|
|
94
|
+
.filter((j) => SCANBARE_SOORTEN.has(j.documenttype))
|
|
95
|
+
.map((j) => String(j.payload?.["cart_id"] ?? ""))
|
|
96
|
+
.filter((c) => c.length > 0))).slice(0, 200), [jobs]);
|
|
97
|
+
useEffect(() => {
|
|
98
|
+
if (cartIds.length === 0)
|
|
99
|
+
return;
|
|
100
|
+
let actief = true;
|
|
101
|
+
void supabase
|
|
102
|
+
.from("logistics_control_scan")
|
|
103
|
+
.select("cart_id")
|
|
104
|
+
.in("cart_id", cartIds)
|
|
105
|
+
.not("approved_at", "is", null)
|
|
106
|
+
.then(({ data }) => {
|
|
107
|
+
if (!actief)
|
|
108
|
+
return;
|
|
109
|
+
const rijen = Array.isArray(data) ? data : [];
|
|
110
|
+
setGescand(new Set(rijen.map((r) => String(r.cart_id ?? "")).filter(Boolean)));
|
|
111
|
+
});
|
|
112
|
+
return () => {
|
|
113
|
+
actief = false;
|
|
114
|
+
};
|
|
115
|
+
}, [cartIds]);
|
|
116
|
+
// Live bijwerken (webhook en wachtrij schrijven in print_jobs).
|
|
117
|
+
useEffect(() => {
|
|
118
|
+
const kanaal = supabase
|
|
119
|
+
.channel("printwachtrij-live")
|
|
120
|
+
.on("postgres_changes", { event: "*", schema: "public", table: "print_jobs" }, () => {
|
|
121
|
+
void reload(true);
|
|
122
|
+
void herlaadTellingen();
|
|
123
|
+
})
|
|
124
|
+
.subscribe();
|
|
125
|
+
return () => {
|
|
126
|
+
void supabase.removeChannel(kanaal);
|
|
127
|
+
};
|
|
128
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
129
|
+
}, [reload]);
|
|
82
130
|
const jobsRef = useRef(jobs);
|
|
83
131
|
jobsRef.current = jobs;
|
|
84
132
|
const lopende = jobs.some((j) => j.status === "wachtend" || j.status === "bezig");
|
|
@@ -94,19 +142,9 @@ export function PrintQueuePage() {
|
|
|
94
142
|
setTickFout(e instanceof Error ? e.message : "Achtergrondprinten werkt nu niet.");
|
|
95
143
|
}
|
|
96
144
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const res = await printStatus({ data: { externJobId: String(j.extern_job_id) } });
|
|
101
|
-
if (!res.ok)
|
|
102
|
-
break;
|
|
103
|
-
if (res.status !== j.status)
|
|
104
|
-
await updateJobStatus(j.id, res.status);
|
|
105
|
-
}
|
|
106
|
-
catch {
|
|
107
|
-
break;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
145
|
+
// Statussen worden op de server bijgewerkt (webhook + terugval-polling);
|
|
146
|
+
// deze pagina schrijft zelf niets.
|
|
147
|
+
await herlaadTellingen();
|
|
110
148
|
await reload(true);
|
|
111
149
|
};
|
|
112
150
|
const bijgewerkt = useAutoRefresh(ronde, lopende ? 5000 : 20000);
|
|
@@ -137,31 +175,28 @@ export function PrintQueuePage() {
|
|
|
137
175
|
? layoutNaam.get(j.gebruikte_layout_id) ?? "Onbekende layout"
|
|
138
176
|
: j.gebruikte_bron
|
|
139
177
|
? "geen layout"
|
|
140
|
-
: "nog niet verwerkt" }), j.gebruikte_bron && (_jsx(Badge, { variant: "outline", className: "ml-2", children: BRON_LABEL[j.gebruikte_bron] ?? j.gebruikte_bron }))] })] }), _jsx(TableCell, { className: "text-sm text-muted-foreground", children: j.printer_id ? printerNaam.get(j.printer_id) ?? "—" : "—" }),
|
|
141
|
-
|
|
142
|
-
|
|
178
|
+
: "nog niet verwerkt" }), j.gebruikte_bron && (_jsx(Badge, { variant: "outline", className: "ml-2", children: BRON_LABEL[j.gebruikte_bron] ?? j.gebruikte_bron }))] })] }), _jsx(TableCell, { className: "text-sm text-muted-foreground", children: j.printer_id ? printerNaam.get(j.printer_id) ?? "—" : "—" }), _jsxs(TableCell, { children: [_jsx(Badge, { variant: STATUS_VARIANT[j.status] ?? "outline", children: printnodeStatusLabel(j) }), gescand.has(String(j.payload?.["cart_id"] ?? "")) &&
|
|
179
|
+
SCANBARE_SOORTEN.has(j.documenttype) &&
|
|
180
|
+
!j.is_herprint && j.status === "voltooid" && (_jsx(Badge, { variant: "default", className: "ml-2", children: "Gescand" })), j.printnode_bericht && j.status === "mislukt" && (_jsx("span", { className: "block text-xs text-destructive", children: j.printnode_bericht }))] }), _jsx(TableCell, { className: "text-sm text-muted-foreground", children: new Date(j.created_at).toLocaleString("nl-NL") }), _jsx(TableCell, { className: "text-right", children: _jsxs("div", { className: "flex justify-end gap-1", children: [opnieuwActie(j) && (_jsxs(Button, { variant: "ghost", size: "sm", onClick: async () => {
|
|
181
|
+
const pr = j.printer_id ? printerById.get(j.printer_id) : null;
|
|
182
|
+
if (pr && !pr.online) {
|
|
183
|
+
const door = window.confirm(`Printer "${pr.naam}" (of de computer) is nu offline. De opdracht blijft wachten tot hij weer aan staat, en verloopt anders. Toch versturen?`);
|
|
184
|
+
if (!door)
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
143
187
|
try {
|
|
144
|
-
await
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
kopieen: j.kopieen ?? 1,
|
|
150
|
-
is_herprint: true,
|
|
151
|
-
bron_job_id: j.id,
|
|
152
|
-
payload: {
|
|
153
|
-
...(j.payload && typeof j.payload === "object" ? j.payload : {}),
|
|
154
|
-
is_herprint: true,
|
|
155
|
-
bron_job_id: j.id,
|
|
156
|
-
},
|
|
157
|
-
});
|
|
188
|
+
const r = await opnieuwPrinten({ data: { jobId: j.id } });
|
|
189
|
+
if (!r.ok) {
|
|
190
|
+
toast.error(r.fout);
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
158
193
|
toast.success("Opnieuw in de wachtrij gezet");
|
|
159
|
-
void reload();
|
|
194
|
+
void reload(true);
|
|
160
195
|
}
|
|
161
|
-
catch {
|
|
162
|
-
toast.error("
|
|
196
|
+
catch (fout) {
|
|
197
|
+
toast.error(fout instanceof Error ? fout.message : "Opnieuw printen mislukt");
|
|
163
198
|
}
|
|
164
|
-
}, children: [_jsx(RotateCcw, { className: "mr-2 h-4 w-4" }), " Opnieuw"] }), (j.status === "wachtend" || j.status === "bezig") && (_jsx(Button, { variant: "ghost", size: "sm", onClick: async () => {
|
|
199
|
+
}, children: [_jsx(RotateCcw, { className: "mr-2 h-4 w-4" }), opnieuwActie(j) === "opnieuw_proberen" ? "Opnieuw proberen" : "Opnieuw printen"] })), (j.status === "wachtend" || j.status === "bezig") && (_jsx(Button, { variant: "ghost", size: "sm", onClick: async () => {
|
|
165
200
|
try {
|
|
166
201
|
const resultaat = await annuleerPrintOpdrachten({ data: { jobIds: [j.id] } });
|
|
167
202
|
if (resultaat.externMislukt > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrintenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintenPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PrintenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintenPage.tsx"],"names":[],"mappings":"AAqBA,wBAAgB,WAAW,CAAC,EAC1B,GAAoB,GACrB,EAAE;IACD,GAAG,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC;CACpC,+BAuBA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
// ============================================================================
|
|
3
3
|
// src/components/PrintenPage.tsx — één menu-item "Printen" met tabbladen voor
|
|
4
4
|
// printplekken (plekken, computers en printers samen) en standaardregels.
|
|
@@ -8,6 +8,7 @@ import { MapPin, Route as RouteIcon } from "lucide-react";
|
|
|
8
8
|
import { ModuleTabs } from "./ModuleTabs.js";
|
|
9
9
|
import { PrintplekkenPage } from "./PrintplekkenPage.js";
|
|
10
10
|
import { DocumentRouteringPage } from "./DocumentRouteringPage.js";
|
|
11
|
+
import { LivePrintstatusRegel } from "./LivePrintstatusRegel.js";
|
|
11
12
|
const TABS = [
|
|
12
13
|
{
|
|
13
14
|
id: "printplekken",
|
|
@@ -18,5 +19,5 @@ const TABS = [
|
|
|
18
19
|
];
|
|
19
20
|
export function PrintenPage({ tab = "printplekken", }) {
|
|
20
21
|
const [actiefTab, setActiefTab] = useState(tab);
|
|
21
|
-
return (_jsx(_Fragment, { children:
|
|
22
|
+
return (_jsx(_Fragment, { children: _jsxs(ModuleTabs, { titel: "Printen", omschrijving: "Stel per plek in het bedrijf in welke computers, printers en documenten daar horen.", tabs: TABS, actiefTab: actiefTab, onTabWijzig: (nieuwTab) => setActiefTab(nieuwTab === "routering" ? "routering" : "printplekken"), children: [_jsx(LivePrintstatusRegel, {}), actiefTab === "routering" ? (_jsx(DocumentRouteringPage, { ingebed: true })) : (_jsx(PrintplekkenPage, { ingebed: true }))] }) }));
|
|
22
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrintplekDetailPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintplekDetailPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PrintplekDetailPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintplekDetailPage.tsx"],"names":[],"mappings":"AA+DA,wBAAgB,mBAAmB,gCAooBlC"}
|
|
@@ -19,6 +19,7 @@ import { DOCUMENT_TYPES, documentTypeLabel } from "../lib/documentTypes.js";
|
|
|
19
19
|
import { drukTestpaginaAf } from "../lib/testpagina.js";
|
|
20
20
|
import { TestprintDialog } from "./TestprintDialog.js";
|
|
21
21
|
import { leesbareFout } from "../lib/foutTekst.js";
|
|
22
|
+
import { supabase } from "../lib/supabaseClient.js";
|
|
22
23
|
import { useRouteringOverzicht } from "../lib/printRoutering.js";
|
|
23
24
|
const BRON_LABEL = {
|
|
24
25
|
printplek: "Printplek-eigen",
|
|
@@ -35,6 +36,30 @@ export function PrintplekDetailPage() {
|
|
|
35
36
|
const [verwijderOpen, setVerwijderOpen] = useState(false);
|
|
36
37
|
const { plekken, computers: plekComputers, regels, koppelingen, toegewezen, reload } = usePrintplekken();
|
|
37
38
|
const { computers, reload: herlaadComputers } = useComputers();
|
|
39
|
+
// Live computerstatus uit de PrintNode-webhook, op PrintNode-computer-id.
|
|
40
|
+
const [statusPerId, setStatusPerId] = useState(new Map());
|
|
41
|
+
useEffect(() => {
|
|
42
|
+
const laad = async () => {
|
|
43
|
+
const { data } = await supabase.from("print_computer_status").select("extern_computer_id, verbonden");
|
|
44
|
+
const rijen = Array.isArray(data) ? data : [];
|
|
45
|
+
setStatusPerId(new Map(rijen.map((r) => [String(r.extern_computer_id), !!r.verbonden])));
|
|
46
|
+
};
|
|
47
|
+
void laad();
|
|
48
|
+
const kanaal = supabase
|
|
49
|
+
.channel("computerstatus-live")
|
|
50
|
+
.on("postgres_changes", { event: "*", schema: "public", table: "print_computer_status" }, () => void laad())
|
|
51
|
+
.subscribe();
|
|
52
|
+
return () => {
|
|
53
|
+
void supabase.removeChannel(kanaal);
|
|
54
|
+
};
|
|
55
|
+
}, []);
|
|
56
|
+
const computerAan = (naam) => {
|
|
57
|
+
const k = computers.find((x) => x.naam === naam);
|
|
58
|
+
if (!k)
|
|
59
|
+
return false;
|
|
60
|
+
const live = statusPerId.get(String(k.id));
|
|
61
|
+
return live ?? k.online;
|
|
62
|
+
};
|
|
38
63
|
const { printers } = usePrinters();
|
|
39
64
|
const { gevonden } = useNetwerkPrinters();
|
|
40
65
|
const [naamBewerken, setNaamBewerken] = useState(false);
|
|
@@ -47,6 +72,9 @@ export function PrintplekDetailPage() {
|
|
|
47
72
|
const [teVerwijderen, setTeVerwijderen] = useState(null);
|
|
48
73
|
const plek = plekken.find((p) => p.id === plekId) ?? null;
|
|
49
74
|
const eigenComputers = plekComputers.filter((c) => c.print_plek_id === plekId);
|
|
75
|
+
const uitgevallen = eigenComputers
|
|
76
|
+
.filter((c) => computers.some((k) => k.naam === c.computer_naam) && !computerAan(c.computer_naam))
|
|
77
|
+
.map((c) => c.computer_naam);
|
|
50
78
|
const vrijeComputers = computers.filter((c) => !plekComputers.some((pc) => pc.computer_naam === c.naam));
|
|
51
79
|
const andereplekken = plekken.filter((p) => p.id !== plekId);
|
|
52
80
|
// De live scan bepaalt alleen online-status en op welke computer een printer hangt.
|
|
@@ -186,7 +214,7 @@ export function PrintplekDetailPage() {
|
|
|
186
214
|
}, children: _jsx(Check, { className: "h-4 w-4" }) }), _jsx(Button, { size: "icon", variant: "ghost", onClick: () => setNaamBewerken(false), children: _jsx(X, { className: "h-4 w-4" }) })] })) : (_jsx("h1", { className: "cursor-pointer text-xl font-semibold", onClick: () => {
|
|
187
215
|
setNaam(plek.naam);
|
|
188
216
|
setNaamBewerken(true);
|
|
189
|
-
}, children: plek.naam })), _jsx("p", { className: "text-muted-foreground text-sm", children: plek.omschrijving ?? "Hier stel je alles in wat er op deze plek wordt afgedrukt." })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsxs(Button, { variant: "outline", onClick: () => setTestprintOpen(true), children: [_jsx(Printer, { className: "mr-2 h-4 w-4" }), " Testprint controleren"] }), _jsxs(Button, { variant: "ghost", className: "text-destructive", onClick: () => setVerwijderOpen(true), children: [_jsx(Trash2, { className: "mr-2 h-4 w-4" }), " Verwijderen"] })] })] }), _jsx(PrintplekVerwijderenDialog, { plek: verwijderOpen ? { id: plek.id, naam: plek.naam } : null, onOpenChange: setVerwijderOpen, onKlaar: () => void navigate({ to: "/layouts-printers/printplekken" }) }), _jsx(TestprintDialog, { open: testprintOpen, onOpenChange: setTestprintOpen, printplekId: plekId, printplekNaam: plek.naam }), _jsxs(Card, { children: [_jsxs(CardHeader, { className: "flex flex-row items-start justify-between gap-3", children: [_jsxs("div", { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Monitor, { className: "h-4 w-4" }), " Computers op deze plek"] }), _jsx(CardDescription, { children: "Het bolletje laat zien of de computer nu aan staat." })] }), vrijeComputers.length > 0 ? (_jsxs("div", { className: "flex items-center gap-2", children: [_jsxs("select", { className: selectKlasse, value: computerToevoegen, onChange: (e) => setComputerToevoegen(e.target.value), "aria-label": "Computer kiezen", children: [_jsx("option", { value: "", children: "Computer kiezen\u2026" }), vrijeComputers.map((c) => (_jsx("option", { value: c.naam, children: c.naam }, c.id)))] }), _jsxs(Button, { size: "sm", disabled: !computerToevoegen, onClick: async () => {
|
|
217
|
+
}, children: plek.naam })), _jsx("p", { className: "text-muted-foreground text-sm", children: plek.omschrijving ?? "Hier stel je alles in wat er op deze plek wordt afgedrukt." })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsxs(Button, { variant: "outline", onClick: () => setTestprintOpen(true), children: [_jsx(Printer, { className: "mr-2 h-4 w-4" }), " Testprint controleren"] }), _jsxs(Button, { variant: "ghost", className: "text-destructive", onClick: () => setVerwijderOpen(true), children: [_jsx(Trash2, { className: "mr-2 h-4 w-4" }), " Verwijderen"] })] })] }), _jsx(PrintplekVerwijderenDialog, { plek: verwijderOpen ? { id: plek.id, naam: plek.naam } : null, onOpenChange: setVerwijderOpen, onKlaar: () => void navigate({ to: "/layouts-printers/printplekken" }) }), _jsx(TestprintDialog, { open: testprintOpen, onOpenChange: setTestprintOpen, printplekId: plekId, printplekNaam: plek.naam }), uitgevallen.length > 0 && (_jsxs("div", { role: "alert", className: "rounded-lg border border-destructive bg-destructive/10 px-4 py-3 text-sm text-destructive", children: [_jsx("strong", { children: "Computer niet verbonden:" }), " ", uitgevallen.join(", "), ". Opdrachten voor deze plek worden pas geprint als de computer weer verbonden is, en verlopen anders."] })), _jsxs(Card, { children: [_jsxs(CardHeader, { className: "flex flex-row items-start justify-between gap-3", children: [_jsxs("div", { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Monitor, { className: "h-4 w-4" }), " Computers op deze plek"] }), _jsx(CardDescription, { children: "Het bolletje laat zien of de computer nu aan staat." })] }), vrijeComputers.length > 0 ? (_jsxs("div", { className: "flex items-center gap-2", children: [_jsxs("select", { className: selectKlasse, value: computerToevoegen, onChange: (e) => setComputerToevoegen(e.target.value), "aria-label": "Computer kiezen", children: [_jsx("option", { value: "", children: "Computer kiezen\u2026" }), vrijeComputers.map((c) => (_jsx("option", { value: c.naam, children: c.naam }, c.id)))] }), _jsxs(Button, { size: "sm", disabled: !computerToevoegen, onClick: async () => {
|
|
190
218
|
try {
|
|
191
219
|
await koppelComputerAanPrintplek(plekId, computerToevoegen);
|
|
192
220
|
setComputerToevoegen("");
|
|
@@ -196,7 +224,7 @@ export function PrintplekDetailPage() {
|
|
|
196
224
|
toast.error("Toevoegen mislukt");
|
|
197
225
|
}
|
|
198
226
|
}, children: [_jsx(Plus, { className: "mr-1 h-4 w-4" }), " Computer toevoegen"] })] })) : null] }), _jsx(CardContent, { className: "space-y-2", children: eigenComputers.length === 0 ? (_jsx("p", { className: "text-muted-foreground text-sm", children: "Nog geen computers gekoppeld." })) : (eigenComputers.map((c) => {
|
|
199
|
-
const aan =
|
|
227
|
+
const aan = computerAan(c.computer_naam);
|
|
200
228
|
return (_jsxs("div", { className: "flex items-center gap-3 rounded-lg border px-3 py-2 text-sm", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${aan ? "bg-emerald-500" : "bg-muted-foreground"}` }), _jsx("span", { className: "min-w-0 flex-1 truncate font-medium", children: c.computer_naam }), _jsx("span", { className: "text-muted-foreground text-xs", children: aan ? "Aan" : "Uit" }), _jsxs(Button, { size: "sm", variant: "ghost", className: "text-destructive", onClick: () => setTeVerwijderen(c.computer_naam), children: [_jsx(Trash2, { className: "mr-1 h-3.5 w-3.5" }), " Verwijderen"] })] }, c.id));
|
|
201
229
|
})) })] }), _jsx(ComputerVerwijderenDialog, { open: !!teVerwijderen, onOpenChange: (v) => !v && setTeVerwijderen(null), computerNaam: teVerwijderen, printplekId: plekId, printers: teVerwijderenPrinters, andereplekken: andereplekken, onKlaar: () => {
|
|
202
230
|
void herlaadComputers(true);
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -66,7 +66,13 @@ export { bewaarElementen, bewaarPrinter, bewaarVersie, dupliceerLayout, layoutCo
|
|
|
66
66
|
export { jobPickstation, jobPlekLabel, jobPrintPlekId, jobWerkplek } from './lib/printQueue.js';
|
|
67
67
|
export type { PlekNamen } from './lib/printQueue.js';
|
|
68
68
|
export type { LayoutConflict, PrintJobModel, PrinterModel } from './lib/useDocumentData.js';
|
|
69
|
-
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printVerzendbriefVoorKar, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
69
|
+
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printVerzendbriefVoorKar, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, DubbelOrigineelFout, meldMisluktePrintopdracht, } from './lib/printApi.js';
|
|
70
|
+
export type { MisluktePrintopdrachtInput } from './lib/printApi.js';
|
|
71
|
+
export { leesDubbelOrigineel, leesbareFout, type DubbelOrigineel } from './lib/foutTekst.js';
|
|
72
|
+
export { printnodeStatusLabel, PRINTNODE_STATUS_LABEL } from './lib/printnodeStatus.js';
|
|
73
|
+
export { behandelPrintNodeWebhook } from './lib/printnodeWebhook.js';
|
|
74
|
+
export { beoordeelShellAdres } from './lib/shellAdres.js';
|
|
75
|
+
export { LivePrintstatusRegel } from './components/LivePrintstatusRegel.js';
|
|
70
76
|
export type { PrintDocumentInput, PrintDocumentResult, PrintPdfInput, PrintHtmlInput, VerzendbriefVoorKarInput, JobStatus, } from './lib/printApi.js';
|
|
71
77
|
export { printDirect } from './lib/directPrint.js';
|
|
72
78
|
export type { DirectPrintOpdracht, DirectPrintResultaat } from './lib/directPrint.js';
|
package/dist-lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist-lib/index.js
CHANGED
|
@@ -51,7 +51,12 @@ export { alleEntiteiten, alleVelden, registreerEntiteit, veldRegisterSubscribe,
|
|
|
51
51
|
export { VOORBEELD_REGELS, bouwDocumentHtml, conditieVoldoet, voorbeeldContext, vulVelden } from './lib/layoutPreview.js';
|
|
52
52
|
export { bewaarElementen, bewaarPrinter, bewaarVersie, dupliceerLayout, layoutConflicten, maakLayout, maakStandaardLayout, maakPrintJob, updateJobStatus, updateLayout, useLayoutDetail, useLayouts, usePrintJobs, usePrintPlekNamen, usePrinters, useVersies, verwijderLayout, verwijderPrinter, zorgVoorFloridayLayouts } from './lib/useDocumentData.js';
|
|
53
53
|
export { jobPickstation, jobPlekLabel, jobPrintPlekId, jobWerkplek } from './lib/printQueue.js';
|
|
54
|
-
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printVerzendbriefVoorKar, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
54
|
+
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printVerzendbriefVoorKar, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, DubbelOrigineelFout, meldMisluktePrintopdracht, } from './lib/printApi.js';
|
|
55
|
+
export { leesDubbelOrigineel, leesbareFout } from './lib/foutTekst.js';
|
|
56
|
+
export { printnodeStatusLabel, PRINTNODE_STATUS_LABEL } from './lib/printnodeStatus.js';
|
|
57
|
+
export { behandelPrintNodeWebhook } from './lib/printnodeWebhook.js';
|
|
58
|
+
export { beoordeelShellAdres } from './lib/shellAdres.js';
|
|
59
|
+
export { LivePrintstatusRegel } from './components/LivePrintstatusRegel.js';
|
|
55
60
|
export { printDirect } from './lib/directPrint.js';
|
|
56
61
|
export { htmlNaarPdfBase64 } from './lib/documentPdf.js';
|
|
57
62
|
export { supabase } from './lib/supabaseClient.js';
|