@flowselections/pick-schermen-kwekers 1.0.21 → 1.0.22
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 +10 -2
- 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 +12 -2
- 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 +4652 -298
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +4652 -298
- 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 +4652 -298
- 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 +4684 -268
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/pickApi.d.ts +1 -0
- package/dist-lib/lib/pickApi.d.ts.map +1 -1
- package/dist-lib/lib/pickApi.js +8 -1
- package/package.json +2 -2
- 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,458 +0,0 @@
|
|
|
1
|
-
// ============================================================================
|
|
2
|
-
// src/lib/documentProfiles.ts — configuratieprofielen per documentsoort
|
|
3
|
-
//
|
|
4
|
-
// Een nieuw documenttype toevoegen = één profiel toevoegen aan DOCUMENT_PROFIELEN.
|
|
5
|
-
// De wizard, de designer en de printregels lezen dit register uit; de editor
|
|
6
|
-
// zelf hoeft niet te worden aangepast.
|
|
7
|
-
// ============================================================================
|
|
8
|
-
const vinkjes = (key, label, items, omschrijving) => ({
|
|
9
|
-
key,
|
|
10
|
-
label,
|
|
11
|
-
omschrijving,
|
|
12
|
-
instellingen: items.map(([k, l, aan]) => ({
|
|
13
|
-
key: k,
|
|
14
|
-
label: l,
|
|
15
|
-
type: "schakelaar",
|
|
16
|
-
standaard: !!aan,
|
|
17
|
-
})),
|
|
18
|
-
});
|
|
19
|
-
const A4 = { code: "A4", label: "A4 (210 × 297 mm)", breedte: 210, hoogte: 297 };
|
|
20
|
-
const A5 = { code: "A5", label: "A5 (148 × 210 mm)", breedte: 148, hoogte: 210 };
|
|
21
|
-
const A6 = { code: "A6", label: "A6 (105 × 148 mm)", breedte: 105, hoogte: 148 };
|
|
22
|
-
const BON80 = { code: "BON80", label: "Bon 80 mm", breedte: 80, hoogte: 200 };
|
|
23
|
-
const VRIJ = { code: "VRIJ", label: "Vrij formaat", breedte: 100, hoogte: 100 };
|
|
24
|
-
export const STICKER_FORMATEN = [
|
|
25
|
-
{ code: "STICKER_50x30", label: "50 × 30 mm", breedte: 50, hoogte: 30 },
|
|
26
|
-
{ code: "STICKER_70x40", label: "70 × 40 mm", breedte: 70, hoogte: 40 },
|
|
27
|
-
{ code: "STICKER_100x50", label: "100 × 50 mm", breedte: 100, hoogte: 50 },
|
|
28
|
-
{ code: "STICKER_100x100", label: "100 × 100 mm", breedte: 100, hoogte: 100 },
|
|
29
|
-
{ code: "STICKER_100x150", label: "100 × 150 mm", breedte: 100, hoogte: 150 },
|
|
30
|
-
VRIJ,
|
|
31
|
-
];
|
|
32
|
-
export const VERZENDLABEL_FORMATEN = [
|
|
33
|
-
{ code: "LABEL_100x150", label: "Label 100 × 150 mm", breedte: 100, hoogte: 150 },
|
|
34
|
-
{ code: "LABEL_100x62", label: "Label 100 × 62 mm", breedte: 100, hoogte: 62 },
|
|
35
|
-
A6,
|
|
36
|
-
A5,
|
|
37
|
-
A4,
|
|
38
|
-
VRIJ,
|
|
39
|
-
];
|
|
40
|
-
// --- Pakbon -----------------------------------------------------------------
|
|
41
|
-
const pakbon = {
|
|
42
|
-
id: "pakbon",
|
|
43
|
-
label: "Pakbon",
|
|
44
|
-
omschrijving: "Orderregels, fusten en lagen voor de expeditie.",
|
|
45
|
-
primair: true,
|
|
46
|
-
formaten: [A4, A5, BON80, VRIJ],
|
|
47
|
-
standaardFormaat: "A4",
|
|
48
|
-
standaardOrientatie: "portrait",
|
|
49
|
-
entiteiten: ["order", "klant", "regel", "bedrijf", "systeem"],
|
|
50
|
-
aiHint: "Dit is een pakbon: herken orderkop, adresblok, regeltabel met aantallen en totalen.",
|
|
51
|
-
groepen: [
|
|
52
|
-
{
|
|
53
|
-
key: "structuur",
|
|
54
|
-
label: "Structuur van de pakbon",
|
|
55
|
-
omschrijving: "Hoe wordt de pakbon samengesteld?",
|
|
56
|
-
instellingen: [
|
|
57
|
-
{
|
|
58
|
-
key: "splitsing",
|
|
59
|
-
label: "Pakbon aanmaken",
|
|
60
|
-
type: "keuze",
|
|
61
|
-
standaard: "per_order",
|
|
62
|
-
opties: [
|
|
63
|
-
{ value: "per_order", label: "Eén pakbon per order" },
|
|
64
|
-
{ value: "per_kar", label: "Eén pakbon per kar" },
|
|
65
|
-
{ value: "order_en_kar", label: "Zowel per order als per kar" },
|
|
66
|
-
{ value: "per_klant", label: "Eén pakbon per klant" },
|
|
67
|
-
{ value: "per_afleveradres", label: "Eén pakbon per afleveradres" },
|
|
68
|
-
{ value: "per_route", label: "Eén pakbon per route" },
|
|
69
|
-
{ value: "per_transporteur", label: "Eén pakbon per transporteur" },
|
|
70
|
-
],
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
key: "groepering",
|
|
74
|
-
label: "Artikelen groeperen",
|
|
75
|
-
type: "keuze",
|
|
76
|
-
standaard: "per_order",
|
|
77
|
-
opties: [
|
|
78
|
-
{ value: "per_order", label: "Per order" },
|
|
79
|
-
{ value: "per_klant", label: "Per klant" },
|
|
80
|
-
{ value: "per_kar", label: "Per kar" },
|
|
81
|
-
{ value: "per_locatie", label: "Per locatie" },
|
|
82
|
-
{ value: "per_afleveradres", label: "Per afleveradres" },
|
|
83
|
-
{ value: "per_productgroep", label: "Per productgroep" },
|
|
84
|
-
{ value: "geen", label: "Niet groeperen" },
|
|
85
|
-
],
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
key: "fustweergave",
|
|
89
|
-
label: "Weergave fusten en lagen",
|
|
90
|
-
type: "keuze",
|
|
91
|
-
standaard: "totaal",
|
|
92
|
-
opties: [
|
|
93
|
-
{ value: "verbergen", label: "Fusten volledig verbergen" },
|
|
94
|
-
{ value: "totaal", label: "Alleen totaal aantal fusten" },
|
|
95
|
-
{ value: "per_laag", label: "Fusten per laag tonen" },
|
|
96
|
-
{ value: "gegroepeerd", label: "Fusten gegroepeerd tonen" },
|
|
97
|
-
{ value: "laag_apart", label: "Iedere laag apart tonen" },
|
|
98
|
-
{ value: "lege_fusten", label: "Ook lege fusten tonen" },
|
|
99
|
-
{ value: "belading", label: "Alleen belading tonen" },
|
|
100
|
-
{ value: "belading_potmaat", label: "Belading inclusief potmaat" },
|
|
101
|
-
],
|
|
102
|
-
},
|
|
103
|
-
],
|
|
104
|
-
},
|
|
105
|
-
vinkjes("product", "Productinformatie", [
|
|
106
|
-
["artikelnummer", "Artikelnummer", true],
|
|
107
|
-
["artikelnaam", "Artikelnaam", true],
|
|
108
|
-
["aantal", "Aantal", true],
|
|
109
|
-
["potmaat", "Potmaat"],
|
|
110
|
-
["hoogte", "Hoogte"],
|
|
111
|
-
["belading", "Belading"],
|
|
112
|
-
["laagnummer", "Laagnummer"],
|
|
113
|
-
["barcode", "Barcode"],
|
|
114
|
-
["qrcode", "QR-code"],
|
|
115
|
-
["kleur", "Kleur"],
|
|
116
|
-
["productgroep", "Productgroep"],
|
|
117
|
-
["productomschrijving", "Productomschrijving"],
|
|
118
|
-
["interne_opmerking", "Interne opmerking"],
|
|
119
|
-
["klantopmerking", "Klantopmerking"],
|
|
120
|
-
["productfoto", "Productfoto"],
|
|
121
|
-
["leverancierscode", "Productcode leverancier"],
|
|
122
|
-
]),
|
|
123
|
-
vinkjes("order", "Orderinformatie", [
|
|
124
|
-
["ordernummer", "Ordernummer", true],
|
|
125
|
-
["orderdatum", "Orderdatum", true],
|
|
126
|
-
["leverdatum", "Leverdatum", true],
|
|
127
|
-
["aflevermoment", "Aflevermoment"],
|
|
128
|
-
["klantnummer", "Klantnummer"],
|
|
129
|
-
["klantnaam", "Klantnaam", true],
|
|
130
|
-
["contactpersoon", "Contactpersoon"],
|
|
131
|
-
["telefoon", "Telefoonnummer"],
|
|
132
|
-
["email", "E-mailadres"],
|
|
133
|
-
["referentie", "Referentie"],
|
|
134
|
-
["transporteur", "Transporteur"],
|
|
135
|
-
["chauffeur", "Chauffeur"],
|
|
136
|
-
["route", "Route"],
|
|
137
|
-
["pickstation", "Pickstation"],
|
|
138
|
-
["magazijn", "Magazijn"],
|
|
139
|
-
["orderstatus", "Orderstatus"],
|
|
140
|
-
]),
|
|
141
|
-
vinkjes("totalen", "Totalen", [
|
|
142
|
-
["totaal_producten", "Totaal aantal producten", true],
|
|
143
|
-
["totaal_lagen", "Totaal aantal lagen"],
|
|
144
|
-
["totaal_fusten", "Totaal aantal fusten"],
|
|
145
|
-
["totaal_karren", "Totaal aantal karren"],
|
|
146
|
-
["gewicht", "Gewicht"],
|
|
147
|
-
["volume", "Volume"],
|
|
148
|
-
]),
|
|
149
|
-
vinkjes("overig", "Overige instellingen", [
|
|
150
|
-
["logo", "Logo tonen", true],
|
|
151
|
-
["handtekening", "Handtekeningvak"],
|
|
152
|
-
["order_qr", "QR-code voor order"],
|
|
153
|
-
["order_barcode", "Barcode ordernummer"],
|
|
154
|
-
["watermerk", "Watermerk"],
|
|
155
|
-
["eigen_tekst", "Eigen tekst onderaan"],
|
|
156
|
-
["voorwaarden", "Algemene voorwaarden"],
|
|
157
|
-
["extra_opmerkingen", "Extra opmerkingen"],
|
|
158
|
-
]),
|
|
159
|
-
],
|
|
160
|
-
};
|
|
161
|
-
// --- Sticker ----------------------------------------------------------------
|
|
162
|
-
const sticker = {
|
|
163
|
-
id: "sticker",
|
|
164
|
-
label: "Sticker",
|
|
165
|
-
omschrijving: "Compacte sticker met de gekozen bestelafbeelding.",
|
|
166
|
-
primair: true,
|
|
167
|
-
formaten: STICKER_FORMATEN,
|
|
168
|
-
standaardFormaat: "STICKER_100x150",
|
|
169
|
-
standaardOrientatie: "portrait",
|
|
170
|
-
entiteiten: ["regel", "order", "klant", "bedrijf", "systeem"],
|
|
171
|
-
aiHint: "Dit is een sticker: herken vooral de afbeelding, artikelnaam en barcode.",
|
|
172
|
-
printerPerFormaat: true,
|
|
173
|
-
groepen: [
|
|
174
|
-
{
|
|
175
|
-
key: "klantlayout",
|
|
176
|
-
label: "Layout van de klant",
|
|
177
|
-
omschrijving: "Veel klanten leveren zelf een stickerontwerp aan. Zet dit aan om dat ontwerp altijd te gebruiken.",
|
|
178
|
-
instellingen: [
|
|
179
|
-
{
|
|
180
|
-
key: "gebruik_klantlayout",
|
|
181
|
-
label: "Kies altijd de layout van de klant",
|
|
182
|
-
type: "schakelaar",
|
|
183
|
-
standaard: false,
|
|
184
|
-
hint: "Is er geen klantlayout bekend? Dan wordt deze layout gebruikt.",
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
key: "terugval",
|
|
188
|
-
label: "Als de klant geen layout heeft",
|
|
189
|
-
type: "keuze",
|
|
190
|
-
standaard: "deze_layout",
|
|
191
|
-
opties: [
|
|
192
|
-
{ value: "deze_layout", label: "Deze layout gebruiken" },
|
|
193
|
-
{ value: "niet_printen", label: "Niet afdrukken en melden" },
|
|
194
|
-
],
|
|
195
|
-
},
|
|
196
|
-
],
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
key: "afbeelding",
|
|
200
|
-
label: "Afbeelding",
|
|
201
|
-
omschrijving: "Standaard wordt alleen de gekozen afbeelding van de bestelling afgedrukt.",
|
|
202
|
-
instellingen: [
|
|
203
|
-
{ key: "toon_afbeelding", label: "Afbeelding tonen", type: "schakelaar", standaard: true },
|
|
204
|
-
{
|
|
205
|
-
key: "schaling",
|
|
206
|
-
label: "Schalen",
|
|
207
|
-
type: "keuze",
|
|
208
|
-
standaard: "passend",
|
|
209
|
-
opties: [
|
|
210
|
-
{ value: "passend", label: "Passend binnen sticker" },
|
|
211
|
-
{ value: "vullend", label: "Sticker volledig vullen (bijsnijden)" },
|
|
212
|
-
{ value: "breedte", label: "Op breedte schalen" },
|
|
213
|
-
{ value: "hoogte", label: "Op hoogte schalen" },
|
|
214
|
-
],
|
|
215
|
-
},
|
|
216
|
-
],
|
|
217
|
-
},
|
|
218
|
-
vinkjes("extra", "Optionele gegevens", [
|
|
219
|
-
["artikelnaam", "Artikelnaam"],
|
|
220
|
-
["artikelcode", "Artikelcode"],
|
|
221
|
-
["barcode", "Barcode"],
|
|
222
|
-
["qrcode", "QR-code"],
|
|
223
|
-
["aantal", "Aantal"],
|
|
224
|
-
["potmaat", "Potmaat"],
|
|
225
|
-
["productgroep", "Productgroep"],
|
|
226
|
-
["klantnaam", "Klantnaam"],
|
|
227
|
-
["productomschrijving", "Productomschrijving"],
|
|
228
|
-
], "Alles wat je aanzet komt onder de afbeelding te staan."),
|
|
229
|
-
],
|
|
230
|
-
};
|
|
231
|
-
// --- Verzendlabel -----------------------------------------------------------
|
|
232
|
-
const verzendlabel = {
|
|
233
|
-
id: "verzendlabel",
|
|
234
|
-
label: "Verzendlabel",
|
|
235
|
-
omschrijving: "Afzender, ontvanger, transport en waarschuwingspictogrammen.",
|
|
236
|
-
primair: true,
|
|
237
|
-
formaten: VERZENDLABEL_FORMATEN,
|
|
238
|
-
standaardFormaat: "LABEL_100x150",
|
|
239
|
-
standaardOrientatie: "portrait",
|
|
240
|
-
entiteiten: ["order", "klant", "bedrijf", "systeem"],
|
|
241
|
-
aiHint: "Dit is een verzendlabel: herken afzender, ontvanger, barcode en track & trace.",
|
|
242
|
-
printerPerFormaat: true,
|
|
243
|
-
groepen: [
|
|
244
|
-
vinkjes("afzender", "Afzender", [
|
|
245
|
-
["bedrijfsnaam", "Bedrijfsnaam", true],
|
|
246
|
-
["logo", "Logo", true],
|
|
247
|
-
["adres", "Adres", true],
|
|
248
|
-
["telefoon", "Telefoon"],
|
|
249
|
-
["email", "E-mail"],
|
|
250
|
-
]),
|
|
251
|
-
vinkjes("ontvanger", "Ontvanger", [
|
|
252
|
-
["naam", "Naam", true],
|
|
253
|
-
["bedrijf", "Bedrijf", true],
|
|
254
|
-
["straat", "Straat", true],
|
|
255
|
-
["huisnummer", "Huisnummer", true],
|
|
256
|
-
["postcode", "Postcode", true],
|
|
257
|
-
["plaats", "Plaats", true],
|
|
258
|
-
["land", "Land", true],
|
|
259
|
-
]),
|
|
260
|
-
vinkjes("verzending", "Verzending", [
|
|
261
|
-
["transporteur", "Transporteur", true],
|
|
262
|
-
["verzendmethode", "Verzendmethode"],
|
|
263
|
-
["route", "Route"],
|
|
264
|
-
["track_trace", "Track & Trace", true],
|
|
265
|
-
["ordernummer", "Ordernummer", true],
|
|
266
|
-
["referentie", "Referentie"],
|
|
267
|
-
["gewicht", "Gewicht"],
|
|
268
|
-
["colli", "Aantal colli"],
|
|
269
|
-
["barcode", "Barcode", true],
|
|
270
|
-
["qrcode", "QR-code"],
|
|
271
|
-
]),
|
|
272
|
-
vinkjes("extra", "Extra markeringen", [
|
|
273
|
-
["fragile", "Fragile-logo"],
|
|
274
|
-
["niet_stapelen", "Niet stapelen"],
|
|
275
|
-
["koel", "Koel bewaren"],
|
|
276
|
-
["adr", "ADR-markeringen"],
|
|
277
|
-
["eigen_pictogrammen", "Eigen pictogrammen"],
|
|
278
|
-
["vrije_tekst", "Vrije tekst"],
|
|
279
|
-
]),
|
|
280
|
-
],
|
|
281
|
-
};
|
|
282
|
-
// --- Productiebon -----------------------------------------------------------
|
|
283
|
-
const productiebon = {
|
|
284
|
-
id: "productiebon",
|
|
285
|
-
label: "Productiebon",
|
|
286
|
-
omschrijving: "Werkinstructie met materialen en productiestappen.",
|
|
287
|
-
primair: true,
|
|
288
|
-
formaten: [A4, A5, VRIJ],
|
|
289
|
-
standaardFormaat: "A4",
|
|
290
|
-
standaardOrientatie: "portrait",
|
|
291
|
-
entiteiten: ["regel", "order", "bedrijf", "systeem"],
|
|
292
|
-
aiHint: "Dit is een productiebon: herken productfoto, materialenlijst en stappenlijst.",
|
|
293
|
-
groepen: [
|
|
294
|
-
vinkjes("product", "Productinformatie", [
|
|
295
|
-
["grote_foto", "Grote productfoto", true],
|
|
296
|
-
["meerdere_fotos", "Meerdere productfoto's"],
|
|
297
|
-
["artikelnummer", "Artikelnummer", true],
|
|
298
|
-
["artikelnaam", "Artikelnaam", true],
|
|
299
|
-
["productomschrijving", "Productomschrijving"],
|
|
300
|
-
["variant", "Variant"],
|
|
301
|
-
["potmaat", "Potmaat"],
|
|
302
|
-
["afmetingen", "Afmetingen"],
|
|
303
|
-
]),
|
|
304
|
-
{
|
|
305
|
-
key: "materialen",
|
|
306
|
-
label: "Productiematerialen",
|
|
307
|
-
omschrijving: "Welke materiaalsoorten en welke kolommen komen op de bon?",
|
|
308
|
-
instellingen: [
|
|
309
|
-
{
|
|
310
|
-
key: "soorten",
|
|
311
|
-
label: "Materiaalsoorten",
|
|
312
|
-
type: "meerkeuze",
|
|
313
|
-
standaard: ["plant", "pot", "tray", "kar", "sticker"],
|
|
314
|
-
opties: [
|
|
315
|
-
{ value: "plant", label: "Plant" },
|
|
316
|
-
{ value: "pot", label: "Pot" },
|
|
317
|
-
{ value: "tray", label: "Tray" },
|
|
318
|
-
{ value: "kar", label: "Kar" },
|
|
319
|
-
{ value: "sticker", label: "Sticker" },
|
|
320
|
-
{ value: "label", label: "Label" },
|
|
321
|
-
{ value: "verpakking", label: "Verpakking" },
|
|
322
|
-
{ value: "hoes", label: "Hoes" },
|
|
323
|
-
{ value: "decoratie", label: "Decoratie" },
|
|
324
|
-
{ value: "meststoffen", label: "Meststoffen" },
|
|
325
|
-
{ value: "overig", label: "Overige materialen" },
|
|
326
|
-
],
|
|
327
|
-
},
|
|
328
|
-
{
|
|
329
|
-
key: "kolommen",
|
|
330
|
-
label: "Kolommen per materiaal",
|
|
331
|
-
type: "meerkeuze",
|
|
332
|
-
standaard: ["artikelnummer", "naam", "aantal", "eenheid"],
|
|
333
|
-
opties: [
|
|
334
|
-
{ value: "artikelnummer", label: "Artikelnummer" },
|
|
335
|
-
{ value: "naam", label: "Naam" },
|
|
336
|
-
{ value: "aantal", label: "Aantal" },
|
|
337
|
-
{ value: "eenheid", label: "Eenheid" },
|
|
338
|
-
{ value: "magazijnlocatie", label: "Magazijnlocatie" },
|
|
339
|
-
{ value: "barcode", label: "Barcode" },
|
|
340
|
-
],
|
|
341
|
-
},
|
|
342
|
-
],
|
|
343
|
-
},
|
|
344
|
-
{
|
|
345
|
-
key: "stappen",
|
|
346
|
-
label: "Productiestappen",
|
|
347
|
-
omschrijving: "Volgorde en detail van de werkinstructie.",
|
|
348
|
-
instellingen: [
|
|
349
|
-
{
|
|
350
|
-
key: "stappen",
|
|
351
|
-
label: "Stappen",
|
|
352
|
-
type: "meerkeuze",
|
|
353
|
-
standaard: ["verzamelen", "pot", "sticker", "controleren", "verpakken", "kar"],
|
|
354
|
-
opties: [
|
|
355
|
-
{ value: "verzamelen", label: "Product verzamelen" },
|
|
356
|
-
{ value: "pot", label: "Pot toevoegen" },
|
|
357
|
-
{ value: "sticker", label: "Sticker plaatsen" },
|
|
358
|
-
{ value: "controleren", label: "Product controleren" },
|
|
359
|
-
{ value: "verpakken", label: "Verpakken" },
|
|
360
|
-
{ value: "kar", label: "Op kar plaatsen" },
|
|
361
|
-
],
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
key: "stapdetails",
|
|
365
|
-
label: "Per stap tonen",
|
|
366
|
-
type: "meerkeuze",
|
|
367
|
-
standaard: ["omschrijving"],
|
|
368
|
-
opties: [
|
|
369
|
-
{ value: "omschrijving", label: "Omschrijving" },
|
|
370
|
-
{ value: "afbeelding", label: "Afbeelding" },
|
|
371
|
-
{ value: "controlepunten", label: "Controlepunten" },
|
|
372
|
-
{ value: "tijd", label: "Benodigde tijd" },
|
|
373
|
-
{ value: "medewerker", label: "Benodigde medewerker" },
|
|
374
|
-
{ value: "gereedschap", label: "Benodigd gereedschap" },
|
|
375
|
-
],
|
|
376
|
-
},
|
|
377
|
-
],
|
|
378
|
-
},
|
|
379
|
-
vinkjes("extra", "Extra informatie", [
|
|
380
|
-
["werkinstructies", "Werkinstructies"],
|
|
381
|
-
["veiligheid", "Veiligheidsinstructies"],
|
|
382
|
-
["controlelijst", "Controlelijst"],
|
|
383
|
-
["interne_opmerkingen", "Interne opmerkingen"],
|
|
384
|
-
["klantinstructies", "Klantspecifieke instructies"],
|
|
385
|
-
["productfotos", "Productfoto's"],
|
|
386
|
-
["explosietekening", "Explosietekening"],
|
|
387
|
-
["qr_handleiding", "QR-code naar handleiding"],
|
|
388
|
-
["qr_video", "QR-code naar instructievideo"],
|
|
389
|
-
]),
|
|
390
|
-
],
|
|
391
|
-
};
|
|
392
|
-
// --- Generiek profiel voor overige documentsoorten --------------------------
|
|
393
|
-
function generiek(id, label, omschrijving) {
|
|
394
|
-
return {
|
|
395
|
-
id,
|
|
396
|
-
label,
|
|
397
|
-
omschrijving,
|
|
398
|
-
formaten: [A4, A5, A6, BON80, VRIJ],
|
|
399
|
-
standaardFormaat: "A4",
|
|
400
|
-
standaardOrientatie: "portrait",
|
|
401
|
-
entiteiten: ["order", "klant", "regel", "factuur", "bedrijf", "systeem"],
|
|
402
|
-
aiHint: `Dit is een ${label.toLowerCase()}.`,
|
|
403
|
-
groepen: [
|
|
404
|
-
vinkjes("overig", "Onderdelen", [
|
|
405
|
-
["logo", "Logo tonen", true],
|
|
406
|
-
["adresblok", "Adresblok", true],
|
|
407
|
-
["regeltabel", "Regeltabel", true],
|
|
408
|
-
["totalen", "Totalen", true],
|
|
409
|
-
["voettekst", "Voettekst"],
|
|
410
|
-
["barcode", "Barcode"],
|
|
411
|
-
["qrcode", "QR-code"],
|
|
412
|
-
["handtekening", "Handtekeningvak"],
|
|
413
|
-
]),
|
|
414
|
-
],
|
|
415
|
-
};
|
|
416
|
-
}
|
|
417
|
-
export const DOCUMENT_PROFIELEN = [
|
|
418
|
-
pakbon,
|
|
419
|
-
sticker,
|
|
420
|
-
verzendlabel,
|
|
421
|
-
productiebon,
|
|
422
|
-
generiek("factuur", "Factuur", "Facturatie met btw en totalen."),
|
|
423
|
-
generiek("offerte", "Offerte", "Aanbieding met regels en voorwaarden."),
|
|
424
|
-
generiek("orderbevestiging", "Orderbevestiging", "Bevestiging van een geplaatste order."),
|
|
425
|
-
generiek("etiket", "Etiket", "Klein etiket voor product of fust."),
|
|
426
|
-
generiek("productlabel", "Productlabel", "Label met productgegevens."),
|
|
427
|
-
generiek("barcode_label", "Barcode label", "Label met uitsluitend codes."),
|
|
428
|
-
generiek("magazijnlijst", "Magazijnlijst", "Verzamellijst voor het magazijn."),
|
|
429
|
-
generiek("controlelijst", "Controlelijst", "Afvinklijst voor controle."),
|
|
430
|
-
generiek("transportdocument", "Transportdocument", "Document voor de rit."),
|
|
431
|
-
generiek("vrij", "Vrij document", "Lege layout zonder vooraf ingestelde onderdelen."),
|
|
432
|
-
];
|
|
433
|
-
export function documentProfiel(id) {
|
|
434
|
-
return (DOCUMENT_PROFIELEN.find((p) => p.id === id) ??
|
|
435
|
-
generiek(id, id, "Documentsoort zonder eigen profiel."));
|
|
436
|
-
}
|
|
437
|
-
export function primaireProfielen() {
|
|
438
|
-
return DOCUMENT_PROFIELEN.filter((p) => p.primair);
|
|
439
|
-
}
|
|
440
|
-
/** Standaardwaarden van een profiel als opslagbaar configuratieobject. */
|
|
441
|
-
export function standaardConfig(profiel) {
|
|
442
|
-
const config = {};
|
|
443
|
-
for (const groep of profiel.groepen) {
|
|
444
|
-
config[groep.key] = {};
|
|
445
|
-
for (const inst of groep.instellingen) {
|
|
446
|
-
config[groep.key][inst.key] =
|
|
447
|
-
inst.standaard ?? (inst.type === "meerkeuze" ? [] : inst.type === "schakelaar" ? false : "");
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
return config;
|
|
451
|
-
}
|
|
452
|
-
/** Waarde uit de opgeslagen config, met terugval op de profielstandaard. */
|
|
453
|
-
export function configWaarde(config, groep, inst) {
|
|
454
|
-
const g = config?.[groep.key];
|
|
455
|
-
if (g && Object.prototype.hasOwnProperty.call(g, inst.key))
|
|
456
|
-
return g[inst.key];
|
|
457
|
-
return inst.standaard ?? (inst.type === "meerkeuze" ? [] : inst.type === "schakelaar" ? false : "");
|
|
458
|
-
}
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
export type DocumentType = "pakbon" | "sticker" | "productiebon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij";
|
|
2
|
-
export declare const DOCUMENT_TYPES: {
|
|
3
|
-
value: DocumentType;
|
|
4
|
-
label: string;
|
|
5
|
-
}[];
|
|
6
|
-
export declare function documentTypeLabel(value: string): string;
|
|
7
|
-
export interface PapierFormaatDef {
|
|
8
|
-
code: string;
|
|
9
|
-
label: string;
|
|
10
|
-
breedte: number;
|
|
11
|
-
hoogte: number;
|
|
12
|
-
}
|
|
13
|
-
export declare const PAPIERFORMATEN: PapierFormaatDef[];
|
|
14
|
-
export type ElementType = "tekst" | "veld" | "afbeelding" | "logo" | "lijn" | "rechthoek" | "cirkel" | "barcode" | "qrcode" | "tabel" | "lijst" | "paginanummer" | "datum" | "tijd" | "handtekening" | "svg" | "html";
|
|
15
|
-
export interface ElementStijl {
|
|
16
|
-
fontfamilie?: string;
|
|
17
|
-
fontgrootte?: number;
|
|
18
|
-
vet?: boolean;
|
|
19
|
-
cursief?: boolean;
|
|
20
|
-
onderstreept?: boolean;
|
|
21
|
-
kleur?: string;
|
|
22
|
-
achtergrond?: string;
|
|
23
|
-
randbreedte?: number;
|
|
24
|
-
randkleur?: string;
|
|
25
|
-
padding?: number;
|
|
26
|
-
uitlijning?: "left" | "center" | "right";
|
|
27
|
-
transparantie?: number;
|
|
28
|
-
regelhoogte?: number;
|
|
29
|
-
}
|
|
30
|
-
export interface TabelKolom {
|
|
31
|
-
key: string;
|
|
32
|
-
kop: string;
|
|
33
|
-
veldpad: string;
|
|
34
|
-
breedte: number;
|
|
35
|
-
uitlijning?: "left" | "center" | "right";
|
|
36
|
-
totaal?: boolean;
|
|
37
|
-
}
|
|
38
|
-
export interface ElementConditie {
|
|
39
|
-
veld: string;
|
|
40
|
-
operator: "=" | "!=" | ">" | "<" | "bevat" | "leeg" | "niet_leeg";
|
|
41
|
-
waarde: string;
|
|
42
|
-
}
|
|
43
|
-
export interface ElementConfig {
|
|
44
|
-
kolommen?: TabelKolom[];
|
|
45
|
-
bron?: string;
|
|
46
|
-
toonKoppen?: boolean;
|
|
47
|
-
toonTotalen?: boolean;
|
|
48
|
-
regelhoogte?: number;
|
|
49
|
-
formaat?: string;
|
|
50
|
-
barcodeType?: string;
|
|
51
|
-
html?: string;
|
|
52
|
-
svg?: string;
|
|
53
|
-
bronUrl?: string;
|
|
54
|
-
/** verwijst naar een sectie uit de pakbon-opbouw (SECTIE_REGISTER) */
|
|
55
|
-
pakbonSectie?: string;
|
|
56
|
-
}
|
|
57
|
-
export interface LayoutElementModel {
|
|
58
|
-
key: string;
|
|
59
|
-
type: ElementType;
|
|
60
|
-
volgorde: number;
|
|
61
|
-
x: number;
|
|
62
|
-
y: number;
|
|
63
|
-
breedte: number;
|
|
64
|
-
hoogte: number;
|
|
65
|
-
rotatie: number;
|
|
66
|
-
zIndex: number;
|
|
67
|
-
content: string;
|
|
68
|
-
veldpad: string | null;
|
|
69
|
-
/** verwijzing naar de centrale Logo Bibliotheek (layout_logos.id) */
|
|
70
|
-
logoId?: string | null;
|
|
71
|
-
stijl: ElementStijl;
|
|
72
|
-
config: ElementConfig;
|
|
73
|
-
condities: ElementConditie[];
|
|
74
|
-
vergrendeld: boolean;
|
|
75
|
-
verborgen: boolean;
|
|
76
|
-
groep?: string | null;
|
|
77
|
-
}
|
|
78
|
-
export interface PageSettings {
|
|
79
|
-
header?: string;
|
|
80
|
-
footer?: string;
|
|
81
|
-
paginanummering?: boolean;
|
|
82
|
-
watermerk?: string;
|
|
83
|
-
achtergrond?: string;
|
|
84
|
-
raster?: number;
|
|
85
|
-
}
|
|
86
|
-
export interface LayoutModel {
|
|
87
|
-
id: string;
|
|
88
|
-
naam: string;
|
|
89
|
-
documenttype: DocumentType;
|
|
90
|
-
omschrijving: string;
|
|
91
|
-
papierformaat: string;
|
|
92
|
-
breedte_mm: number;
|
|
93
|
-
hoogte_mm: number;
|
|
94
|
-
marge_boven: number;
|
|
95
|
-
marge_onder: number;
|
|
96
|
-
marge_links: number;
|
|
97
|
-
marge_rechts: number;
|
|
98
|
-
orientatie: "portrait" | "landscape";
|
|
99
|
-
actief: boolean;
|
|
100
|
-
is_standaard: boolean;
|
|
101
|
-
thumbnail_url: string | null;
|
|
102
|
-
huidige_versie: number;
|
|
103
|
-
page_settings: PageSettings;
|
|
104
|
-
/** documentspecifieke configuratie, opgebouwd uit het documentprofiel */
|
|
105
|
-
config?: Record<string, Record<string, unknown>>;
|
|
106
|
-
updated_at: string;
|
|
107
|
-
}
|
|
108
|
-
export interface LayoutVariabele {
|
|
109
|
-
id?: string;
|
|
110
|
-
naam: string;
|
|
111
|
-
expressie: string;
|
|
112
|
-
omschrijving: string;
|
|
113
|
-
}
|
|
114
|
-
export declare const ELEMENT_STANDAARD: Record<ElementType, {
|
|
115
|
-
label: string;
|
|
116
|
-
breedte: number;
|
|
117
|
-
hoogte: number;
|
|
118
|
-
content: string;
|
|
119
|
-
stijl?: ElementStijl;
|
|
120
|
-
}>;
|
|
121
|
-
export declare const STANDAARD_STIJL: ElementStijl;
|
|
122
|
-
export declare const STANDAARD_KOLOMMEN: TabelKolom[];
|
|
123
|
-
//# sourceMappingURL=documentTypes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"documentTypes.d.ts","sourceRoot":"","sources":["../../../src/lib/layoutMaker/documentTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
// ============================================================================
|
|
2
|
-
// src/lib/documentTypes.ts — types & constanten voor Document Layouts
|
|
3
|
-
// ============================================================================
|
|
4
|
-
export const DOCUMENT_TYPES = [
|
|
5
|
-
{ value: "pakbon", label: "Pakbon" },
|
|
6
|
-
{ value: "sticker", label: "Sticker" },
|
|
7
|
-
{ value: "productiebon", label: "Productiebon" },
|
|
8
|
-
{ value: "factuur", label: "Factuur" },
|
|
9
|
-
{ value: "offerte", label: "Offerte" },
|
|
10
|
-
{ value: "orderbevestiging", label: "Orderbevestiging" },
|
|
11
|
-
{ value: "etiket", label: "Etiket" },
|
|
12
|
-
{ value: "verzendlabel", label: "Verzendlabel" },
|
|
13
|
-
{ value: "productlabel", label: "Productlabel" },
|
|
14
|
-
{ value: "barcode_label", label: "Barcode label" },
|
|
15
|
-
{ value: "magazijnlijst", label: "Magazijnlijst" },
|
|
16
|
-
{ value: "controlelijst", label: "Controlelijst" },
|
|
17
|
-
{ value: "transportdocument", label: "Transportdocument" },
|
|
18
|
-
{ value: "vrij", label: "Vrij document" },
|
|
19
|
-
];
|
|
20
|
-
export function documentTypeLabel(value) {
|
|
21
|
-
return DOCUMENT_TYPES.find((d) => d.value === value)?.label ?? value;
|
|
22
|
-
}
|
|
23
|
-
export const PAPIERFORMATEN = [
|
|
24
|
-
{ code: "A4", label: "A4 (210 × 297 mm)", breedte: 210, hoogte: 297 },
|
|
25
|
-
{ code: "A5", label: "A5 (148 × 210 mm)", breedte: 148, hoogte: 210 },
|
|
26
|
-
{ code: "A6", label: "A6 (105 × 148 mm)", breedte: 105, hoogte: 148 },
|
|
27
|
-
{ code: "LETTER", label: "Letter (216 × 279 mm)", breedte: 216, hoogte: 279 },
|
|
28
|
-
{ code: "BON80", label: "Bon 80 mm", breedte: 80, hoogte: 200 },
|
|
29
|
-
{ code: "LABEL_100x150", label: "Label 100 × 150 mm", breedte: 100, hoogte: 150 },
|
|
30
|
-
{ code: "LABEL_100x62", label: "Label 100 × 62 mm", breedte: 100, hoogte: 62 },
|
|
31
|
-
{ code: "LABEL_57x32", label: "Label 57 × 32 mm", breedte: 57, hoogte: 32 },
|
|
32
|
-
{ code: "VRIJ", label: "Vrij formaat", breedte: 210, hoogte: 297 },
|
|
33
|
-
];
|
|
34
|
-
export const ELEMENT_STANDAARD = {
|
|
35
|
-
tekst: { label: "Tekst", breedte: 60, hoogte: 8, content: "Nieuwe tekst" },
|
|
36
|
-
veld: { label: "Databaseveld", breedte: 60, hoogte: 8, content: "{{order.nummer}}" },
|
|
37
|
-
afbeelding: { label: "Afbeelding", breedte: 40, hoogte: 30, content: "" },
|
|
38
|
-
logo: { label: "Logo", breedte: 45, hoogte: 18, content: "Bedrijfslogo" },
|
|
39
|
-
lijn: { label: "Lijn", breedte: 80, hoogte: 0.5, content: "" },
|
|
40
|
-
rechthoek: { label: "Rechthoek", breedte: 50, hoogte: 25, content: "" },
|
|
41
|
-
cirkel: { label: "Cirkel", breedte: 25, hoogte: 25, content: "" },
|
|
42
|
-
barcode: { label: "Barcode", breedte: 60, hoogte: 18, content: "{{order.nummer}}" },
|
|
43
|
-
qrcode: { label: "QR-code", breedte: 30, hoogte: 30, content: "{{order.track_trace}}" },
|
|
44
|
-
tabel: { label: "Tabel", breedte: 180, hoogte: 100, content: "" },
|
|
45
|
-
lijst: { label: "Lijst", breedte: 90, hoogte: 40, content: "" },
|
|
46
|
-
paginanummer: { label: "Paginanummer", breedte: 40, hoogte: 8, content: "Pagina {p} van {n}" },
|
|
47
|
-
datum: { label: "Datum", breedte: 40, hoogte: 8, content: "{{systeem.datum}}" },
|
|
48
|
-
tijd: { label: "Tijd", breedte: 30, hoogte: 8, content: "{{systeem.tijd}}" },
|
|
49
|
-
handtekening: { label: "Handtekeningvak", breedte: 70, hoogte: 30, content: "Handtekening" },
|
|
50
|
-
svg: { label: "SVG / icoon", breedte: 20, hoogte: 20, content: "" },
|
|
51
|
-
html: { label: "HTML blok", breedte: 90, hoogte: 30, content: "<b>HTML</b>" },
|
|
52
|
-
};
|
|
53
|
-
export const STANDAARD_STIJL = {
|
|
54
|
-
fontfamilie: "Helvetica",
|
|
55
|
-
fontgrootte: 10,
|
|
56
|
-
vet: false,
|
|
57
|
-
cursief: false,
|
|
58
|
-
onderstreept: false,
|
|
59
|
-
kleur: "#111827",
|
|
60
|
-
achtergrond: "transparent",
|
|
61
|
-
randbreedte: 0,
|
|
62
|
-
randkleur: "#111827",
|
|
63
|
-
padding: 0,
|
|
64
|
-
uitlijning: "left",
|
|
65
|
-
transparantie: 100,
|
|
66
|
-
regelhoogte: 1.2,
|
|
67
|
-
};
|
|
68
|
-
export const STANDAARD_KOLOMMEN = [
|
|
69
|
-
{ key: "code", kop: "Artikelcode", veldpad: "regel.artikelcode", breedte: 20 },
|
|
70
|
-
{ key: "naam", kop: "Omschrijving", veldpad: "regel.artikelnaam", breedte: 40 },
|
|
71
|
-
{ key: "aantal", kop: "Aantal", veldpad: "regel.aantal", breedte: 12, uitlijning: "right" },
|
|
72
|
-
{ key: "prijs", kop: "Prijs", veldpad: "regel.prijs", breedte: 14, uitlijning: "right" },
|
|
73
|
-
{ key: "totaal", kop: "Totaal", veldpad: "regel.totaal", breedte: 14, uitlijning: "right", totaal: true },
|
|
74
|
-
];
|