@flowselections/floriday-verkoop-module 1.0.21 → 1.0.25

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 (95) hide show
  1. package/dist-lib/components/karindeling/AfmetingenTab.d.ts +6 -0
  2. package/dist-lib/components/karindeling/AfmetingenTab.d.ts.map +1 -0
  3. package/dist-lib/components/karindeling/AfmetingenTab.js +128 -0
  4. package/dist-lib/components/karindeling/KarindelingPage.d.ts +2 -0
  5. package/dist-lib/components/karindeling/KarindelingPage.d.ts.map +1 -0
  6. package/dist-lib/components/karindeling/KarindelingPage.js +102 -0
  7. package/dist-lib/components/verkoop/OrderKarindelingCard.d.ts.map +1 -1
  8. package/dist-lib/components/verkoop/OrderKarindelingCard.js +83 -37
  9. package/dist-lib/components/verkoop/SalesOrderDetailPage.d.ts.map +1 -1
  10. package/dist-lib/components/verkoop/SalesOrderDetailPage.js +59 -8
  11. package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts +2 -1
  12. package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts.map +1 -1
  13. package/dist-lib/components/verkoop/SalesOrderDetailView.js +2 -2
  14. package/dist-lib/components/verkoop/SalesOrdersTable.d.ts.map +1 -1
  15. package/dist-lib/components/verkoop/SalesOrdersTable.js +36 -4
  16. package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts.map +1 -1
  17. package/dist-lib/components/verkoop/VerkoopOrdersPage.js +18 -2
  18. package/dist-lib/index.d.ts +1 -0
  19. package/dist-lib/index.d.ts.map +1 -1
  20. package/dist-lib/index.js +12 -1
  21. package/dist-lib/integrations/supabase/auth-middleware.d.ts +2353 -374
  22. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  23. package/dist-lib/integrations/supabase/client.d.ts +2353 -374
  24. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  25. package/dist-lib/integrations/supabase/client.js +24 -9
  26. package/dist-lib/integrations/supabase/client.server.d.ts +2353 -374
  27. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  28. package/dist-lib/integrations/supabase/types.d.ts +2406 -376
  29. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  30. package/dist-lib/integrations/supabase/types.js +11 -9
  31. package/dist-lib/lib/cart-lock.functions.d.ts +2353 -374
  32. package/dist-lib/lib/cart-lock.functions.d.ts.map +1 -1
  33. package/dist-lib/lib/cart-planner.d.ts +9 -1
  34. package/dist-lib/lib/cart-planner.d.ts.map +1 -1
  35. package/dist-lib/lib/cart-planner.js +21 -4
  36. package/dist-lib/lib/cart-planning-settings.functions.d.ts +152282 -0
  37. package/dist-lib/lib/cart-planning-settings.functions.d.ts.map +1 -0
  38. package/dist-lib/lib/cart-planning-settings.functions.js +375 -0
  39. package/dist-lib/lib/cart-replan.functions.d.ts +18468 -651
  40. package/dist-lib/lib/cart-replan.functions.d.ts.map +1 -1
  41. package/dist-lib/lib/cart-replan.functions.js +85 -27
  42. package/dist-lib/lib/create-order.functions.d.ts +25367 -1619
  43. package/dist-lib/lib/create-order.functions.d.ts.map +1 -1
  44. package/dist-lib/lib/cron/index.d.ts +5 -0
  45. package/dist-lib/lib/cron/index.d.ts.map +1 -0
  46. package/dist-lib/lib/cron/index.js +4 -0
  47. package/dist-lib/lib/cron/mirror-floriday-orders.d.ts +4 -0
  48. package/dist-lib/lib/cron/mirror-floriday-orders.d.ts.map +1 -0
  49. package/dist-lib/lib/cron/mirror-floriday-orders.js +23 -0
  50. package/dist-lib/lib/cron/replan-carts.d.ts +4 -0
  51. package/dist-lib/lib/cron/replan-carts.d.ts.map +1 -0
  52. package/dist-lib/lib/cron/replan-carts.js +18 -0
  53. package/dist-lib/lib/cron/sync-salesorders.d.ts +4 -0
  54. package/dist-lib/lib/cron/sync-salesorders.d.ts.map +1 -0
  55. package/dist-lib/lib/cron/sync-salesorders.js +18 -0
  56. package/dist-lib/lib/cron/sync-tradeitems.d.ts +4 -0
  57. package/dist-lib/lib/cron/sync-tradeitems.d.ts.map +1 -0
  58. package/dist-lib/lib/cron/sync-tradeitems.js +18 -0
  59. package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts +6539 -602
  60. package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts.map +1 -1
  61. package/dist-lib/lib/floriday-auto-fulfillment.server.js +1 -1
  62. package/dist-lib/lib/floriday-central-token.server.d.ts +12 -0
  63. package/dist-lib/lib/floriday-central-token.server.d.ts.map +1 -0
  64. package/dist-lib/lib/floriday-central-token.server.js +58 -0
  65. package/dist-lib/lib/floriday-gateway.server.d.ts +2 -2
  66. package/dist-lib/lib/floriday-gateway.server.d.ts.map +1 -1
  67. package/dist-lib/lib/floriday-gateway.server.js +10 -37
  68. package/dist-lib/lib/floriday-logistic-labels.functions.d.ts +2353 -374
  69. package/dist-lib/lib/floriday-logistic-labels.functions.d.ts.map +1 -1
  70. package/dist-lib/lib/floriday-logistic-labels.functions.js +14 -4
  71. package/dist-lib/lib/floriday-mirror.functions.d.ts +13846 -0
  72. package/dist-lib/lib/floriday-mirror.functions.d.ts.map +1 -0
  73. package/dist-lib/lib/floriday-mirror.functions.js +278 -0
  74. package/dist-lib/lib/floriday-public.functions.d.ts +14907 -1054
  75. package/dist-lib/lib/floriday-public.functions.d.ts.map +1 -1
  76. package/dist-lib/lib/floriday-sync.d.ts +0 -1
  77. package/dist-lib/lib/floriday-sync.d.ts.map +1 -1
  78. package/dist-lib/lib/floriday-sync.js +1 -1
  79. package/dist-lib/lib/floriday-writes.functions.d.ts +10723 -828
  80. package/dist-lib/lib/floriday-writes.functions.d.ts.map +1 -1
  81. package/dist-lib/lib/order-buffers.functions.d.ts +41540 -0
  82. package/dist-lib/lib/order-buffers.functions.d.ts.map +1 -0
  83. package/dist-lib/lib/order-buffers.functions.js +244 -0
  84. package/dist-lib/lib/order-shipments.functions.d.ts +8631 -715
  85. package/dist-lib/lib/order-shipments.functions.d.ts.map +1 -1
  86. package/dist-lib/lib/salesorders-mapping.d.ts +3 -0
  87. package/dist-lib/lib/salesorders-mapping.d.ts.map +1 -1
  88. package/dist-lib/lib/salesorders.functions.d.ts +10725 -828
  89. package/dist-lib/lib/salesorders.functions.d.ts.map +1 -1
  90. package/dist-lib/lib/salesorders.functions.js +129 -3
  91. package/dist-lib/lib/tradeitems.functions.d.ts +2353 -374
  92. package/dist-lib/lib/tradeitems.functions.d.ts.map +1 -1
  93. package/dist-lib/lib/useSalesOrdersQuery.d.ts.map +1 -1
  94. package/dist-lib/lib/useSalesOrdersQuery.js +37 -2
  95. package/package.json +27 -5
@@ -2,7 +2,7 @@ import { florydayWrite } from "./floriday-gateway.server";
2
2
  async function loadConnectionMeta(supabase, connectionId) {
3
3
  const { data } = await supabase
4
4
  .from("floriday_connections")
5
- .select("id, environment, access_token, api_key, is_active, gln_code, preferred_warehouse_id")
5
+ .select("id, environment, api_key, is_active, gln_code, preferred_warehouse_id")
6
6
  .eq("id", connectionId)
7
7
  .maybeSingle();
8
8
  return data ?? null;
@@ -0,0 +1,12 @@
1
+ export type CentralTokenOk = {
2
+ ok: true;
3
+ access_token: string;
4
+ expires_at: string | null;
5
+ };
6
+ export type CentralTokenFail = {
7
+ ok: false;
8
+ status: number;
9
+ raw: string;
10
+ };
11
+ export declare function getFlorydayTokenFromCentral(environment: "staging" | "live" | string): Promise<CentralTokenOk | CentralTokenFail>;
12
+ //# sourceMappingURL=floriday-central-token.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floriday-central-token.server.d.ts","sourceRoot":"","sources":["../../src/lib/floriday-central-token.server.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,IAAI,CAAC;IACT,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GACvC,OAAO,CAAC,cAAc,GAAG,gBAAgB,CAAC,CAsD5C"}
@@ -0,0 +1,58 @@
1
+ // Server-only. Haalt Floriday access-tokens op via de Central Auth Module.
2
+ // Één bron van waarheid voor de scope: verkoop geeft GEEN scope mee, zodat
3
+ // central de provider-default toepast (provider.scopes uit central's DB).
4
+ // Dit voorkomt scope-drift tussen modules.
5
+ //
6
+ // Endpoint: POST {CENTRAL_AUTH_URL}/api/token/floriday
7
+ // Auth: Authorization: Bearer {CENTRAL_AUTH_SECRET}
8
+ // Body: { environment: "staging" | "live" }
9
+ // Response: { access_token: string, expires_at: string }
10
+ export async function getFlorydayTokenFromCentral(environment) {
11
+ const url = process.env.CENTRAL_AUTH_URL;
12
+ const secret = process.env.CENTRAL_AUTH_SECRET;
13
+ if (!url || !secret) {
14
+ console.warn("[floriday-central-token] CENTRAL_AUTH_URL / CENTRAL_AUTH_SECRET ontbreekt in env");
15
+ return {
16
+ ok: false,
17
+ status: 0,
18
+ raw: "central env missing: CENTRAL_AUTH_URL and/or CENTRAL_AUTH_SECRET",
19
+ };
20
+ }
21
+ // Central verwacht "staging" of "live". Normaliseer varianten.
22
+ const env = environment === "live" || environment === "production" || environment === "prod"
23
+ ? "live"
24
+ : "staging";
25
+ const base = url.replace(/\/+$/, "");
26
+ const endpoint = `${base}/api/token/floriday`;
27
+ try {
28
+ const res = await fetch(endpoint, {
29
+ method: "POST",
30
+ headers: {
31
+ Authorization: `Bearer ${secret}`,
32
+ "Content-Type": "application/json",
33
+ Accept: "application/json",
34
+ },
35
+ // Bewust GEEN scope-veld: central past provider-default toe (single source of truth).
36
+ body: JSON.stringify({ environment: env }),
37
+ });
38
+ const text = await res.text();
39
+ if (!res.ok) {
40
+ console.warn(`[floriday-central-token] central token endpoint faalde ${res.status}: ${text.slice(0, 300)}`);
41
+ return { ok: false, status: res.status, raw: text };
42
+ }
43
+ const json = JSON.parse(text);
44
+ if (!json.access_token) {
45
+ return { ok: false, status: res.status, raw: text };
46
+ }
47
+ return {
48
+ ok: true,
49
+ access_token: json.access_token,
50
+ expires_at: json.expires_at ?? null,
51
+ };
52
+ }
53
+ catch (err) {
54
+ const msg = err instanceof Error ? err.message : String(err);
55
+ console.warn("[floriday-central-token] fetch faalde:", msg);
56
+ return { ok: false, status: 0, raw: msg };
57
+ }
58
+ }
@@ -12,8 +12,8 @@ export interface FlorydayFetchResult<T = unknown> {
12
12
  rawText: string;
13
13
  connection: FloridayConnectionRow;
14
14
  }
15
- /** Low-level fetch with token-refresh + retry-once on 401/403. */
16
- export declare function florydayFetch<T = unknown>(supabase: SupabaseClient, conn: FloridayConnectionRow, init: {
15
+ /** Low-level fetch. Grant-per-call via central; retry-once on 401/403. */
16
+ export declare function florydayFetch<T = unknown>(_supabase: SupabaseClient, conn: FloridayConnectionRow, init: {
17
17
  method: string;
18
18
  path: string;
19
19
  body?: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"floriday-gateway.server.d.ts","sourceRoot":"","sources":["../../src/lib/floriday-gateway.server.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAsB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAEjF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC;AAKrD,wBAAgB,UAAU,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAIvF;AAMD,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,mBAAmB,GAAG,MAAM,GAChC,OAAO,CAAC,qBAAqB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAa/D;AA6BD,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC9C,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,qBAAqB,CAAC;CACnC;AAED,kEAAkE;AAClE,wBAAsB,aAAa,CAAC,CAAC,GAAG,OAAO,EAC7C,QAAQ,EAAE,cAAc,EACxB,IAAI,EAAE,qBAAqB,EAC3B,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GACrD,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CA8CjC;AAGD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AA4DD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD,wBAAsB,aAAa,CACjC,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,mBAAmB,GAAG,MAAM,EACjC,IAAI,EAAE,iBAAiB,EACvB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,mBAAmB,CAAC,CA6D9B"}
1
+ {"version":3,"file":"floriday-gateway.server.d.ts","sourceRoot":"","sources":["../../src/lib/floriday-gateway.server.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAsB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGjF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC;AAErD,wBAAgB,UAAU,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAIvF;AAMD,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,mBAAmB,GAAG,MAAM,GAChC,OAAO,CAAC,qBAAqB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAa/D;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC9C,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,qBAAqB,CAAC;CACnC;AAED,0EAA0E;AAC1E,wBAAsB,aAAa,CAAC,CAAC,GAAG,OAAO,EAC7C,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE,qBAAqB,EAC3B,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GACrD,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CA4CjC;AAGD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AA4DD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD,wBAAsB,aAAa,CACjC,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,mBAAmB,GAAG,MAAM,EACjC,IAAI,EAAE,iBAAiB,EACvB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CAAC,mBAAmB,CAAC,CA6D9B"}
@@ -1,5 +1,5 @@
1
1
  import { FLORIDAY_API_BASES } from "./floriday-sync";
2
- const AUTH_MODULE_REFRESH_URL = "https://project--vmicscahrnzpmhagztmx.lovable.app/api/public/cron/refresh-floriday-tokens";
2
+ import { getFlorydayTokenFromCentral } from "./floriday-central-token.server";
3
3
  export function apiBaseFor(env) {
4
4
  return env === "live" || env === "production" || env === "prod"
5
5
  ? FLORIDAY_API_BASES.production
@@ -12,7 +12,7 @@ export async function pickActiveConnection(supabase, env) {
12
12
  const dbEnv = normalizeEnvKey(env);
13
13
  const { data, error } = await supabase
14
14
  .from("floriday_connections")
15
- .select("id, environment, access_token, api_key, is_active, gln_code")
15
+ .select("id, environment, api_key, is_active, gln_code")
16
16
  .eq("environment", dbEnv)
17
17
  .eq("is_active", true)
18
18
  .order("updated_at", { ascending: false })
@@ -24,41 +24,15 @@ export async function pickActiveConnection(supabase, env) {
24
24
  throw new Error(`Geen actieve Floriday connectie voor "${dbEnv}"`);
25
25
  return data;
26
26
  }
27
- async function triggerAuthModuleRefresh() {
28
- try {
29
- await fetch(AUTH_MODULE_REFRESH_URL, {
30
- method: "POST",
31
- headers: { "Content-Type": "application/json" },
32
- body: "{}",
33
- });
34
- }
35
- catch {
36
- // best-effort — caller re-reads the token regardless
37
- }
38
- }
39
- async function reloadConnection(supabase, connectionId) {
40
- const { data, error } = await supabase
41
- .from("floriday_connections")
42
- .select("id, environment, access_token, api_key, is_active")
43
- .eq("id", connectionId)
44
- .maybeSingle();
45
- if (error || !data) {
46
- throw new Error(`Floriday connectie ${connectionId} herladen mislukt: ${error?.message ?? "not found"}`);
47
- }
48
- return data;
49
- }
50
- /** Low-level fetch with token-refresh + retry-once on 401/403. */
51
- export async function florydayFetch(supabase, conn, init) {
52
- let active = conn;
27
+ /** Low-level fetch. Grant-per-call via central; retry-once on 401/403. */
28
+ export async function florydayFetch(_supabase, conn, init) {
29
+ const active = conn;
53
30
  let lastRes = null;
54
31
  let lastText = "";
55
32
  for (let attempt = 0; attempt < 2; attempt += 1) {
56
- if (!active.access_token) {
57
- await triggerAuthModuleRefresh();
58
- active = await reloadConnection(supabase, active.id);
59
- if (!active.access_token) {
60
- throw new Error(`Floriday connectie ${active.id} heeft geen access_token`);
61
- }
33
+ const tokenRes = await getFlorydayTokenFromCentral(active.environment ?? "staging");
34
+ if (!tokenRes.ok) {
35
+ throw new Error(`Floriday token via central faalde [${tokenRes.status}] voor connectie ${active.id}: ${tokenRes.raw.slice(0, 300)}`);
62
36
  }
63
37
  const url = `${apiBaseFor(active.environment)}${init.path}`;
64
38
  const res = await fetch(url, {
@@ -66,7 +40,7 @@ export async function florydayFetch(supabase, conn, init) {
66
40
  headers: {
67
41
  Accept: "application/json",
68
42
  ...(init.body !== undefined ? { "Content-Type": "application/json" } : {}),
69
- Authorization: `Bearer ${active.access_token}`,
43
+ Authorization: `Bearer ${tokenRes.access_token}`,
70
44
  ...(active.api_key ? { "x-api-key": active.api_key } : {}),
71
45
  },
72
46
  body: init.body !== undefined ? JSON.stringify(init.body) : undefined,
@@ -79,8 +53,7 @@ export async function florydayFetch(supabase, conn, init) {
79
53
  return { ok: true, status: res.status, data: parsed, rawText: text, connection: active };
80
54
  }
81
55
  if ((res.status === 401 || res.status === 403) && attempt === 0) {
82
- await triggerAuthModuleRefresh();
83
- active = await reloadConnection(supabase, active.id);
56
+ // Central kan een verse grant leveren op de volgende poging.
84
57
  continue;
85
58
  }
86
59
  break;