@flowselections/layout-maker 1.19.0 → 1.20.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/dist-lib/components/DocumentenPage.d.ts.map +1 -1
- package/dist-lib/components/DocumentenPage.js +5 -3
- package/dist-lib/components/ModuleTabs.d.ts +4 -4
- package/dist-lib/components/ModuleTabs.d.ts.map +1 -1
- package/dist-lib/components/ModuleTabs.js +4 -11
- package/dist-lib/components/PrintStatusBanner.js +1 -1
- package/dist-lib/components/PrintenPage.d.ts.map +1 -1
- package/dist-lib/components/PrintenPage.js +5 -4
- package/dist-lib/components/PrintplekDetailPage.d.ts.map +1 -1
- package/dist-lib/components/PrintplekDetailPage.js +15 -3
- package/dist-lib/components/PrintplekkenPage.d.ts.map +1 -1
- package/dist-lib/components/PrintplekkenPage.js +4 -1
- package/dist-lib/components/WerkplekConfiguratiePage.js +3 -3
- package/dist-lib/components/WerkplekkenTabel.js +1 -1
- package/dist-lib/index.d.ts +1 -3
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +2 -4
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +8 -0
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +8 -0
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +8 -0
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/aiLayout.functions.d.ts +8 -0
- package/dist-lib/lib/aiLayout.functions.d.ts.map +1 -1
- package/dist-lib/lib/printService.functions.d.ts +32 -0
- package/dist-lib/lib/printService.functions.d.ts.map +1 -1
- package/dist-lib/lib/printplekken.d.ts +15 -0
- package/dist-lib/lib/printplekken.d.ts.map +1 -1
- package/dist-lib/lib/printplekken.js +46 -0
- package/package.json +2 -7
- package/dist-lib/components/LayoutsPrintersTabPage.d.ts +0 -2
- package/dist-lib/components/LayoutsPrintersTabPage.d.ts.map +0 -1
- package/dist-lib/components/LayoutsPrintersTabPage.js +0 -32
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentenPage.d.ts","sourceRoot":"","sources":["../../src/components/DocumentenPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DocumentenPage.d.ts","sourceRoot":"","sources":["../../src/components/DocumentenPage.tsx"],"names":[],"mappings":"AAgBA,wBAAgB,cAAc,CAAC,EAAE,GAAe,EAAE,EAAE;IAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;CAAE,+BAchF"}
|
|
@@ -3,14 +3,16 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
// src/components/DocumentenPage.tsx — één menu-item "Documenten" met tabbladen
|
|
4
4
|
// voor de documentontwerpen en de logobibliotheek.
|
|
5
5
|
// ============================================================================
|
|
6
|
+
import { useState } from "react";
|
|
6
7
|
import { FileText, Image } from "lucide-react";
|
|
7
8
|
import { ModuleTabs } from "./ModuleTabs.js";
|
|
8
9
|
import { LayoutsPage } from "./LayoutsPage.js";
|
|
9
10
|
import { LogosPage } from "./LogosPage.js";
|
|
10
11
|
const TABS = [
|
|
11
|
-
{
|
|
12
|
-
{
|
|
12
|
+
{ id: "layouts", label: "Documenten", icon: FileText },
|
|
13
|
+
{ id: "logos", label: "Logo's", icon: Image },
|
|
13
14
|
];
|
|
14
15
|
export function DocumentenPage({ tab = "layouts" }) {
|
|
15
|
-
|
|
16
|
+
const [actiefTab, setActiefTab] = useState(tab);
|
|
17
|
+
return (_jsx(ModuleTabs, { titel: "Documenten", omschrijving: "Ontwerp pakbonnen, facturen, stickers en beheer de logo's die daarop staan.", tabs: TABS, actiefTab: actiefTab, onTabWijzig: (nieuwTab) => setActiefTab(nieuwTab === "logos" ? "logos" : "layouts"), children: actiefTab === "logos" ? _jsx(LogosPage, { ingebed: true }) : _jsx(LayoutsPage, { ingebed: true }) }));
|
|
16
18
|
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
2
|
import type { LucideIcon } from "lucide-react";
|
|
3
3
|
export interface ModuleTab {
|
|
4
|
+
id: string;
|
|
4
5
|
label: string;
|
|
5
|
-
href: string;
|
|
6
6
|
icon?: LucideIcon;
|
|
7
|
-
/** Extra paden die dit tabblad actief maken (bijv. detailpagina's). */
|
|
8
|
-
ook?: string[];
|
|
9
7
|
}
|
|
10
8
|
interface Props {
|
|
11
9
|
titel: string;
|
|
12
10
|
omschrijving?: string;
|
|
13
11
|
tabs: ModuleTab[];
|
|
12
|
+
actiefTab: string;
|
|
13
|
+
onTabWijzig: (tab: string) => void;
|
|
14
14
|
acties?: ReactNode;
|
|
15
15
|
children: ReactNode;
|
|
16
16
|
}
|
|
17
|
-
export declare function ModuleTabs({ titel, omschrijving, tabs, acties, children }: Props): import("react").JSX.Element;
|
|
17
|
+
export declare function ModuleTabs({ titel, omschrijving, tabs, actiefTab, onTabWijzig, acties, children, }: Props): import("react").JSX.Element;
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=ModuleTabs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleTabs.d.ts","sourceRoot":"","sources":["../../src/components/ModuleTabs.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ModuleTabs.d.ts","sourceRoot":"","sources":["../../src/components/ModuleTabs.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,WAAW,EACX,MAAM,EACN,QAAQ,GACT,EAAE,KAAK,+BAqCP"}
|
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
export function ModuleTabs({ titel, omschrijving, tabs, acties, children }) {
|
|
4
|
-
const pad = useRouterState({ select: (s) => s.location.pathname });
|
|
2
|
+
import { Button } from "@flowselections/core";
|
|
3
|
+
export function ModuleTabs({ titel, omschrijving, tabs, actiefTab, onTabWijzig, acties, children, }) {
|
|
5
4
|
const veilig = Array.isArray(tabs) ? tabs : [];
|
|
6
|
-
const isActief = (t) => {
|
|
7
|
-
const paden = [t.href, ...(Array.isArray(t.ook) ? t.ook : [])];
|
|
8
|
-
return paden.some((p) => pad === p || pad.startsWith(`${p}/`));
|
|
9
|
-
};
|
|
10
5
|
return (_jsxs("main", { className: "space-y-5 p-6", children: [_jsxs("header", { className: "flex flex-wrap items-end justify-between gap-4", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h1", { className: "truncate text-xl font-semibold", children: titel }), omschrijving && _jsx("p", { className: "text-muted-foreground text-sm", children: omschrijving })] }), acties && _jsx("div", { className: "flex flex-wrap items-center gap-2", children: acties })] }), _jsx("nav", { className: "bg-muted/50 inline-flex flex-wrap gap-1 rounded-lg p-1", children: veilig.map((t) => {
|
|
11
|
-
const actief =
|
|
6
|
+
const actief = actiefTab === t.id;
|
|
12
7
|
const Icon = t.icon;
|
|
13
|
-
return (_jsxs(
|
|
14
|
-
? "bg-background text-foreground shadow-sm"
|
|
15
|
-
: "text-muted-foreground hover:text-foreground"}`, children: [Icon && _jsx(Icon, { className: "h-4 w-4" }), t.label] }, t.href));
|
|
8
|
+
return (_jsxs(Button, { type: "button", variant: actief ? "secondary" : "ghost", size: "sm", onClick: () => onTabWijzig(t.id), "aria-pressed": actief, className: "gap-2", children: [Icon && _jsx(Icon, { className: "h-4 w-4" }), t.label] }, t.id));
|
|
16
9
|
}) }), _jsx("div", { children: children })] }));
|
|
17
10
|
}
|
|
@@ -11,5 +11,5 @@ export function PrintStatusBanner({ fout, offlineWerkplekken = [], toonWerkplekL
|
|
|
11
11
|
return null;
|
|
12
12
|
return (_jsxs("div", { className: "border-destructive/30 bg-destructive/5 text-destructive space-y-1 rounded-xl border p-4 text-sm", children: [_jsxs("p", { className: "flex items-center gap-2 font-medium", children: [_jsx(AlertTriangle, { className: "h-4 w-4" }), " Er kan nu niet worden afgedrukt"] }), fout && (_jsxs("p", { children: [fout, " ", sleutelProbleem && (_jsxs(_Fragment, { children: ["Controleer de sleutel van de printdienst bij", " ", _jsx(Link, { to: "/instellingen", className: "underline", children: "Instellingen" }), "."] }))] })), offlineWerkplekken.length > 0 && (_jsxs("p", { children: [offlineWerkplekken.length === 1
|
|
13
13
|
? `Werkplek ${offlineWerkplekken[0]} staat uit`
|
|
14
|
-
: `${offlineWerkplekken.length} werkplekken staan uit (${offlineWerkplekken.join(", ")})`, ". Opdrachten blijven wachten tot het printprogramma op die computer draait.", toonWerkplekLink && (_jsxs(_Fragment, { children: [" ", _jsx(Link, { to: "/layouts-printers/
|
|
14
|
+
: `${offlineWerkplekken.length} werkplekken staan uit (${offlineWerkplekken.join(", ")})`, ". Opdrachten blijven wachten tot het printprogramma op die computer draait.", toonWerkplekLink && (_jsxs(_Fragment, { children: [" ", _jsx(Link, { to: "/layouts-printers/printplekken", className: "underline", children: "Naar printplekken" })] }))] }))] }));
|
|
15
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrintenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintenPage.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,WAAW,CAAC,EAC1B,GAAoB,GACrB,EAAE;IACD,GAAG,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC;CACpC,+
|
|
1
|
+
{"version":3,"file":"PrintenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintenPage.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,WAAW,CAAC,EAC1B,GAAoB,GACrB,EAAE;IACD,GAAG,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC;CACpC,+BAoBA"}
|
|
@@ -3,19 +3,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
// src/components/PrintenPage.tsx — één menu-item "Printen" met tabbladen voor
|
|
4
4
|
// printplekken (plekken, computers en printers samen) en standaardregels.
|
|
5
5
|
// ============================================================================
|
|
6
|
+
import { useState } from "react";
|
|
6
7
|
import { MapPin, Route as RouteIcon } from "lucide-react";
|
|
7
8
|
import { ModuleTabs } from "./ModuleTabs.js";
|
|
8
9
|
import { PrintplekkenPage } from "./PrintplekkenPage.js";
|
|
9
10
|
import { DocumentRouteringPage } from "./DocumentRouteringPage.js";
|
|
10
11
|
const TABS = [
|
|
11
12
|
{
|
|
13
|
+
id: "printplekken",
|
|
12
14
|
label: "Printplekken",
|
|
13
|
-
href: "/layouts-printers/printplekken",
|
|
14
15
|
icon: MapPin,
|
|
15
|
-
ook: ["/layouts-printers/printers"],
|
|
16
16
|
},
|
|
17
|
-
{
|
|
17
|
+
{ id: "routering", label: "Standaardregels", icon: RouteIcon },
|
|
18
18
|
];
|
|
19
19
|
export function PrintenPage({ tab = "printplekken", }) {
|
|
20
|
-
|
|
20
|
+
const [actiefTab, setActiefTab] = useState(tab);
|
|
21
|
+
return (_jsx(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: actiefTab === "routering" ? (_jsx(DocumentRouteringPage, { ingebed: true })) : (_jsx(PrintplekkenPage, { ingebed: true })) }));
|
|
21
22
|
}
|
|
@@ -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":"AA6CA,wBAAgB,mBAAmB,gCAqVlC"}
|
|
@@ -8,7 +8,7 @@ import { useMemo, useState } from "react";
|
|
|
8
8
|
import { Badge, Button, Card, CardContent, CardDescription, CardHeader, CardTitle, Input, toast, } from "@flowselections/core";
|
|
9
9
|
import { Link, useParams } from "@tanstack/react-router";
|
|
10
10
|
import { AlertTriangle, ArrowLeft, Check, Link2, Monitor, Plus, Printer, Trash2, Wand2, X, } from "lucide-react";
|
|
11
|
-
import { bewerkPrintplek, usePrintplekken, verwijderPrintplek, } from "../lib/printplekken.js";
|
|
11
|
+
import { bewerkPrintplek, ontkoppelBron, usePrintplekken, verwijderPrintplek, } from "../lib/printplekken.js";
|
|
12
12
|
import { usePrinters } from "../lib/useDocumentData.js";
|
|
13
13
|
import { useNetwerkPrinters } from "../lib/useNetwerkPrinters.js";
|
|
14
14
|
import { useComputers } from "./ComputersLijst.js";
|
|
@@ -47,7 +47,19 @@ export function PrintplekDetailPage() {
|
|
|
47
47
|
const overige = DOCUMENT_TYPES.filter((d) => !regelVoor(d.value));
|
|
48
48
|
const zichtbaar = alleDocumenten ? DOCUMENT_TYPES : inGebruik;
|
|
49
49
|
const bronnen = koppelingen.filter((k) => k.print_plek_id === plekId);
|
|
50
|
+
const bestaandePlekIds = new Set(plekken.map((p) => p.id));
|
|
51
|
+
const weeskoppelingen = koppelingen.filter((k) => !bestaandePlekIds.has(k.print_plek_id));
|
|
50
52
|
const onvolledig = eigenComputers.length === 0 || !regels.some((r) => r.print_plek_id === plekId && r.printer_id);
|
|
53
|
+
const ontkoppel = async (bron, bronId) => {
|
|
54
|
+
try {
|
|
55
|
+
await ontkoppelBron(bron, bronId);
|
|
56
|
+
await reload(true);
|
|
57
|
+
toast.success("Koppeling verwijderd");
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
toast.error("Ontkoppelen mislukt");
|
|
61
|
+
}
|
|
62
|
+
};
|
|
51
63
|
if (!plek) {
|
|
52
64
|
return (_jsxs("main", { className: "space-y-4 p-6", children: [_jsx(Button, { variant: "ghost", asChild: true, children: _jsxs(Link, { to: "/layouts-printers/printplekken", children: [_jsx(ArrowLeft, { className: "mr-2 h-4 w-4" }), " Terug"] }) }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Deze printplek bestaat niet (meer)." })] }));
|
|
53
65
|
}
|
|
@@ -65,7 +77,7 @@ export function PrintplekDetailPage() {
|
|
|
65
77
|
}, children: [_jsx(Trash2, { className: "mr-2 h-4 w-4" }), " Verwijderen"] })] })] }), _jsx(PrintplekWizard, { open: wizardOpen, onOpenChange: setWizardOpen, printplekId: plekId, onKlaar: () => void reload() }), _jsxs(Card, { children: [_jsxs(CardHeader, { 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: "Computers voeg je toe of haal je weg met de wizard." })] }), _jsx(CardContent, { className: "space-y-3", children: eigenComputers.length === 0 ? (_jsx("p", { className: "text-muted-foreground text-sm", children: "Nog geen computers gekoppeld." })) : (_jsx("div", { className: "flex flex-wrap gap-2", children: eigenComputers.map((c) => {
|
|
66
78
|
const aan = computers.find((k) => k.naam === c.computer_naam)?.online ?? false;
|
|
67
79
|
return (_jsxs("span", { className: "flex items-center gap-2 rounded-full border px-3 py-1 text-sm", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${aan ? "bg-emerald-500" : "bg-muted-foreground"}` }), c.computer_naam] }, c.id));
|
|
68
|
-
}) })) })] }), _jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Printer, { className: "h-4 w-4" }), " Printers op deze plek"] }), _jsx(CardDescription, { children: "Test een printer om te zien of hij goed staat." })] }), _jsx(CardContent, { children: eigenPrinters.length === 0 ? (_jsxs("div", { className: "text-muted-foreground flex items-center gap-2 text-sm", children: [_jsx(AlertTriangle, { className: "text-destructive h-4 w-4" }), "Nog geen ingestelde printers. Voeg ze toe bij", " ", _jsx(Link, { className: "text-primary underline", to: "/layouts-printers/
|
|
80
|
+
}) })) })] }), _jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Printer, { className: "h-4 w-4" }), " Printers op deze plek"] }), _jsx(CardDescription, { children: "Test een printer om te zien of hij goed staat." })] }), _jsx(CardContent, { children: eigenPrinters.length === 0 ? (_jsxs("div", { className: "text-muted-foreground flex items-center gap-2 text-sm", children: [_jsx(AlertTriangle, { className: "text-destructive h-4 w-4" }), "Nog geen ingestelde printers. Voeg ze toe bij", " ", _jsx(Link, { className: "text-primary underline", to: "/layouts-printers/printplekken", children: "Printplekken" }), "."] })) : (_jsx("div", { className: "space-y-2", children: eigenPrinters.map((p) => (_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2 rounded-lg border p-2", children: [_jsxs("div", { className: "text-sm", children: [_jsx("span", { className: "font-medium", children: p.naam }), p.papierformaat ? (_jsx(Badge, { variant: "secondary", className: "ml-2", children: p.papierformaat })) : null] }), _jsx(Button, { size: "sm", variant: "ghost", onClick: async () => {
|
|
69
81
|
try {
|
|
70
82
|
await drukTestpaginaAf(p.id, p.naam);
|
|
71
83
|
toast.success("Testpagina verstuurd");
|
|
@@ -77,5 +89,5 @@ export function PrintplekDetailPage() {
|
|
|
77
89
|
const regel = regelVoor(d.value);
|
|
78
90
|
const printer = eigenPrinters.find((p) => p.id === regel?.printer_id) ?? null;
|
|
79
91
|
return (_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3 rounded-lg border p-2", children: [_jsx("div", { className: "text-sm font-medium", children: documentTypeLabel(d.value) }), printer ? (_jsx("span", { className: "text-muted-foreground text-sm", children: printer.naam })) : (_jsxs("span", { className: "text-destructive flex items-center gap-1 text-xs", children: [_jsx(AlertTriangle, { className: "h-3.5 w-3.5" }), " Geen printer"] }))] }, d.value));
|
|
80
|
-
}), !alleDocumenten && overige.length > 0 ? (_jsxs("p", { className: "text-muted-foreground text-xs", children: [overige.length, " documentsoort", overige.length === 1 ? "" : "en", " nog niet ingesteld."] })) : null] })] }), _jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Link2, { className: "h-4 w-4" }), " Gekoppeld aan"] }), _jsx(CardDescription, { children: "Andere modules (bijvoorbeeld pickstations) kunnen zich aan deze printplek koppelen." })] }),
|
|
92
|
+
}), !alleDocumenten && overige.length > 0 ? (_jsxs("p", { className: "text-muted-foreground text-xs", children: [overige.length, " documentsoort", overige.length === 1 ? "" : "en", " nog niet ingesteld."] })) : null] })] }), _jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Link2, { className: "h-4 w-4" }), " Gekoppeld aan"] }), _jsx(CardDescription, { children: "Andere modules (bijvoorbeeld pickstations) kunnen zich aan deze printplek koppelen." })] }), _jsxs(CardContent, { className: "space-y-4", children: [bronnen.length === 0 ? (_jsx("p", { className: "text-muted-foreground text-sm", children: "Nog niets gekoppeld. Kies deze printplek in de andere module (bijvoorbeeld bij een pickstation); de koppeling verschijnt hier vanzelf." })) : (_jsx("div", { className: "space-y-2", children: bronnen.map((b) => (_jsxs("div", { className: "flex flex-wrap items-center gap-3 rounded-lg border px-3 py-2 text-sm", children: [_jsx(Badge, { variant: "secondary", children: b.bron }), _jsxs("span", { className: "min-w-0 flex-1 truncate", children: [b.label ?? b.bron_id, _jsx("span", { className: "text-muted-foreground ml-2 text-xs", children: b.bron_id })] }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: () => void ontkoppel(b.bron, b.bron_id), children: [_jsx(X, { className: "mr-1 h-3.5 w-3.5" }), " Ontkoppelen"] })] }, b.id))) })), weeskoppelingen.length > 0 ? (_jsxs("div", { className: "space-y-2 rounded-lg border border-dashed p-3", children: [_jsxs("p", { className: "text-muted-foreground flex items-center gap-2 text-xs", children: [_jsx(AlertTriangle, { className: "h-3.5 w-3.5" }), " Koppelingen zonder bestaande printplek:"] }), weeskoppelingen.map((b) => (_jsxs("div", { className: "flex flex-wrap items-center gap-3 text-sm", children: [_jsx("span", { className: "min-w-0 flex-1 truncate", children: b.label ?? `${b.bron} ${b.bron_id}` }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: () => void ontkoppel(b.bron, b.bron_id), children: [_jsx(Trash2, { className: "mr-1 h-3.5 w-3.5" }), " Opruimen"] })] }, b.id)))] })) : null] })] })] }));
|
|
81
93
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrintplekkenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintplekkenPage.tsx"],"names":[],"mappings":"AAmCA,wBAAgB,gBAAgB,CAAC,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,+
|
|
1
|
+
{"version":3,"file":"PrintplekkenPage.d.ts","sourceRoot":"","sources":["../../src/components/PrintplekkenPage.tsx"],"names":[],"mappings":"AAmCA,wBAAgB,gBAAgB,CAAC,EAAE,OAAe,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,+BAsY/E"}
|
|
@@ -83,7 +83,10 @@ export function PrintplekkenPage({ ingebed = false } = {}) {
|
|
|
83
83
|
const naarComputer = (computerId) => {
|
|
84
84
|
if (!computerId)
|
|
85
85
|
return;
|
|
86
|
-
void navigate({
|
|
86
|
+
void navigate({
|
|
87
|
+
to: "/layouts-printers/printplekken/computers/$computerId",
|
|
88
|
+
params: { computerId },
|
|
89
|
+
});
|
|
87
90
|
};
|
|
88
91
|
const koppel = async (plekId, computerNaam) => {
|
|
89
92
|
await koppelComputerAanPrintplek(plekId, computerNaam);
|
|
@@ -71,12 +71,12 @@ export function WerkplekConfiguratiePage() {
|
|
|
71
71
|
.map((p) => p.extern_printer_id ?? null)
|
|
72
72
|
.filter((e) => !!e);
|
|
73
73
|
const bekendeLocaties = Array.from(new Set(printers.map((p) => p.locatie).filter((l) => !!l)));
|
|
74
|
-
return (_jsxs("main", { className: "space-y-6 p-6", children: [_jsxs("div", { className: "text-muted-foreground flex items-center gap-1 text-sm", children: [_jsx(Link, { to: "/layouts-printers/
|
|
74
|
+
return (_jsxs("main", { className: "space-y-6 p-6", children: [_jsxs("div", { className: "text-muted-foreground flex items-center gap-1 text-sm", children: [_jsx(Link, { to: "/layouts-printers/printplekken", className: "hover:text-foreground", children: "Printplekken" }), _jsx(ChevronRight, { className: "h-3.5 w-3.5" }), _jsx("span", { className: "text-foreground", children: computer?.naam ?? "Werkplek" })] }), _jsxs("div", { className: "flex flex-wrap items-end justify-between gap-4", children: [_jsxs("div", { children: [_jsx("h1", { className: "text-xl font-semibold", children: "Werkplek configureren" }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Kies welke printers op deze computer welke ontwerpen afdrukken." })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "text-muted-foreground text-xs", children: bijgewerktTekst(bijgewerkt) }), _jsxs(Button, { onClick: () => {
|
|
75
75
|
setBewerken(null);
|
|
76
76
|
setWizard(true);
|
|
77
|
-
}, children: [_jsx(Plus, { className: "mr-2 h-4 w-4" }), " Printer toevoegen"] })] })] }), _jsxs("div", { className: "grid gap-6 lg:grid-cols-[300px_1fr]", children: [_jsxs(Card, { className: "h-fit", children: [_jsx(CardHeader, { className: "pb-3", children: _jsx(CardTitle, { className: "text-base", children: "Werkplekken" }) }), _jsxs(CardContent, { className: "space-y-2", children: [_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", placeholder: "Zoek werkplek", value: zoekComputer, onChange: (e) => setZoekComputer(e.target.value) })] }), zichtbareComputers.map((c) => (_jsxs(Link, { to: "/layouts-printers/
|
|
77
|
+
}, children: [_jsx(Plus, { className: "mr-2 h-4 w-4" }), " Printer toevoegen"] })] })] }), _jsxs("div", { className: "grid gap-6 lg:grid-cols-[300px_1fr]", children: [_jsxs(Card, { className: "h-fit", children: [_jsx(CardHeader, { className: "pb-3", children: _jsx(CardTitle, { className: "text-base", children: "Werkplekken" }) }), _jsxs(CardContent, { className: "space-y-2", children: [_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", placeholder: "Zoek werkplek", value: zoekComputer, onChange: (e) => setZoekComputer(e.target.value) })] }), zichtbareComputers.map((c) => (_jsxs(Link, { to: "/layouts-printers/printplekken/computers/$computerId", params: { computerId: c.id }, className: `flex items-center gap-3 rounded-lg border p-3 text-sm transition ${c.id === computerId ? "border-primary ring-primary/20 ring-2" : "hover:bg-muted/50"}`, children: [_jsx("span", { className: `h-2 w-2 shrink-0 rounded-full ${c.online ? "bg-primary" : "bg-muted-foreground/40"}` }), _jsxs("span", { className: "min-w-0 flex-1", children: [_jsx("span", { className: "block truncate font-medium", children: c.naam }), _jsx("span", { className: "text-muted-foreground block text-xs", children: printerTellingTekst(tellingen.get(c.naam)) })] }), _jsx(ChevronRight, { className: "text-muted-foreground h-4 w-4" })] }, c.id))), zichtbareComputers.length === 0 && (_jsx("p", { className: "text-muted-foreground text-sm", children: "Geen werkplekken gevonden." }))] })] }), _jsxs("div", { className: "space-y-6", children: [_jsx(Card, { children: _jsxs(CardHeader, { className: "pb-3", children: [_jsxs(CardTitle, { className: "flex items-center gap-2 text-base", children: [_jsx(Monitor, { className: "h-4 w-4" }), " ", computer?.naam ?? "Onbekende werkplek"] }), _jsx(CardDescription, { children: computer
|
|
78
78
|
? `${computer.online ? "Aan" : "Uit"} · ${printerTellingTekst(tellingen.get(computer.naam))}`
|
|
79
|
-
: "Deze computer is niet gevonden. Staat hij aan?" })] }) }), _jsxs(Card, { children: [_jsxs(CardHeader, { className: "pb-3", children: [_jsx(CardTitle, { className: "text-base", children: "Wat print deze werkplek" }), _jsxs(CardDescription, { children: ["Kies per documentsoort de printer op deze werkplek. Staat er \"Volg routering\", dan geldt de standaardprinter uit", " ", _jsx(Link, { to: "/layouts-printers/
|
|
79
|
+
: "Deze computer is niet gevonden. Staat hij aan?" })] }) }), _jsxs(Card, { children: [_jsxs(CardHeader, { className: "pb-3", children: [_jsx(CardTitle, { className: "text-base", children: "Wat print deze werkplek" }), _jsxs(CardDescription, { children: ["Kies per documentsoort de printer op deze werkplek. Staat er \"Volg routering\", dan geldt de standaardprinter uit", " ", _jsx(Link, { to: "/layouts-printers/printplekken", className: "text-foreground underline", children: "Standaardregels" }), "."] })] }), _jsxs(CardContent, { className: "grid gap-2 sm:grid-cols-2", children: [DOCUMENT_TYPES.map((d) => {
|
|
80
80
|
const huidig = eigenRoutering.find((r) => r.documenttype === d.value);
|
|
81
81
|
return (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "min-w-0 flex-1 truncate text-sm", children: documentTypeLabel(d.value) }), _jsxs(Select, { value: huidig?.printer_id ?? VOLG_ROUTERING, onValueChange: (v) => void zetDocument(d.value, v === VOLG_ROUTERING ? null : v), children: [_jsx(SelectTrigger, { className: "w-52", children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { children: [_jsx(SelectItem, { value: VOLG_ROUTERING, children: "Volg routering" }), rijen.map(({ printer }) => (_jsx(SelectItem, { value: printer.id, children: printer.naam }, printer.id)))] })] })] }, d.value));
|
|
82
82
|
}), rijen.length === 0 && (_jsx("p", { className: "text-muted-foreground text-sm", children: "Voeg eerst een printer toe op deze werkplek." }))] })] }), _jsxs("div", { className: "grid gap-6 xl:grid-cols-[1fr_340px]", children: [_jsxs("div", { className: "space-y-3", children: [rijen.length === 0 && (_jsx(Card, { children: _jsxs(CardContent, { className: "space-y-4 py-10 text-center", children: [_jsx(Printer, { className: "text-muted-foreground mx-auto h-8 w-8" }), _jsx("p", { className: "text-sm font-medium", children: "Nog geen printers op deze werkplek" }), _jsx(Button, { onClick: () => {
|
|
@@ -12,6 +12,6 @@ export function WerkplekkenTabel({ rijen, onPrinterToevoegen, onVernieuw, }) {
|
|
|
12
12
|
const deel = r.telling.gevonden
|
|
13
13
|
? Math.round((r.telling.ingesteld / r.telling.gevonden) * 100)
|
|
14
14
|
: 0;
|
|
15
|
-
return (_jsxs(TableRow, { children: [_jsx(TableCell, { className: "font-medium", children: r.naam }), _jsx(TableCell, { className: "text-muted-foreground", children: r.locatie }), _jsx(TableCell, { children: _jsxs("span", { className: "flex items-center gap-2 text-sm", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${r.online ? "bg-primary" : "bg-muted-foreground/40"}` }), r.online ? "Aan" : "Uit"] }) }), _jsx(TableCell, { children: _jsxs("div", { className: "w-40 space-y-1", children: [_jsx("span", { className: "text-sm", children: printerTellingTekst(r.telling) }), _jsx("div", { className: "bg-muted h-1.5 w-full overflow-hidden rounded-full", children: _jsx("div", { className: "bg-primary h-full", style: { width: `${deel}%` } }) })] }) }), _jsx(TableCell, { className: "text-right", children: _jsxs("div", { className: "flex justify-end gap-1", children: [_jsx(Button, { variant: "outline", size: "sm", asChild: true, children: _jsx(Link, { to: "/layouts-printers/
|
|
15
|
+
return (_jsxs(TableRow, { children: [_jsx(TableCell, { className: "font-medium", children: r.naam }), _jsx(TableCell, { className: "text-muted-foreground", children: r.locatie }), _jsx(TableCell, { children: _jsxs("span", { className: "flex items-center gap-2 text-sm", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${r.online ? "bg-primary" : "bg-muted-foreground/40"}` }), r.online ? "Aan" : "Uit"] }) }), _jsx(TableCell, { children: _jsxs("div", { className: "w-40 space-y-1", children: [_jsx("span", { className: "text-sm", children: printerTellingTekst(r.telling) }), _jsx("div", { className: "bg-muted h-1.5 w-full overflow-hidden rounded-full", children: _jsx("div", { className: "bg-primary h-full", style: { width: `${deel}%` } }) })] }) }), _jsx(TableCell, { className: "text-right", children: _jsxs("div", { className: "flex justify-end gap-1", children: [_jsx(Button, { variant: "outline", size: "sm", asChild: true, children: _jsx(Link, { to: "/layouts-printers/printplekken/computers/$computerId", params: { computerId: r.id }, children: "Configureren" }) }), _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", "aria-label": "Meer", children: _jsx(MoreVertical, { className: "h-4 w-4" }) }) }), _jsxs(DropdownMenuContent, { align: "end", children: [_jsxs(DropdownMenuItem, { onSelect: () => onPrinterToevoegen(r.naam), children: [_jsx(Plus, { className: "mr-2 h-4 w-4" }), " Printer toevoegen"] }), _jsxs(DropdownMenuItem, { onSelect: () => onVernieuw(), children: [_jsx(RefreshCw, { className: "mr-2 h-4 w-4" }), " Gegevens vernieuwen"] })] })] })] }) })] }, r.id));
|
|
16
16
|
}) })] }) }));
|
|
17
17
|
}
|
package/dist-lib/index.d.ts
CHANGED
|
@@ -5,7 +5,6 @@ export { PrintProgrammaUitleg, WerktHetNiet } from './components/PrintProgrammaU
|
|
|
5
5
|
export { PrinterKaart } from './components/PrinterKaart.js';
|
|
6
6
|
export { ComputersLijst, useComputers } from './components/ComputersLijst.js';
|
|
7
7
|
export { PrintersPage } from './components/PrintersPage.js';
|
|
8
|
-
export { PrintersRedirectPage } from './components/PrintersRedirectPage.js';
|
|
9
8
|
export { WerkplekConfiguratiePage } from './components/WerkplekConfiguratiePage.js';
|
|
10
9
|
export { WerkplekkenTabel } from './components/WerkplekkenTabel.js';
|
|
11
10
|
export { PrinterStatsKaarten } from './components/PrinterStatsKaarten.js';
|
|
@@ -41,7 +40,6 @@ export type { WerkplekPrinter } from './lib/documentRoutering.js';
|
|
|
41
40
|
export { DocumentRouteringPage } from './components/DocumentRouteringPage.js';
|
|
42
41
|
export { DocumentenPage } from './components/DocumentenPage.js';
|
|
43
42
|
export { PrintenPage } from './components/PrintenPage.js';
|
|
44
|
-
export { LayoutsPrintersTabPage } from './components/LayoutsPrintersTabPage.js';
|
|
45
43
|
export { ModuleTabs } from './components/ModuleTabs.js';
|
|
46
44
|
export type { ModuleTab } from './components/ModuleTabs.js';
|
|
47
45
|
export type { FormaatPrinter } from './lib/formaatPrinters.js';
|
|
@@ -77,7 +75,7 @@ export { TemplateModuleLogo } from './components/TemplateModuleLogo.js';
|
|
|
77
75
|
export { PrintplekkenPage } from './components/PrintplekkenPage.js';
|
|
78
76
|
export { PrintplekDetailPage } from './components/PrintplekDetailPage.js';
|
|
79
77
|
export { PrintplekWizard } from './components/PrintplekWizard.js';
|
|
80
|
-
export { bewerkPrintplek, koppelBronAanPrintplek, koppelComputerAanPrintplek, maakPrintplek, ontkoppelBron, ontkoppelComputer, printerVoorPrintplek, printplekNaam, printplekVoorBron, printplekVoorComputer, printplekkenLijst, useBeschikbarePrintplekken, usePrintplekken, verwijderPrintplek, zetPrintplekPrinter, } from './lib/printplekken.js';
|
|
78
|
+
export { bewerkPrintplek, koppelBronAanPrintplek, koppelComputerAanPrintplek, maakPrintplek, ontkoppelBron, ontkoppelComputer, printerVoorPrintplek, printplekNaam, printplekVoorBron, printplekVoorComputer, printplekkenLijst, useBeschikbarePrintplekken, useKoppelingVoorBron, usePrintplekken, verwijderPrintplek, zetPrintplekPrinter, } from './lib/printplekken.js';
|
|
81
79
|
export type { Printplek, PrintplekComputer, PrintplekDocumentPrinter, PrintplekKoppeling, } from './lib/printplekken.js';
|
|
82
80
|
export { GeenPrinterFout } from './lib/printApi.js';
|
|
83
81
|
export declare const layoutmodule: FlowModule;
|
package/dist-lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist-lib/index.js
CHANGED
|
@@ -8,7 +8,6 @@ export { PrintProgrammaUitleg, WerktHetNiet } from './components/PrintProgrammaU
|
|
|
8
8
|
export { PrinterKaart } from './components/PrinterKaart.js';
|
|
9
9
|
export { ComputersLijst, useComputers } from './components/ComputersLijst.js';
|
|
10
10
|
export { PrintersPage } from './components/PrintersPage.js';
|
|
11
|
-
export { PrintersRedirectPage } from './components/PrintersRedirectPage.js';
|
|
12
11
|
export { WerkplekConfiguratiePage } from './components/WerkplekConfiguratiePage.js';
|
|
13
12
|
export { WerkplekkenTabel } from './components/WerkplekkenTabel.js';
|
|
14
13
|
export { PrinterStatsKaarten } from './components/PrinterStatsKaarten.js';
|
|
@@ -36,7 +35,6 @@ export { printerVoorWerkplekDocument, useWerkplekPrinters, verwijderWerkplekPrin
|
|
|
36
35
|
export { DocumentRouteringPage } from './components/DocumentRouteringPage.js';
|
|
37
36
|
export { DocumentenPage } from './components/DocumentenPage.js';
|
|
38
37
|
export { PrintenPage } from './components/PrintenPage.js';
|
|
39
|
-
export { LayoutsPrintersTabPage } from './components/LayoutsPrintersTabPage.js';
|
|
40
38
|
export { ModuleTabs } from './components/ModuleTabs.js';
|
|
41
39
|
export { DocumentSettingsPanel } from './components/DocumentSettingsPanel.js';
|
|
42
40
|
export { DOCUMENT_TYPES, ELEMENT_STANDAARD, FLORIDAY_LAYOUT_TOELICHTING, FLORIDAY_SYSTEEM_LAYOUTS, PAPIERFORMATEN, STANDAARD_KOLOMMEN, STANDAARD_LAYOUTS, STANDAARD_LAYOUT_TOELICHTING, STANDAARD_STIJL, documentTypeLabel, isFloridayLayout } from './lib/documentTypes.js';
|
|
@@ -60,12 +58,12 @@ export { TemplateModuleLogo } from './components/TemplateModuleLogo.js';
|
|
|
60
58
|
export { PrintplekkenPage } from './components/PrintplekkenPage.js';
|
|
61
59
|
export { PrintplekDetailPage } from './components/PrintplekDetailPage.js';
|
|
62
60
|
export { PrintplekWizard } from './components/PrintplekWizard.js';
|
|
63
|
-
export { bewerkPrintplek, koppelBronAanPrintplek, koppelComputerAanPrintplek, maakPrintplek, ontkoppelBron, ontkoppelComputer, printerVoorPrintplek, printplekNaam, printplekVoorBron, printplekVoorComputer, printplekkenLijst, useBeschikbarePrintplekken, usePrintplekken, verwijderPrintplek, zetPrintplekPrinter, } from './lib/printplekken.js';
|
|
61
|
+
export { bewerkPrintplek, koppelBronAanPrintplek, koppelComputerAanPrintplek, maakPrintplek, ontkoppelBron, ontkoppelComputer, printerVoorPrintplek, printplekNaam, printplekVoorBron, printplekVoorComputer, printplekkenLijst, useBeschikbarePrintplekken, useKoppelingVoorBron, usePrintplekken, verwijderPrintplek, zetPrintplekPrinter, } from './lib/printplekken.js';
|
|
64
62
|
export { GeenPrinterFout } from './lib/printApi.js';
|
|
65
63
|
export const layoutmodule = {
|
|
66
64
|
id: "layout-maker",
|
|
67
65
|
name: "Layouts en printers",
|
|
68
|
-
version: "1.19.
|
|
66
|
+
version: "1.19.3",
|
|
69
67
|
nav: {
|
|
70
68
|
label: "Layouts en printers",
|
|
71
69
|
href: "/layouts-printers",
|
|
@@ -21439,6 +21439,14 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
|
|
|
21439
21439
|
};
|
|
21440
21440
|
Returns: import("./types.js").Json;
|
|
21441
21441
|
};
|
|
21442
|
+
logistics_plan_block: {
|
|
21443
|
+
Args: {
|
|
21444
|
+
p_details?: import("./types.js").Json;
|
|
21445
|
+
p_order_ids: string[];
|
|
21446
|
+
p_reason: string;
|
|
21447
|
+
};
|
|
21448
|
+
Returns: number;
|
|
21449
|
+
};
|
|
21442
21450
|
logistics_plan_buffer_sql: {
|
|
21443
21451
|
Args: {
|
|
21444
21452
|
p_buffer_id: string;
|