@flowselections/floriday-afhandeling-module 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.
Files changed (35) hide show
  1. package/dist-lib/components/afhandeling/ControleLijstPrint.js +21 -21
  2. package/dist-lib/components/pickstation/PakbonTemplate.js +70 -70
  3. package/dist-lib/index.d.ts +3 -0
  4. package/dist-lib/index.d.ts.map +1 -1
  5. package/dist-lib/index.js +3 -0
  6. package/dist-lib/integrations/supabase/auth-middleware.d.ts +93 -125
  7. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  8. package/dist-lib/integrations/supabase/client.d.ts +93 -125
  9. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  10. package/dist-lib/integrations/supabase/client.server.d.ts +93 -125
  11. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  12. package/dist-lib/integrations/supabase/types.d.ts +95 -127
  13. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  14. package/dist-lib/lib/afhandelingSettings.functions.d.ts +186 -250
  15. package/dist-lib/lib/afhandelingSettings.functions.d.ts.map +1 -1
  16. package/dist-lib/lib/carrierSignupMail.server.js +26 -26
  17. package/dist-lib/lib/carriers.functions.d.ts +465 -625
  18. package/dist-lib/lib/carriers.functions.d.ts.map +1 -1
  19. package/dist-lib/lib/cartAssignments.functions.d.ts +465 -625
  20. package/dist-lib/lib/cartAssignments.functions.d.ts.map +1 -1
  21. package/dist-lib/lib/cartControl.functions.d.ts +930 -1250
  22. package/dist-lib/lib/cartControl.functions.d.ts.map +1 -1
  23. package/dist-lib/lib/floriday.functions.d.ts +93 -125
  24. package/dist-lib/lib/floriday.functions.d.ts.map +1 -1
  25. package/dist-lib/lib/logisticsEngine/capacity.functions.d.ts +372 -500
  26. package/dist-lib/lib/logisticsEngine/capacity.functions.d.ts.map +1 -1
  27. package/dist-lib/lib/logisticsEngine/evaluate.functions.d.ts +93 -125
  28. package/dist-lib/lib/logisticsEngine/evaluate.functions.d.ts.map +1 -1
  29. package/dist-lib/lib/logisticsEngine/formulas.functions.d.ts +186 -250
  30. package/dist-lib/lib/logisticsEngine/formulas.functions.d.ts.map +1 -1
  31. package/dist-lib/lib/logisticsEngine/strategies.functions.d.ts +744 -1000
  32. package/dist-lib/lib/logisticsEngine/strategies.functions.d.ts.map +1 -1
  33. package/dist-lib/lib/logisticsEngine/wizard.functions.d.ts +376 -512
  34. package/dist-lib/lib/logisticsEngine/wizard.functions.d.ts.map +1 -1
  35. package/package.json +18 -1
@@ -72,27 +72,27 @@ export function ControleLijstPrint({ carts, onClose, lang = "nl", }) {
72
72
  const bn = b.cart.cartNumber ?? "\uFFFF";
73
73
  return an.localeCompare(bn);
74
74
  });
75
- const content = (_jsxs("div", { id: "controle-print-root", className: "fixed inset-0 z-[100] bg-white overflow-auto", lang: lang, children: [_jsxs("div", { className: "print:hidden sticky top-0 flex items-center justify-between p-3 border-b bg-white", children: [_jsx("div", { className: "font-semibold", children: t.checklistPrintView }), _jsxs("div", { className: "flex gap-2", children: [_jsxs(Button, { size: "sm", variant: "outline", onClick: () => window.print(), children: [_jsx(Printer, { className: "h-4 w-4 mr-2" }), t.reprint] }), _jsxs(Button, { size: "sm", variant: "outline", onClick: onClose, children: [_jsx(X, { className: "h-4 w-4 mr-2" }), t.close] })] })] }), _jsxs("div", { className: "print-sheet p-8 print:p-0 max-w-[210mm] mx-auto text-black", children: [_jsxs("div", { className: "flex items-baseline justify-between border-b border-black pb-2 mb-4", children: [_jsx("h1", { className: "text-2xl font-bold", children: t.checklistTitle }), _jsx("div", { className: "text-sm", children: today })] }), _jsxs("div", { className: "text-sm mb-3", children: [t.totalCarts, ": ", _jsx("strong", { children: carts.length })] }), _jsxs("table", { className: "w-full text-[11px] border-collapse", children: [_jsx("thead", { children: _jsxs("tr", { className: "border-b border-black", children: [_jsx("th", { className: "text-left py-1 pr-2", children: t.colKarnr }), _jsx("th", { className: "text-right py-1 pr-2", children: t.colFusten }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colLand }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colKlaarzetten }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colStatus })] }) }), _jsxs("tbody", { children: [sortedCarts.map(({ cart: c, klaarzet }) => (_jsxs("tr", { className: "border-b border-gray-300", children: [_jsx("td", { className: "py-2 pr-2 font-mono font-bold whitespace-nowrap", children: c.cartNumber ?? "—" }), _jsx("td", { className: "py-2 pr-2 text-right whitespace-nowrap", children: c.cratesOnCart ?? "—" }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap font-semibold", children: countryCode(c.country) ?? c.country ?? "—" }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap font-semibold", children: klaarzet.label }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap", children: statusLabel(c.status, c.printedCount) })] }, `${c.orderSource}#${c.orderId}#${c.cartIndex}`))), sortedCarts.length === 0 && (_jsx("tr", { children: _jsx("td", { colSpan: 5, className: "py-6 text-center text-gray-500", children: t.noCartsToday }) }))] })] }), _jsxs("div", { className: "mt-6 text-[11px]", children: [_jsxs("div", { children: [t.checkedBy, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] }), _jsxs("div", { className: "mt-2", children: [t.dateTime, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] }), _jsxs("div", { className: "mt-2", children: [t.signature, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] })] })] }), _jsx("style", { children: `
76
- @media print {
77
- @page { size: A4 portrait; margin: 12mm; }
78
- html, body { background: #fff !important; margin: 0 !important; padding: 0 !important; }
79
- body > *:not(#controle-print-portal) { display: none !important; }
80
- #controle-print-portal, #controle-print-root {
81
- position: static !important;
82
- overflow: visible !important;
83
- height: auto !important;
84
- width: auto !important;
85
- background: #fff !important;
86
- }
87
- .print-sheet {
88
- max-width: none !important;
89
- padding: 0 !important;
90
- margin: 0 !important;
91
- }
92
- table { page-break-inside: auto; }
93
- tr { page-break-inside: avoid; page-break-after: auto; }
94
- thead { display: table-header-group; }
95
- }
75
+ const content = (_jsxs("div", { id: "controle-print-root", className: "fixed inset-0 z-[100] bg-white overflow-auto", lang: lang, children: [_jsxs("div", { className: "print:hidden sticky top-0 flex items-center justify-between p-3 border-b bg-white", children: [_jsx("div", { className: "font-semibold", children: t.checklistPrintView }), _jsxs("div", { className: "flex gap-2", children: [_jsxs(Button, { size: "sm", variant: "outline", onClick: () => window.print(), children: [_jsx(Printer, { className: "h-4 w-4 mr-2" }), t.reprint] }), _jsxs(Button, { size: "sm", variant: "outline", onClick: onClose, children: [_jsx(X, { className: "h-4 w-4 mr-2" }), t.close] })] })] }), _jsxs("div", { className: "print-sheet p-8 print:p-0 max-w-[210mm] mx-auto text-black", children: [_jsxs("div", { className: "flex items-baseline justify-between border-b border-black pb-2 mb-4", children: [_jsx("h1", { className: "text-2xl font-bold", children: t.checklistTitle }), _jsx("div", { className: "text-sm", children: today })] }), _jsxs("div", { className: "text-sm mb-3", children: [t.totalCarts, ": ", _jsx("strong", { children: carts.length })] }), _jsxs("table", { className: "w-full text-[11px] border-collapse", children: [_jsx("thead", { children: _jsxs("tr", { className: "border-b border-black", children: [_jsx("th", { className: "text-left py-1 pr-2", children: t.colKarnr }), _jsx("th", { className: "text-right py-1 pr-2", children: t.colFusten }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colLand }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colKlaarzetten }), _jsx("th", { className: "text-left py-1 pr-2", children: t.colStatus })] }) }), _jsxs("tbody", { children: [sortedCarts.map(({ cart: c, klaarzet }) => (_jsxs("tr", { className: "border-b border-gray-300", children: [_jsx("td", { className: "py-2 pr-2 font-mono font-bold whitespace-nowrap", children: c.cartNumber ?? "—" }), _jsx("td", { className: "py-2 pr-2 text-right whitespace-nowrap", children: c.cratesOnCart ?? "—" }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap font-semibold", children: countryCode(c.country) ?? c.country ?? "—" }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap font-semibold", children: klaarzet.label }), _jsx("td", { className: "py-2 pr-2 whitespace-nowrap", children: statusLabel(c.status, c.printedCount) })] }, `${c.orderSource}#${c.orderId}#${c.cartIndex}`))), sortedCarts.length === 0 && (_jsx("tr", { children: _jsx("td", { colSpan: 5, className: "py-6 text-center text-gray-500", children: t.noCartsToday }) }))] })] }), _jsxs("div", { className: "mt-6 text-[11px]", children: [_jsxs("div", { children: [t.checkedBy, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] }), _jsxs("div", { className: "mt-2", children: [t.dateTime, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] }), _jsxs("div", { className: "mt-2", children: [t.signature, ": ", _jsx("span", { className: "inline-block border-b border-black w-64" })] })] })] }), _jsx("style", { children: `
76
+ @media print {
77
+ @page { size: A4 portrait; margin: 12mm; }
78
+ html, body { background: #fff !important; margin: 0 !important; padding: 0 !important; }
79
+ body > *:not(#controle-print-portal) { display: none !important; }
80
+ #controle-print-portal, #controle-print-root {
81
+ position: static !important;
82
+ overflow: visible !important;
83
+ height: auto !important;
84
+ width: auto !important;
85
+ background: #fff !important;
86
+ }
87
+ .print-sheet {
88
+ max-width: none !important;
89
+ padding: 0 !important;
90
+ margin: 0 !important;
91
+ }
92
+ table { page-break-inside: auto; }
93
+ tr { page-break-inside: avoid; page-break-after: auto; }
94
+ thead { display: table-header-group; }
95
+ }
96
96
  ` })] }));
97
97
  if (typeof document === "undefined")
98
98
  return null;
@@ -14,82 +14,82 @@ export function renderPakbonHtml(order, lang = "nl") {
14
14
  };
15
15
  const rows = order.lines.length
16
16
  ? order.lines
17
- .map((l) => `
18
- <tr>
19
- <td>${escapeHtml(l.description)}</td>
20
- <td style="text-align:right">${l.crates ?? ""}</td>
21
- <td>${escapeHtml(l.unit ?? "")}</td>
17
+ .map((l) => `
18
+ <tr>
19
+ <td>${escapeHtml(l.description)}</td>
20
+ <td style="text-align:right">${l.crates ?? ""}</td>
21
+ <td>${escapeHtml(l.unit ?? "")}</td>
22
22
  </tr>`)
23
23
  .join("")
24
24
  : `<tr><td colspan="3" style="text-align:center;color:#666">${escapeHtml(t.noLines)}</td></tr>`;
25
25
  const cartLabel = t.cartOf(order.cartIndex, order.cartTotal);
26
26
  const fustenLabel = order.cratesOnCart != null ? `${order.cratesOnCart}` : "—";
27
27
  const cartNumber = order.cartNumber ?? `${order.orderNumber}-${order.cartIndex}`;
28
- return `<!doctype html>
29
- <html lang="${escapeHtml(htmlLang)}">
30
- <head>
31
- <meta charset="utf-8">
32
- <title>${escapeHtml(t.packingSlip)} ${escapeHtml(order.orderNumber)} · ${escapeHtml(cartNumber)}</title>
33
- <style>
34
- @page {
35
- size: A4;
36
- margin: 16mm;
37
- @top-center { content: element(cartno); }
38
- }
39
- body { font-family: -apple-system, "Segoe UI", Helvetica, Arial, sans-serif; color:#111; }
40
- h1 { margin: 0 0 4px; font-size: 26px; }
41
- .sub { color:#444; margin-bottom: 8px; }
42
-
43
- .cart-number-hero {
44
- position: running(cartno);
45
- font-size: 88px;
46
- font-weight: 900;
47
- letter-spacing: 4px;
48
- line-height: 1;
49
- color: #000;
50
- background: #fff;
51
- border: 4px solid #000;
52
- padding: 12px 20px;
53
- display: inline-block;
54
- margin: 6px 0 20px;
55
- font-family: "Arial Black", "Helvetica Neue", Helvetica, Arial, sans-serif;
56
- }
57
-
58
- .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; margin: 8px 0 22px; }
59
- .grid div { font-size: 14px; }
60
- .label { color:#666; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
61
- .value { font-size: 16px; font-weight: 600; }
62
- table { width:100%; border-collapse: collapse; font-size: 14px; }
63
- th, td { padding: 8px 6px; border-bottom: 1px solid #ddd; vertical-align: top; }
64
- th { text-align: left; background:#f5f5f5; }
65
- .barcode-fallback { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 18px; letter-spacing: 4px; padding: 8px 12px; border: 2px solid #111; display: inline-block; margin-top: 18px; }
66
- .footer { margin-top: 28px; font-size: 11px; color:#666; }
67
- </style>
68
- </head>
69
- <body>
70
- <h1>${escapeHtml(t.packingSlip)}</h1>
71
- <div class="sub">${escapeHtml(t.order)} ${escapeHtml(order.orderNumber)} · ${escapeHtml(cartLabel)}</div>
72
-
73
- <div class="cart-number-hero">${escapeHtml(cartNumber)}</div>
74
-
75
- <div class="grid">
76
- <div><div class="label">${escapeHtml(t.customer)}</div><div class="value">${escapeHtml(order.customerName)}</div></div>
77
- <div><div class="label">${escapeHtml(t.country)}</div><div class="value">${escapeHtml(order.country ?? "—")}</div></div>
78
- <div><div class="label">${escapeHtml(t.deliveryDate)}</div><div class="value">${fmt(order.deliveryDate)}</div></div>
79
- <div><div class="label">${escapeHtml(t.pickDate)}</div><div class="value">${fmt(order.pickDate)}</div></div>
80
- <div><div class="label">${escapeHtml(t.cart)}</div><div class="value">${escapeHtml(cartLabel)}</div></div>
81
- <div><div class="label">${escapeHtml(t.cratesOnThisCart)}</div><div class="value">${escapeHtml(fustenLabel)}</div></div>
82
- </div>
83
-
84
- <table>
85
- <thead><tr><th>${escapeHtml(t.description)}</th><th style="text-align:right;width:90px">${escapeHtml(t.crates)}</th><th style="width:90px">${escapeHtml(t.unit)}</th></tr></thead>
86
- <tbody>${rows}</tbody>
87
- </table>
88
-
89
- <div class="barcode-fallback">*${escapeHtml(order.orderNumber)}*</div>
90
-
91
- <div class="footer">${escapeHtml(t.printedVia)} · ${new Date().toLocaleString(locale)}</div>
92
- </body>
28
+ return `<!doctype html>
29
+ <html lang="${escapeHtml(htmlLang)}">
30
+ <head>
31
+ <meta charset="utf-8">
32
+ <title>${escapeHtml(t.packingSlip)} ${escapeHtml(order.orderNumber)} · ${escapeHtml(cartNumber)}</title>
33
+ <style>
34
+ @page {
35
+ size: A4;
36
+ margin: 16mm;
37
+ @top-center { content: element(cartno); }
38
+ }
39
+ body { font-family: -apple-system, "Segoe UI", Helvetica, Arial, sans-serif; color:#111; }
40
+ h1 { margin: 0 0 4px; font-size: 26px; }
41
+ .sub { color:#444; margin-bottom: 8px; }
42
+
43
+ .cart-number-hero {
44
+ position: running(cartno);
45
+ font-size: 88px;
46
+ font-weight: 900;
47
+ letter-spacing: 4px;
48
+ line-height: 1;
49
+ color: #000;
50
+ background: #fff;
51
+ border: 4px solid #000;
52
+ padding: 12px 20px;
53
+ display: inline-block;
54
+ margin: 6px 0 20px;
55
+ font-family: "Arial Black", "Helvetica Neue", Helvetica, Arial, sans-serif;
56
+ }
57
+
58
+ .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; margin: 8px 0 22px; }
59
+ .grid div { font-size: 14px; }
60
+ .label { color:#666; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
61
+ .value { font-size: 16px; font-weight: 600; }
62
+ table { width:100%; border-collapse: collapse; font-size: 14px; }
63
+ th, td { padding: 8px 6px; border-bottom: 1px solid #ddd; vertical-align: top; }
64
+ th { text-align: left; background:#f5f5f5; }
65
+ .barcode-fallback { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 18px; letter-spacing: 4px; padding: 8px 12px; border: 2px solid #111; display: inline-block; margin-top: 18px; }
66
+ .footer { margin-top: 28px; font-size: 11px; color:#666; }
67
+ </style>
68
+ </head>
69
+ <body>
70
+ <h1>${escapeHtml(t.packingSlip)}</h1>
71
+ <div class="sub">${escapeHtml(t.order)} ${escapeHtml(order.orderNumber)} · ${escapeHtml(cartLabel)}</div>
72
+
73
+ <div class="cart-number-hero">${escapeHtml(cartNumber)}</div>
74
+
75
+ <div class="grid">
76
+ <div><div class="label">${escapeHtml(t.customer)}</div><div class="value">${escapeHtml(order.customerName)}</div></div>
77
+ <div><div class="label">${escapeHtml(t.country)}</div><div class="value">${escapeHtml(order.country ?? "—")}</div></div>
78
+ <div><div class="label">${escapeHtml(t.deliveryDate)}</div><div class="value">${fmt(order.deliveryDate)}</div></div>
79
+ <div><div class="label">${escapeHtml(t.pickDate)}</div><div class="value">${fmt(order.pickDate)}</div></div>
80
+ <div><div class="label">${escapeHtml(t.cart)}</div><div class="value">${escapeHtml(cartLabel)}</div></div>
81
+ <div><div class="label">${escapeHtml(t.cratesOnThisCart)}</div><div class="value">${escapeHtml(fustenLabel)}</div></div>
82
+ </div>
83
+
84
+ <table>
85
+ <thead><tr><th>${escapeHtml(t.description)}</th><th style="text-align:right;width:90px">${escapeHtml(t.crates)}</th><th style="width:90px">${escapeHtml(t.unit)}</th></tr></thead>
86
+ <tbody>${rows}</tbody>
87
+ </table>
88
+
89
+ <div class="barcode-fallback">*${escapeHtml(order.orderNumber)}*</div>
90
+
91
+ <div class="footer">${escapeHtml(t.printedVia)} · ${new Date().toLocaleString(locale)}</div>
92
+ </body>
93
93
  </html>`;
94
94
  }
95
95
  function escapeHtml(s) {
@@ -12,6 +12,9 @@ export { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettin
12
12
  export { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
13
13
  export { PickstationPage } from "./components/pickstation/PickstationPage";
14
14
  export { KioskControle } from "./components/pickstation/KioskControle";
15
+ export { StrategieenPage } from "./components/engine/StrategieenPage";
16
+ export { FormulesPage } from "./components/engine/FormulesPage";
17
+ export { CapaciteitsmaatregelenPage } from "./components/engine/CapaciteitsmaatregelenPage";
15
18
  export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_MOMENT, type EarliestDeliveryRules, type OrderPlanning, type PickupMoment, } from "./lib/planning";
16
19
  export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, type CarrierOrderTarget, type CarrierPlanningInfo, } from "./lib/carrierPlanning";
17
20
  export declare const floridayAfhandelingModule: FlowModule;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,yBAAyB,EAAE,UAmBvC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,yBAAyB,EAAE,UAmBvC,CAAC"}
package/dist-lib/index.js CHANGED
@@ -12,6 +12,9 @@ export { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettin
12
12
  export { VervoerdersSettingsCard } from "./components/settings/VervoerdersSettingsCard";
13
13
  export { PickstationPage } from "./components/pickstation/PickstationPage";
14
14
  export { KioskControle } from "./components/pickstation/KioskControle";
15
+ export { StrategieenPage } from "./components/engine/StrategieenPage";
16
+ export { FormulesPage } from "./components/engine/FormulesPage";
17
+ export { CapaciteitsmaatregelenPage } from "./components/engine/CapaciteitsmaatregelenPage";
15
18
  export { calculateEarliestDeliveryDate, calculateOrderPlanning, DEFAULT_PICKUP_MOMENT, } from "./lib/planning";
16
19
  export { carrierLeadDaysFromMoments, normalizePickupMoments, sanitizeWeekdays, selectCarrierForTarget, } from "./lib/carrierPlanning";
17
20
  import { AfhandelingSettingsCard } from "./components/settings/AfhandelingSettingsCard";
@@ -4529,6 +4529,27 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
4529
4529
  referencedColumns: ["id"];
4530
4530
  }];
4531
4531
  };
4532
+ floriday_continuous_stock_cache: {
4533
+ Row: {
4534
+ connection_id: string;
4535
+ fetched_at: string;
4536
+ number_of_pieces: number;
4537
+ trade_item_id: string;
4538
+ };
4539
+ Insert: {
4540
+ connection_id: string;
4541
+ fetched_at?: string;
4542
+ number_of_pieces?: number;
4543
+ trade_item_id: string;
4544
+ };
4545
+ Update: {
4546
+ connection_id?: string;
4547
+ fetched_at?: string;
4548
+ number_of_pieces?: number;
4549
+ trade_item_id?: string;
4550
+ };
4551
+ Relationships: [];
4552
+ };
4532
4553
  floriday_continuous_stock_queue: {
4533
4554
  Row: {
4534
4555
  attempts: number;
@@ -5507,6 +5528,45 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
5507
5528
  referencedColumns: ["id"];
5508
5529
  }];
5509
5530
  };
5531
+ floriday_trade_settings_customers_cache: {
5532
+ Row: {
5533
+ connection_id: string;
5534
+ data: import("./types").Json;
5535
+ fetched_at: string;
5536
+ floriday_id: string;
5537
+ id: string;
5538
+ is_deleted: boolean;
5539
+ sequence_number: number;
5540
+ updated_at: string;
5541
+ };
5542
+ Insert: {
5543
+ connection_id: string;
5544
+ data: import("./types").Json;
5545
+ fetched_at?: string;
5546
+ floriday_id: string;
5547
+ id?: string;
5548
+ is_deleted?: boolean;
5549
+ sequence_number?: number;
5550
+ updated_at?: string;
5551
+ };
5552
+ Update: {
5553
+ connection_id?: string;
5554
+ data?: import("./types").Json;
5555
+ fetched_at?: string;
5556
+ floriday_id?: string;
5557
+ id?: string;
5558
+ is_deleted?: boolean;
5559
+ sequence_number?: number;
5560
+ updated_at?: string;
5561
+ };
5562
+ Relationships: [{
5563
+ foreignKeyName: "floriday_trade_settings_customers_cache_connection_id_fkey";
5564
+ columns: ["connection_id"];
5565
+ isOneToOne: false;
5566
+ referencedRelation: "floriday_connections";
5567
+ referencedColumns: ["id"];
5568
+ }];
5569
+ };
5510
5570
  floriday_trips_cache: {
5511
5571
  Row: {
5512
5572
  carrier_organization_id: string | null;
@@ -5555,6 +5615,27 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
5555
5615
  referencedColumns: ["id"];
5556
5616
  }];
5557
5617
  };
5618
+ floriday_vbn_required_characteristics: {
5619
+ Row: {
5620
+ required_codes: string[];
5621
+ updated_at: string;
5622
+ updated_by: string | null;
5623
+ vbn_code: string;
5624
+ };
5625
+ Insert: {
5626
+ required_codes?: string[];
5627
+ updated_at?: string;
5628
+ updated_by?: string | null;
5629
+ vbn_code: string;
5630
+ };
5631
+ Update: {
5632
+ required_codes?: string[];
5633
+ updated_at?: string;
5634
+ updated_by?: string | null;
5635
+ vbn_code?: string;
5636
+ };
5637
+ Relationships: [];
5638
+ };
5558
5639
  floriday_warehouses_cache: {
5559
5640
  Row: {
5560
5641
  connection_id: string;
@@ -10528,9 +10609,7 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
10528
10609
  };
10529
10610
  twinfield_connections: {
10530
10611
  Row: {
10531
- access_token: string | null;
10532
- client_id: string;
10533
- client_secret: string | null;
10612
+ account_key: string | null;
10534
10613
  cluster_uri: string | null;
10535
10614
  company_code: string | null;
10536
10615
  company_name: string | null;
@@ -10542,15 +10621,11 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
10542
10621
  label: string | null;
10543
10622
  office_code: string | null;
10544
10623
  redirect_uri: string;
10545
- refresh_token: string | null;
10546
- token_expires_at: string | null;
10547
10624
  updated_at: string;
10548
10625
  user_id: string;
10549
10626
  };
10550
10627
  Insert: {
10551
- access_token?: string | null;
10552
- client_id: string;
10553
- client_secret?: string | null;
10628
+ account_key?: string | null;
10554
10629
  cluster_uri?: string | null;
10555
10630
  company_code?: string | null;
10556
10631
  company_name?: string | null;
@@ -10562,15 +10637,11 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
10562
10637
  label?: string | null;
10563
10638
  office_code?: string | null;
10564
10639
  redirect_uri: string;
10565
- refresh_token?: string | null;
10566
- token_expires_at?: string | null;
10567
10640
  updated_at?: string;
10568
10641
  user_id: string;
10569
10642
  };
10570
10643
  Update: {
10571
- access_token?: string | null;
10572
- client_id?: string;
10573
- client_secret?: string | null;
10644
+ account_key?: string | null;
10574
10645
  cluster_uri?: string | null;
10575
10646
  company_code?: string | null;
10576
10647
  company_name?: string | null;
@@ -10582,53 +10653,6 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
10582
10653
  label?: string | null;
10583
10654
  office_code?: string | null;
10584
10655
  redirect_uri?: string;
10585
- refresh_token?: string | null;
10586
- token_expires_at?: string | null;
10587
- updated_at?: string;
10588
- user_id?: string;
10589
- };
10590
- Relationships: [];
10591
- };
10592
- twinfield_credentials: {
10593
- Row: {
10594
- administration_code: string | null;
10595
- client_id: string | null;
10596
- client_secret: string | null;
10597
- cluster: string | null;
10598
- connected_at: string | null;
10599
- created_at: string;
10600
- environment: string | null;
10601
- id: string;
10602
- redirect_uri: string | null;
10603
- refresh_token: string | null;
10604
- updated_at: string;
10605
- user_id: string;
10606
- };
10607
- Insert: {
10608
- administration_code?: string | null;
10609
- client_id?: string | null;
10610
- client_secret?: string | null;
10611
- cluster?: string | null;
10612
- connected_at?: string | null;
10613
- created_at?: string;
10614
- environment?: string | null;
10615
- id?: string;
10616
- redirect_uri?: string | null;
10617
- refresh_token?: string | null;
10618
- updated_at?: string;
10619
- user_id: string;
10620
- };
10621
- Update: {
10622
- administration_code?: string | null;
10623
- client_id?: string | null;
10624
- client_secret?: string | null;
10625
- cluster?: string | null;
10626
- connected_at?: string | null;
10627
- created_at?: string;
10628
- environment?: string | null;
10629
- id?: string;
10630
- redirect_uri?: string | null;
10631
- refresh_token?: string | null;
10632
10656
  updated_at?: string;
10633
10657
  user_id?: string;
10634
10658
  };
@@ -11129,30 +11153,6 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
11129
11153
  referencedColumns: ["id"];
11130
11154
  }];
11131
11155
  };
11132
- twinfield_oauth_state: {
11133
- Row: {
11134
- created_at: string;
11135
- environment: string;
11136
- nonce: string | null;
11137
- state: string;
11138
- user_id: string;
11139
- };
11140
- Insert: {
11141
- created_at?: string;
11142
- environment: string;
11143
- nonce?: string | null;
11144
- state: string;
11145
- user_id: string;
11146
- };
11147
- Update: {
11148
- created_at?: string;
11149
- environment?: string;
11150
- nonce?: string | null;
11151
- state?: string;
11152
- user_id?: string;
11153
- };
11154
- Relationships: [];
11155
- };
11156
11156
  twinfield_push_queue: {
11157
11157
  Row: {
11158
11158
  action: string;
@@ -11318,39 +11318,6 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
11318
11318
  referencedColumns: ["id"];
11319
11319
  }];
11320
11320
  };
11321
- twinfield_token_refresh_log: {
11322
- Row: {
11323
- attempted_at: string;
11324
- connection_id: string;
11325
- error: string | null;
11326
- expires_at: string | null;
11327
- id: string;
11328
- ok: boolean;
11329
- };
11330
- Insert: {
11331
- attempted_at?: string;
11332
- connection_id: string;
11333
- error?: string | null;
11334
- expires_at?: string | null;
11335
- id?: string;
11336
- ok: boolean;
11337
- };
11338
- Update: {
11339
- attempted_at?: string;
11340
- connection_id?: string;
11341
- error?: string | null;
11342
- expires_at?: string | null;
11343
- id?: string;
11344
- ok?: boolean;
11345
- };
11346
- Relationships: [{
11347
- foreignKeyName: "twinfield_token_refresh_log_connection_id_fkey";
11348
- columns: ["connection_id"];
11349
- isOneToOne: false;
11350
- referencedRelation: "twinfield_connections";
11351
- referencedColumns: ["id"];
11352
- }];
11353
- };
11354
11321
  user_roles: {
11355
11322
  Row: {
11356
11323
  created_at: string;
@@ -13791,15 +13758,16 @@ export declare const requireSupabaseAuth: import("@tanstack/start-client-core").
13791
13758
  };
13792
13759
  Returns: undefined;
13793
13760
  };
13794
- twinfield_decrypt: {
13761
+ twinfield_upsert_connection_by_account_key: {
13795
13762
  Args: {
13796
- cipher: string;
13797
- };
13798
- Returns: string;
13799
- };
13800
- twinfield_encrypt: {
13801
- Args: {
13802
- plain: string;
13763
+ p_account_key: string;
13764
+ p_cluster_uri?: string;
13765
+ p_company_code?: string;
13766
+ p_company_name?: string;
13767
+ p_environment: string;
13768
+ p_office_code?: string;
13769
+ p_status?: string;
13770
+ p_user_id: string;
13803
13771
  };
13804
13772
  Returns: string;
13805
13773
  };