@flowselections/layout-maker 1.22.3 → 1.24.0
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 +139 -139
- package/dist-lib/components/AfdrukKnop.d.ts +1 -1
- package/dist-lib/components/AfdrukKnop.d.ts.map +1 -1
- package/dist-lib/components/DocumentRouteringPage.js +1 -1
- package/dist-lib/components/DocumentSettingsPanel.d.ts.map +1 -1
- package/dist-lib/components/DocumentSettingsPanel.js +26 -2
- package/dist-lib/components/NetwerkPrintersDialog.d.ts +1 -1
- package/dist-lib/components/NetwerkPrintersDialog.d.ts.map +1 -1
- package/dist-lib/components/PakbonBuilderPage.d.ts.map +1 -1
- package/dist-lib/components/PakbonBuilderPage.js +7 -26
- package/dist-lib/components/PrinterSetupWizard.d.ts.map +1 -1
- package/dist-lib/components/PrinterSetupWizard.js +77 -30
- package/dist-lib/components/PrintersRedirectPage.d.ts +1 -1
- package/dist-lib/components/PrintersRedirectPage.js +14 -14
- package/dist-lib/components/ProductiebonBuilderPage.d.ts.map +1 -1
- package/dist-lib/components/ProductiebonBuilderPage.js +25 -2
- package/dist-lib/index.d.ts +4 -6
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +3 -4
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +9 -0
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +9 -0
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +9 -0
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/aiLayout.functions.d.ts +9 -0
- package/dist-lib/lib/aiLayout.functions.d.ts.map +1 -1
- package/dist-lib/lib/aiLayout.server.js +9 -9
- package/dist-lib/lib/browserPrint.d.ts +0 -23
- package/dist-lib/lib/browserPrint.d.ts.map +1 -1
- package/dist-lib/lib/browserPrint.js +4 -49
- package/dist-lib/lib/layoutPreview.js +7 -7
- package/dist-lib/lib/pakbonHtml.js +50 -50
- package/dist-lib/lib/papierFormaten.d.ts +30 -0
- package/dist-lib/lib/papierFormaten.d.ts.map +1 -0
- package/dist-lib/lib/papierFormaten.js +106 -0
- package/dist-lib/lib/printApi.d.ts +10 -0
- package/dist-lib/lib/printApi.d.ts.map +1 -1
- package/dist-lib/lib/printApi.js +9 -0
- package/dist-lib/lib/printQueue.server.d.ts +2 -0
- package/dist-lib/lib/printQueue.server.d.ts.map +1 -1
- package/dist-lib/lib/printQueue.server.js +86 -12
- package/dist-lib/lib/printService.functions.d.ts +36 -0
- package/dist-lib/lib/printService.functions.d.ts.map +1 -1
- package/dist-lib/lib/printService.server.d.ts +20 -0
- package/dist-lib/lib/printService.server.d.ts.map +1 -1
- package/dist-lib/lib/printService.server.js +24 -0
- package/dist-lib/lib/productiebonHtml.js +15 -15
- package/dist-lib/lib/profielHtml.js +18 -18
- package/dist-lib/lib/supabaseAdmin.server.d.ts +5 -5
- package/dist-lib/lib/supabaseAdmin.server.js +43 -43
- package/dist-lib/lib/testpagina.d.ts.map +1 -1
- package/dist-lib/lib/testpagina.js +27 -22
- package/dist-lib/lib/testprint.js +4 -4
- package/dist-lib/lib/useDocumentData.d.ts +1 -6
- package/dist-lib/lib/useDocumentData.d.ts.map +1 -1
- package/dist-lib/lib/voorbeeldPrint.d.ts +12 -0
- package/dist-lib/lib/voorbeeldPrint.d.ts.map +1 -0
- package/dist-lib/lib/voorbeeldPrint.js +42 -0
- package/package.json +1 -1
|
@@ -7,14 +7,20 @@ import { useCallback, useEffect, useMemo, useState } from "react";
|
|
|
7
7
|
import { Button, Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, Input, Label, toast, } from "@flowselections/core";
|
|
8
8
|
import { Check, CheckCircle2, FileText, Loader2, Printer, RefreshCw, Search, Tag, } from "lucide-react";
|
|
9
9
|
import { supabase } from "../lib/supabaseClient.js";
|
|
10
|
-
import {
|
|
10
|
+
import { printHtml, volgJobStatus } from "../lib/printApi.js";
|
|
11
11
|
import { netwerkPrinters } from "../lib/printService.functions.js";
|
|
12
|
+
import { printerFormaatOpties } from "../lib/papierFormaten.js";
|
|
12
13
|
import { PrintProgrammaUitleg, WerktHetNiet } from "./PrintProgrammaUitleg.js";
|
|
13
14
|
const STAPPEN = ["Printer kiezen", "Naam en locatie", "Klaar"];
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
/**
|
|
16
|
+
* De instellingen die bij de printer worden bewaard. Kent de printer zijn eigen
|
|
17
|
+
* papierformaten, dan gebruiken we de gekozen echte formaatcode; anders vallen
|
|
18
|
+
* we terug op de eenvoudige keuze papier of etiket.
|
|
19
|
+
*/
|
|
20
|
+
function instellingenVoor(gebruik, optie) {
|
|
21
|
+
if (optie)
|
|
22
|
+
return { papierformaat: optie.code };
|
|
23
|
+
return { papierformaat: gebruik === "etiket" ? "LABEL_100x62" : "A4" };
|
|
18
24
|
}
|
|
19
25
|
function Stappenbalk({ stap }) {
|
|
20
26
|
return (_jsx("div", { className: "flex items-center gap-2", children: STAPPEN.map((s, i) => (_jsxs("div", { className: "flex flex-1 items-center gap-2", children: [_jsx("div", { className: `flex h-7 w-7 shrink-0 items-center justify-center rounded-full text-xs font-medium ${i < stap
|
|
@@ -36,6 +42,9 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
36
42
|
const [locatie, setLocatie] = useState("");
|
|
37
43
|
const [gebruik, setGebruik] = useState("papier");
|
|
38
44
|
const [printerId, setPrinterId] = useState(null);
|
|
45
|
+
const [formaten, setFormaten] = useState(null);
|
|
46
|
+
const [laden, setLaden] = useState([]);
|
|
47
|
+
const [formaatCode, setFormaatCode] = useState("");
|
|
39
48
|
const zoeken = useCallback(async () => {
|
|
40
49
|
setZoekt(true);
|
|
41
50
|
setFout(null);
|
|
@@ -65,6 +74,9 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
65
74
|
setLocatie("");
|
|
66
75
|
setGebruik("papier");
|
|
67
76
|
setPrinterId(null);
|
|
77
|
+
setFormaten(null);
|
|
78
|
+
setLaden([]);
|
|
79
|
+
setFormaatCode("");
|
|
68
80
|
setZoekterm("");
|
|
69
81
|
setUitlegOpen(false);
|
|
70
82
|
return;
|
|
@@ -75,6 +87,17 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
75
87
|
setNaam(bewerken.naam);
|
|
76
88
|
setLocatie(bewerken.locatie ?? "");
|
|
77
89
|
setGebruik(bewerken.papierformaat === "label" ? "etiket" : "papier");
|
|
90
|
+
setFormaatCode(bewerken.papierformaat && bewerken.papierformaat !== "label" ? bewerken.papierformaat : "");
|
|
91
|
+
void (async () => {
|
|
92
|
+
const { data } = await supabase
|
|
93
|
+
.from("printers")
|
|
94
|
+
.select("ondersteunde_formaten, ondersteunde_laden")
|
|
95
|
+
.eq("id", bewerken.id)
|
|
96
|
+
.maybeSingle();
|
|
97
|
+
const rij = data;
|
|
98
|
+
setFormaten(rij?.ondersteunde_formaten ?? null);
|
|
99
|
+
setLaden(Array.isArray(rij?.ondersteunde_laden) ? rij.ondersteunde_laden : []);
|
|
100
|
+
})();
|
|
78
101
|
return;
|
|
79
102
|
}
|
|
80
103
|
void zoeken();
|
|
@@ -88,9 +111,16 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
88
111
|
const kiesPrinter = (p) => {
|
|
89
112
|
setGekozen(p);
|
|
90
113
|
setNaam(p.naam);
|
|
91
|
-
setLocatie(
|
|
114
|
+
setLocatie("");
|
|
115
|
+
setFormaten(p.formaten ?? null);
|
|
116
|
+
setLaden(Array.isArray(p.laden) ? p.laden : []);
|
|
117
|
+
const opties = printerFormaatOpties(p.formaten ?? null);
|
|
118
|
+
const voorkeur = opties.find((o) => o.code === "A4") ?? opties[0];
|
|
119
|
+
setFormaatCode(voorkeur?.code ?? "");
|
|
92
120
|
setStap(1);
|
|
93
121
|
};
|
|
122
|
+
const formaatOpties = useMemo(() => printerFormaatOpties(formaten), [formaten]);
|
|
123
|
+
const gekozenFormaat = formaatOpties.find((o) => o.code === formaatCode) ?? null;
|
|
94
124
|
const opslaan = async () => {
|
|
95
125
|
const eindnaam = naam.trim() || gekozen?.naam || "";
|
|
96
126
|
if (!eindnaam) {
|
|
@@ -105,7 +135,8 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
105
135
|
.update({
|
|
106
136
|
naam: eindnaam,
|
|
107
137
|
locatie: locatie.trim() || null,
|
|
108
|
-
...instellingenVoor(gebruik),
|
|
138
|
+
...instellingenVoor(gebruik, gekozenFormaat),
|
|
139
|
+
...(formaten ? { ondersteunde_formaten: formaten, ondersteunde_laden: laden, formaten_bijgewerkt_op: new Date().toISOString() } : {}),
|
|
109
140
|
})
|
|
110
141
|
.eq("id", bewerken.id);
|
|
111
142
|
if (error)
|
|
@@ -124,7 +155,8 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
124
155
|
systeemnaam: gekozen?.naam ?? eindnaam,
|
|
125
156
|
locatie: locatie.trim() || null,
|
|
126
157
|
extern_printer_id: gekozen?.id ?? null,
|
|
127
|
-
...instellingenVoor(gebruik),
|
|
158
|
+
...instellingenVoor(gebruik, gekozenFormaat),
|
|
159
|
+
...(formaten ? { ondersteunde_formaten: formaten, ondersteunde_laden: laden, formaten_bijgewerkt_op: new Date().toISOString() } : {}),
|
|
128
160
|
})
|
|
129
161
|
.select("id")
|
|
130
162
|
.single();
|
|
@@ -142,30 +174,44 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
142
174
|
}
|
|
143
175
|
};
|
|
144
176
|
const [testStatus, setTestStatus] = useState("leeg");
|
|
177
|
+
const [testMelding, setTestMelding] = useState("");
|
|
145
178
|
const testpagina = async () => {
|
|
179
|
+
if (!printerId) {
|
|
180
|
+
toast.error("De printer is nog niet opgeslagen");
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
146
183
|
setTestStatus("bezig");
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
const
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
documentnaam: "Testpagina",
|
|
154
|
-
html,
|
|
155
|
-
printerId: printerId ?? undefined,
|
|
156
|
-
};
|
|
184
|
+
setTestMelding("");
|
|
185
|
+
const maat = gekozenFormaat ? `${gekozenFormaat.breedte} × ${gekozenFormaat.hoogte} mm` : "standaardformaat";
|
|
186
|
+
const html = `<div style="padding:15mm;font-family:Arial,Helvetica,sans-serif;font-size:12pt">
|
|
187
|
+
<h1 style="font-size:20pt;margin:0 0 6mm">Testpagina</h1>
|
|
188
|
+
<p style="margin:0 0 3mm">Deze pagina hoort uit: <strong>${naam}</strong></p>
|
|
189
|
+
<p style="margin:0">Papier: ${maat} — ${new Date().toLocaleString("nl-NL")}</p></div>`;
|
|
157
190
|
try {
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
191
|
+
const { jobId } = await printHtml({
|
|
192
|
+
documenttype: "vrij",
|
|
193
|
+
documentnaam: "Testpagina",
|
|
194
|
+
html,
|
|
195
|
+
printerId,
|
|
196
|
+
payload: { is_testpagina: true, test_id: `wizard-${Date.now()}` },
|
|
197
|
+
});
|
|
198
|
+
const stop = volgJobStatus(jobId, (st) => {
|
|
199
|
+
if (st.status === "voltooid") {
|
|
200
|
+
setTestStatus("gelukt");
|
|
201
|
+
setTestMelding(`Verstuurd naar ${naam}${gekozenFormaat ? ` op ${gekozenFormaat.label}` : ""}.`);
|
|
202
|
+
stop();
|
|
203
|
+
}
|
|
204
|
+
else if (st.status === "mislukt") {
|
|
205
|
+
setTestStatus("fout");
|
|
206
|
+
setTestMelding(st.foutmelding ?? "");
|
|
207
|
+
stop();
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
setTimeout(() => stop(), 60000);
|
|
166
211
|
}
|
|
167
|
-
catch {
|
|
212
|
+
catch (e) {
|
|
168
213
|
setTestStatus("fout");
|
|
214
|
+
setTestMelding(e instanceof Error ? e.message : "");
|
|
169
215
|
}
|
|
170
216
|
};
|
|
171
217
|
const opnieuw = () => {
|
|
@@ -178,12 +224,13 @@ export function PrinterSetupWizard({ open, onOpenChange, onKlaar, computerFilter
|
|
|
178
224
|
void zoeken();
|
|
179
225
|
};
|
|
180
226
|
return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { className: "max-h-[85vh] overflow-y-auto sm:max-w-xl", children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { children: bewerken ? "Naam en locatie wijzigen" : "Printer toevoegen" }), _jsx(DialogDescription, { children: bewerken
|
|
181
|
-
? "Pas de naam, de
|
|
227
|
+
? "Pas de naam, de omschrijving en het standaardformaat aan."
|
|
182
228
|
: "Kies uw printer, geef hem een herkenbare naam en druk een testpagina af." })] }), !bewerken && _jsx(Stappenbalk, { stap: stap }), stap === 0 && (_jsxs("div", { className: "space-y-4", children: [lijst.length > 6 && (_jsxs("div", { className: "relative", children: [_jsx(Search, { className: "text-muted-foreground absolute top-2.5 left-3 h-4 w-4" }), _jsx(Input, { className: "pl-9", value: zoekterm, placeholder: "Zoek op printer of computer", onChange: (e) => setZoekterm(e.target.value) })] })), zoekt && (_jsxs("p", { className: "text-muted-foreground flex items-center gap-2 text-sm", children: [_jsx(Loader2, { className: "h-4 w-4 animate-spin" }), " Printers zoeken\u2026"] })), !zoekt && fout && _jsx("p", { className: "text-destructive text-sm", children: fout }), !zoekt && zichtbaar.length > 0 && (_jsx("div", { className: "grid gap-2 sm:grid-cols-2", children: zichtbaar.map((p) => {
|
|
183
229
|
const al = bekendeExterneIds.includes(p.id);
|
|
184
230
|
return (_jsx("button", { type: "button", disabled: al, onClick: () => kiesPrinter(p), className: `rounded-xl border p-4 text-left transition ${al ? "opacity-60" : "hover:border-primary/50 hover:bg-accent/40"}`, children: _jsxs("div", { className: "flex items-start gap-3", children: [_jsx(Printer, { className: "text-muted-foreground mt-0.5 h-5 w-5 shrink-0" }), _jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: "truncate text-sm font-medium", children: p.naam }), _jsx("p", { className: "text-muted-foreground truncate text-xs", children: p.computer }), _jsxs("span", { className: "mt-2 flex items-center gap-1.5 text-xs", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${p.online ? "bg-primary" : "bg-muted-foreground/40"}` }), al ? "Al toegevoegd" : p.online ? "Beschikbaar" : "Niet aan"] })] })] }) }, p.id));
|
|
185
|
-
}) })), !zoekt && zichtbaar.length === 0 && _jsx(PrintProgrammaUitleg, {}), !zoekt && zichtbaar.length > 0 && (_jsxs("div", { className: "space-y-3", children: [_jsx("button", { type: "button", className: "text-muted-foreground hover:text-foreground text-sm underline", onClick: () => setUitlegOpen((v) => !v), children: "Ik zie mijn printer niet" }), uitlegOpen && _jsx(PrintProgrammaUitleg, { compact: true })] })), _jsx("div", { className: "flex justify-between", children: _jsxs(Button, { variant: "ghost", onClick: () => void zoeken(), disabled: zoekt, children: [_jsx(RefreshCw, { className: "mr-2 h-4 w-4" }), " Opnieuw zoeken"] }) })] })), stap === 1 && (_jsxs("div", { className: "grid gap-5 sm:grid-cols-[1fr_200px]", children: [_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "Weergavenaam" }), _jsx(Input, { value: naam, placeholder: "Bijvoorbeeld: pakbonprinter voorin", onChange: (e) => setNaam(e.target.value) })] }), _jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "
|
|
231
|
+
}) })), !zoekt && zichtbaar.length === 0 && _jsx(PrintProgrammaUitleg, {}), !zoekt && zichtbaar.length > 0 && (_jsxs("div", { className: "space-y-3", children: [_jsx("button", { type: "button", className: "text-muted-foreground hover:text-foreground text-sm underline", onClick: () => setUitlegOpen((v) => !v), children: "Ik zie mijn printer niet" }), uitlegOpen && _jsx(PrintProgrammaUitleg, { compact: true })] })), _jsx("div", { className: "flex justify-between", children: _jsxs(Button, { variant: "ghost", onClick: () => void zoeken(), disabled: zoekt, children: [_jsx(RefreshCw, { className: "mr-2 h-4 w-4" }), " Opnieuw zoeken"] }) })] })), stap === 1 && (_jsxs("div", { className: "grid gap-5 sm:grid-cols-[1fr_200px]", children: [_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "Weergavenaam" }), _jsx(Input, { value: naam, placeholder: "Bijvoorbeeld: pakbonprinter voorin", onChange: (e) => setNaam(e.target.value) })] }), _jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "Omschrijving (optioneel)" }), _jsx("p", { className: "text-muted-foreground text-xs", children: "Waar staat deze printer? Bijvoorbeeld: magazijn achter." }), _jsx(Input, { value: locatie, placeholder: "Bijvoorbeeld: magazijn achter", onChange: (e) => setLocatie(e.target.value) }), bekendeLocaties.length > 0 && (_jsx("div", { className: "flex flex-wrap gap-2 pt-1", children: bekendeLocaties.slice(0, 6).map((l) => (_jsx("button", { type: "button", onClick: () => setLocatie(l), className: "hover:bg-accent rounded-full border px-3 py-1 text-xs", children: l }, l))) }))] }), formaatOpties.length > 0 ? (_jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "Standaardformaat van deze printer" }), _jsxs("p", { className: "text-muted-foreground text-xs", children: ["Deze printer kan: ", formaatOpties.map((o) => o.label.split(" (")[0]).join(", "), "."] }), formaatOpties.length === 1 ? (_jsx("p", { className: "text-sm", children: formaatOpties[0].label })) : (_jsx("div", { className: "grid gap-2 sm:grid-cols-2", children: formaatOpties.map((o) => (_jsxs("button", { type: "button", onClick: () => setFormaatCode(o.code), className: `hover:bg-accent rounded-lg border p-3 text-left transition ${formaatCode === o.code ? "border-primary bg-accent" : ""}`, children: [o.breedte <= 120 && o.hoogte <= 220 ? (_jsx(Tag, { className: "text-muted-foreground mb-1 h-4 w-4" })) : (_jsx(FileText, { className: "text-muted-foreground mb-1 h-4 w-4" })), _jsx("p", { className: "text-sm font-medium", children: o.label.split(" (")[0] }), _jsxs("p", { className: "text-muted-foreground text-xs", children: [o.breedte, " \u00D7 ", o.hoogte, " mm"] })] }, o.code))) }))] })) : (_jsxs("div", { className: "space-y-2", children: [_jsx(Label, { children: "Wat gaat deze printer afdrukken?" }), _jsx("p", { className: "text-muted-foreground text-xs", children: "De formaten van deze printer konden niet worden opgehaald." }), _jsx("div", { className: "grid grid-cols-2 gap-3", children: [
|
|
186
232
|
{ code: "papier", label: "Papier (A4)", sub: "Gewone documenten", Icon: FileText },
|
|
187
233
|
{ code: "etiket", label: "Etiketten", sub: "Stickers en labels", Icon: Tag },
|
|
188
|
-
].map((o) => (_jsxs("button", { type: "button", onClick: () => setGebruik(o.code), className: `hover:bg-accent rounded-lg border p-4 text-left transition ${gebruik === o.code ? "border-primary bg-accent" : ""}`, children: [_jsx(o.Icon, { className: "text-muted-foreground mb-2 h-5 w-5" }), _jsx("p", { className: "text-sm font-medium", children: o.label }), _jsx("p", { className: "text-muted-foreground text-xs", children: o.sub })] }, o.code))) })] }), _jsxs("div", { className: "flex justify-between", children: [!bewerken ? (_jsx(Button, { variant: "ghost", onClick: () => setStap(0), children: "Terug" })) : (_jsx("span", {})), _jsx(Button, { disabled: bezig, onClick: () => void opslaan(), children: bewerken ? "Opslaan" : "Opslaan en verder" })] })] }), _jsxs("div", { className: "hidden sm:block", children: [_jsx("p", { className: "text-muted-foreground mb-2 text-xs", children: "Zo komt hij in de lijst:" }), _jsxs("div", { className: "bg-card rounded-xl border p-3", children: [_jsx(Printer, { className: "text-muted-foreground mb-2 h-4 w-4" }), _jsx("p", { className: "truncate text-sm font-medium", children: naam || "Naam van de printer" }), _jsx("p", { className: "text-muted-foreground truncate text-xs", children: locatie || "Geen
|
|
234
|
+
].map((o) => (_jsxs("button", { type: "button", onClick: () => setGebruik(o.code), className: `hover:bg-accent rounded-lg border p-4 text-left transition ${gebruik === o.code ? "border-primary bg-accent" : ""}`, children: [_jsx(o.Icon, { className: "text-muted-foreground mb-2 h-5 w-5" }), _jsx("p", { className: "text-sm font-medium", children: o.label }), _jsx("p", { className: "text-muted-foreground text-xs", children: o.sub })] }, o.code))) })] })), _jsxs("div", { className: "flex justify-between", children: [!bewerken ? (_jsx(Button, { variant: "ghost", onClick: () => setStap(0), children: "Terug" })) : (_jsx("span", {})), _jsx(Button, { disabled: bezig, onClick: () => void opslaan(), children: bewerken ? "Opslaan" : "Opslaan en verder" })] })] }), _jsxs("div", { className: "hidden sm:block", children: [_jsx("p", { className: "text-muted-foreground mb-2 text-xs", children: "Zo komt hij in de lijst:" }), _jsxs("div", { className: "bg-card rounded-xl border p-3", children: [_jsx(Printer, { className: "text-muted-foreground mb-2 h-4 w-4" }), _jsx("p", { className: "truncate text-sm font-medium", children: naam || "Naam van de printer" }), _jsx("p", { className: "text-muted-foreground truncate text-xs", children: locatie || gekozen?.computer || "Geen omschrijving" })] })] })] })), stap === 2 && (_jsxs("div", { className: "space-y-4 text-center", children: [_jsx(CheckCircle2, { className: "text-primary mx-auto h-10 w-10" }), _jsxs("div", { children: [_jsx("p", { className: "font-medium", children: "De printer is klaar voor gebruik" }), _jsxs("p", { className: "text-muted-foreground text-sm", children: [naam, " ", locatie ? `bij ${locatie}` : "", " drukt voortaan automatisch af."] })] }), testStatus !== "leeg" && (_jsxs("p", { className: "text-muted-foreground text-sm", children: [testStatus === "bezig" && "Onderweg naar de printer…", testStatus === "gelukt" && (testMelding || "De testpagina is afgedrukt."), testStatus === "fout" &&
|
|
235
|
+
`De testpagina kon niet worden afgedrukt.${testMelding ? ` ${testMelding}` : ""}`] })), _jsxs("div", { className: "flex flex-wrap justify-center gap-2", children: [_jsx(Button, { variant: "outline", onClick: () => void testpagina(), children: "Testpagina afdrukken" }), _jsx(Button, { variant: "ghost", onClick: opnieuw, children: "Nog een printer toevoegen" }), _jsx(Button, { onClick: () => onOpenChange(false), children: "Klaar" })] }), _jsx(WerktHetNiet, {})] }))] }) }));
|
|
189
236
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function PrintersRedirectPage(): import("react").JSX.Element;
|
|
1
|
+
export declare function PrintersRedirectPage(): import("react").JSX.Element;
|
|
2
2
|
//# sourceMappingURL=PrintersRedirectPage.d.ts.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
// ============================================================================
|
|
3
|
-
// src/components/PrintersRedirectPage.tsx — oude URL /layouts-printers/printers
|
|
4
|
-
// stuurt door naar de samengevoegde pagina Printplekken.
|
|
5
|
-
// ============================================================================
|
|
6
|
-
import { useEffect } from "react";
|
|
7
|
-
import { useNavigate } from "@tanstack/react-router";
|
|
8
|
-
export function PrintersRedirectPage() {
|
|
9
|
-
const navigate = useNavigate();
|
|
10
|
-
useEffect(() => {
|
|
11
|
-
void navigate({ to: "/layouts-printers/printplekken", replace: true });
|
|
12
|
-
}, [navigate]);
|
|
13
|
-
return _jsx("p", { className: "text-muted-foreground p-6 text-sm", children: "Doorsturen naar Printplekken\u2026" });
|
|
14
|
-
}
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// ============================================================================
|
|
3
|
+
// src/components/PrintersRedirectPage.tsx — oude URL /layouts-printers/printers
|
|
4
|
+
// stuurt door naar de samengevoegde pagina Printplekken.
|
|
5
|
+
// ============================================================================
|
|
6
|
+
import { useEffect } from "react";
|
|
7
|
+
import { useNavigate } from "@tanstack/react-router";
|
|
8
|
+
export function PrintersRedirectPage() {
|
|
9
|
+
const navigate = useNavigate();
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
void navigate({ to: "/layouts-printers/printplekken", replace: true });
|
|
12
|
+
}, [navigate]);
|
|
13
|
+
return _jsx("p", { className: "text-muted-foreground p-6 text-sm", children: "Doorsturen naar Printplekken\u2026" });
|
|
14
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductiebonBuilderPage.d.ts","sourceRoot":"","sources":["../../src/components/ProductiebonBuilderPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProductiebonBuilderPage.d.ts","sourceRoot":"","sources":["../../src/components/ProductiebonBuilderPage.tsx"],"names":[],"mappings":"AAsBA,+EAA+E;AAC/E,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,+BA0I7F"}
|
|
@@ -2,19 +2,22 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useEffect, useMemo, useState } from "react";
|
|
3
3
|
import { Link } from "@tanstack/react-router";
|
|
4
4
|
import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, toast, } from "@flowselections/core";
|
|
5
|
-
import { ArrowLeft, Save } from "lucide-react";
|
|
5
|
+
import { ArrowLeft, Loader2, Printer, Save } from "lucide-react";
|
|
6
6
|
import { ProductiebonBlokkenPanel } from "./ProductiebonBlokkenPanel.js";
|
|
7
7
|
import { ProductiebonPreview } from "./ProductiebonPreview.js";
|
|
8
8
|
import { FormaatOrientatieBar } from "./FormaatOrientatieBar.js";
|
|
9
9
|
import { leesProductiebonConfig } from "../lib/productiebonBuilder.js";
|
|
10
10
|
import { updateLayout, useLayoutDetail } from "../lib/useDocumentData.js";
|
|
11
11
|
import { useLayoutIdParam } from "../lib/useLayoutIdParam.js";
|
|
12
|
+
import { renderProductiebonDocument } from "../lib/productiebonHtml.js";
|
|
13
|
+
import { voorbeeldPrint } from "../lib/voorbeeldPrint.js";
|
|
12
14
|
/** Eigen editor voor de productiebon: modulaire blokken met live voorbeeld. */
|
|
13
15
|
export function ProductiebonBuilderPage({ layoutId: layoutIdProp } = {}) {
|
|
14
16
|
const layoutId = useLayoutIdParam(layoutIdProp);
|
|
15
17
|
const { layout, setLayout, loading } = useLayoutDetail(layoutId ?? "");
|
|
16
18
|
const [config, setConfig] = useState(null);
|
|
17
19
|
const [bezig, setBezig] = useState(false);
|
|
20
|
+
const [printen, setPrinten] = useState(false);
|
|
18
21
|
useEffect(() => {
|
|
19
22
|
if (layout)
|
|
20
23
|
setConfig(leesProductiebonConfig(layout.config));
|
|
@@ -38,11 +41,31 @@ export function ProductiebonBuilderPage({ layoutId: layoutIdProp } = {}) {
|
|
|
38
41
|
setBezig(false);
|
|
39
42
|
}
|
|
40
43
|
};
|
|
44
|
+
const voorbeeldPrinten = async () => {
|
|
45
|
+
if (!config)
|
|
46
|
+
return;
|
|
47
|
+
setPrinten(true);
|
|
48
|
+
try {
|
|
49
|
+
const html = renderProductiebonDocument({ productiebon: config }, {}, { breedteMm: breedte, hoogteMm: hoogte, titel: layout?.naam ?? "Productiebon" });
|
|
50
|
+
await voorbeeldPrint({
|
|
51
|
+
id: layout?.id ?? layoutId,
|
|
52
|
+
naam: layout?.naam,
|
|
53
|
+
documenttype: layout?.documenttype ?? "productiebon",
|
|
54
|
+
papierformaat: layout?.papierformaat,
|
|
55
|
+
}, html);
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
toast.error(e instanceof Error ? e.message : "Voorbeeld printen mislukt");
|
|
59
|
+
}
|
|
60
|
+
finally {
|
|
61
|
+
setPrinten(false);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
41
64
|
if (!layoutId)
|
|
42
65
|
return (_jsxs("main", { className: "p-6 text-sm text-muted-foreground", children: ["Kies eerst een layout via ", _jsx(Link, { to: "/layouts-printers", className: "underline", children: "Layouts" }), "."] }));
|
|
43
66
|
if (loading)
|
|
44
67
|
return _jsx("main", { className: "p-6 text-sm text-muted-foreground", children: "Layout laden\u2026" });
|
|
45
68
|
if (!layout || !config)
|
|
46
69
|
return _jsx("main", { className: "p-6 text-sm text-muted-foreground", children: "Layout niet gevonden." });
|
|
47
|
-
return (_jsxs("main", { className: "space-y-4 p-6", children: [_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(Button, { variant: "ghost", size: "sm", asChild: true, children: _jsxs(Link, { to: "/layouts-printers", children: [_jsx(ArrowLeft, { className: "mr-2 h-4 w-4" }), " Layouts"] }) }), _jsxs("div", { children: [_jsx("h1", { className: "text-lg font-semibold", children: layout.naam }), _jsxs("p", { className: "text-xs text-muted-foreground", children: ["Productiebon opbouwen uit blokken \u00B7 ", config.blokken.length, " blokken"] })] })] }), _jsxs(Button, { size: "sm", onClick: opslaan, disabled: bezig, children: [_jsx(Save, { className: "mr-2 h-4 w-4" }), " Opslaan"] })] }), _jsx(FormaatOrientatieBar, { layout: layout, onChange: (patch) => setLayout((l) => (l ? { ...l, ...patch } : l)) }), _jsxs("div", { className: "grid items-start gap-4 lg:grid-cols-[400px_1fr]", children: [_jsxs(Card, { className: "flex h-[calc(100vh-14rem)] min-h-[420px] flex-col overflow-hidden lg:sticky lg:top-4", children: [_jsxs(CardHeader, { className: "pb-3", children: [_jsx(CardTitle, { className: "text-base", children: "Blokken" }), _jsx(CardDescription, { children: "Voeg blokken toe, wijzig de volgorde en stel elk blok afzonderlijk in." })] }), _jsx(CardContent, { className: "min-h-0 flex-1 overflow-y-auto", children: _jsx(ProductiebonBlokkenPanel, { config: config, onChange: setConfig }) })] }), _jsxs(Card, { className: "flex h-[calc(100vh-14rem)] min-h-[420px] flex-col overflow-hidden", children: [_jsxs(CardHeader, { className: "flex-row items-center justify-between space-y-0 pb-3", children: [_jsxs("div", { children: [_jsx(CardTitle, { className: "text-base", children: "Live voorbeeld" }), _jsx(CardDescription, { children: "Voorbeeldproductieorder met samenstelling en belading." })] }), _jsx(Badge, { variant: "secondary", children: "Direct bijgewerkt" })] }), _jsx(CardContent, { className: "min-h-0 flex-1 overflow-hidden", children: _jsx("div", { className: "h-full overflow-auto rounded-md border bg-muted/30 p-2", children: _jsx(ProductiebonPreview, { config: config, breedteMm: breedte, hoogteMm: hoogte }) }) })] })] })] }));
|
|
70
|
+
return (_jsxs("main", { className: "space-y-4 p-6", children: [_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(Button, { variant: "ghost", size: "sm", asChild: true, children: _jsxs(Link, { to: "/layouts-printers", children: [_jsx(ArrowLeft, { className: "mr-2 h-4 w-4" }), " Layouts"] }) }), _jsxs("div", { children: [_jsx("h1", { className: "text-lg font-semibold", children: layout.naam }), _jsxs("p", { className: "text-xs text-muted-foreground", children: ["Productiebon opbouwen uit blokken \u00B7 ", config.blokken.length, " blokken"] })] })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsxs(Button, { size: "sm", variant: "outline", onClick: voorbeeldPrinten, disabled: printen, children: [printen ? (_jsx(Loader2, { className: "mr-2 h-4 w-4 animate-spin" })) : (_jsx(Printer, { className: "mr-2 h-4 w-4" })), "Voorbeeld printen"] }), _jsxs(Button, { size: "sm", onClick: opslaan, disabled: bezig, children: [_jsx(Save, { className: "mr-2 h-4 w-4" }), " Opslaan"] })] })] }), _jsx(FormaatOrientatieBar, { layout: layout, onChange: (patch) => setLayout((l) => (l ? { ...l, ...patch } : l)) }), _jsxs("div", { className: "grid items-start gap-4 lg:grid-cols-[400px_1fr]", children: [_jsxs(Card, { className: "flex h-[calc(100vh-14rem)] min-h-[420px] flex-col overflow-hidden lg:sticky lg:top-4", children: [_jsxs(CardHeader, { className: "pb-3", children: [_jsx(CardTitle, { className: "text-base", children: "Blokken" }), _jsx(CardDescription, { children: "Voeg blokken toe, wijzig de volgorde en stel elk blok afzonderlijk in." })] }), _jsx(CardContent, { className: "min-h-0 flex-1 overflow-y-auto", children: _jsx(ProductiebonBlokkenPanel, { config: config, onChange: setConfig }) })] }), _jsxs(Card, { className: "flex h-[calc(100vh-14rem)] min-h-[420px] flex-col overflow-hidden", children: [_jsxs(CardHeader, { className: "flex-row items-center justify-between space-y-0 pb-3", children: [_jsxs("div", { children: [_jsx(CardTitle, { className: "text-base", children: "Live voorbeeld" }), _jsx(CardDescription, { children: "Voorbeeldproductieorder met samenstelling en belading." })] }), _jsx(Badge, { variant: "secondary", children: "Direct bijgewerkt" })] }), _jsx(CardContent, { className: "min-h-0 flex-1 overflow-hidden", children: _jsx("div", { className: "h-full overflow-auto rounded-md border bg-muted/30 p-2", children: _jsx(ProductiebonPreview, { config: config, breedteMm: breedte, hoogteMm: hoogte }) }) })] })] })] }));
|
|
48
71
|
}
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export { drukTestpaginaAf } from './lib/testpagina.js';
|
|
|
14
14
|
export { TestprintDialog } from './components/TestprintDialog.js';
|
|
15
15
|
export { bepaalTestOverzicht, verstuurTestprint } from './lib/testprint.js';
|
|
16
16
|
export type { TestprintContext, TestprintRegel, TestprintResultaat } from './lib/testprint.js';
|
|
17
|
+
export { bedoeldePrinter, formaatDef, paginaCss } from './lib/browserPrint.js';
|
|
18
|
+
export type { Orientatie, PrinterKeuze } from './lib/browserPrint.js';
|
|
17
19
|
export { PrintQueuePage } from './components/PrintQueuePage.js';
|
|
18
20
|
export { AiLayoutImportDialog } from './components/AiLayoutImportDialog.js';
|
|
19
21
|
export { LogosPage, LogoThumbnail } from './components/LogosPage.js';
|
|
@@ -56,17 +58,12 @@ export { bewaarElementen, bewaarPrinter, bewaarVersie, dupliceerLayout, maakLayo
|
|
|
56
58
|
export { jobPickstation, jobPlekLabel, jobPrintPlekId, jobWerkplek } from './lib/printQueue.js';
|
|
57
59
|
export type { PlekNamen } from './lib/printQueue.js';
|
|
58
60
|
export type { PrintJobModel, PrinterModel } from './lib/useDocumentData.js';
|
|
59
|
-
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printerVoorWerkplek, printerVoorDocumenttype, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
61
|
+
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
60
62
|
export type { PrintDocumentInput, PrintDocumentResult, PrintPdfInput, PrintHtmlInput, JobStatus, } from './lib/printApi.js';
|
|
61
|
-
export { bedoeldePrinter, drukAf, formaatDef, paginaCss } from './lib/browserPrint.js';
|
|
62
|
-
export type { AfdrukOpdracht, AfdrukResultaat, Orientatie, PrinterKeuze } from './lib/browserPrint.js';
|
|
63
63
|
export { printDirect } from './lib/directPrint.js';
|
|
64
64
|
export type { DirectPrintOpdracht, DirectPrintResultaat } from './lib/directPrint.js';
|
|
65
65
|
export { htmlNaarPdfBase64 } from './lib/documentPdf.js';
|
|
66
66
|
export type { PdfOpdracht } from './lib/documentPdf.js';
|
|
67
|
-
export { NetwerkPrintersDialog } from './components/NetwerkPrintersDialog.js';
|
|
68
|
-
export { AfdrukKnop } from './components/AfdrukKnop.js';
|
|
69
|
-
export type { AfdrukKnopProps } from './components/AfdrukKnop.js';
|
|
70
67
|
export { supabase } from './lib/supabaseClient.js';
|
|
71
68
|
export { useLayoutIdParam } from './lib/useLayoutIdParam.js';
|
|
72
69
|
export { PaginaDocument } from './components/PaginaDocument.js';
|
|
@@ -82,4 +79,5 @@ export { bewerkPrintplek, koppelBronAanPrintplek, koppelComputerAanPrintplek, ma
|
|
|
82
79
|
export type { Printplek, PrintplekComputer, PrintplekDocumentPrinter, PrintplekKoppeling, } from './lib/printplekken.js';
|
|
83
80
|
export { GeenPrinterFout } from './lib/printApi.js';
|
|
84
81
|
export declare const layoutmodule: FlowModule;
|
|
82
|
+
export { voorbeeldPrint } from './lib/voorbeeldPrint.js';
|
|
85
83
|
//# 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":"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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
|
@@ -15,6 +15,7 @@ export { useNetwerkPrinters } from './lib/useNetwerkPrinters.js';
|
|
|
15
15
|
export { drukTestpaginaAf } from './lib/testpagina.js';
|
|
16
16
|
export { TestprintDialog } from './components/TestprintDialog.js';
|
|
17
17
|
export { bepaalTestOverzicht, verstuurTestprint } from './lib/testprint.js';
|
|
18
|
+
export { bedoeldePrinter, formaatDef, paginaCss } from './lib/browserPrint.js';
|
|
18
19
|
export { PrintQueuePage } from './components/PrintQueuePage.js';
|
|
19
20
|
export { AiLayoutImportDialog } from './components/AiLayoutImportDialog.js';
|
|
20
21
|
export { LogosPage, LogoThumbnail } from './components/LogosPage.js';
|
|
@@ -44,12 +45,9 @@ export { alleEntiteiten, alleVelden, registreerEntiteit, veldRegisterSubscribe,
|
|
|
44
45
|
export { VOORBEELD_REGELS, bouwDocumentHtml, conditieVoldoet, voorbeeldContext, vulVelden } from './lib/layoutPreview.js';
|
|
45
46
|
export { bewaarElementen, bewaarPrinter, bewaarVersie, dupliceerLayout, maakLayout, maakPrintJob, toggleKoppeling, updateJobStatus, updateLayout, useLayoutDetail, useLayouts, usePrintJobs, usePrintPlekNamen, usePrinters, useVersies, verwijderLayout, verwijderPrinter, zorgVoorFloridayLayouts } from './lib/useDocumentData.js';
|
|
46
47
|
export { jobPickstation, jobPlekLabel, jobPrintPlekId, jobWerkplek } from './lib/printQueue.js';
|
|
47
|
-
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printerVoorWerkplek, printerVoorDocumenttype, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
48
|
-
export { bedoeldePrinter, drukAf, formaatDef, paginaCss } from './lib/browserPrint.js';
|
|
48
|
+
export { beschikbareLayouts, beschikbarePrinters, printDocument, printPdf, printHtml, printerVoorWerkplek, printerVoorDocumenttype, printerVoorLayout, volgJobStatus, DubbeleAanvraagFout, } from './lib/printApi.js';
|
|
49
49
|
export { printDirect } from './lib/directPrint.js';
|
|
50
50
|
export { htmlNaarPdfBase64 } from './lib/documentPdf.js';
|
|
51
|
-
export { NetwerkPrintersDialog } from './components/NetwerkPrintersDialog.js';
|
|
52
|
-
export { AfdrukKnop } from './components/AfdrukKnop.js';
|
|
53
51
|
export { supabase } from './lib/supabaseClient.js';
|
|
54
52
|
export { useLayoutIdParam } from './lib/useLayoutIdParam.js';
|
|
55
53
|
export { PaginaDocument } from './components/PaginaDocument.js';
|
|
@@ -78,3 +76,4 @@ export const layoutmodule = {
|
|
|
78
76
|
},
|
|
79
77
|
settingsCards: [],
|
|
80
78
|
};
|
|
79
|
+
export { voorbeeldPrint } from './lib/voorbeeldPrint.js';
|
|
@@ -14017,6 +14017,7 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14017
14017
|
created_at: string;
|
|
14018
14018
|
driver: string;
|
|
14019
14019
|
extern_printer_id: string | null;
|
|
14020
|
+
formaten_bijgewerkt_op: string | null;
|
|
14020
14021
|
id: string;
|
|
14021
14022
|
ip_adres: string | null;
|
|
14022
14023
|
laatst_gezien: string | null;
|
|
@@ -14024,6 +14025,8 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14024
14025
|
merk: string;
|
|
14025
14026
|
naam: string;
|
|
14026
14027
|
omschrijving: string;
|
|
14028
|
+
ondersteunde_formaten: import("./types.js").Json | null;
|
|
14029
|
+
ondersteunde_laden: import("./types.js").Json | null;
|
|
14027
14030
|
online: boolean;
|
|
14028
14031
|
papierformaat: string;
|
|
14029
14032
|
poort: number | null;
|
|
@@ -14039,6 +14042,7 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14039
14042
|
created_at?: string;
|
|
14040
14043
|
driver?: string;
|
|
14041
14044
|
extern_printer_id?: string | null;
|
|
14045
|
+
formaten_bijgewerkt_op?: string | null;
|
|
14042
14046
|
id?: string;
|
|
14043
14047
|
ip_adres?: string | null;
|
|
14044
14048
|
laatst_gezien?: string | null;
|
|
@@ -14046,6 +14050,8 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14046
14050
|
merk?: string;
|
|
14047
14051
|
naam: string;
|
|
14048
14052
|
omschrijving?: string;
|
|
14053
|
+
ondersteunde_formaten?: import("./types.js").Json | null;
|
|
14054
|
+
ondersteunde_laden?: import("./types.js").Json | null;
|
|
14049
14055
|
online?: boolean;
|
|
14050
14056
|
papierformaat?: string;
|
|
14051
14057
|
poort?: number | null;
|
|
@@ -14061,6 +14067,7 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14061
14067
|
created_at?: string;
|
|
14062
14068
|
driver?: string;
|
|
14063
14069
|
extern_printer_id?: string | null;
|
|
14070
|
+
formaten_bijgewerkt_op?: string | null;
|
|
14064
14071
|
id?: string;
|
|
14065
14072
|
ip_adres?: string | null;
|
|
14066
14073
|
laatst_gezien?: string | null;
|
|
@@ -14068,6 +14075,8 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
14068
14075
|
merk?: string;
|
|
14069
14076
|
naam?: string;
|
|
14070
14077
|
omschrijving?: string;
|
|
14078
|
+
ondersteunde_formaten?: import("./types.js").Json | null;
|
|
14079
|
+
ondersteunde_laden?: import("./types.js").Json | null;
|
|
14071
14080
|
online?: boolean;
|
|
14072
14081
|
papierformaat?: string;
|
|
14073
14082
|
poort?: number | null;
|