@flowselections/floriday-voorraad 1.0.143 → 1.0.147

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist-lib/components/voorraad/ArtikelWizard.d.ts +3 -1
  2. package/dist-lib/components/voorraad/ArtikelWizard.d.ts.map +1 -1
  3. package/dist-lib/components/voorraad/ArtikelWizard.js +57 -53
  4. package/dist-lib/components/voorraad/EditArtikelPage.d.ts.map +1 -1
  5. package/dist-lib/components/voorraad/EditArtikelPage.js +3 -4
  6. package/dist-lib/components/voorraad/FustAdministratie.d.ts +12 -0
  7. package/dist-lib/components/voorraad/FustAdministratie.d.ts.map +1 -0
  8. package/dist-lib/components/voorraad/FustAdministratie.js +69 -0
  9. package/dist-lib/components/voorraad/FustenPage.d.ts.map +1 -1
  10. package/dist-lib/components/voorraad/FustenPage.js +9 -14
  11. package/dist-lib/components/voorraad/KoppelingStatusPanel.d.ts +6 -0
  12. package/dist-lib/components/voorraad/KoppelingStatusPanel.d.ts.map +1 -0
  13. package/dist-lib/components/voorraad/KoppelingStatusPanel.js +47 -0
  14. package/dist-lib/components/voorraad/NieuwArtikelPage.js +2 -2
  15. package/dist-lib/components/voorraad/ProductCustomFieldsCard.d.ts.map +1 -1
  16. package/dist-lib/components/voorraad/ProductCustomFieldsCard.js +29 -13
  17. package/dist-lib/components/voorraad/ProductSalePriceField.d.ts.map +1 -1
  18. package/dist-lib/components/voorraad/ProductSalePriceField.js +9 -8
  19. package/dist-lib/components/voorraad/StepSamenstelling.d.ts.map +1 -1
  20. package/dist-lib/components/voorraad/StepSamenstelling.js +35 -10
  21. package/dist-lib/components/voorraad/TelmomentButton.d.ts +8 -0
  22. package/dist-lib/components/voorraad/TelmomentButton.d.ts.map +1 -0
  23. package/dist-lib/components/voorraad/TelmomentButton.js +65 -0
  24. package/dist-lib/components/voorraad/TrayStickerCard.d.ts +5 -1
  25. package/dist-lib/components/voorraad/TrayStickerCard.d.ts.map +1 -1
  26. package/dist-lib/components/voorraad/TrayStickerCard.js +64 -66
  27. package/dist-lib/components/voorraad/ValidationOverviewTable.d.ts +0 -5
  28. package/dist-lib/components/voorraad/ValidationOverviewTable.d.ts.map +1 -1
  29. package/dist-lib/components/voorraad/ValidationOverviewTable.js +10 -4
  30. package/dist-lib/components/voorraad/ValidationPage.d.ts.map +1 -1
  31. package/dist-lib/components/voorraad/ValidationPage.js +2 -1
  32. package/dist-lib/components/voorraad/VoorraadPage.d.ts +1 -13
  33. package/dist-lib/components/voorraad/VoorraadPage.d.ts.map +1 -1
  34. package/dist-lib/components/voorraad/VoorraadPage.js +103 -140
  35. package/dist-lib/components/voorraad/VoorraadSturingCard.d.ts +6 -0
  36. package/dist-lib/components/voorraad/VoorraadSturingCard.d.ts.map +1 -0
  37. package/dist-lib/components/voorraad/VoorraadSturingCard.js +47 -0
  38. package/dist-lib/components/voorraad/artikel/ArtikelPagina.d.ts +5 -0
  39. package/dist-lib/components/voorraad/artikel/ArtikelPagina.d.ts.map +1 -0
  40. package/dist-lib/components/voorraad/artikel/ArtikelPagina.js +263 -0
  41. package/dist-lib/components/voorraad/artikel/TwijfelKiezen.d.ts +7 -0
  42. package/dist-lib/components/voorraad/artikel/TwijfelKiezen.d.ts.map +1 -0
  43. package/dist-lib/components/voorraad/artikel/TwijfelKiezen.js +54 -0
  44. package/dist-lib/components/voorraad/artikel/opslaan-context.d.ts +21 -0
  45. package/dist-lib/components/voorraad/artikel/opslaan-context.d.ts.map +1 -0
  46. package/dist-lib/components/voorraad/artikel/opslaan-context.js +15 -0
  47. package/dist-lib/components/voorraad/lijst/ImporteerKnop.d.ts +5 -0
  48. package/dist-lib/components/voorraad/lijst/ImporteerKnop.d.ts.map +1 -0
  49. package/dist-lib/components/voorraad/lijst/ImporteerKnop.js +20 -0
  50. package/dist-lib/components/voorraad/lijst/LijstExportKnop.d.ts +6 -0
  51. package/dist-lib/components/voorraad/lijst/LijstExportKnop.d.ts.map +1 -0
  52. package/dist-lib/components/voorraad/lijst/LijstExportKnop.js +43 -0
  53. package/dist-lib/components/voorraad/lijst/SnelActieDialogen.d.ts +16 -0
  54. package/dist-lib/components/voorraad/lijst/SnelActieDialogen.d.ts.map +1 -0
  55. package/dist-lib/components/voorraad/lijst/SnelActieDialogen.js +95 -0
  56. package/dist-lib/components/voorraad/lijst/VoorraadLijstTabel.d.ts +21 -0
  57. package/dist-lib/components/voorraad/lijst/VoorraadLijstTabel.d.ts.map +1 -0
  58. package/dist-lib/components/voorraad/lijst/VoorraadLijstTabel.js +38 -0
  59. package/dist-lib/hooks/useVoorraadLijst.d.ts +21 -0
  60. package/dist-lib/hooks/useVoorraadLijst.d.ts.map +1 -0
  61. package/dist-lib/hooks/useVoorraadLijst.js +71 -0
  62. package/dist-lib/index.d.ts.map +1 -1
  63. package/dist-lib/index.js +2 -0
  64. package/dist-lib/integrations/supabase/types.d.ts +989 -0
  65. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  66. package/dist-lib/lib/artikel-pagina.d.ts +57 -0
  67. package/dist-lib/lib/artikel-pagina.d.ts.map +1 -0
  68. package/dist-lib/lib/artikel-pagina.js +93 -0
  69. package/dist-lib/lib/count-stock.d.ts +17 -0
  70. package/dist-lib/lib/count-stock.d.ts.map +1 -0
  71. package/dist-lib/lib/count-stock.js +26 -0
  72. package/dist-lib/lib/floriday-import-validator.d.ts +9 -0
  73. package/dist-lib/lib/floriday-import-validator.d.ts.map +1 -1
  74. package/dist-lib/lib/floriday-import-validator.js +13 -0
  75. package/dist-lib/lib/fust-administratie.d.ts +29 -0
  76. package/dist-lib/lib/fust-administratie.d.ts.map +1 -0
  77. package/dist-lib/lib/fust-administratie.js +63 -0
  78. package/dist-lib/lib/fusten.d.ts +4 -0
  79. package/dist-lib/lib/fusten.d.ts.map +1 -1
  80. package/dist-lib/lib/pending-photos.d.ts +20 -0
  81. package/dist-lib/lib/pending-photos.d.ts.map +1 -0
  82. package/dist-lib/lib/pending-photos.js +90 -0
  83. package/dist-lib/lib/voorraad-custom-fields.d.ts +16 -1
  84. package/dist-lib/lib/voorraad-custom-fields.d.ts.map +1 -1
  85. package/dist-lib/lib/voorraad-custom-fields.js +12 -6
  86. package/dist-lib/lib/voorraad-lijst.d.ts +91 -0
  87. package/dist-lib/lib/voorraad-lijst.d.ts.map +1 -0
  88. package/dist-lib/lib/voorraad-lijst.js +82 -0
  89. package/package.json +1 -1
  90. package/sql/AGENTS.md +7 -0
  91. package/sql/floriday-voorraad-schema.sql +1627 -62
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoorraadLijstTabel.d.ts","sourceRoot":"","sources":["../../../../src/components/voorraad/lijst/VoorraadLijstTabel.tsx"],"names":[],"mappings":"AAeA,OAAO,EAML,KAAK,QAAQ,EACb,KAAK,SAAS,EAEf,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAChF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAK5E,CAAC;AA8CF,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,WAAW,EACX,WAAW,EACX,UAAU,EACV,cAAsB,GACvB,EAAE;IACD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAC/B,QAAQ,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAC9B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IACnC,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;CACnC,+BAyFA"}
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Link } from "@tanstack/react-router";
3
+ import { Button, Checkbox } from "@flowselections/core";
4
+ import { ArrowDown, ArrowUp, CheckCircle2, Euro, ExternalLink, Link2Off, Minus, Package, PackageX, SlidersHorizontal, } from "lucide-react";
5
+ import floridayLogo from "../../../assets/floriday-logo.png.asset.json";
6
+ import { aantal, geld, toonFloridayLabel, onderMinimum, STATUS_INFO, } from "../../../lib/voorraad-lijst.js";
7
+ export const OPTIONELE_KOLOMMEN = [
8
+ { key: "artikelnummer", label: "Artikelnummer" },
9
+ { key: "minimum", label: "Minimum" },
10
+ { key: "inkomend", label: "Inkomend" },
11
+ { key: "prijs", label: "Prijs" },
12
+ ];
13
+ function StatusIcoon({ status }) {
14
+ const info = STATUS_INFO[status];
15
+ const titel = info.actie ? `${info.label} — ${info.actie}` : info.label;
16
+ const cls = "h-4 w-4";
17
+ const icon = status === "verpakking" ? _jsx(PackageX, { className: `${cls} text-destructive` }) :
18
+ status === "niet_gekoppeld" ? _jsx(Link2Off, { className: `${cls} text-muted-foreground` }) :
19
+ status === "prijs" ? _jsx(Euro, { className: `${cls} text-destructive` }) :
20
+ status === "gearchiveerd" ? _jsx(Minus, { className: `${cls} text-muted-foreground` }) :
21
+ _jsx(CheckCircle2, { className: `${cls} text-primary` });
22
+ return (_jsxs("span", { title: titel, "aria-label": titel, className: "inline-flex items-center gap-1.5", children: [icon, status !== "ok" && _jsx("span", { className: "text-xs text-muted-foreground hidden xl:inline", children: info.label })] }));
23
+ }
24
+ function Kop({ kolom, label, sort, oplopend, onSort, rechts, }) {
25
+ const actief = sort === kolom;
26
+ return (_jsx("th", { className: `px-3 py-2 font-medium ${rechts ? "text-right" : "text-left"}`, "aria-sort": actief ? (oplopend ? "ascending" : "descending") : "none", children: _jsxs("button", { type: "button", onClick: () => onSort(kolom), className: `inline-flex items-center gap-1 hover:text-foreground ${actief ? "text-foreground" : ""}`, children: [label, actief && (oplopend ? _jsx(ArrowUp, { className: "h-3 w-3" }) : _jsx(ArrowDown, { className: "h-3 w-3" }))] }) }));
27
+ }
28
+ export function VoorraadLijstTabel({ rijen, loading, sort, oplopend, onSort, kolommen, selected, onToggleSelect, onToggleAll, onAanpassen, onAfboeken, heeftKoppeling = false, }) {
29
+ const ids = rijen.map((r) => r.id);
30
+ const allesGekozen = ids.length > 0 && ids.every((id) => selected.has(id));
31
+ const k = (s) => kolommen.has(s);
32
+ return (_jsxs("table", { className: "w-full text-sm", children: [_jsx("thead", { className: "border-b bg-muted/40 text-xs text-muted-foreground", children: _jsxs("tr", { children: [_jsx("th", { className: "w-10 px-3 py-2", children: _jsx(Checkbox, { checked: allesGekozen, onCheckedChange: () => onToggleAll(ids), "aria-label": "Alles op deze pagina kiezen" }) }), _jsx(Kop, { kolom: "naam", label: "Artikel", sort: sort, oplopend: oplopend, onSort: onSort }), k("artikelnummer") && _jsx(Kop, { kolom: "artikelnummer", label: "Artikelnummer", sort: sort, oplopend: oplopend, onSort: onSort }), _jsx(Kop, { kolom: "liggend", label: "Liggend", sort: sort, oplopend: oplopend, onSort: onSort, rechts: true }), _jsx(Kop, { kolom: "gereserveerd", label: "Gereserveerd", sort: sort, oplopend: oplopend, onSort: onSort, rechts: true }), _jsx(Kop, { kolom: "vrij", label: "Vrij", sort: sort, oplopend: oplopend, onSort: onSort, rechts: true }), k("minimum") && _jsx("th", { className: "px-3 py-2 text-right font-medium", children: "Minimum" }), k("inkomend") && _jsx(Kop, { kolom: "inkomend", label: "Inkomend", sort: sort, oplopend: oplopend, onSort: onSort, rechts: true }), k("prijs") && _jsx(Kop, { kolom: "prijs", label: "Prijs", sort: sort, oplopend: oplopend, onSort: onSort, rechts: true }), _jsx("th", { className: "px-3 py-2 text-left font-medium", children: "Status" }), _jsx("th", { className: "px-3 py-2 text-right font-medium", children: "Acties" })] }) }), _jsxs("tbody", { children: [loading && rijen.length === 0 &&
33
+ Array.from({ length: 6 }).map((_, i) => (_jsx("tr", { className: "border-b", children: _jsx("td", { colSpan: 12, className: "px-3 py-3", children: _jsx("div", { className: "h-6 animate-pulse rounded bg-muted" }) }) }, `s${i}`))), !loading && rijen.length === 0 && (_jsx("tr", { children: _jsx("td", { colSpan: 12, className: "px-3 py-10 text-center text-muted-foreground", children: "Geen artikelen gevonden." }) })), rijen.map((r) => {
34
+ const rood = onderMinimum(r);
35
+ const gearchiveerd = !!r.gearchiveerd_at;
36
+ return (_jsxs("tr", { className: `border-b hover:bg-muted/30 ${loading ? "opacity-60" : ""}`, children: [_jsx("td", { className: "px-3 py-2", children: _jsx(Checkbox, { checked: selected.has(r.id), onCheckedChange: () => onToggleSelect(r.id), "aria-label": `Kies ${r.naam}` }) }), _jsx("td", { className: "px-3 py-2", children: _jsxs(Link, { to: "/voorraad/$id", params: { id: r.id }, className: "flex items-center gap-3 min-w-0", children: [r.foto ? (_jsx("img", { src: r.foto, alt: "", loading: "lazy", className: "h-9 w-9 shrink-0 rounded object-cover bg-muted" })) : (_jsx("span", { className: "flex h-9 w-9 shrink-0 items-center justify-center rounded bg-muted", children: _jsx(Package, { className: "h-4 w-4 text-muted-foreground" }) })), _jsxs("span", { className: "min-w-0", children: [_jsxs("span", { className: "flex items-center gap-1.5 font-medium text-foreground truncate", children: [r.naam, toonFloridayLabel(r, heeftKoppeling) && _jsx("img", { src: floridayLogo.url, alt: "Floriday", title: "Gekoppeld aan Floriday", className: "h-3.5 w-3.5 shrink-0" })] }), _jsxs("span", { className: "block text-xs text-muted-foreground truncate", children: [r.artikelnummer || "Geen artikelnummer", r.soort === "SET" ? " · Samenstelling" : r.soort === "GROUP" ? " · Productgroep" : ""] })] })] }) }), k("artikelnummer") && _jsx("td", { className: "px-3 py-2 text-muted-foreground", children: r.artikelnummer ?? "—" }), _jsx("td", { className: "px-3 py-2 text-right tabular-nums", children: aantal(r.liggend) }), _jsx("td", { className: "px-3 py-2 text-right tabular-nums text-muted-foreground", children: aantal(r.gereserveerd) }), _jsx("td", { className: `px-3 py-2 text-right tabular-nums font-medium ${rood ? "text-destructive" : ""}`, title: rood ? `Onder minimum (${aantal(r.minimum)})` : undefined, children: aantal(r.vrij) }), k("minimum") && _jsx("td", { className: "px-3 py-2 text-right tabular-nums text-muted-foreground", children: aantal(r.minimum) }), k("inkomend") && _jsx("td", { className: "px-3 py-2 text-right tabular-nums text-muted-foreground", children: aantal(r.inkomend) }), k("prijs") && _jsx("td", { className: "px-3 py-2 text-right tabular-nums", children: geld(r.prijs) }), _jsx("td", { className: "px-3 py-2", children: _jsx(StatusIcoon, { status: r.status }) }), _jsx("td", { className: "px-3 py-2", children: _jsxs("div", { className: "flex justify-end gap-1", children: [_jsx(Button, { size: "sm", variant: "ghost", title: "Voorraad aanpassen (+/\u2212)", "aria-label": "Voorraad aanpassen", disabled: gearchiveerd || r.soort === "GROUP", onClick: () => onAanpassen(r), children: _jsx(SlidersHorizontal, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", variant: "ghost", title: r.voorraad_sleutel ? "Afboeken" : "Nog geen voorraad om af te boeken", "aria-label": "Afboeken", disabled: gearchiveerd || !r.voorraad_sleutel || r.liggend <= 0, onClick: () => onAfboeken(r), children: _jsx(Minus, { className: "h-4 w-4" }) }), _jsx(Button, { asChild: true, size: "sm", variant: "ghost", title: "Openen", "aria-label": "Openen", children: _jsx(Link, { to: "/voorraad/$id", params: { id: r.id }, children: _jsx(ExternalLink, { className: "h-4 w-4" }) }) })] }) })] }, r.id));
37
+ })] })] }));
38
+ }
@@ -0,0 +1,21 @@
1
+ import type { LijstAntwoord, LijstFilter, LijstSort } from "../lib/voorraad-lijst.js";
2
+ export interface LijstVraag {
3
+ zoek: string;
4
+ filter: LijstFilter;
5
+ sort: LijstSort;
6
+ oplopend: boolean;
7
+ pagina: number;
8
+ grootte: number;
9
+ }
10
+ export declare function haalVoorraadLijst(v: LijstVraag): Promise<LijstAntwoord>;
11
+ /**
12
+ * Eén aanvraag per wijziging van zoeken/filter/sortering/pagina. Live-updates
13
+ * gebundeld: één kanaal, hooguit één herlaadactie per 3 s, niet in een verborgen tabblad.
14
+ */
15
+ export declare function useVoorraadLijst(vraag: LijstVraag): {
16
+ data: LijstAntwoord | null;
17
+ loading: boolean;
18
+ error: string | null;
19
+ reload: () => Promise<void>;
20
+ };
21
+ //# sourceMappingURL=useVoorraadLijst.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVoorraadLijst.d.ts","sourceRoot":"","sources":["../../src/hooks/useVoorraadLijst.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEnF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAW7E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU;;;;;EAgDjD"}
@@ -0,0 +1,71 @@
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ import { supabase } from "../integrations/supabase/client.js";
3
+ import { createBundler, pageRequestGuard } from "../lib/request-guard.js";
4
+ export async function haalVoorraadLijst(v) {
5
+ const { data, error } = await supabase.rpc("voorraad_lijst", {
6
+ p_zoek: v.zoek.trim() || null,
7
+ p_filter: v.filter,
8
+ p_sort: v.sort,
9
+ p_oplopend: v.oplopend,
10
+ p_pagina: v.pagina,
11
+ p_grootte: v.grootte,
12
+ });
13
+ if (error)
14
+ throw new Error(error.message);
15
+ return data;
16
+ }
17
+ /**
18
+ * Eén aanvraag per wijziging van zoeken/filter/sortering/pagina. Live-updates
19
+ * gebundeld: één kanaal, hooguit één herlaadactie per 3 s, niet in een verborgen tabblad.
20
+ */
21
+ export function useVoorraadLijst(vraag) {
22
+ const [data, setData] = useState(null);
23
+ const [loading, setLoading] = useState(true);
24
+ const [error, setError] = useState(null);
25
+ const vraagRef = useRef(vraag);
26
+ vraagRef.current = vraag;
27
+ const seq = useRef(0);
28
+ const laad = useCallback(async () => {
29
+ if (!pageRequestGuard.allow("voorraad_lijst"))
30
+ return;
31
+ const mijn = ++seq.current;
32
+ setLoading(true);
33
+ try {
34
+ const a = await haalVoorraadLijst(vraagRef.current);
35
+ if (mijn !== seq.current)
36
+ return;
37
+ setData(a);
38
+ setError(null);
39
+ }
40
+ catch (e) {
41
+ if (mijn !== seq.current)
42
+ return;
43
+ setError(e.message);
44
+ }
45
+ finally {
46
+ if (mijn === seq.current)
47
+ setLoading(false);
48
+ }
49
+ }, []);
50
+ const key = `${vraag.zoek}|${vraag.filter}|${vraag.sort}|${vraag.oplopend}|${vraag.pagina}|${vraag.grootte}`;
51
+ useEffect(() => {
52
+ void laad();
53
+ }, [key, laad]);
54
+ useEffect(() => {
55
+ const bundler = createBundler(() => void laad(), 3000);
56
+ const trigger = () => bundler.trigger();
57
+ const channel = supabase
58
+ .channel(`voorraad-lijst-${Math.random().toString(36).slice(2)}`)
59
+ .on("postgres_changes", { event: "*", schema: "public", table: "trade_item_stock" }, trigger)
60
+ .on("postgres_changes", { event: "*", schema: "public", table: "products" }, trigger)
61
+ .subscribe();
62
+ const onVis = () => bundler.flushIfPending();
63
+ document.addEventListener("visibilitychange", onVis);
64
+ return () => {
65
+ bundler.cancel();
66
+ document.removeEventListener("visibilitychange", onVis);
67
+ supabase.removeChannel(channel);
68
+ };
69
+ }, [laad]);
70
+ return { data, loading, error, reload: laad };
71
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAIpE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,eAAO,MAAM,sBAAsB,EAAE,UAgBpC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAKpE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,eAAO,MAAM,sBAAsB,EAAE,UAiBpC,CAAC"}
package/dist-lib/index.js CHANGED
@@ -9,6 +9,7 @@ export { EditArtikelPage } from './components/voorraad/EditArtikelPage.js';
9
9
  export { ValidationPage } from './components/voorraad/ValidationPage.js';
10
10
  export { ArtikelWizard } from './components/voorraad/ArtikelWizard.js';
11
11
  import { VoorraadVeldenCard } from './components/voorraad/VoorraadVeldenCard.js';
12
+ import { VoorraadSturingCard } from './components/voorraad/VoorraadSturingCard.js';
12
13
  export { FustenPage } from "./components/voorraad/FustenPage.js";
13
14
  export { PublicatiesPage } from "./components/voorraad/PublicatiesPage.js";
14
15
  export const floridayVoorraadModule = {
@@ -25,6 +26,7 @@ export const floridayVoorraadModule = {
25
26
  ],
26
27
  },
27
28
  settingsCards: [
29
+ { component: VoorraadSturingCard, order: 45 },
28
30
  { component: VoorraadVeldenCard, order: 50 },
29
31
  ],
30
32
  };