@flowselections/pick-schermen-kwekers 1.0.60 → 1.0.64

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 (57) hide show
  1. package/dist-lib/components/pick/PickScherm.d.ts.map +1 -1
  2. package/dist-lib/components/pick/PickScherm.js +28 -10
  3. package/dist-lib/components/pick/QueueTable.d.ts +5 -1
  4. package/dist-lib/components/pick/QueueTable.d.ts.map +1 -1
  5. package/dist-lib/components/pick/QueueTable.js +14 -31
  6. package/dist-lib/components/pick/ShippingNoteScan.d.ts.map +1 -1
  7. package/dist-lib/components/pick/ShippingNoteScan.js +52 -13
  8. package/dist-lib/components/pick/StickerState.d.ts +4 -0
  9. package/dist-lib/components/pick/StickerState.d.ts.map +1 -1
  10. package/dist-lib/components/pick/StickerState.js +30 -4
  11. package/dist-lib/hooks/usePickPrintStatus.d.ts +14 -0
  12. package/dist-lib/hooks/usePickPrintStatus.d.ts.map +1 -0
  13. package/dist-lib/hooks/usePickPrintStatus.js +47 -0
  14. package/dist-lib/hooks/usePickQueue.d.ts +2 -0
  15. package/dist-lib/hooks/usePickQueue.d.ts.map +1 -1
  16. package/dist-lib/hooks/usePickQueue.js +29 -8
  17. package/dist-lib/integrations/supabase/types.d.ts +937 -7
  18. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  19. package/dist-lib/integrations/supabase/types.js +1 -0
  20. package/dist-lib/lib/__tests__/pick143.test.js +1 -1
  21. package/dist-lib/lib/__tests__/pick161.test.d.ts +2 -0
  22. package/dist-lib/lib/__tests__/pick161.test.d.ts.map +1 -0
  23. package/dist-lib/lib/__tests__/pick161.test.js +29 -0
  24. package/dist-lib/lib/__tests__/pick163.test.d.ts +2 -0
  25. package/dist-lib/lib/__tests__/pick163.test.d.ts.map +1 -0
  26. package/dist-lib/lib/__tests__/pick163.test.js +68 -0
  27. package/dist-lib/lib/__tests__/pickUitwijk.test.d.ts +2 -0
  28. package/dist-lib/lib/__tests__/pickUitwijk.test.d.ts.map +1 -0
  29. package/dist-lib/lib/__tests__/pickUitwijk.test.js +36 -0
  30. package/dist-lib/lib/pick143.d.ts +7 -2
  31. package/dist-lib/lib/pick143.d.ts.map +1 -1
  32. package/dist-lib/lib/pick143.js +24 -5
  33. package/dist-lib/lib/pick159.js +2 -2
  34. package/dist-lib/lib/pick161.d.ts +27 -0
  35. package/dist-lib/lib/pick161.d.ts.map +1 -0
  36. package/dist-lib/lib/pick161.js +86 -0
  37. package/dist-lib/lib/pickPerf.d.ts +11 -0
  38. package/dist-lib/lib/pickPerf.d.ts.map +1 -0
  39. package/dist-lib/lib/pickPerf.js +35 -0
  40. package/dist-lib/lib/pickPreview.d.ts.map +1 -1
  41. package/dist-lib/lib/pickPreview.js +2 -1
  42. package/dist-lib/lib/pickPrintStatus.d.ts +36 -0
  43. package/dist-lib/lib/pickPrintStatus.d.ts.map +1 -0
  44. package/dist-lib/lib/pickPrintStatus.js +98 -0
  45. package/dist-lib/lib/pickRowState.d.ts +2 -1
  46. package/dist-lib/lib/pickRowState.d.ts.map +1 -1
  47. package/dist-lib/lib/pickRowState.js +4 -2
  48. package/dist-lib/lib/pickStickers.d.ts +5 -0
  49. package/dist-lib/lib/pickStickers.d.ts.map +1 -1
  50. package/dist-lib/lib/pickStickers.js +3 -0
  51. package/dist-lib/lib/pickUitwijk.d.ts +25 -0
  52. package/dist-lib/lib/pickUitwijk.d.ts.map +1 -0
  53. package/dist-lib/lib/pickUitwijk.js +93 -0
  54. package/dist-lib/lib/shippingNote.d.ts +2 -0
  55. package/dist-lib/lib/shippingNote.d.ts.map +1 -1
  56. package/dist-lib/lib/shippingNote.js +2 -1
  57. package/package.json +1 -1
@@ -15,13 +15,15 @@ export function isNoDocumentError(e) {
15
15
  return msg.includes("geen documenten beschikbaar") || msg.includes("geen document beschikbaar");
16
16
  }
17
17
  /** De bovenste zichtbare rij die nog geprint moet worden (volgorde van de lijst). */
18
- export function firstVisibleTarget(items, lockedIds) {
18
+ /** `inPrintIds`: regels met een open printopdracht (wachtend/bezig) worden overgeslagen. */
19
+ export function firstVisibleTarget(items, lockedIds, inPrintIds) {
19
20
  const list = Array.isArray(items) ? items : [];
20
21
  return (list.find((item) => !item.printed_at
21
22
  && !item.cancelled_at
22
23
  && !item.completed_at
23
24
  && !(item.payload && item.payload["printbaar"] === false)
24
- && !lockedIds?.has(item.id)) ?? null);
25
+ && !lockedIds?.has(item.id)
26
+ && !inPrintIds?.has(item.id)) ?? null);
25
27
  }
26
28
  /** Kenmerk "kar xxxxxx" als meer rijen dezelfde documentnaam hebben. */
27
29
  export function duplicateNameTag(items, item) {
@@ -8,6 +8,9 @@ export interface StickerLine {
8
8
  printJobId: string | null;
9
9
  breedteMm: number | null;
10
10
  hoogteMm: number | null;
11
+ /** Uitwijkroute van Layouts: passend / groter / a4 (indien geleverd). */
12
+ route?: string | null;
13
+ printerNaam?: string | null;
11
14
  }
12
15
  export interface CartStickerState {
13
16
  cartId: string | null;
@@ -16,6 +19,8 @@ export interface CartStickerState {
16
19
  wachtend: number | null;
17
20
  geblokkeerd: number | null;
18
21
  regels: StickerLine[];
22
+ /** Reden van de Engine waarom er geen stickers nodig zijn. */
23
+ geenStickersReden?: string | null;
19
24
  }
20
25
  export interface StickerMelding {
21
26
  id: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"pickStickers.d.ts","sourceRoot":"","sources":["../../src/lib/pickStickers.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,eAAe,0BAA0B,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AACD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AACD,MAAM,WAAW,cAAc;IAAG,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AAOpE,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQvD,CAAC;AACF,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAG3D;AAED,wEAAwE;AACxE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAqB3E;AAED,gFAAgF;AAChF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAIjF;AAED,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,IAAI,CAe3E;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,IAAI,CAI/E;AAED,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAIjE;AAQD;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAGjH;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAGvH"}
1
+ {"version":3,"file":"pickStickers.d.ts","sourceRoot":"","sources":["../../src/lib/pickStickers.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,eAAe,0BAA0B,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AACD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AACD,MAAM,WAAW,cAAc;IAAG,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AAOpE,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQvD,CAAC;AACF,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAG3D;AAED,wEAAwE;AACxE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAwB3E;AAED,gFAAgF;AAChF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAIjF;AAED,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,IAAI,CAe3E;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,IAAI,CAI/E;AAED,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAIjE;AAQD;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAGjH;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAGvH"}
@@ -35,6 +35,7 @@ export function parseCartStickerState(raw) {
35
35
  inPrintwachtrij: num(r["inPrintwachtrij"]),
36
36
  wachtend: num(r["wachtend"]),
37
37
  geblokkeerd: num(r["geblokkeerd"]),
38
+ geenStickersReden: txt(r["geenStickersReden"] ?? r["geen_stickers_reden"] ?? r["reden"]),
38
39
  regels: r["regels"].flatMap((x) => {
39
40
  const l = rec(x);
40
41
  if (!l)
@@ -43,6 +44,8 @@ export function parseCartStickerState(raw) {
43
44
  soort: txt(l["soort"]), stickerId: txt(l["stickerId"]), kopieen: num(l["kopieen"]),
44
45
  status: txt(l["status"]), reden: txt(l["reden"]), printJobId: txt(l["printJobId"]),
45
46
  breedteMm: num(l["breedteMm"]), hoogteMm: num(l["hoogteMm"]),
47
+ route: txt(l["uitwijkroute"] ?? l["printroute"] ?? l["route"]),
48
+ printerNaam: txt(l["printerNaam"] ?? l["printer_naam"]),
46
49
  }];
47
50
  }),
48
51
  };
@@ -0,0 +1,25 @@
1
+ export interface Uitwijk {
2
+ route: string | null;
3
+ printerNaam: string | null;
4
+ schaal: number | null;
5
+ reden: string | null;
6
+ }
7
+ export declare function uitwijkRouteText(v: string | null | undefined): string | null;
8
+ export declare function parseUitwijk(raw: unknown): Uitwijk | null;
9
+ /** Map printJobId → uitwijk; onleesbaar antwoord = lege map. */
10
+ export declare function parseUitwijkList(raw: unknown): Map<string, Uitwijk>;
11
+ export declare function fetchUitwijk(jobIds: string[]): Promise<Map<string, Uitwijk>>;
12
+ export interface VroegeWaarschuwing {
13
+ dag: string | null;
14
+ printplek: string | null;
15
+ maat: string | null;
16
+ aantal: number | null;
17
+ route: string;
18
+ reden: string | null;
19
+ }
20
+ /** Alleen regels met route A4 of verkleind. null = functie (nog) niet beschikbaar. */
21
+ export declare function parseVroegeWaarschuwing(raw: unknown): VroegeWaarschuwing[] | null;
22
+ /** "Morgen: 12 stickers (25×89 mm) op A4 bij Expeditie – past niet op …". */
23
+ export declare function vroegeWaarschuwingText(w: VroegeWaarschuwing, today: string): string;
24
+ export declare function fetchVroegeWaarschuwing(stationId: string | null): Promise<VroegeWaarschuwing[] | null>;
25
+ //# sourceMappingURL=pickUitwijk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickUitwijk.d.ts","sourceRoot":"","sources":["../../src/lib/pickUitwijk.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,OAAO;IAAG,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE;AAU1H,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAE5E;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CASzD;AAED,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAUnE;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAKlF;AAED,MAAM,WAAW,kBAAkB;IAAG,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE;AAIrK,sFAAsF;AACtF,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,EAAE,GAAG,IAAI,CAqBjF;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAMnF;AAED,wBAAsB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,CAI5G"}
@@ -0,0 +1,93 @@
1
+ // Uitwijkroute van Layouts (print_jobs.uitwijk) en de vroege stickerwaarschuwing.
2
+ // Alleen lezen, via eigen leesfuncties met sleutelcontrole.
3
+ import { supabase } from "@flowselections/core";
4
+ import { keyedRpc } from "./pick159.js";
5
+ const db = keyedRpc(supabase);
6
+ const rec = (v) => v && typeof v === "object" && !Array.isArray(v) ? v : null;
7
+ const txt = (v) => (typeof v === "string" && v.trim() ? v.trim() : null);
8
+ const num = (v) => (typeof v === "number" && Number.isFinite(v) ? v : typeof v === "string" && v.trim() && Number.isFinite(Number(v)) ? Number(v) : null);
9
+ const ROUTE = {
10
+ precies: "passend etiket",
11
+ gedraaid: "gedraaid etiket",
12
+ groter_etiket: "groter etiket",
13
+ verkleind: "verkleind",
14
+ a4_vel: "A4",
15
+ a4_snijlijnen: "A4 met snijlijnen",
16
+ };
17
+ export function uitwijkRouteText(v) {
18
+ return v ? ROUTE[v.toLowerCase()] ?? null : null;
19
+ }
20
+ export function parseUitwijk(raw) {
21
+ const r = rec(raw);
22
+ if (!r)
23
+ return null;
24
+ return {
25
+ route: txt(r["uitwijkroute"] ?? r["route"]),
26
+ printerNaam: txt(r["printerNaam"] ?? r["printer_naam"]),
27
+ schaal: num(r["schaal"]),
28
+ reden: txt(r["reden"]),
29
+ };
30
+ }
31
+ /** Map printJobId → uitwijk; onleesbaar antwoord = lege map. */
32
+ export function parseUitwijkList(raw) {
33
+ const m = new Map();
34
+ if (!Array.isArray(raw))
35
+ return m;
36
+ for (const x of raw) {
37
+ const r = rec(x);
38
+ const id = txt(r?.["id"]);
39
+ const u = parseUitwijk(r?.["uitwijk"]);
40
+ if (id && u)
41
+ m.set(id, u);
42
+ }
43
+ return m;
44
+ }
45
+ export async function fetchUitwijk(jobIds) {
46
+ if (jobIds.length === 0)
47
+ return new Map();
48
+ const { data, error } = await db.rpc("pick_read_print_job_uitwijk", { p_job_ids: jobIds });
49
+ if (error)
50
+ throw new Error(error.message);
51
+ return parseUitwijkList(data);
52
+ }
53
+ const WAARSCHUW_ROUTES = new Set(["a4_vel", "a4_snijlijnen", "verkleind"]);
54
+ /** Alleen regels met route A4 of verkleind. null = functie (nog) niet beschikbaar. */
55
+ export function parseVroegeWaarschuwing(raw) {
56
+ // Nieuwe vorm: { regels: [...], reden }; oude vorm: lijst.
57
+ const obj = rec(raw);
58
+ if (obj && !Array.isArray(raw))
59
+ return Array.isArray(obj["regels"]) ? parseVroegeWaarschuwing(obj["regels"]) : [];
60
+ if (raw == null || !Array.isArray(raw))
61
+ return null;
62
+ const rows = raw.length === 1 && Array.isArray(raw[0]) ? raw[0] : raw;
63
+ return rows.flatMap((x) => {
64
+ const r = rec(x);
65
+ const route = txt(r?.["route"] ?? r?.["uitwijkroute"])?.toLowerCase();
66
+ if (!r || !route || !WAARSCHUW_ROUTES.has(route))
67
+ return [];
68
+ const b = num(r["breedte_mm"] ?? r["breedteMm"]);
69
+ const h = num(r["hoogte_mm"] ?? r["hoogteMm"]);
70
+ return [{
71
+ dag: txt(r["dag"] ?? r["datum"]),
72
+ printplek: txt(r["printplek"] ?? r["printplekNaam"] ?? r["print_plek_naam"]),
73
+ maat: txt(r["maat"]) ?? (b && h ? `${b}×${h} mm` : null),
74
+ aantal: num(r["aantal"]),
75
+ route,
76
+ reden: txt(r["reden"]),
77
+ }];
78
+ });
79
+ }
80
+ /** "Morgen: 12 stickers (25×89 mm) op A4 bij Expeditie – past niet op …". */
81
+ export function vroegeWaarschuwingText(w, today) {
82
+ const dag = w.dag ? (w.dag.slice(0, 10) === today ? "Vandaag" : "Morgen") : "Binnenkort";
83
+ const aantal = w.aantal != null ? `${w.aantal} ${w.aantal === 1 ? "sticker" : "stickers"}` : "Stickers";
84
+ const route = uitwijkRouteText(w.route) ?? w.route;
85
+ const wat = w.route === "verkleind" ? "verkleind geprint" : `op ${route} geprint`;
86
+ return `${dag}: ${aantal}${w.maat ? ` (${w.maat})` : ""} worden ${wat}${w.printplek ? ` bij ${w.printplek}` : ""}${w.reden ? ` – ${w.reden}` : ""}`;
87
+ }
88
+ export async function fetchVroegeWaarschuwing(stationId) {
89
+ const { data, error } = await db.rpc("pick_read_vroege_sticker_waarschuwing", { p_station_id: stationId });
90
+ if (error)
91
+ throw new Error(error.message);
92
+ return parseVroegeWaarschuwing(data);
93
+ }
@@ -1,6 +1,8 @@
1
1
  export interface ShippingNoteCartItem {
2
2
  productName: string;
3
3
  quantity: number | null;
4
+ /** Aantal fust, alleen als de Engine het levert. */
5
+ crates: number | null;
4
6
  }
5
7
  export interface ShippingNoteCart {
6
8
  cartId: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"shippingNote.d.ts","sourceRoot":"","sources":["../../src/lib/shippingNote.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAmCD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CAcxE;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CASxE;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAIhF;AAED,yEAAyE;AACzE,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAQ9B"}
1
+ {"version":3,"file":"shippingNote.d.ts","sourceRoot":"","sources":["../../src/lib/shippingNote.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,oDAAoD;IACpD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAoCD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CAcxE;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CASxE;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAIhF;AAED,yEAAyE;AACzE,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAQ9B"}
@@ -27,7 +27,8 @@ function parseCart(raw) {
27
27
  const i = obj(rawItem);
28
28
  return {
29
29
  productName: str(i["productName"] ?? i["product_name"] ?? i["name"]) ?? "Onbekend product",
30
- quantity: num(i["quantity"] ?? i["crates"] ?? i["aantal"]),
30
+ quantity: num(i["quantity"] ?? i["aantal"] ?? i["stuks"]),
31
+ crates: num(i["crates"] ?? i["fust"] ?? i["cartCrates"]),
31
32
  };
32
33
  }),
33
34
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowselections/pick-schermen-kwekers",
3
- "version": "1.0.60",
3
+ "version": "1.0.64",
4
4
  "flowselections": {
5
5
  "moduleId": "pick-schermen",
6
6
  "pages": [