@flowselections/floriday-afhandeling-module 1.0.8 → 1.0.10
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/afhandeling/DagDetailDialog.d.ts +9 -0
- package/dist-lib/components/afhandeling/DagDetailDialog.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/DagDetailDialog.js +145 -0
- package/dist-lib/components/afhandeling/LeveringenPage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/LeveringenPage.js +17 -69
- package/dist-lib/components/afhandeling/PickAgendaView.d.ts +6 -0
- package/dist-lib/components/afhandeling/PickAgendaView.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/PickAgendaView.js +40 -0
- package/dist-lib/components/afhandeling/PickingPage.d.ts +2 -0
- package/dist-lib/components/afhandeling/PickingPage.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/PickingPage.js +5 -0
- package/dist-lib/components/afhandeling/PlanningAgendaPage.d.ts +9 -0
- package/dist-lib/components/afhandeling/PlanningAgendaPage.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/PlanningAgendaPage.js +7 -0
- package/dist-lib/components/afhandeling/ServiceAreaSelect.d.ts +12 -0
- package/dist-lib/components/afhandeling/ServiceAreaSelect.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/ServiceAreaSelect.js +79 -0
- package/dist-lib/components/afhandeling/VervoerderForm.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/VervoerderForm.js +73 -12
- package/dist-lib/components/afhandeling/VervoerdersPage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/VervoerdersPage.js +23 -5
- package/dist-lib/components/afhandeling/WeekAgendaView.d.ts +13 -0
- package/dist-lib/components/afhandeling/WeekAgendaView.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/WeekAgendaView.js +142 -0
- package/dist-lib/components/pickstation/LanguagePicker.d.ts +5 -0
- package/dist-lib/components/pickstation/LanguagePicker.d.ts.map +1 -0
- package/dist-lib/components/pickstation/LanguagePicker.js +5 -0
- package/dist-lib/components/pickstation/PakbonTemplate.d.ts +20 -0
- package/dist-lib/components/pickstation/PakbonTemplate.d.ts.map +1 -0
- package/dist-lib/components/pickstation/PakbonTemplate.js +76 -0
- package/dist-lib/components/pickstation/printDocuments.d.ts +3 -0
- package/dist-lib/components/pickstation/printDocuments.d.ts.map +1 -0
- package/dist-lib/components/pickstation/printDocuments.js +53 -0
- package/dist-lib/components/settings/AfhandelingSettingsCard.d.ts +2 -0
- package/dist-lib/components/settings/AfhandelingSettingsCard.d.ts.map +1 -0
- package/dist-lib/components/settings/AfhandelingSettingsCard.js +72 -0
- package/dist-lib/components/settings/VervoerdersSettingsCard.d.ts +2 -0
- package/dist-lib/components/settings/VervoerdersSettingsCard.d.ts.map +1 -0
- package/dist-lib/components/settings/VervoerdersSettingsCard.js +30 -0
- package/dist-lib/hooks/useOrderPlanning.d.ts +17 -0
- package/dist-lib/hooks/useOrderPlanning.d.ts.map +1 -0
- package/dist-lib/hooks/useOrderPlanning.js +131 -0
- package/dist-lib/index.d.ts +5 -0
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +16 -6
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +2793 -137
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +2793 -137
- package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +2793 -137
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +2870 -131
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.js +2 -0
- package/dist-lib/lib/afhandelingSettings.functions.d.ts +18597 -0
- package/dist-lib/lib/afhandelingSettings.functions.d.ts.map +1 -0
- package/dist-lib/lib/afhandelingSettings.functions.js +98 -0
- package/dist-lib/lib/carrierSignupMail.server.d.ts +56 -0
- package/dist-lib/lib/carrierSignupMail.server.d.ts.map +1 -0
- package/dist-lib/lib/carrierSignupMail.server.js +229 -0
- package/dist-lib/lib/carriers.functions.d.ts +34091 -14161
- package/dist-lib/lib/carriers.functions.d.ts.map +1 -1
- package/dist-lib/lib/carriers.functions.js +69 -6
- package/dist-lib/lib/cartAssignments.functions.d.ts +46479 -0
- package/dist-lib/lib/cartAssignments.functions.d.ts.map +1 -0
- package/dist-lib/lib/cartAssignments.functions.js +130 -0
- package/dist-lib/lib/cartMoveImpact.d.ts +8 -0
- package/dist-lib/lib/cartMoveImpact.d.ts.map +1 -0
- package/dist-lib/lib/cartMoveImpact.js +26 -0
- package/dist-lib/lib/floriday.functions.d.ts +2798 -137
- package/dist-lib/lib/floriday.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday.functions.js +178 -93
- package/dist-lib/lib/geo/euServiceAreas.d.ts +30 -0
- package/dist-lib/lib/geo/euServiceAreas.d.ts.map +1 -0
- package/dist-lib/lib/geo/euServiceAreas.js +277 -0
- package/dist-lib/lib/invalidatePlanning.d.ts +11 -0
- package/dist-lib/lib/invalidatePlanning.d.ts.map +1 -0
- package/dist-lib/lib/invalidatePlanning.js +25 -0
- package/dist-lib/lib/pickDate.d.ts +21 -0
- package/dist-lib/lib/pickDate.d.ts.map +1 -0
- package/dist-lib/lib/pickDate.js +71 -0
- package/dist-lib/lib/pickstationI18n.d.ts +35 -0
- package/dist-lib/lib/pickstationI18n.d.ts.map +1 -0
- package/dist-lib/lib/pickstationI18n.js +171 -0
- package/dist-lib/lib/pickstationOrders.server.d.ts +9 -0
- package/dist-lib/lib/pickstationOrders.server.d.ts.map +1 -0
- package/dist-lib/lib/pickstationOrders.server.js +372 -0
- package/dist-lib/lib/pickstationTypes.d.ts +26 -0
- package/dist-lib/lib/pickstationTypes.d.ts.map +1 -0
- package/dist-lib/lib/pickstationTypes.js +1 -0
- package/dist-lib/lib/planning.d.ts +82 -0
- package/dist-lib/lib/planning.d.ts.map +1 -0
- package/dist-lib/lib/planning.js +243 -0
- package/package.json +12 -6
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createServerFn } from "@tanstack/react-start";
|
|
2
2
|
import { requireSupabaseAuth } from "../integrations/supabase/auth-middleware";
|
|
3
|
+
import { DEFAULT_PICKUP_MOMENT } from "./planning";
|
|
3
4
|
function clean(obj) {
|
|
4
5
|
const out = {};
|
|
5
6
|
for (const [k, v] of Object.entries(obj)) {
|
|
@@ -10,21 +11,44 @@ function clean(obj) {
|
|
|
10
11
|
}
|
|
11
12
|
return out;
|
|
12
13
|
}
|
|
14
|
+
function normalizeMoments(raw) {
|
|
15
|
+
if (!Array.isArray(raw) || raw.length === 0)
|
|
16
|
+
return [DEFAULT_PICKUP_MOMENT];
|
|
17
|
+
return raw.map((m) => {
|
|
18
|
+
const r = (m ?? {});
|
|
19
|
+
return {
|
|
20
|
+
signup_days: Number(r.signup_days ?? DEFAULT_PICKUP_MOMENT.signup_days),
|
|
21
|
+
signup_time: String(r.signup_time ?? DEFAULT_PICKUP_MOMENT.signup_time),
|
|
22
|
+
pickup_days: Number(r.pickup_days ?? DEFAULT_PICKUP_MOMENT.pickup_days),
|
|
23
|
+
pickup_time: String(r.pickup_time ?? DEFAULT_PICKUP_MOMENT.pickup_time),
|
|
24
|
+
delivery_days: Number(r.delivery_days ?? DEFAULT_PICKUP_MOMENT.delivery_days),
|
|
25
|
+
delivery_time: String(r.delivery_time ?? DEFAULT_PICKUP_MOMENT.delivery_time),
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
}
|
|
13
29
|
export const listCarriers = createServerFn({ method: "GET" })
|
|
14
30
|
.middleware([requireSupabaseAuth])
|
|
15
31
|
.handler(async ({ context }) => {
|
|
16
32
|
const { data, error } = await context.supabase
|
|
17
33
|
.from("carriers")
|
|
18
34
|
.select("*, carrier_shipping_rates(id)")
|
|
35
|
+
.order("sort_order", { ascending: true })
|
|
19
36
|
.order("name", { ascending: true });
|
|
20
37
|
if (error)
|
|
21
38
|
throw new Error(error.message);
|
|
22
39
|
const carriers = (data ?? []).map((row) => {
|
|
23
40
|
const r = row;
|
|
24
41
|
const rates = (r.carrier_shipping_rates ?? []);
|
|
25
|
-
const { carrier_shipping_rates: _drop, ...rest } = r;
|
|
42
|
+
const { carrier_shipping_rates: _drop, pickup_moments, service_countries, service_provinces, service_cities, ...rest } = r;
|
|
26
43
|
void _drop;
|
|
27
|
-
return {
|
|
44
|
+
return {
|
|
45
|
+
...rest,
|
|
46
|
+
pickup_moments: normalizeMoments(pickup_moments),
|
|
47
|
+
service_countries: service_countries ?? [],
|
|
48
|
+
service_provinces: service_provinces ?? [],
|
|
49
|
+
service_cities: service_cities ?? [],
|
|
50
|
+
rate_count: rates.length,
|
|
51
|
+
};
|
|
28
52
|
});
|
|
29
53
|
return { carriers };
|
|
30
54
|
});
|
|
@@ -45,9 +69,15 @@ export const getCarrier = createServerFn({ method: "GET" })
|
|
|
45
69
|
.eq("carrier_id", data.id);
|
|
46
70
|
if (ratesError)
|
|
47
71
|
throw new Error(ratesError.message);
|
|
72
|
+
const c = carrier;
|
|
73
|
+
const { pickup_moments, service_countries, service_provinces, service_cities, ...rest } = c;
|
|
48
74
|
return {
|
|
49
75
|
carrier: {
|
|
50
|
-
...
|
|
76
|
+
...rest,
|
|
77
|
+
pickup_moments: normalizeMoments(pickup_moments),
|
|
78
|
+
service_countries: service_countries ?? [],
|
|
79
|
+
service_provinces: service_provinces ?? [],
|
|
80
|
+
service_cities: service_cities ?? [],
|
|
51
81
|
rates: (rates ?? []).map((r) => ({
|
|
52
82
|
id: r.id,
|
|
53
83
|
country_code: r.country_code,
|
|
@@ -64,19 +94,30 @@ export const upsertCarrier = createServerFn({ method: "POST" })
|
|
|
64
94
|
if (!carrier.name || carrier.name.trim().length === 0) {
|
|
65
95
|
throw new Error("Bedrijfsnaam is verplicht");
|
|
66
96
|
}
|
|
97
|
+
const moments = normalizeMoments(carrier.pickup_moments);
|
|
67
98
|
const payload = clean({
|
|
68
99
|
name: carrier.name.trim(),
|
|
69
100
|
contact_person: carrier.contact_person ?? null,
|
|
70
101
|
email: carrier.email ?? null,
|
|
71
102
|
phone: carrier.phone ?? null,
|
|
72
103
|
address: carrier.address ?? null,
|
|
73
|
-
delivery_days: carrier.delivery_days ?? null,
|
|
74
|
-
signup_time_1: carrier.signup_time_1 ?? null,
|
|
75
|
-
signup_time_2: carrier.signup_time_2 ?? null,
|
|
76
104
|
notes: carrier.notes ?? null,
|
|
105
|
+
is_default: carrier.is_default ?? false,
|
|
106
|
+
pickup_moments: moments,
|
|
107
|
+
service_countries: Array.isArray(carrier.service_countries) ? carrier.service_countries : [],
|
|
108
|
+
service_provinces: Array.isArray(carrier.service_provinces) ? carrier.service_provinces : [],
|
|
109
|
+
service_cities: Array.isArray(carrier.service_cities) ? carrier.service_cities : [],
|
|
77
110
|
});
|
|
78
111
|
let carrierId;
|
|
79
112
|
if (carrier.id) {
|
|
113
|
+
// Als deze als default wordt gemarkeerd, eerst andere defaults van deze user uitzetten
|
|
114
|
+
if (carrier.is_default) {
|
|
115
|
+
await context.supabase
|
|
116
|
+
.from("carriers")
|
|
117
|
+
.update({ is_default: false })
|
|
118
|
+
.eq("user_id", context.userId)
|
|
119
|
+
.neq("id", carrier.id);
|
|
120
|
+
}
|
|
80
121
|
const { data: updated, error } = await context.supabase
|
|
81
122
|
.from("carriers")
|
|
82
123
|
.update(payload)
|
|
@@ -88,6 +129,12 @@ export const upsertCarrier = createServerFn({ method: "POST" })
|
|
|
88
129
|
carrierId = updated.id;
|
|
89
130
|
}
|
|
90
131
|
else {
|
|
132
|
+
if (carrier.is_default) {
|
|
133
|
+
await context.supabase
|
|
134
|
+
.from("carriers")
|
|
135
|
+
.update({ is_default: false })
|
|
136
|
+
.eq("user_id", context.userId);
|
|
137
|
+
}
|
|
91
138
|
const { data: inserted, error } = await context.supabase
|
|
92
139
|
.from("carriers")
|
|
93
140
|
.insert({ ...payload, user_id: context.userId })
|
|
@@ -129,3 +176,19 @@ export const deleteCarrier = createServerFn({ method: "POST" })
|
|
|
129
176
|
throw new Error(error.message);
|
|
130
177
|
return { ok: true };
|
|
131
178
|
});
|
|
179
|
+
export const reorderCarriers = createServerFn({ method: "POST" })
|
|
180
|
+
.middleware([requireSupabaseAuth])
|
|
181
|
+
.inputValidator((data) => data)
|
|
182
|
+
.handler(async ({ data, context }) => {
|
|
183
|
+
const updates = data.orderedIds.map((id, index) => context.supabase
|
|
184
|
+
.from("carriers")
|
|
185
|
+
.update({ sort_order: index + 1 })
|
|
186
|
+
.eq("id", id)
|
|
187
|
+
.eq("user_id", context.userId));
|
|
188
|
+
const results = await Promise.all(updates);
|
|
189
|
+
for (const r of results) {
|
|
190
|
+
if (r.error)
|
|
191
|
+
throw new Error(r.error.message);
|
|
192
|
+
}
|
|
193
|
+
return { ok: true };
|
|
194
|
+
});
|