@flowselections/floriday-verkoop-module 1.0.93 → 1.0.94
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/floriday/FlorydaySyncHealthBanner.d.ts +9 -0
- package/dist-lib/components/floriday/FlorydaySyncHealthBanner.d.ts.map +1 -0
- package/dist-lib/components/floriday/FlorydaySyncHealthBanner.js +26 -0
- package/dist-lib/components/karindeling/AfmetingenTab.d.ts +6 -0
- package/dist-lib/components/karindeling/AfmetingenTab.d.ts.map +1 -0
- package/dist-lib/components/karindeling/AfmetingenTab.js +128 -0
- package/dist-lib/components/karindeling/KarindelingPage.d.ts +2 -0
- package/dist-lib/components/karindeling/KarindelingPage.d.ts.map +1 -0
- package/dist-lib/components/karindeling/KarindelingPage.js +102 -0
- package/dist-lib/components/ui/dropdown-menu.d.ts +9 -0
- package/dist-lib/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist-lib/components/ui/dropdown-menu.js +14 -0
- package/dist-lib/components/verkoop/AnalyticsCards.d.ts +1 -1
- package/dist-lib/components/verkoop/AnalyticsCards.d.ts.map +1 -1
- package/dist-lib/components/verkoop/AutoFulfillmentStatusCard.d.ts +4 -0
- package/dist-lib/components/verkoop/AutoFulfillmentStatusCard.d.ts.map +1 -0
- package/dist-lib/components/verkoop/AutoFulfillmentStatusCard.js +95 -0
- package/dist-lib/components/verkoop/CartAssignmentWizard.d.ts +1 -1
- package/dist-lib/components/verkoop/CartAssignmentWizard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/CartLayersDialog.d.ts +1 -1
- package/dist-lib/components/verkoop/CartLayersDialog.d.ts.map +1 -1
- package/dist-lib/components/verkoop/CreateOrderDialog.d.ts +5 -0
- package/dist-lib/components/verkoop/CreateOrderDialog.d.ts.map +1 -0
- package/dist-lib/components/verkoop/CreateOrderDialog.js +33 -0
- package/dist-lib/components/verkoop/CreateOrderPage.d.ts +1 -1
- package/dist-lib/components/verkoop/CreateOrderPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/DiagnoseConnectionDialog.d.ts +1 -1
- package/dist-lib/components/verkoop/DiagnoseConnectionDialog.d.ts.map +1 -1
- package/dist-lib/components/verkoop/EditLocalOrderDialog.d.ts +1 -1
- package/dist-lib/components/verkoop/EditLocalOrderDialog.d.ts.map +1 -1
- package/dist-lib/components/verkoop/EngineBufferCard.d.ts +1 -1
- package/dist-lib/components/verkoop/EngineBufferCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/FloridayStageLine.d.ts +2 -2
- package/dist-lib/components/verkoop/FloridayStageLine.d.ts.map +1 -1
- package/dist-lib/components/verkoop/InvoiceTimingSettings.d.ts +1 -1
- package/dist-lib/components/verkoop/InvoiceTimingSettings.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderAfleverbrievenCard.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderAfleverbrievenCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderCarrierPicker.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderCarrierPicker.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderControlStatusCard.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderControlStatusCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderKarindelingCard.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderKarindelingCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderLinePackingCard.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderLinePackingCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderPickupMomentPicker.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderPickupMomentPicker.d.ts.map +1 -1
- package/dist-lib/components/verkoop/OrderShipmentsCard.d.ts +1 -1
- package/dist-lib/components/verkoop/OrderShipmentsCard.d.ts.map +1 -1
- package/dist-lib/components/verkoop/PlanCoverageBadge.d.ts +1 -1
- package/dist-lib/components/verkoop/PlanCoverageBadge.d.ts.map +1 -1
- package/dist-lib/components/verkoop/ProductDimensionsSettings.d.ts +1 -1
- package/dist-lib/components/verkoop/ProductDimensionsSettings.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailPage.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailPage.js +6 -6
- package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrdersFilterPanel.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrdersFilterPanel.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrdersFilters.d.ts +1 -1
- package/dist-lib/components/verkoop/SalesOrdersFilters.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrdersTable.d.ts +1 -2
- package/dist-lib/components/verkoop/SalesOrdersTable.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SearchableSelect.d.ts +1 -1
- package/dist-lib/components/verkoop/SearchableSelect.d.ts.map +1 -1
- package/dist-lib/components/verkoop/StockConsumptionAlertsBanner.d.ts +1 -1
- package/dist-lib/components/verkoop/StockConsumptionAlertsBanner.d.ts.map +1 -1
- package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts +1 -1
- package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/WeekCalendar.d.ts +1 -1
- package/dist-lib/components/verkoop/WeekCalendar.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.js +1 -1
- package/dist-lib/integrations/supabase/client.server.js +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +74 -0
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/cron/mirror-floriday-orders.d.ts +4 -0
- package/dist-lib/lib/cron/mirror-floriday-orders.d.ts.map +1 -0
- package/dist-lib/lib/cron/mirror-floriday-orders.js +23 -0
- package/dist-lib/lib/cron/push-order-statuses.d.ts +4 -0
- package/dist-lib/lib/cron/push-order-statuses.d.ts.map +1 -0
- package/dist-lib/lib/cron/push-order-statuses.js +23 -0
- package/dist-lib/lib/floriday/floriday.server.d.ts +14 -0
- package/dist-lib/lib/floriday/floriday.server.d.ts.map +1 -0
- package/dist-lib/lib/floriday/floriday.server.js +92 -0
- package/dist-lib/lib/floriday/sales-orders.functions.d.ts +4736 -0
- package/dist-lib/lib/floriday/sales-orders.functions.d.ts.map +1 -0
- package/dist-lib/lib/floriday/sales-orders.functions.js +193 -0
- package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts +77581 -0
- package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts.map +1 -0
- package/dist-lib/lib/floriday-auto-fulfillment.functions.js +65 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.d.ts +21 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.d.ts.map +1 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.js +352 -0
- package/dist-lib/lib/floriday-status-sync.server.d.ts +14 -0
- package/dist-lib/lib/floriday-status-sync.server.d.ts.map +1 -0
- package/dist-lib/lib/floriday-status-sync.server.js +130 -0
- package/dist-lib/lib/tradeitems.functions.d.ts +12 -1117
- package/dist-lib/lib/tradeitems.functions.d.ts.map +1 -1
- package/dist-lib/lib/useBufferEvents.d.ts +2 -2
- package/dist-lib/lib/useBufferEvents.d.ts.map +1 -1
- package/dist-lib/lib/useLocalSalesOrderDetailQuery.d.ts +2 -2
- package/dist-lib/lib/useLocalSalesOrderDetailQuery.d.ts.map +1 -1
- package/dist-lib/lib/useSalesOrderDetailQuery.d.ts +1 -1
- package/dist-lib/lib/useSalesOrderDetailQuery.d.ts.map +1 -1
- package/dist-lib/lib/useSalesOrdersQuery.d.ts +1 -1
- package/dist-lib/lib/useSalesOrdersQuery.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist-lib/lib/order-cart-count.server.d.ts +0 -8
- package/dist-lib/lib/order-cart-count.server.d.ts.map +0 -1
- package/dist-lib/lib/order-cart-count.server.js +0 -69
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** Verse buffergegevens na elk Engine-seintje. */
|
|
2
|
-
export declare function useBufferEvents(enabled?: boolean): import("@tanstack/react-query").UseQueryResult<{
|
|
2
|
+
export declare function useBufferEvents(enabled?: boolean): import("@tanstack/react-query").UseQueryResult<NoInfer<{
|
|
3
3
|
events: import("./buffer-events.functions.js").BufferEventRow[];
|
|
4
|
-
}
|
|
4
|
+
}>, Error>;
|
|
5
5
|
//# sourceMappingURL=useBufferEvents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBufferEvents.d.ts","sourceRoot":"","sources":["../../src/lib/useBufferEvents.ts"],"names":[],"mappings":"AAWA,kDAAkD;AAClD,wBAAgB,eAAe,CAAC,OAAO,UAAO;;
|
|
1
|
+
{"version":3,"file":"useBufferEvents.d.ts","sourceRoot":"","sources":["../../src/lib/useBufferEvents.ts"],"names":[],"mappings":"AAWA,kDAAkD;AAClD,wBAAgB,eAAe,CAAC,OAAO,UAAO;;WAgE7C"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export declare function useLocalSalesOrderDetailQuery(id: string | null | undefined): import("@tanstack/react-query").UseQueryResult<{
|
|
1
|
+
export declare function useLocalSalesOrderDetailQuery(id: string | null | undefined): import("@tanstack/react-query").UseQueryResult<NoInfer<{
|
|
2
2
|
order: import("./salesorders-mapping.js").SalesOrderDTO | null;
|
|
3
3
|
bufferId: string | null;
|
|
4
4
|
bufferSiblings: import("./salesorders-mapping.js").SalesOrderDTO[];
|
|
5
5
|
sellerFallback: string | null;
|
|
6
6
|
environment: "staging" | "live";
|
|
7
|
-
}
|
|
7
|
+
}>, Error>;
|
|
8
8
|
//# sourceMappingURL=useLocalSalesOrderDetailQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLocalSalesOrderDetailQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useLocalSalesOrderDetailQuery.ts"],"names":[],"mappings":"AAQA,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;;;;;;
|
|
1
|
+
{"version":3,"file":"useLocalSalesOrderDetailQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useLocalSalesOrderDetailQuery.ts"],"names":[],"mappings":"AAQA,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;;;;;;WA2C1E"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function useSalesOrderDetailQuery(id: string | null | undefined): import("@tanstack/react-query").UseQueryResult<import("./salesorders.functions.js").SalesOrderDetailResult
|
|
1
|
+
export declare function useSalesOrderDetailQuery(id: string | null | undefined): import("@tanstack/react-query").UseQueryResult<NoInfer<import("./salesorders.functions.js").SalesOrderDetailResult>, Error>;
|
|
2
2
|
//# sourceMappingURL=useSalesOrderDetailQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSalesOrderDetailQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrderDetailQuery.ts"],"names":[],"mappings":"AASA,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"useSalesOrderDetailQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrderDetailQuery.ts"],"names":[],"mappings":"AASA,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,4HA6CrE"}
|
|
@@ -26,5 +26,5 @@ export declare function derivePeriodWindow(filters?: SalesOrderFilters): {
|
|
|
26
26
|
until?: string;
|
|
27
27
|
dateField: "ordered" | "delivery";
|
|
28
28
|
};
|
|
29
|
-
export declare function useSalesOrdersQuery(filters?: SalesOrderFilters, options?: SalesOrdersQueryOptions): import("@tanstack/react-query").UseQueryResult<SalesOrdersPage
|
|
29
|
+
export declare function useSalesOrdersQuery(filters?: SalesOrderFilters, options?: SalesOrdersQueryOptions): import("@tanstack/react-query").UseQueryResult<NoInfer<SalesOrdersPage>, Error>;
|
|
30
30
|
//# sourceMappingURL=useSalesOrdersQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSalesOrdersQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrdersQuery.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AAExE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACxC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,SAAS,GAAG,MAAM,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;CACnC,CAwCA;AAED,wBAAgB,mBAAmB,CACjC,OAAO,CAAC,EAAE,iBAAiB,EAC3B,OAAO,CAAC,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"useSalesOrdersQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrdersQuery.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AAExE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACxC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,SAAS,GAAG,MAAM,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;CACnC,CAwCA;AAED,wBAAgB,mBAAmB,CACjC,OAAO,CAAC,EAAE,iBAAiB,EAC3B,OAAO,CAAC,EAAE,uBAAuB,mFAgElC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flowselections/floriday-verkoop-module",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.94",
|
|
4
4
|
"private": false,
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"scripts": {
|
|
27
27
|
"dev": "vite dev",
|
|
28
28
|
"build": "vite build",
|
|
29
|
-
"build:lib": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json --resolve-full-paths && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
|
|
29
|
+
"build:lib": "tsc -p tsconfig.build.json && (tsc-alias -p tsconfig.build.json --resolve-full-paths || echo 'build:lib: tsc-alias draaide niet — dist-lib wordt gecontroleerd') && node scripts/check-esm-extensions.mjs && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
|
|
30
30
|
"build:lib:watch": "tsc -p tsconfig.build.json --watch",
|
|
31
31
|
"build:dev": "vite build --mode development",
|
|
32
32
|
"preview": "vite preview",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export interface OrderCartInfo {
|
|
2
|
-
count: number;
|
|
3
|
-
carrierTypes: string[];
|
|
4
|
-
sharedCount: number;
|
|
5
|
-
cartIds: string[];
|
|
6
|
-
}
|
|
7
|
-
export declare function loadCartsByOrder(supabase: any, orderIds: string[]): Promise<Map<string, OrderCartInfo>>;
|
|
8
|
-
//# sourceMappingURL=order-cart-count.server.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"order-cart-count.server.d.ts","sourceRoot":"","sources":["../../src/lib/order-cart-count.server.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAID,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CA2DrC"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
// Alleen-lezen telling van karren per order via de KARREGELS.
|
|
2
|
-
//
|
|
3
|
-
// Een order in een buffer ligt op gedeelde karren waarvan order_carts.order_id
|
|
4
|
-
// LEEG is (de kar hoort bij order_carts.buffer_id). Tellen op order_id geeft
|
|
5
|
-
// dan 0. Daarom: actieve order_items -> order_cart_items -> order_carts.
|
|
6
|
-
// Schrijft nooit iets; de indeling is van de Logistiek Engine.
|
|
7
|
-
const CHUNK = 200;
|
|
8
|
-
export async function loadCartsByOrder(supabase, orderIds) {
|
|
9
|
-
const out = new Map();
|
|
10
|
-
const ids = Array.from(new Set(orderIds.filter(Boolean)));
|
|
11
|
-
if (ids.length === 0)
|
|
12
|
-
return out;
|
|
13
|
-
// 1) actieve regels
|
|
14
|
-
const itemOrder = new Map();
|
|
15
|
-
for (let i = 0; i < ids.length; i += CHUNK) {
|
|
16
|
-
const { data, error } = await supabase
|
|
17
|
-
.from("order_items")
|
|
18
|
-
.select("id, order_id")
|
|
19
|
-
.in("order_id", ids.slice(i, i + CHUNK))
|
|
20
|
-
.is("quarantined_at", null);
|
|
21
|
-
if (error)
|
|
22
|
-
throw new Error(`orderregels lezen: ${error.message}`);
|
|
23
|
-
for (const r of (data ?? []))
|
|
24
|
-
itemOrder.set(String(r.id), String(r.order_id));
|
|
25
|
-
}
|
|
26
|
-
const itemIds = Array.from(itemOrder.keys());
|
|
27
|
-
// 2) karregels
|
|
28
|
-
const cartsPerOrder = new Map();
|
|
29
|
-
for (let i = 0; i < itemIds.length; i += CHUNK) {
|
|
30
|
-
const { data, error } = await supabase
|
|
31
|
-
.from("order_cart_items")
|
|
32
|
-
.select("order_item_id, cart_id")
|
|
33
|
-
.in("order_item_id", itemIds.slice(i, i + CHUNK));
|
|
34
|
-
if (error)
|
|
35
|
-
throw new Error(`karregels lezen: ${error.message}`);
|
|
36
|
-
for (const r of (data ?? [])) {
|
|
37
|
-
const oid = itemOrder.get(String(r.order_item_id));
|
|
38
|
-
if (!oid || !r.cart_id)
|
|
39
|
-
continue;
|
|
40
|
-
const s = cartsPerOrder.get(oid) ?? new Set();
|
|
41
|
-
s.add(String(r.cart_id));
|
|
42
|
-
cartsPerOrder.set(oid, s);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
// 3) karren zelf (type + gedeeld)
|
|
46
|
-
const allCartIds = Array.from(new Set([...cartsPerOrder.values()].flatMap((s) => [...s])));
|
|
47
|
-
const cartRow = new Map();
|
|
48
|
-
for (let i = 0; i < allCartIds.length; i += CHUNK) {
|
|
49
|
-
const { data, error } = await supabase
|
|
50
|
-
.from("order_carts")
|
|
51
|
-
.select("id, order_id, carrier_type")
|
|
52
|
-
.in("id", allCartIds.slice(i, i + CHUNK));
|
|
53
|
-
if (error)
|
|
54
|
-
throw new Error(`karren lezen: ${error.message}`);
|
|
55
|
-
for (const r of (data ?? []))
|
|
56
|
-
cartRow.set(String(r.id), { order_id: r.order_id ?? null, carrier_type: r.carrier_type ?? null });
|
|
57
|
-
}
|
|
58
|
-
for (const oid of ids) {
|
|
59
|
-
const set = cartsPerOrder.get(oid);
|
|
60
|
-
const cartIds = set ? [...set].filter((c) => cartRow.has(c)) : [];
|
|
61
|
-
out.set(oid, {
|
|
62
|
-
count: cartIds.length,
|
|
63
|
-
cartIds,
|
|
64
|
-
carrierTypes: cartIds.map((c) => String(cartRow.get(c)?.carrier_type ?? "")),
|
|
65
|
-
sharedCount: cartIds.filter((c) => cartRow.get(c)?.order_id !== oid).length,
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
return out;
|
|
69
|
-
}
|