@flowselections/pick-schermen-kwekers 1.0.21 → 1.0.23
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/pick/PickScherm.d.ts.map +1 -1
- package/dist-lib/components/pick/PickScherm.js +56 -27
- package/dist-lib/hooks/usePickConfig.d.ts +11 -11
- package/dist-lib/hooks/usePickConfig.d.ts.map +1 -1
- package/dist-lib/hooks/usePickQueue.d.ts +5 -3
- package/dist-lib/hooks/usePickQueue.d.ts.map +1 -1
- package/dist-lib/hooks/usePickQueue.js +17 -4
- package/dist-lib/hooks/usePickReferenceData.d.ts +1 -1
- package/dist-lib/hooks/usePickReferenceData.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +4754 -230
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +4754 -230
- package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.js +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +4754 -230
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.js +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.d.ts +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.js +8 -1
- package/dist-lib/integrations/supabase/types.d.ts +4795 -203
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/__tests__/pickRobustness.test.d.ts +2 -0
- package/dist-lib/lib/__tests__/pickRobustness.test.d.ts.map +1 -0
- package/dist-lib/lib/__tests__/pickRobustness.test.js +68 -0
- package/dist-lib/lib/pickApi.d.ts +25 -1
- package/dist-lib/lib/pickApi.d.ts.map +1 -1
- package/dist-lib/lib/pickApi.js +56 -3
- package/dist-lib/lib/pickRetry.d.ts +13 -0
- package/dist-lib/lib/pickRetry.d.ts.map +1 -0
- package/dist-lib/lib/pickRetry.js +52 -0
- package/dist-lib/lib/pickUiText.d.ts.map +1 -1
- package/dist-lib/lib/pickUiText.js +5 -3
- package/dist-lib/lib/pickVerify.d.ts +15 -0
- package/dist-lib/lib/pickVerify.d.ts.map +1 -0
- package/dist-lib/lib/pickVerify.js +32 -0
- package/package.json +5 -4
- package/dist-lib/lib/layoutApi.d.ts +0 -23
- package/dist-lib/lib/layoutApi.d.ts.map +0 -1
- package/dist-lib/lib/layoutApi.js +0 -94
- package/dist-lib/lib/layoutMaker/documentProfiles.d.ts +0 -50
- package/dist-lib/lib/layoutMaker/documentProfiles.d.ts.map +0 -1
- package/dist-lib/lib/layoutMaker/documentProfiles.js +0 -458
- package/dist-lib/lib/layoutMaker/documentTypes.d.ts +0 -123
- package/dist-lib/lib/layoutMaker/documentTypes.d.ts.map +0 -1
- package/dist-lib/lib/layoutMaker/documentTypes.js +0 -74
- package/dist-lib/lib/layoutMaker/logoLibrary.d.ts +0 -13
- package/dist-lib/lib/layoutMaker/logoLibrary.d.ts.map +0 -1
- package/dist-lib/lib/layoutMaker/logoLibrary.js +0 -54
- package/dist-lib/lib/layoutMaker/pakbonBuilder.d.ts +0 -196
- package/dist-lib/lib/layoutMaker/pakbonBuilder.d.ts.map +0 -1
- package/dist-lib/lib/layoutMaker/pakbonBuilder.js +0 -813
- package/dist-lib/lib/layoutMaker/pakbonHtml.d.ts +0 -48
- package/dist-lib/lib/layoutMaker/pakbonHtml.d.ts.map +0 -1
- package/dist-lib/lib/layoutMaker/pakbonHtml.js +0 -703
- package/dist-lib/lib/layoutRenderer.d.ts +0 -7
- package/dist-lib/lib/layoutRenderer.d.ts.map +0 -1
- package/dist-lib/lib/layoutRenderer.js +0 -233
- package/dist-lib/lib/layoutTypes.d.ts +0 -84
- package/dist-lib/lib/layoutTypes.d.ts.map +0 -1
- package/dist-lib/lib/layoutTypes.js +0 -25
- package/dist-lib/lib/orderContext.d.ts +0 -50
- package/dist-lib/lib/orderContext.d.ts.map +0 -1
- package/dist-lib/lib/orderContext.js +0 -162
- package/dist-lib/lib/pakbonOrderInput.d.ts +0 -8
- package/dist-lib/lib/pakbonOrderInput.d.ts.map +0 -1
- package/dist-lib/lib/pakbonOrderInput.js +0 -150
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
function txt(v) {
|
|
2
|
-
return v === null || v === undefined ? "" : String(v);
|
|
3
|
-
}
|
|
4
|
-
/** Productnamen komen soms als vertaal-JSON ({"nl":"..."}) uit de database. */
|
|
5
|
-
function naam(v) {
|
|
6
|
-
const s = txt(v).trim();
|
|
7
|
-
if (!s.startsWith("{"))
|
|
8
|
-
return s;
|
|
9
|
-
try {
|
|
10
|
-
const parsed = JSON.parse(s);
|
|
11
|
-
const keys = ["nl", "en", "de", ...Object.keys(parsed)];
|
|
12
|
-
for (const k of keys) {
|
|
13
|
-
const w = parsed[k];
|
|
14
|
-
if (typeof w === "string" && w.trim())
|
|
15
|
-
return w;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
catch {
|
|
19
|
-
// geen JSON: onbewerkt teruggeven
|
|
20
|
-
}
|
|
21
|
-
return s;
|
|
22
|
-
}
|
|
23
|
-
function obj(raw) {
|
|
24
|
-
return raw && typeof raw === "object" && !Array.isArray(raw) ? raw : {};
|
|
25
|
-
}
|
|
26
|
-
function arr(raw) {
|
|
27
|
-
return Array.isArray(raw) ? raw : [];
|
|
28
|
-
}
|
|
29
|
-
function product(p) {
|
|
30
|
-
return {
|
|
31
|
-
artikelnummer: txt(p.artikelnummer),
|
|
32
|
-
artikelnaam: naam(p.artikelnaam),
|
|
33
|
-
potmaat: txt(p.potmaat),
|
|
34
|
-
kleur: txt(p.kleur),
|
|
35
|
-
aantal: Number(p.aantal) || 0,
|
|
36
|
-
locatie: txt(p.locatie),
|
|
37
|
-
barcode: txt(p.barcode),
|
|
38
|
-
opmerking: txt(p.opmerking),
|
|
39
|
-
fust_aantal: Number(p.fust_aantal) || 0,
|
|
40
|
-
fustsoort: txt(p.fustsoort),
|
|
41
|
-
planten_per_fust: Number(p.planten_per_fust) || 0,
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
/** Fusten van een laag, samengevoegd per fustsoort. */
|
|
45
|
-
function fusten(producten) {
|
|
46
|
-
const map = new Map();
|
|
47
|
-
for (const p of arr(producten)) {
|
|
48
|
-
const soort = txt(p.fustsoort) || "Fust";
|
|
49
|
-
map.set(soort, (map.get(soort) ?? 0) + (Number(p.fust_aantal) || 0));
|
|
50
|
-
}
|
|
51
|
-
return [...map.entries()]
|
|
52
|
-
.filter(([, aantal]) => aantal > 0)
|
|
53
|
-
.map(([fusttype, aantal]) => ({ fusttype, aantal }));
|
|
54
|
-
}
|
|
55
|
-
function kar(k, index, transport) {
|
|
56
|
-
const lagen = arr(k.lagen).map((l, j) => ({
|
|
57
|
-
laagnummer: Number(l.laagnummer) || j + 1,
|
|
58
|
-
belading: txt(l.belading),
|
|
59
|
-
potmaat: txt(arr(l.producten)[0]?.potmaat),
|
|
60
|
-
producten: arr(l.producten).map(product),
|
|
61
|
-
fusten: fusten(arr(l.producten)),
|
|
62
|
-
}));
|
|
63
|
-
return {
|
|
64
|
-
karnummer: Number(k.karnummer) || index + 1,
|
|
65
|
-
route: transport["route"] ?? "",
|
|
66
|
-
chauffeur: transport["chauffeur"] ?? "",
|
|
67
|
-
gewicht: "",
|
|
68
|
-
lagen: lagen.length
|
|
69
|
-
? lagen
|
|
70
|
-
: [
|
|
71
|
-
{
|
|
72
|
-
laagnummer: 1,
|
|
73
|
-
belading: "",
|
|
74
|
-
potmaat: "",
|
|
75
|
-
producten: arr(k.producten).map(product),
|
|
76
|
-
fusten: fusten(arr(k.producten)),
|
|
77
|
-
},
|
|
78
|
-
],
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Bouwt de invoer voor `maakPakbonOrder()` uit de opgehaalde ordercontext.
|
|
83
|
-
* Orderregels zonder karren worden als platte productlijst meegegeven; de
|
|
84
|
-
* layout-module plaatst die zelf in één kar/laag.
|
|
85
|
-
*/
|
|
86
|
-
export function pakbonOrderInput(data) {
|
|
87
|
-
const order = obj(data.order);
|
|
88
|
-
const klant = obj(data.klant);
|
|
89
|
-
const aflever = obj(data.afleveradres);
|
|
90
|
-
const transport = {
|
|
91
|
-
transporteur: txt(order["transporteur"] ?? order["carrier"] ?? order["transporter"]),
|
|
92
|
-
route: txt(order["route"] ?? order["route_name"]),
|
|
93
|
-
chauffeur: txt(order["chauffeur"] ?? order["driver"]),
|
|
94
|
-
track: txt(order["track_trace"] ?? order["tracking_code"]),
|
|
95
|
-
};
|
|
96
|
-
const karren = arr(data.karren).map((k, i) => kar(k, i, transport));
|
|
97
|
-
const losseRegels = arr(data.regels).map((r) => ({
|
|
98
|
-
artikelnummer: txt(r["article_number"] ?? r["artikelnummer"]),
|
|
99
|
-
artikelnaam: naam(r["product_name"] ?? r["artikelnaam"] ?? r["product"]),
|
|
100
|
-
potmaat: txt(r["potmaat"] ?? r["pot_size"]),
|
|
101
|
-
aantal: Number(r["quantity"] ?? r["aantal"]) || 0,
|
|
102
|
-
locatie: txt(r["location"] ?? r["locatie"]),
|
|
103
|
-
barcode: txt(r["barcode"]),
|
|
104
|
-
fust_aantal: Number(r["crates"] ?? r["fust_aantal"]) || 0,
|
|
105
|
-
fustsoort: txt(r["unit"] ?? r["fustsoort"]),
|
|
106
|
-
planten_per_fust: Number(r["plants_per_crate"] ?? r["planten_per_fust"]) || 0,
|
|
107
|
-
opmerking: txt(r["notes"] ?? r["opmerking"]),
|
|
108
|
-
}));
|
|
109
|
-
const adres = [aflever["adres"], aflever["adres2"]].filter(Boolean).join(" · ");
|
|
110
|
-
const plaats = [aflever["postcode"], aflever["plaats"]].filter(Boolean).join(" ");
|
|
111
|
-
return {
|
|
112
|
-
order: {
|
|
113
|
-
nummer: txt(order["ordernummer"] ?? order["order_number"]),
|
|
114
|
-
datum: txt(order["orderdatum"] ?? order["order_date"]),
|
|
115
|
-
leverdatum: txt(order["leverdatum"] ?? order["delivery_date"]),
|
|
116
|
-
referentie: txt(order["referentie"] ?? order["reference"]),
|
|
117
|
-
opmerking: txt(order["notes"] ?? order["opmerking"] ?? order["remarks"]),
|
|
118
|
-
},
|
|
119
|
-
bedrijf: {
|
|
120
|
-
naam: txt(order["company_name"] ?? ""),
|
|
121
|
-
adres: "",
|
|
122
|
-
plaats: "",
|
|
123
|
-
telefoon: "",
|
|
124
|
-
email: "",
|
|
125
|
-
kvk: "",
|
|
126
|
-
btw: "",
|
|
127
|
-
},
|
|
128
|
-
klant: {
|
|
129
|
-
naam: txt(klant["naam"] ?? klant["name"]),
|
|
130
|
-
nummer: txt(klant["klantnummer"] ?? klant["customer_number"]),
|
|
131
|
-
contact: txt(klant["contact_name"] ?? klant["contactpersoon"] ?? klant["email"]),
|
|
132
|
-
referentie: txt(order["customer_reference"] ?? order["referentie"]),
|
|
133
|
-
},
|
|
134
|
-
afleveradres: {
|
|
135
|
-
naam: txt(aflever["naam"]),
|
|
136
|
-
adres,
|
|
137
|
-
plaats,
|
|
138
|
-
land: txt(aflever["land"]),
|
|
139
|
-
},
|
|
140
|
-
factuuradres: {
|
|
141
|
-
naam: txt(klant["naam"] ?? klant["name"]),
|
|
142
|
-
adres: txt(klant["invoice_address"] ?? aflever["adres"]),
|
|
143
|
-
plaats: txt(klant["invoice_city"] ?? aflever["plaats"]),
|
|
144
|
-
land: txt(klant["invoice_country"] ?? aflever["land"]),
|
|
145
|
-
},
|
|
146
|
-
transport,
|
|
147
|
-
karren,
|
|
148
|
-
producten: karren.length ? [] : losseRegels,
|
|
149
|
-
};
|
|
150
|
-
}
|