@flowselections/twinfield-authenticatie-module-15-06-2026 2.0.2 → 2.0.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"TwinfieldAuthSettingsCard.d.ts","sourceRoot":"","sources":["../../../src/components/settings/TwinfieldAuthSettingsCard.tsx"],"names":[],"mappings":"AAmdA,wBAAgB,yBAAyB,CAAC,EACxC,eAAsB,GACvB,GAAE;IACD,eAAe,CAAC,EAAE,OAAO,CAAC;CACtB,+BAydL"}
1
+ {"version":3,"file":"TwinfieldAuthSettingsCard.d.ts","sourceRoot":"","sources":["../../../src/components/settings/TwinfieldAuthSettingsCard.tsx"],"names":[],"mappings":"AAsdA,wBAAgB,yBAAyB,CAAC,EACxC,eAAsB,GACvB,GAAE;IACD,eAAe,CAAC,EAAE,OAAO,CAAC;CACtB,+BAydL"}
@@ -1,5 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from "react";
3
+ // Maximum aantal pogingen in de klantenwachtrij (gedeeld contract met Klanten).
4
+ const TWINFIELD_PUSH_MAX_ATTEMPTS = 5;
3
5
  import { useServerFn } from "@tanstack/react-start";
4
6
  import { Card, Button, Badge, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, toast, } from "@flowselections/core";
5
7
  import { ChevronUp, ChevronDown, Link2, Unlink } from "lucide-react";
@@ -388,7 +390,7 @@ export function TwinfieldAuthSettingsCard({ defaultExpanded = true, } = {}) {
388
390
  : q.status === "pending"
389
391
  ? "In wachtrij"
390
392
  : q.status;
391
- return (_jsxs("div", { className: "flex items-start justify-between gap-3 px-3 py-2", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Badge, { variant: variant, children: label }), isFailed && (_jsxs("span", { className: "text-xs text-muted-foreground", children: ["poging ", q.attempts, "/5"] })), _jsx("span", { className: "text-sm text-foreground", children: q.customer_name ?? "Onbekende klant" }), q.external_id && (_jsxs("span", { className: "text-xs font-mono text-muted-foreground", children: ["debiteur ", q.external_id] }))] }), q.last_error && (_jsx("div", { className: "mt-1 text-xs text-muted-foreground break-all", children: q.last_error })), _jsx("div", { className: "mt-0.5 text-[11px] text-muted-foreground", children: relativeTime(q.updated_at ?? q.created_at) })] }), isFailed && (_jsx(Button, { size: "sm", variant: "outline", disabled: retrying === q.id, onClick: async () => {
393
+ return (_jsxs("div", { className: "flex items-start justify-between gap-3 px-3 py-2", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Badge, { variant: variant, children: label }), isFailed && (_jsxs("span", { className: "text-xs text-muted-foreground", children: ["poging ", Math.min(Number(q.attempts ?? 0), TWINFIELD_PUSH_MAX_ATTEMPTS), "/", TWINFIELD_PUSH_MAX_ATTEMPTS] })), _jsx("span", { className: "text-sm text-foreground", children: q.customer_name ?? "Onbekende klant" }), q.external_id && (_jsxs("span", { className: "text-xs font-mono text-muted-foreground", children: ["debiteur ", q.external_id] }))] }), q.last_error && (_jsx("div", { className: "mt-1 text-xs text-muted-foreground break-all", children: q.last_error })), _jsx("div", { className: "mt-0.5 text-[11px] text-muted-foreground", children: relativeTime(q.updated_at ?? q.created_at) })] }), isFailed && (_jsx(Button, { size: "sm", variant: "outline", disabled: retrying === q.id, onClick: async () => {
392
394
  setRetrying(q.id);
393
395
  try {
394
396
  await retryQueueItem({ data: { id: q.id } });