@flowselections/logistiek-engine 1.0.25 → 1.0.26

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 (46) hide show
  1. package/README.md +24 -24
  2. package/dist-lib/components/ConsistentieCard.d.ts +2 -0
  3. package/dist-lib/components/ConsistentieCard.d.ts.map +1 -0
  4. package/dist-lib/components/ConsistentieCard.js +38 -0
  5. package/dist-lib/components/ModulePromptsPage.d.ts.map +1 -1
  6. package/dist-lib/components/ModulePromptsPage.js +11 -3
  7. package/dist-lib/components/RegiePage.d.ts.map +1 -1
  8. package/dist-lib/components/RegiePage.js +2 -1
  9. package/dist-lib/index.d.ts +1 -0
  10. package/dist-lib/index.d.ts.map +1 -1
  11. package/dist-lib/index.js +1 -0
  12. package/dist-lib/integrations/supabase/auth-middleware.d.ts +1048 -715
  13. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  14. package/dist-lib/integrations/supabase/client.server.d.ts +1048 -715
  15. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  16. package/dist-lib/integrations/supabase/client.server.js +1 -1
  17. package/dist-lib/integrations/supabase/moduleClient.d.ts +1048 -715
  18. package/dist-lib/integrations/supabase/moduleClient.d.ts.map +1 -1
  19. package/dist-lib/integrations/supabase/types.d.ts +1081 -768
  20. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  21. package/dist-lib/lib/floridayDocuments.functions.d.ts +3054 -2055
  22. package/dist-lib/lib/floridayDocuments.functions.d.ts.map +1 -1
  23. package/dist-lib/lib/floridayPush.functions.d.ts +1048 -715
  24. package/dist-lib/lib/floridayPush.functions.d.ts.map +1 -1
  25. package/dist-lib/lib/loadCarrierPlanning.functions.d.ts +5105 -3465
  26. package/dist-lib/lib/loadCarrierPlanning.functions.d.ts.map +1 -1
  27. package/dist-lib/lib/logisticsPlanner.d.ts.map +1 -1
  28. package/dist-lib/lib/logisticsPlanner.js +35 -13
  29. package/dist-lib/lib/logisticsRecalcJob.functions.d.ts +1983 -1317
  30. package/dist-lib/lib/logisticsRecalcJob.functions.d.ts.map +1 -1
  31. package/dist-lib/lib/logisticsRecalculate.functions.d.ts +1048 -715
  32. package/dist-lib/lib/logisticsRecalculate.functions.d.ts.map +1 -1
  33. package/dist-lib/lib/modulePrompts.d.ts +19 -3
  34. package/dist-lib/lib/modulePrompts.d.ts.map +1 -1
  35. package/dist-lib/lib/modulePrompts.js +1636 -1298
  36. package/dist-lib/lib/ruleEngineSchema.d.ts.map +1 -1
  37. package/dist-lib/lib/ruleEngineSchema.js +21 -4
  38. package/dist-lib/lib/ruleEngineWizard.d.ts.map +1 -1
  39. package/dist-lib/lib/ruleEngineWizard.js +3 -1
  40. package/package.json +1 -1
  41. package/dist-lib/components/rule-engine/FloridayConnectionBanner.d.ts +0 -2
  42. package/dist-lib/components/rule-engine/FloridayConnectionBanner.d.ts.map +0 -1
  43. package/dist-lib/components/rule-engine/FloridayConnectionBanner.js +0 -41
  44. package/dist-lib/integrations/supabase/client.d.ts +0 -20293
  45. package/dist-lib/integrations/supabase/client.d.ts.map +0 -1
  46. package/dist-lib/integrations/supabase/client.js +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"logisticsPlanner.d.ts","sourceRoot":"","sources":["../../src/lib/logisticsPlanner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAc,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAO/F,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,kBAAkB,GAClB,mBAAmB,GACnB,QAAQ,GACR,aAAa,GACb,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wFAAwF;IACxF,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,+EAA+E;IAC/E,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAgDD,0FAA0F;AAC1F,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,kBAAkB,EAAE,EAC9B,QAAQ,EAAE,kBAAkB,GAC3B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CASpC;AAMD,wBAAgB,SAAS,CACvB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,GAAE,cAAmB,GAC3B,aAAa,CAwQf"}
1
+ {"version":3,"file":"logisticsPlanner.d.ts","sourceRoot":"","sources":["../../src/lib/logisticsPlanner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAc,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAO/F,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,kBAAkB,GAClB,mBAAmB,GACnB,QAAQ,GACR,aAAa,GACb,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wFAAwF;IACxF,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,+EAA+E;IAC/E,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAgDD,0FAA0F;AAC1F,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,kBAAkB,EAAE,EAC9B,QAAQ,EAAE,kBAAkB,GAC3B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CASpC;AAMD,wBAAgB,SAAS,CACvB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,GAAE,cAAmB,GAC3B,aAAa,CAqSf"}
@@ -154,14 +154,21 @@ export function planOrder(order, settings, context = {}) {
154
154
  loadCarriers: carriers,
155
155
  fillMode: "generated",
156
156
  });
157
+ // Aantal ladingdragers bepaalt bij "kleinste telt" of de opdracht per order
158
+ // of per kar gaat: past de order binnen één kar, dan is de order de eenheid.
159
+ const totalCarriers = carriers.reduce((sum, c) => sum + Math.max(0, num(c.count, 0)), 0);
160
+ const configuredPickMode = str(pickStep.pick_mode, "cart");
161
+ const pickUnit = configuredPickMode === "smallest" ? (totalCarriers <= 1 ? "order" : "cart") : configuredPickMode;
157
162
  add("pick.execute", pickStartAt, pickEndAt, {
158
- pickMode: str(pickStep.pick_mode, "cart"),
163
+ pickMode: configuredPickMode,
164
+ pickUnit,
159
165
  pickStartMode,
160
166
  pickMinutes,
161
167
  staff,
162
168
  reserveMinutes,
163
169
  scanner: str(pickStep.scanner, "required"),
164
170
  loadCarriers: carriers,
171
+ totalCarriers,
165
172
  pickWindowShifted,
166
173
  pickWindowOriginalStart: pickWindowShifted ? pickStartRaw : null,
167
174
  });
@@ -205,18 +212,33 @@ export function planOrder(order, settings, context = {}) {
205
212
  };
206
213
  const packingRelease = str(docStep.packing_slip_release, "with_pick_release");
207
214
  const packingAt = docRelease(packingRelease, num(docStep.packing_slip_hours_before, 2));
208
- const pickMode = str(pickStep.pick_mode, "cart");
209
- const groupIdenticalCarts = pickMode === "cart" && bool(docStep.packing_slip_group_identical_carts, true);
210
- add("print.packing_slip", packingAt, packingAt, {
211
- documentType: "pakbon",
212
- release: packingRelease,
213
- pickStationId: str(docStep.packing_slip_station, "") || null,
214
- requiresApproval: false,
215
- pickMode,
216
- groupIdenticalCarts,
217
- cartsPerPrint: groupIdenticalCarts ? Math.max(1, num(docStep.packing_slip_carts_per_print, 1)) : null,
218
- splitIdenticalGroups: false,
219
- });
215
+ const pickMode = configuredPickMode;
216
+ const groupIdenticalCarts = (pickMode === "cart" || pickMode === "smallest") &&
217
+ bool(docStep.packing_slip_group_identical_carts, true);
218
+ const barcodeEnabled = bool(docStep.packing_slip_barcode, true);
219
+ // Eén pakbon per kar. De laatste (of enige) kar van een order is de deelkar en
220
+ // krijgt daarom de deelorder-layout; alle voorgaande karren zijn volle karren.
221
+ const cartTotal = Math.max(1, totalCarriers);
222
+ for (let cartIndex = 1; cartIndex <= cartTotal; cartIndex++) {
223
+ const isFullCart = cartIndex < cartTotal;
224
+ add("print.packing_slip", packingAt, packingAt, {
225
+ documentType: "pakbon",
226
+ release: packingRelease,
227
+ pickStationId: str(docStep.packing_slip_station, "") || null,
228
+ requiresApproval: false,
229
+ pickMode,
230
+ pickUnit,
231
+ cartIndex,
232
+ cartTotal,
233
+ cartLabel: `Kar ${cartIndex} van ${cartTotal}`,
234
+ isFullCart,
235
+ slipVariant: isFullCart ? "full_cart" : "partial_order",
236
+ barcodeEnabled,
237
+ groupIdenticalCarts,
238
+ cartsPerPrint: groupIdenticalCarts ? Math.max(1, num(docStep.packing_slip_carts_per_print, 1)) : null,
239
+ splitIdenticalGroups: false,
240
+ });
241
+ }
220
242
  const stickerRelease = str(docStep.sticker_release, "with_pick_release");
221
243
  const stickerAt = docRelease(stickerRelease, num(docStep.sticker_hours_before, 2));
222
244
  add("print.sticker", stickerAt, stickerAt, {