@easypayment/medusa-paypal 0.2.0 → 0.2.1

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.
@@ -1217,13 +1217,92 @@ function PayPalConnectionPage() {
1217
1217
  ` })
1218
1218
  ] });
1219
1219
  }
1220
+ function formatDate$2(value) {
1221
+ if (!value) {
1222
+ return "";
1223
+ }
1224
+ const parsed = new Date(value);
1225
+ if (Number.isNaN(parsed.getTime())) {
1226
+ return value;
1227
+ }
1228
+ return parsed.toLocaleString();
1229
+ }
1230
+ function PayPalAuditLogsPage() {
1231
+ const [logs, setLogs] = react.useState([]);
1232
+ const [loading, setLoading] = react.useState(false);
1233
+ const [error, setError] = react.useState(null);
1234
+ const fetchLogs = react.useCallback(async () => {
1235
+ try {
1236
+ setLoading(true);
1237
+ setError(null);
1238
+ const response = await fetch("/admin/paypal/audit-logs?limit=50", {
1239
+ credentials: "include",
1240
+ headers: {
1241
+ Accept: "application/json"
1242
+ }
1243
+ });
1244
+ if (!response.ok) {
1245
+ const message = await response.text().catch(() => "");
1246
+ throw new Error(message || "Failed to load audit logs.");
1247
+ }
1248
+ const data = await response.json().catch(() => ({}));
1249
+ setLogs((data == null ? void 0 : data.logs) || []);
1250
+ } catch (fetchError) {
1251
+ setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load audit logs.");
1252
+ setLogs([]);
1253
+ } finally {
1254
+ setLoading(false);
1255
+ }
1256
+ }, []);
1257
+ react.useEffect(() => {
1258
+ fetchLogs();
1259
+ }, [fetchLogs]);
1260
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
1261
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1262
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Audit Logs" }),
1263
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Track administrative changes and credential events for PayPal configuration." })
1264
+ ] }),
1265
+ /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
1266
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1267
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1268
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest events" }),
1269
+ /* @__PURE__ */ jsxRuntime.jsx(
1270
+ "button",
1271
+ {
1272
+ type: "button",
1273
+ onClick: fetchLogs,
1274
+ className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1275
+ disabled: loading,
1276
+ children: loading ? "Refreshing..." : "Refresh"
1277
+ }
1278
+ )
1279
+ ] }) }),
1280
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
1281
+ error ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1282
+ !error && logs.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading audit logs..." : "No audit log entries found yet." }) : null,
1283
+ logs.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "min-w-full text-left text-sm", children: [
1284
+ /* @__PURE__ */ jsxRuntime.jsx("thead", { className: "text-ui-fg-muted", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
1285
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 pr-4 font-medium", children: "Timestamp" }),
1286
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 pr-4 font-medium", children: "Event" }),
1287
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 font-medium", children: "Details" })
1288
+ ] }) }),
1289
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: logs.map((entry) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: "border-t border-ui-border-base", children: [
1290
+ /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: formatDate$2(entry.created_at) || "—" }),
1291
+ /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: entry.event_type || "—" }),
1292
+ /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 text-ui-fg-subtle", children: /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "whitespace-pre-wrap rounded-md bg-ui-bg-subtle p-2 text-xs text-ui-fg-subtle", children: JSON.stringify(entry.metadata || {}, null, 2) }) })
1293
+ ] }, entry.id)) })
1294
+ ] }) }) : null
1295
+ ] })
1296
+ ] })
1297
+ ] }) });
1298
+ }
1220
1299
  const EMPTY_FILTERS = {
1221
1300
  dispute_id: "",
1222
1301
  status: "",
1223
1302
  order_id: "",
1224
1303
  cart_id: ""
1225
1304
  };
1226
- function formatDate$2(value) {
1305
+ function formatDate$1(value) {
1227
1306
  if (!value) {
1228
1307
  return "";
1229
1308
  }
@@ -1402,208 +1481,19 @@ function PayPalDisputesPage() {
1402
1481
  /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3", children: dispute.amount ? `${dispute.amount} ${dispute.currency_code || ""}` : "-" }),
1403
1482
  /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3", children: dispute.order_id || "-" }),
1404
1483
  /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3", children: dispute.cart_id || "-" }),
1405
- /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-ui-fg-subtle", children: formatDate$2(dispute.updated_at || dispute.created_at) })
1484
+ /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-ui-fg-subtle", children: formatDate$1(dispute.updated_at || dispute.created_at) })
1406
1485
  ] }, dispute.id)) })
1407
1486
  ] }) }),
1408
1487
  error ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-t border-ui-border-base px-4 py-3 text-sm text-ui-fg-error", children: error }) : null
1409
1488
  ] })
1410
1489
  ] }) });
1411
1490
  }
1412
- function formatDate$1(value) {
1413
- if (!value) {
1414
- return "";
1415
- }
1416
- const parsed = new Date(value);
1417
- if (Number.isNaN(parsed.getTime())) {
1418
- return value;
1419
- }
1420
- return parsed.toLocaleString();
1421
- }
1422
- function PayPalAuditLogsPage() {
1423
- const [logs, setLogs] = react.useState([]);
1424
- const [loading, setLoading] = react.useState(false);
1425
- const [error, setError] = react.useState(null);
1426
- const fetchLogs = react.useCallback(async () => {
1427
- try {
1428
- setLoading(true);
1429
- setError(null);
1430
- const response = await fetch("/admin/paypal/audit-logs?limit=50", {
1431
- credentials: "include",
1432
- headers: {
1433
- Accept: "application/json"
1434
- }
1435
- });
1436
- if (!response.ok) {
1437
- const message = await response.text().catch(() => "");
1438
- throw new Error(message || "Failed to load audit logs.");
1439
- }
1440
- const data = await response.json().catch(() => ({}));
1441
- setLogs((data == null ? void 0 : data.logs) || []);
1442
- } catch (fetchError) {
1443
- setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load audit logs.");
1444
- setLogs([]);
1445
- } finally {
1446
- setLoading(false);
1447
- }
1448
- }, []);
1449
- react.useEffect(() => {
1450
- fetchLogs();
1451
- }, [fetchLogs]);
1452
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
1453
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1454
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Audit Logs" }),
1455
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Track administrative changes and credential events for PayPal configuration." })
1456
- ] }),
1457
- /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
1458
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1459
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1460
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest events" }),
1461
- /* @__PURE__ */ jsxRuntime.jsx(
1462
- "button",
1463
- {
1464
- type: "button",
1465
- onClick: fetchLogs,
1466
- className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1467
- disabled: loading,
1468
- children: loading ? "Refreshing..." : "Refresh"
1469
- }
1470
- )
1471
- ] }) }),
1472
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
1473
- error ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1474
- !error && logs.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading audit logs..." : "No audit log entries found yet." }) : null,
1475
- logs.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "min-w-full text-left text-sm", children: [
1476
- /* @__PURE__ */ jsxRuntime.jsx("thead", { className: "text-ui-fg-muted", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
1477
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 pr-4 font-medium", children: "Timestamp" }),
1478
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 pr-4 font-medium", children: "Event" }),
1479
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: "pb-2 font-medium", children: "Details" })
1480
- ] }) }),
1481
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: logs.map((entry) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: "border-t border-ui-border-base", children: [
1482
- /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: formatDate$1(entry.created_at) || "—" }),
1483
- /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: entry.event_type || "—" }),
1484
- /* @__PURE__ */ jsxRuntime.jsx("td", { className: "py-3 text-ui-fg-subtle", children: /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "whitespace-pre-wrap rounded-md bg-ui-bg-subtle p-2 text-xs text-ui-fg-subtle", children: JSON.stringify(entry.metadata || {}, null, 2) }) })
1485
- ] }, entry.id)) })
1486
- ] }) }) : null
1487
- ] })
1488
- ] })
1489
- ] }) });
1490
- }
1491
1491
  function PayPalGooglePayPage() {
1492
1492
  return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
1493
1493
  }
1494
1494
  function PayPalPayLaterMessagingPage() {
1495
1495
  return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
1496
1496
  }
1497
- function formatDate(value) {
1498
- if (!value) {
1499
- return "—";
1500
- }
1501
- const parsed = new Date(value);
1502
- if (Number.isNaN(parsed.getTime())) {
1503
- return value;
1504
- }
1505
- return parsed.toLocaleString();
1506
- }
1507
- function PayPalReconciliationStatusPage() {
1508
- const [status, setStatus] = react.useState({});
1509
- const [loading, setLoading] = react.useState(false);
1510
- const [error, setError] = react.useState(null);
1511
- const fetchStatus = react.useCallback(async () => {
1512
- try {
1513
- setLoading(true);
1514
- setError(null);
1515
- const response = await fetch("/admin/paypal/reconciliation-status", {
1516
- credentials: "include",
1517
- headers: {
1518
- Accept: "application/json"
1519
- }
1520
- });
1521
- if (!response.ok) {
1522
- const message = await response.text().catch(() => "");
1523
- throw new Error(message || "Failed to load reconciliation status.");
1524
- }
1525
- const data = await response.json().catch(() => ({}));
1526
- setStatus((data == null ? void 0 : data.status) || {});
1527
- } catch (fetchError) {
1528
- setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load reconciliation status.");
1529
- setStatus({});
1530
- } finally {
1531
- setLoading(false);
1532
- }
1533
- }, []);
1534
- react.useEffect(() => {
1535
- fetchStatus();
1536
- }, [fetchStatus]);
1537
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
1538
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1539
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Reconciliation Status" }),
1540
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Monitor reconciliation health and drift detection for PayPal payment sessions." })
1541
- ] }),
1542
- /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
1543
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1544
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1545
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest reconciliation run" }),
1546
- /* @__PURE__ */ jsxRuntime.jsx(
1547
- "button",
1548
- {
1549
- type: "button",
1550
- onClick: fetchStatus,
1551
- className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1552
- disabled: loading,
1553
- children: loading ? "Refreshing..." : "Refresh"
1554
- }
1555
- )
1556
- ] }) }),
1557
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
1558
- error ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1559
- !error && Object.keys(status).length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading reconciliation status..." : "No reconciliation data yet." }) : null,
1560
- Object.keys(status).length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-4 text-sm text-ui-fg-base md:grid-cols-2", children: [
1561
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1562
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last run" }),
1563
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_run_at) })
1564
- ] }),
1565
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1566
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last run status" }),
1567
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium capitalize", children: status.last_run_status || "—" })
1568
- ] }),
1569
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1570
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last success" }),
1571
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_success_at) })
1572
- ] }),
1573
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1574
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last failure" }),
1575
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_failure_at) })
1576
- ] }),
1577
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1578
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Sessions checked" }),
1579
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.sessions_checked ?? 0 })
1580
- ] }),
1581
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1582
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Sessions updated" }),
1583
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.sessions_updated ?? 0 })
1584
- ] }),
1585
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1586
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Drift detections" }),
1587
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.drift_count ?? 0 })
1588
- ] }),
1589
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1590
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last drift order" }),
1591
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.last_drift_order_id || "—" }),
1592
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-xs text-ui-fg-subtle", children: formatDate(status.last_drift_at) })
1593
- ] }),
1594
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
1595
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last error" }),
1596
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.last_error || "No errors recorded." })
1597
- ] }),
1598
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
1599
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Total runs" }),
1600
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.runs ?? 0 })
1601
- ] })
1602
- ] }) : null
1603
- ] })
1604
- ] })
1605
- ] }) });
1606
- }
1607
1497
  const DISPLAY_LOCATION_OPTIONS = [
1608
1498
  { value: "product", label: "Product Page" },
1609
1499
  { value: "cart", label: "Cart Page" },
@@ -2041,6 +1931,116 @@ function PayPalSettingsTab() {
2041
1931
  )
2042
1932
  ] }) });
2043
1933
  }
1934
+ function formatDate(value) {
1935
+ if (!value) {
1936
+ return "—";
1937
+ }
1938
+ const parsed = new Date(value);
1939
+ if (Number.isNaN(parsed.getTime())) {
1940
+ return value;
1941
+ }
1942
+ return parsed.toLocaleString();
1943
+ }
1944
+ function PayPalReconciliationStatusPage() {
1945
+ const [status, setStatus] = react.useState({});
1946
+ const [loading, setLoading] = react.useState(false);
1947
+ const [error, setError] = react.useState(null);
1948
+ const fetchStatus = react.useCallback(async () => {
1949
+ try {
1950
+ setLoading(true);
1951
+ setError(null);
1952
+ const response = await fetch("/admin/paypal/reconciliation-status", {
1953
+ credentials: "include",
1954
+ headers: {
1955
+ Accept: "application/json"
1956
+ }
1957
+ });
1958
+ if (!response.ok) {
1959
+ const message = await response.text().catch(() => "");
1960
+ throw new Error(message || "Failed to load reconciliation status.");
1961
+ }
1962
+ const data = await response.json().catch(() => ({}));
1963
+ setStatus((data == null ? void 0 : data.status) || {});
1964
+ } catch (fetchError) {
1965
+ setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load reconciliation status.");
1966
+ setStatus({});
1967
+ } finally {
1968
+ setLoading(false);
1969
+ }
1970
+ }, []);
1971
+ react.useEffect(() => {
1972
+ fetchStatus();
1973
+ }, [fetchStatus]);
1974
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
1975
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1976
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Reconciliation Status" }),
1977
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Monitor reconciliation health and drift detection for PayPal payment sessions." })
1978
+ ] }),
1979
+ /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
1980
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1981
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1982
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest reconciliation run" }),
1983
+ /* @__PURE__ */ jsxRuntime.jsx(
1984
+ "button",
1985
+ {
1986
+ type: "button",
1987
+ onClick: fetchStatus,
1988
+ className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1989
+ disabled: loading,
1990
+ children: loading ? "Refreshing..." : "Refresh"
1991
+ }
1992
+ )
1993
+ ] }) }),
1994
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
1995
+ error ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1996
+ !error && Object.keys(status).length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading reconciliation status..." : "No reconciliation data yet." }) : null,
1997
+ Object.keys(status).length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-4 text-sm text-ui-fg-base md:grid-cols-2", children: [
1998
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1999
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last run" }),
2000
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_run_at) })
2001
+ ] }),
2002
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2003
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last run status" }),
2004
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium capitalize", children: status.last_run_status || "—" })
2005
+ ] }),
2006
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2007
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last success" }),
2008
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_success_at) })
2009
+ ] }),
2010
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2011
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last failure" }),
2012
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_failure_at) })
2013
+ ] }),
2014
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2015
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Sessions checked" }),
2016
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.sessions_checked ?? 0 })
2017
+ ] }),
2018
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2019
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Sessions updated" }),
2020
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.sessions_updated ?? 0 })
2021
+ ] }),
2022
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2023
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Drift detections" }),
2024
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.drift_count ?? 0 })
2025
+ ] }),
2026
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2027
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last drift order" }),
2028
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.last_drift_order_id || "—" }),
2029
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-xs text-ui-fg-subtle", children: formatDate(status.last_drift_at) })
2030
+ ] }),
2031
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
2032
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Last error" }),
2033
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.last_error || "No errors recorded." })
2034
+ ] }),
2035
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
2036
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-ui-fg-subtle", children: "Total runs" }),
2037
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 font-medium", children: status.runs ?? 0 })
2038
+ ] })
2039
+ ] }) : null
2040
+ ] })
2041
+ ] })
2042
+ ] }) });
2043
+ }
2044
2044
  const widgetModule = { widgets: [] };
2045
2045
  const routeModule = {
2046
2046
  routes: [
@@ -2064,14 +2064,14 @@ const routeModule = {
2064
2064
  Component: PayPalConnectionPage,
2065
2065
  path: "/settings/paypal/connection"
2066
2066
  },
2067
- {
2068
- Component: PayPalDisputesPage,
2069
- path: "/settings/paypal/disputes"
2070
- },
2071
2067
  {
2072
2068
  Component: PayPalAuditLogsPage,
2073
2069
  path: "/settings/paypal/audit-logs"
2074
2070
  },
2071
+ {
2072
+ Component: PayPalDisputesPage,
2073
+ path: "/settings/paypal/disputes"
2074
+ },
2075
2075
  {
2076
2076
  Component: PayPalGooglePayPage,
2077
2077
  path: "/settings/paypal/google-pay"
@@ -2080,13 +2080,13 @@ const routeModule = {
2080
2080
  Component: PayPalPayLaterMessagingPage,
2081
2081
  path: "/settings/paypal/pay-later-messaging"
2082
2082
  },
2083
- {
2084
- Component: PayPalReconciliationStatusPage,
2085
- path: "/settings/paypal/reconciliation-status"
2086
- },
2087
2083
  {
2088
2084
  Component: PayPalSettingsTab,
2089
2085
  path: "/settings/paypal/paypal-settings"
2086
+ },
2087
+ {
2088
+ Component: PayPalReconciliationStatusPage,
2089
+ path: "/settings/paypal/reconciliation-status"
2090
2090
  }
2091
2091
  ]
2092
2092
  };
@@ -1216,13 +1216,92 @@ function PayPalConnectionPage() {
1216
1216
  ` })
1217
1217
  ] });
1218
1218
  }
1219
+ function formatDate$2(value) {
1220
+ if (!value) {
1221
+ return "";
1222
+ }
1223
+ const parsed = new Date(value);
1224
+ if (Number.isNaN(parsed.getTime())) {
1225
+ return value;
1226
+ }
1227
+ return parsed.toLocaleString();
1228
+ }
1229
+ function PayPalAuditLogsPage() {
1230
+ const [logs, setLogs] = useState([]);
1231
+ const [loading, setLoading] = useState(false);
1232
+ const [error, setError] = useState(null);
1233
+ const fetchLogs = useCallback(async () => {
1234
+ try {
1235
+ setLoading(true);
1236
+ setError(null);
1237
+ const response = await fetch("/admin/paypal/audit-logs?limit=50", {
1238
+ credentials: "include",
1239
+ headers: {
1240
+ Accept: "application/json"
1241
+ }
1242
+ });
1243
+ if (!response.ok) {
1244
+ const message = await response.text().catch(() => "");
1245
+ throw new Error(message || "Failed to load audit logs.");
1246
+ }
1247
+ const data = await response.json().catch(() => ({}));
1248
+ setLogs((data == null ? void 0 : data.logs) || []);
1249
+ } catch (fetchError) {
1250
+ setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load audit logs.");
1251
+ setLogs([]);
1252
+ } finally {
1253
+ setLoading(false);
1254
+ }
1255
+ }, []);
1256
+ useEffect(() => {
1257
+ fetchLogs();
1258
+ }, [fetchLogs]);
1259
+ return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1260
+ /* @__PURE__ */ jsxs("div", { children: [
1261
+ /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Audit Logs" }),
1262
+ /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Track administrative changes and credential events for PayPal configuration." })
1263
+ ] }),
1264
+ /* @__PURE__ */ jsx(PayPalTabs, {}),
1265
+ /* @__PURE__ */ jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1266
+ /* @__PURE__ */ jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1267
+ /* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest events" }),
1268
+ /* @__PURE__ */ jsx(
1269
+ "button",
1270
+ {
1271
+ type: "button",
1272
+ onClick: fetchLogs,
1273
+ className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1274
+ disabled: loading,
1275
+ children: loading ? "Refreshing..." : "Refresh"
1276
+ }
1277
+ )
1278
+ ] }) }),
1279
+ /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
1280
+ error ? /* @__PURE__ */ jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1281
+ !error && logs.length === 0 ? /* @__PURE__ */ jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading audit logs..." : "No audit log entries found yet." }) : null,
1282
+ logs.length > 0 ? /* @__PURE__ */ jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxs("table", { className: "min-w-full text-left text-sm", children: [
1283
+ /* @__PURE__ */ jsx("thead", { className: "text-ui-fg-muted", children: /* @__PURE__ */ jsxs("tr", { children: [
1284
+ /* @__PURE__ */ jsx("th", { className: "pb-2 pr-4 font-medium", children: "Timestamp" }),
1285
+ /* @__PURE__ */ jsx("th", { className: "pb-2 pr-4 font-medium", children: "Event" }),
1286
+ /* @__PURE__ */ jsx("th", { className: "pb-2 font-medium", children: "Details" })
1287
+ ] }) }),
1288
+ /* @__PURE__ */ jsx("tbody", { children: logs.map((entry) => /* @__PURE__ */ jsxs("tr", { className: "border-t border-ui-border-base", children: [
1289
+ /* @__PURE__ */ jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: formatDate$2(entry.created_at) || "—" }),
1290
+ /* @__PURE__ */ jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: entry.event_type || "—" }),
1291
+ /* @__PURE__ */ jsx("td", { className: "py-3 text-ui-fg-subtle", children: /* @__PURE__ */ jsx("pre", { className: "whitespace-pre-wrap rounded-md bg-ui-bg-subtle p-2 text-xs text-ui-fg-subtle", children: JSON.stringify(entry.metadata || {}, null, 2) }) })
1292
+ ] }, entry.id)) })
1293
+ ] }) }) : null
1294
+ ] })
1295
+ ] })
1296
+ ] }) });
1297
+ }
1219
1298
  const EMPTY_FILTERS = {
1220
1299
  dispute_id: "",
1221
1300
  status: "",
1222
1301
  order_id: "",
1223
1302
  cart_id: ""
1224
1303
  };
1225
- function formatDate$2(value) {
1304
+ function formatDate$1(value) {
1226
1305
  if (!value) {
1227
1306
  return "";
1228
1307
  }
@@ -1401,208 +1480,19 @@ function PayPalDisputesPage() {
1401
1480
  /* @__PURE__ */ jsx("td", { className: "px-4 py-3", children: dispute.amount ? `${dispute.amount} ${dispute.currency_code || ""}` : "-" }),
1402
1481
  /* @__PURE__ */ jsx("td", { className: "px-4 py-3", children: dispute.order_id || "-" }),
1403
1482
  /* @__PURE__ */ jsx("td", { className: "px-4 py-3", children: dispute.cart_id || "-" }),
1404
- /* @__PURE__ */ jsx("td", { className: "px-4 py-3 text-ui-fg-subtle", children: formatDate$2(dispute.updated_at || dispute.created_at) })
1483
+ /* @__PURE__ */ jsx("td", { className: "px-4 py-3 text-ui-fg-subtle", children: formatDate$1(dispute.updated_at || dispute.created_at) })
1405
1484
  ] }, dispute.id)) })
1406
1485
  ] }) }),
1407
1486
  error ? /* @__PURE__ */ jsx("div", { className: "border-t border-ui-border-base px-4 py-3 text-sm text-ui-fg-error", children: error }) : null
1408
1487
  ] })
1409
1488
  ] }) });
1410
1489
  }
1411
- function formatDate$1(value) {
1412
- if (!value) {
1413
- return "";
1414
- }
1415
- const parsed = new Date(value);
1416
- if (Number.isNaN(parsed.getTime())) {
1417
- return value;
1418
- }
1419
- return parsed.toLocaleString();
1420
- }
1421
- function PayPalAuditLogsPage() {
1422
- const [logs, setLogs] = useState([]);
1423
- const [loading, setLoading] = useState(false);
1424
- const [error, setError] = useState(null);
1425
- const fetchLogs = useCallback(async () => {
1426
- try {
1427
- setLoading(true);
1428
- setError(null);
1429
- const response = await fetch("/admin/paypal/audit-logs?limit=50", {
1430
- credentials: "include",
1431
- headers: {
1432
- Accept: "application/json"
1433
- }
1434
- });
1435
- if (!response.ok) {
1436
- const message = await response.text().catch(() => "");
1437
- throw new Error(message || "Failed to load audit logs.");
1438
- }
1439
- const data = await response.json().catch(() => ({}));
1440
- setLogs((data == null ? void 0 : data.logs) || []);
1441
- } catch (fetchError) {
1442
- setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load audit logs.");
1443
- setLogs([]);
1444
- } finally {
1445
- setLoading(false);
1446
- }
1447
- }, []);
1448
- useEffect(() => {
1449
- fetchLogs();
1450
- }, [fetchLogs]);
1451
- return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1452
- /* @__PURE__ */ jsxs("div", { children: [
1453
- /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Audit Logs" }),
1454
- /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Track administrative changes and credential events for PayPal configuration." })
1455
- ] }),
1456
- /* @__PURE__ */ jsx(PayPalTabs, {}),
1457
- /* @__PURE__ */ jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1458
- /* @__PURE__ */ jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1459
- /* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest events" }),
1460
- /* @__PURE__ */ jsx(
1461
- "button",
1462
- {
1463
- type: "button",
1464
- onClick: fetchLogs,
1465
- className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1466
- disabled: loading,
1467
- children: loading ? "Refreshing..." : "Refresh"
1468
- }
1469
- )
1470
- ] }) }),
1471
- /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
1472
- error ? /* @__PURE__ */ jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1473
- !error && logs.length === 0 ? /* @__PURE__ */ jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading audit logs..." : "No audit log entries found yet." }) : null,
1474
- logs.length > 0 ? /* @__PURE__ */ jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxs("table", { className: "min-w-full text-left text-sm", children: [
1475
- /* @__PURE__ */ jsx("thead", { className: "text-ui-fg-muted", children: /* @__PURE__ */ jsxs("tr", { children: [
1476
- /* @__PURE__ */ jsx("th", { className: "pb-2 pr-4 font-medium", children: "Timestamp" }),
1477
- /* @__PURE__ */ jsx("th", { className: "pb-2 pr-4 font-medium", children: "Event" }),
1478
- /* @__PURE__ */ jsx("th", { className: "pb-2 font-medium", children: "Details" })
1479
- ] }) }),
1480
- /* @__PURE__ */ jsx("tbody", { children: logs.map((entry) => /* @__PURE__ */ jsxs("tr", { className: "border-t border-ui-border-base", children: [
1481
- /* @__PURE__ */ jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: formatDate$1(entry.created_at) || "—" }),
1482
- /* @__PURE__ */ jsx("td", { className: "py-3 pr-4 text-ui-fg-base", children: entry.event_type || "—" }),
1483
- /* @__PURE__ */ jsx("td", { className: "py-3 text-ui-fg-subtle", children: /* @__PURE__ */ jsx("pre", { className: "whitespace-pre-wrap rounded-md bg-ui-bg-subtle p-2 text-xs text-ui-fg-subtle", children: JSON.stringify(entry.metadata || {}, null, 2) }) })
1484
- ] }, entry.id)) })
1485
- ] }) }) : null
1486
- ] })
1487
- ] })
1488
- ] }) });
1489
- }
1490
1490
  function PayPalGooglePayPage() {
1491
1491
  return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
1492
1492
  }
1493
1493
  function PayPalPayLaterMessagingPage() {
1494
1494
  return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
1495
1495
  }
1496
- function formatDate(value) {
1497
- if (!value) {
1498
- return "—";
1499
- }
1500
- const parsed = new Date(value);
1501
- if (Number.isNaN(parsed.getTime())) {
1502
- return value;
1503
- }
1504
- return parsed.toLocaleString();
1505
- }
1506
- function PayPalReconciliationStatusPage() {
1507
- const [status, setStatus] = useState({});
1508
- const [loading, setLoading] = useState(false);
1509
- const [error, setError] = useState(null);
1510
- const fetchStatus = useCallback(async () => {
1511
- try {
1512
- setLoading(true);
1513
- setError(null);
1514
- const response = await fetch("/admin/paypal/reconciliation-status", {
1515
- credentials: "include",
1516
- headers: {
1517
- Accept: "application/json"
1518
- }
1519
- });
1520
- if (!response.ok) {
1521
- const message = await response.text().catch(() => "");
1522
- throw new Error(message || "Failed to load reconciliation status.");
1523
- }
1524
- const data = await response.json().catch(() => ({}));
1525
- setStatus((data == null ? void 0 : data.status) || {});
1526
- } catch (fetchError) {
1527
- setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load reconciliation status.");
1528
- setStatus({});
1529
- } finally {
1530
- setLoading(false);
1531
- }
1532
- }, []);
1533
- useEffect(() => {
1534
- fetchStatus();
1535
- }, [fetchStatus]);
1536
- return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1537
- /* @__PURE__ */ jsxs("div", { children: [
1538
- /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Reconciliation Status" }),
1539
- /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Monitor reconciliation health and drift detection for PayPal payment sessions." })
1540
- ] }),
1541
- /* @__PURE__ */ jsx(PayPalTabs, {}),
1542
- /* @__PURE__ */ jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1543
- /* @__PURE__ */ jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1544
- /* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest reconciliation run" }),
1545
- /* @__PURE__ */ jsx(
1546
- "button",
1547
- {
1548
- type: "button",
1549
- onClick: fetchStatus,
1550
- className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1551
- disabled: loading,
1552
- children: loading ? "Refreshing..." : "Refresh"
1553
- }
1554
- )
1555
- ] }) }),
1556
- /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
1557
- error ? /* @__PURE__ */ jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1558
- !error && Object.keys(status).length === 0 ? /* @__PURE__ */ jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading reconciliation status..." : "No reconciliation data yet." }) : null,
1559
- Object.keys(status).length > 0 ? /* @__PURE__ */ jsxs("div", { className: "grid gap-4 text-sm text-ui-fg-base md:grid-cols-2", children: [
1560
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1561
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last run" }),
1562
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_run_at) })
1563
- ] }),
1564
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1565
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last run status" }),
1566
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium capitalize", children: status.last_run_status || "—" })
1567
- ] }),
1568
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1569
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last success" }),
1570
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_success_at) })
1571
- ] }),
1572
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1573
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last failure" }),
1574
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_failure_at) })
1575
- ] }),
1576
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1577
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Sessions checked" }),
1578
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.sessions_checked ?? 0 })
1579
- ] }),
1580
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1581
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Sessions updated" }),
1582
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.sessions_updated ?? 0 })
1583
- ] }),
1584
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1585
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Drift detections" }),
1586
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.drift_count ?? 0 })
1587
- ] }),
1588
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1589
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last drift order" }),
1590
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.last_drift_order_id || "—" }),
1591
- /* @__PURE__ */ jsx("div", { className: "mt-1 text-xs text-ui-fg-subtle", children: formatDate(status.last_drift_at) })
1592
- ] }),
1593
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
1594
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last error" }),
1595
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.last_error || "No errors recorded." })
1596
- ] }),
1597
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
1598
- /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Total runs" }),
1599
- /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.runs ?? 0 })
1600
- ] })
1601
- ] }) : null
1602
- ] })
1603
- ] })
1604
- ] }) });
1605
- }
1606
1496
  const DISPLAY_LOCATION_OPTIONS = [
1607
1497
  { value: "product", label: "Product Page" },
1608
1498
  { value: "cart", label: "Cart Page" },
@@ -2040,6 +1930,116 @@ function PayPalSettingsTab() {
2040
1930
  )
2041
1931
  ] }) });
2042
1932
  }
1933
+ function formatDate(value) {
1934
+ if (!value) {
1935
+ return "—";
1936
+ }
1937
+ const parsed = new Date(value);
1938
+ if (Number.isNaN(parsed.getTime())) {
1939
+ return value;
1940
+ }
1941
+ return parsed.toLocaleString();
1942
+ }
1943
+ function PayPalReconciliationStatusPage() {
1944
+ const [status, setStatus] = useState({});
1945
+ const [loading, setLoading] = useState(false);
1946
+ const [error, setError] = useState(null);
1947
+ const fetchStatus = useCallback(async () => {
1948
+ try {
1949
+ setLoading(true);
1950
+ setError(null);
1951
+ const response = await fetch("/admin/paypal/reconciliation-status", {
1952
+ credentials: "include",
1953
+ headers: {
1954
+ Accept: "application/json"
1955
+ }
1956
+ });
1957
+ if (!response.ok) {
1958
+ const message = await response.text().catch(() => "");
1959
+ throw new Error(message || "Failed to load reconciliation status.");
1960
+ }
1961
+ const data = await response.json().catch(() => ({}));
1962
+ setStatus((data == null ? void 0 : data.status) || {});
1963
+ } catch (fetchError) {
1964
+ setError((fetchError == null ? void 0 : fetchError.message) || "Failed to load reconciliation status.");
1965
+ setStatus({});
1966
+ } finally {
1967
+ setLoading(false);
1968
+ }
1969
+ }, []);
1970
+ useEffect(() => {
1971
+ fetchStatus();
1972
+ }, [fetchStatus]);
1973
+ return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1974
+ /* @__PURE__ */ jsxs("div", { children: [
1975
+ /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Reconciliation Status" }),
1976
+ /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm text-ui-fg-subtle", children: "Monitor reconciliation health and drift detection for PayPal payment sessions." })
1977
+ ] }),
1978
+ /* @__PURE__ */ jsx(PayPalTabs, {}),
1979
+ /* @__PURE__ */ jsxs("div", { className: "rounded-xl border border-ui-border-base bg-ui-bg-base shadow-sm", children: [
1980
+ /* @__PURE__ */ jsx("div", { className: "border-b border-ui-border-base p-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
1981
+ /* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-ui-fg-base", children: "Latest reconciliation run" }),
1982
+ /* @__PURE__ */ jsx(
1983
+ "button",
1984
+ {
1985
+ type: "button",
1986
+ onClick: fetchStatus,
1987
+ className: "rounded-md border border-ui-border-base px-3 py-2 text-sm text-ui-fg-base",
1988
+ disabled: loading,
1989
+ children: loading ? "Refreshing..." : "Refresh"
1990
+ }
1991
+ )
1992
+ ] }) }),
1993
+ /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
1994
+ error ? /* @__PURE__ */ jsx("div", { className: "rounded-md border border-red-200 bg-red-50 p-3 text-sm text-red-600", children: error }) : null,
1995
+ !error && Object.keys(status).length === 0 ? /* @__PURE__ */ jsx("div", { className: "text-sm text-ui-fg-subtle", children: loading ? "Loading reconciliation status..." : "No reconciliation data yet." }) : null,
1996
+ Object.keys(status).length > 0 ? /* @__PURE__ */ jsxs("div", { className: "grid gap-4 text-sm text-ui-fg-base md:grid-cols-2", children: [
1997
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
1998
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last run" }),
1999
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_run_at) })
2000
+ ] }),
2001
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2002
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last run status" }),
2003
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium capitalize", children: status.last_run_status || "—" })
2004
+ ] }),
2005
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2006
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last success" }),
2007
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_success_at) })
2008
+ ] }),
2009
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2010
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last failure" }),
2011
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: formatDate(status.last_failure_at) })
2012
+ ] }),
2013
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2014
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Sessions checked" }),
2015
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.sessions_checked ?? 0 })
2016
+ ] }),
2017
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2018
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Sessions updated" }),
2019
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.sessions_updated ?? 0 })
2020
+ ] }),
2021
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2022
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Drift detections" }),
2023
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.drift_count ?? 0 })
2024
+ ] }),
2025
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3", children: [
2026
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last drift order" }),
2027
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.last_drift_order_id || "—" }),
2028
+ /* @__PURE__ */ jsx("div", { className: "mt-1 text-xs text-ui-fg-subtle", children: formatDate(status.last_drift_at) })
2029
+ ] }),
2030
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
2031
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Last error" }),
2032
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.last_error || "No errors recorded." })
2033
+ ] }),
2034
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border border-ui-border-base bg-ui-bg-subtle p-3 md:col-span-2", children: [
2035
+ /* @__PURE__ */ jsx("div", { className: "text-ui-fg-subtle", children: "Total runs" }),
2036
+ /* @__PURE__ */ jsx("div", { className: "mt-1 font-medium", children: status.runs ?? 0 })
2037
+ ] })
2038
+ ] }) : null
2039
+ ] })
2040
+ ] })
2041
+ ] }) });
2042
+ }
2043
2043
  const widgetModule = { widgets: [] };
2044
2044
  const routeModule = {
2045
2045
  routes: [
@@ -2063,14 +2063,14 @@ const routeModule = {
2063
2063
  Component: PayPalConnectionPage,
2064
2064
  path: "/settings/paypal/connection"
2065
2065
  },
2066
- {
2067
- Component: PayPalDisputesPage,
2068
- path: "/settings/paypal/disputes"
2069
- },
2070
2066
  {
2071
2067
  Component: PayPalAuditLogsPage,
2072
2068
  path: "/settings/paypal/audit-logs"
2073
2069
  },
2070
+ {
2071
+ Component: PayPalDisputesPage,
2072
+ path: "/settings/paypal/disputes"
2073
+ },
2074
2074
  {
2075
2075
  Component: PayPalGooglePayPage,
2076
2076
  path: "/settings/paypal/google-pay"
@@ -2079,13 +2079,13 @@ const routeModule = {
2079
2079
  Component: PayPalPayLaterMessagingPage,
2080
2080
  path: "/settings/paypal/pay-later-messaging"
2081
2081
  },
2082
- {
2083
- Component: PayPalReconciliationStatusPage,
2084
- path: "/settings/paypal/reconciliation-status"
2085
- },
2086
2082
  {
2087
2083
  Component: PayPalSettingsTab,
2088
2084
  path: "/settings/paypal/paypal-settings"
2085
+ },
2086
+ {
2087
+ Component: PayPalReconciliationStatusPage,
2088
+ path: "/settings/paypal/reconciliation-status"
2089
2089
  }
2090
2090
  ]
2091
2091
  };
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../../src/api/store/payment-collections/[id]/payment-sessions/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAiB,MAAM,0BAA0B,CAAA;AAO5F,wBAAsB,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,cAAc,iBAuBtE"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../../src/api/store/payment-collections/[id]/payment-sessions/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAiB,MAAM,0BAA0B,CAAA;AAc5F,wBAAsB,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,cAAc,iBAuBtE"}
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.POST = POST;
4
4
  const core_flows_1 = require("@medusajs/core-flows");
5
5
  const http_1 = require("@medusajs/framework/http");
6
+ const defaultPaymentCollectionFields = [
7
+ "id",
8
+ "currency_code",
9
+ "amount",
10
+ "*payment_sessions",
11
+ ];
6
12
  async function POST(req, res) {
7
13
  const collectionId = req.params.id;
8
14
  const { provider_id, data } = req.body;
@@ -18,7 +24,7 @@ async function POST(req, res) {
18
24
  entity: "payment_collection",
19
25
  idOrFilter: collectionId,
20
26
  scope: req.scope,
21
- fields: req.queryConfig.fields,
27
+ fields: req.queryConfig?.fields ?? defaultPaymentCollectionFields,
22
28
  });
23
29
  res.status(200).json({
24
30
  payment_collection: paymentCollection,
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../../../../../src/api/store/payment-collections/[id]/payment-sessions/route.ts"],"names":[],"mappings":";;AAQA,oBAuBC;AA/BD,qDAAoE;AACpE,mDAA4F;AAOrF,KAAK,UAAU,IAAI,CAAC,GAAuB,EAAE,GAAmB;IACrE,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;IAClC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAgC,CAAA;IAElE,MAAM,IAAA,0CAA6B,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;QACjD,KAAK,EAAE;YACL,qBAAqB,EAAE,YAAY;YACnC,WAAW;YACX,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,QAAQ;YACvC,IAAI;SACL;KACF,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EAAC;QAC5C,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,YAAY;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,MAAM;KAC/B,CAAC,CAAA;IAEF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,kBAAkB,EAAE,iBAAiB;KACtC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../../../../../src/api/store/payment-collections/[id]/payment-sessions/route.ts"],"names":[],"mappings":";;AAeA,oBAuBC;AAtCD,qDAAoE;AACpE,mDAA4F;AAO5F,MAAM,8BAA8B,GAAG;IACrC,IAAI;IACJ,eAAe;IACf,QAAQ;IACR,mBAAmB;CACpB,CAAA;AAEM,KAAK,UAAU,IAAI,CAAC,GAAuB,EAAE,GAAmB;IACrE,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;IAClC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAgC,CAAA;IAElE,MAAM,IAAA,0CAA6B,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;QACjD,KAAK,EAAE;YACL,qBAAqB,EAAE,YAAY;YACnC,WAAW;YACX,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,QAAQ;YACvC,IAAI;SACL;KACF,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EAAC;QAC5C,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,YAAY;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,8BAA8B;KAClE,CAAC,CAAA;IAEF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,kBAAkB,EAAE,iBAAiB;KACtC,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,2BAA2B,CAAA;AASlC,KAAK,OAAO,GAAG,EAAE,CAAA;AAWjB,cAAM,qBAAsB,SAAQ,uBAAuB,CAAC,OAAO,CAAC;IAClE,MAAM,CAAC,UAAU,SAAW;IAE5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;gBAExB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO;IAKzD,OAAO,CAAC,oBAAoB;YAOd,eAAe;YAaf,uBAAuB;YAQvB,oBAAoB;YA2BpB,eAAe;IAkB7B,OAAO,CAAC,iBAAiB;YAQX,oBAAoB;IAclC,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,sBAAsB;IAqB9B,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,cAAc;YA6BR,aAAa;YAWb,aAAa;YASb,kBAAkB;IAS1B,mBAAmB,CACvB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAarC;;;OAGG;IACG,eAAe,CACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAkC3B,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsBtE,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IA+I5B,eAAe,CACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAyB3B,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IAwC5B,cAAc,CAClB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,oBAAoB,CAAC;IAgL1B,aAAa,CACjB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC;IAiHzB,aAAa,CACjB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC;IAqIzB,aAAa,CACjB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,mBAAmB,CAAC;IAI/B;;;OAGG;IACG,uBAAuB,CAC3B,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC;CAGhC;AAED,eAAe,qBAAqB,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,2BAA2B,CAAA;AASlC,KAAK,OAAO,GAAG,EAAE,CAAA;AAWjB,cAAM,qBAAsB,SAAQ,uBAAuB,CAAC,OAAO,CAAC;IAClE,MAAM,CAAC,UAAU,SAAW;IAE5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;gBAExB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO;IAKzD,OAAO,CAAC,oBAAoB;YAWd,eAAe;YAoBf,uBAAuB;YAQvB,oBAAoB;YAgCpB,eAAe;IAkB7B,OAAO,CAAC,iBAAiB;YAQX,oBAAoB;IAclC,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,sBAAsB;IAqB9B,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,cAAc;YA6BR,aAAa;YAeb,aAAa;YAab,kBAAkB;IAa1B,mBAAmB,CACvB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAarC;;;OAGG;IACG,eAAe,CACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAkC3B,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsBtE,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IA+I5B,eAAe,CACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAyB3B,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IAwC5B,cAAc,CAClB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,oBAAoB,CAAC;IAgL1B,aAAa,CACjB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC;IAiHzB,aAAa,CACjB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC;IAqIzB,aAAa,CACjB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,mBAAmB,CAAC;IAI/B;;;OAGG;IACG,uBAAuB,CAC3B,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC;CAGhC;AAED,eAAe,qBAAqB,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -24,10 +24,21 @@ class PayPalPaymentProvider extends utils_1.AbstractPaymentProvider {
24
24
  }
25
25
  resolvePayPalService() {
26
26
  const container = this.container;
27
- return container.resolve("paypal_onboarding");
27
+ try {
28
+ return container.resolve("paypal_onboarding");
29
+ }
30
+ catch {
31
+ return null;
32
+ }
28
33
  }
29
34
  async resolveSettings() {
30
35
  const paypal = this.resolvePayPalService();
36
+ if (!paypal) {
37
+ return {
38
+ additionalSettings: {},
39
+ apiDetails: {},
40
+ };
41
+ }
31
42
  const settings = await paypal.getSettings().catch(() => ({}));
32
43
  const data = settings && typeof settings === "object" && "data" in settings
33
44
  ? (settings.data ?? {})
@@ -46,6 +57,9 @@ class PayPalPaymentProvider extends utils_1.AbstractPaymentProvider {
46
57
  }
47
58
  async getPayPalAccessToken() {
48
59
  const paypal = this.resolvePayPalService();
60
+ if (!paypal) {
61
+ throw new Error("PayPal module service is unavailable. Ensure the PayPal module is registered in Medusa config.");
62
+ }
49
63
  const creds = await paypal.getActiveCredentials();
50
64
  const base = creds.environment === "live"
51
65
  ? "https://api-m.paypal.com"
@@ -178,8 +192,11 @@ class PayPalPaymentProvider extends utils_1.AbstractPaymentProvider {
178
192
  return "pending";
179
193
  }
180
194
  async recordFailure(eventType, metadata) {
195
+ const paypal = this.resolvePayPalService();
196
+ if (!paypal) {
197
+ return;
198
+ }
181
199
  try {
182
- const paypal = this.resolvePayPalService();
183
200
  await paypal.recordPaymentLog(eventType, metadata);
184
201
  await paypal.recordAuditEvent(eventType, metadata);
185
202
  await paypal.recordMetric(eventType);
@@ -189,8 +206,11 @@ class PayPalPaymentProvider extends utils_1.AbstractPaymentProvider {
189
206
  }
190
207
  }
191
208
  async recordSuccess(metricName) {
209
+ const paypal = this.resolvePayPalService();
210
+ if (!paypal) {
211
+ return;
212
+ }
192
213
  try {
193
- const paypal = this.resolvePayPalService();
194
214
  await paypal.recordMetric(metricName);
195
215
  }
196
216
  catch {
@@ -198,8 +218,11 @@ class PayPalPaymentProvider extends utils_1.AbstractPaymentProvider {
198
218
  }
199
219
  }
200
220
  async recordPaymentEvent(eventType, metadata) {
221
+ const paypal = this.resolvePayPalService();
222
+ if (!paypal) {
223
+ return;
224
+ }
201
225
  try {
202
- const paypal = this.resolvePayPalService();
203
226
  await paypal.recordPaymentLog(eventType, metadata);
204
227
  }
205
228
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/service.ts"],"names":[],"mappings":";;;AAAA,qDAAmE;AACnE,mCAAmC;AAyBnC,8CAAwD;AACxD,oDAG4B;AAE5B,mDAA+D;AAI/D,SAAS,iBAAiB;IACxB,IAAI,CAAC;QACH,OAAO,IAAA,mBAAU,GAAE,CAAA;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;QAC7D,OAAO,MAAM,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAClE,CAAC;AACH,CAAC;AAED,MAAM,qBAAsB,SAAQ,+BAAgC;IAClE,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAA;IAET,QAAQ,CAAS;IAEpC,YAAY,MAA2B,EAAE,OAAgB;QACvD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;IACzB,CAAC;IAEO,oBAAoB;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,SAEtB,CAAA;QACD,OAAO,SAAS,CAAC,OAAO,CAAsB,mBAAmB,CAAC,CAAA;IACpE,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC1C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7D,MAAM,IAAI,GACR,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,IAAI,QAAQ;YAC5D,CAAC,CAAC,CAAE,QAA2C,CAAC,IAAI,IAAI,EAAE,CAAC;YAC3D,CAAC,CAAC,EAAE,CAAA;QACR,OAAO;YACL,kBAAkB,EAAE,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAwB;YAC3E,UAAU,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAwB;SAC5D,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB;QACnC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;QACnD,IAAI,OAAO,UAAU,CAAC,aAAa,KAAK,QAAQ,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YACpF,OAAO,IAAA,kCAAqB,EAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,IAAA,kCAAqB,EAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,KAAK,CAAC,CAAA;IACpE,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC1C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,oBAAoB,EAAE,CAAA;QACjD,MAAM,IAAI,GACR,KAAK,CAAC,WAAW,KAAK,MAAM;YAC1B,CAAC,CAAC,0BAA0B;YAC5B,CAAC,CAAC,kCAAkC,CAAA;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAExF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,kBAAkB,EAAE;YAClD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,SAAS,IAAI,EAAE;gBAC9B,cAAc,EAAE,mCAAmC;aACpD;YACD,IAAI,EAAE,+BAA+B;SACtC,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAA;QACjE,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACzD,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAAe;QAC3C,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC/D,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,uBAAuB,OAAO,EAAE,EAAE;YAChE,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,WAAW,EAAE;gBACtC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAA;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAEO,iBAAiB,CAAC,KAAiD,EAAE,MAAc;QACzF,MAAM,GAAG,GAAG,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,CAAA;QACnD,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;QAC3B,CAAC;QACD,OAAO,MAAM,MAAM,IAAI,iBAAiB,EAAE,EAAE,CAAA;IAC9C,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,KAAyC;QAC1E,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;QACvC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC7D,MAAM,YAAY,GAAG,IAAA,kCAAqB,EACxC,IAAI,CAAC,aAAa,IAAI,gBAAgB,IAAI,KAAK,CAChD,CAAA;QACD,IAAA,0CAA6B,EAAC;YAC5B,YAAY;YACZ,sBAAsB,EAAE,gBAAgB;SACzC,CAAC,CAAA;QACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAA;IACvC,CAAC;IAEO,gBAAgB,CAAC,MAAe;QACtC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1D,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,sBAAsB,CAAC,MAAe;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5D,OAAO,YAAY,CAAA;QACrB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1D,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,cAAc,CAAC,KAAc;QACnC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,cAAc,GAAG,KAAoC,CAAA;YAC3D,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAA;YAClC,OAAO;gBACL,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EACH,KAAK,YAAY,KAAK;oBACpB,CAAC,CAAC;wBACE,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB;oBACH,CAAC,CAAC,KAAK;aACZ,CAAA;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;SACvB,CAAA;IACH,CAAC;IAEO,cAAc,CAAC,MAAe;QACpC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YAC9B,OAAO,YAAY,CAAA;QACrB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACjD,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACvE,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAkC;QAC/E,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC1C,MAAM,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YAClD,MAAM,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YAClD,MAAM,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,UAAkB;QAC5C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC1C,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,QAAkC;QACpF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC1C,MAAM,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,KAA+B;QAE/B,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAA;QAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,iBAAiB,EAAE,EAAE,CAAA;QAExF,OAAO;YACL,EAAE,EAAE,UAAU;YACd,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,IAAI,IAAI;gBAC7C,WAAW,EAAE,UAAU,IAAI,IAAI;aAChC;SACF,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CACnB,KAA2B;QAE3B,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAA;YAC7D,MAAM,YAAY,GAAG,IAAA,kCAAqB,EACxC,KAAK,CAAC,aAAa,IAAI,gBAAgB,IAAI,KAAK,CACjD,CAAA;YACD,IAAA,0CAA6B,EAAC;gBAC5B,YAAY;gBACZ,sBAAsB,EAAE,gBAAgB;aACzC,CAAC,CAAA;YAEF,MAAM,UAAU,GAAI,KAAK,CAAC,IAAwC,EAAE,WAAW,CAAA;YAE/E,OAAO;gBACL,EAAE,EAAE,iBAAiB,EAAE;gBACvB,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,aAAa,EAAE,YAAY;iBAC5B;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE;gBAC1C,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBACjC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,WAAW,EAAG,KAAK,CAAC,IAAwC,EAAE,WAAW;gBACzE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;aACzB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAyB;QAC3C,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC7D,MAAM,YAAY,GAAG,IAAA,kCAAqB,EACxC,KAAK,CAAC,aAAa,IAAI,gBAAgB,IAAI,KAAK,CACjD,CAAA;QACD,IAAA,0CAA6B,EAAC;YAC5B,YAAY;YACZ,sBAAsB,EAAE,gBAAgB;SACzC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAI,KAAK,CAAC,IAAwC,EAAE,WAAW,CAAA;QAE/E,OAAO;YACL,IAAI,EAAE;gBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,aAAa,EAAE,YAAY;aAC5B;SACF,CAAA;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,KAA4B;QAE5B,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;QAC7E,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;QAC5D,IAAI,OAAO,GAAkB,IAAI,CAAA;QACjC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;QAC3D,MAAM,gBAAgB,GACpB,OAAO,kBAAkB,CAAC,aAAa,KAAK,QAAQ;YAClD,CAAC,CAAC,kBAAkB,CAAC,aAAa;YAClC,CAAC,CAAC,SAAS,CAAA;QACf,MAAM,WAAW,GAAG,gBAAgB,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;QAE9E,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC/D,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;YACjE,IAAI,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;YACpE,IAAI,KAAK,GAA+B,IAAI,CAAA;YAC5C,IAAI,aAAa,GAAQ,IAAI,CAAA;YAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,IAAA,+BAAqB,EAAC,MAAM,EAAE,YAAY,IAAI,KAAK,CAAC,CAAA;gBAElE,MAAM,YAAY,GAAG;oBACnB,MAAM,EAAE,WAAW;oBACnB,cAAc,EAAE;wBACd;4BACE,YAAY,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,qBAAqB,IAAI,SAAS;4BACrE,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,qBAAqB,IAAI,SAAS;4BACrF,MAAM,EAAE;gCACN,aAAa,EAAE,YAAY,IAAI,KAAK;gCACpC,KAAK;6BACN;yBACF;qBACF;oBACD,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,qBAAqB,IAAI,SAAS;iBACtF,CAAA;gBAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,qBAAqB,EAAE;oBACvD,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,WAAW,EAAE;wBACtC,cAAc,EAAE,kBAAkB;wBAClC,mBAAmB,EAAE,SAAS;qBAC/B;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;iBACnC,CAAC,CAAA;gBAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;gBAClC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;gBAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CACb,8BAA8B,MAAM,CAAC,MAAM,MAAM,MAAM,GACrD,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;gBACH,CAAC;gBAED,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAwB,CAAA;gBACjD,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YAClC,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAA+B,CAAA;YAC7E,CAAC;YAED,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;YAC9E,CAAC;YAED,MAAM,qBAAqB,GACzB,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;YAEnE,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,aAAa,GAAG,KAAK,CAAA;YACvB,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,GAAG,MAAM,KAAK,CAC/B,GAAG,IAAI,uBAAuB,OAAO,YAAY,EACjD;oBACE,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,WAAW,EAAE;wBACtC,cAAc,EAAE,kBAAkB;wBAClC,mBAAmB,EAAE,GAAG,SAAS,OAAO;qBACzC;iBACF,CACF,CAAA;gBAED,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;gBAChD,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;gBACrE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,iCAAiC,aAAa,CAAC,MAAM,MAAM,aAAa,GACtE,gBAAgB,CAAC,CAAC,CAAC,aAAa,gBAAgB,EAAE,CAAC,CAAC,CAAC,EACvD,EAAE,CACH,CAAA;gBACH,CAAC;gBAED,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;YAC3C,CAAC;YAED,MAAM,eAAe,GACnB,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;gBACrE,qBAAqB,EAAE,EAAE,CAAA;YAE3B,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;gBAC1C,QAAQ,EAAE,OAAO;gBACjB,gBAAgB,EAAE,eAAe;gBACjC,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACzC,QAAQ,EAAE,OAAO;gBACjB,gBAAgB,EAAE,eAAe;gBACjC,MAAM;gBACN,aAAa,EAAE,YAAY;gBAC3B,UAAU,EAAE,SAAS;aACtB,CAAC,CAAA;YAEF,OAAO;gBACL,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,QAAQ,EAAE,OAAO;wBACjB,KAAK,EAAE,KAAK,IAAI,aAAa;wBAC7B,gBAAgB,EAAE,eAAe;wBACjC,cAAc,EACZ,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,IAAI,EAAE;qBACrE;oBACD,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACxC;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE;gBAC3C,UAAU,EAAE,SAAS;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK,EAAE,OAAO;aACxB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAA2B;QAE3B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAA;QAC5C,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACjD,MAAM,OAAO,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,aAAa,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;QAE/E,OAAO;YACL,IAAI,EAAE;gBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,EAAE;oBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;oBACzD,KAAK;oBACL,gBAAgB,EAAE,aAAa,EAAE,EAAE,IAAI,UAAU,CAAC,gBAAgB;oBAClE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,UAAU,CAAC,UAAU;iBACjD;aACF;SACF,CAAA;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,KAA4B;QAE5B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAA;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;YACjD,MAAM,OAAO,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;YACnE,MAAM,aAAa,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;YAC/E,MAAM,YAAY,GAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC;gBACtC,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,MAAM,CAAC;gBAClD,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC;gBAClC,SAAS,CAAA;YAEX,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;YAC1C,OAAO;gBACL,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,KAAK;wBACL,gBAAgB,EAAE,aAAa,EAAE,EAAE,IAAI,UAAU,CAAC,gBAAgB;wBAClE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,UAAU,CAAC,UAAU;qBACjD;iBACF;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE;gBACxC,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK,EAAE,OAAO;aACxB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,KAA0B;QAE1B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAClE,IAAI,eAAe,GAAG,MAAM,CAC1B,UAAU,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAC3D,CAAA;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACnE,CAAC;QAED,IAAI,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YAChD,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,UAAU,EAAE,UAAU,CAAC,UAAU;wBACjC,OAAO,EAAE,UAAU,CAAC,OAAO;qBAC5B;oBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC;aACF,CAAA;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,OAAO,EAAE,CAAC,CAAA;QACrE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;QACvE,IAAI,OAAO,GAAkB,IAAI,CAAA;QAEjC,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC/D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YACnE,MAAM,eAAe,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3E,IAAI,eAAe,EAAE,EAAE,EAAE,CAAC;gBACxB,OAAO;oBACL,IAAI,EAAE;wBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;wBACrB,MAAM,EAAE;4BACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;4BACzD,UAAU,EAAE,eAAe,CAAC,EAAE;4BAC9B,OAAO,EAAE,eAAe;yBACzB;wBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC;iBACF,CAAA;YACH,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,CAC3B,KAAK,EAAE,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAC/D,CAAC,WAAW,EAAE,CAAA;YACf,IAAI,CAAC,eAAe,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;gBACvD,MAAM,aAAa,GAAG,MAAM,KAAK,CAC/B,GAAG,IAAI,uBAAuB,OAAO,YAAY,EACjD;oBACE,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,WAAW,EAAE;wBACtC,cAAc,EAAE,kBAAkB;wBAClC,mBAAmB,EAAE,GAAG,SAAS,OAAO;qBACzC;iBACF,CACF,CAAA;gBACD,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;gBAChD,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;gBACtD,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,iCAAiC,aAAa,CAAC,MAAM,MAAM,aAAa,GACtE,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;gBACH,CAAC;gBACD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;gBAC/C,eAAe;oBACb,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;YACzE,CAAC;YAED,MAAM,cAAc,GAClB,UAAU,CAAC,gBAAgB;gBAC3B,IAAI,CAAC,gBAAgB;gBACrB,IAAI,CAAC,aAAa;gBAClB,SAAS,CAAA;YACX,MAAM,cAAc,GAClB,MAAM,GAAG,CAAC;gBACR,CAAC,CAAC;oBACE,MAAM,EAAE;wBACN,aAAa,EAAE,YAAY,IAAI,KAAK;wBACpC,KAAK,EAAE,IAAA,+BAAqB,EAAC,MAAM,EAAE,YAAY,IAAI,KAAK,CAAC;qBAC5D;oBACD,GAAG,CAAC,OAAO,cAAc,KAAK,SAAS;wBACrC,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,EAAE;wBACtC,CAAC,CAAC,EAAE,CAAC;iBACR;gBACH,CAAC,CAAC;oBACE,GAAG,CAAC,OAAO,cAAc,KAAK,SAAS;wBACrC,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,EAAE;wBACtC,CAAC,CAAC,EAAE,CAAC;iBACR,CAAA;YAEP,MAAM,UAAU,GAAG,eAAe;gBAChC,CAAC,CAAC,GAAG,IAAI,+BAA+B,eAAe,UAAU;gBACjE,CAAC,CAAC,GAAG,IAAI,uBAAuB,OAAO,UAAU,CAAA;YAEnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,WAAW,EAAE;oBACtC,cAAc,EAAE,kBAAkB;oBAClC,mBAAmB,EAAE,SAAS;iBAC/B;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;aACrC,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAClC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;YAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,yBAAyB,MAAM,CAAC,MAAM,MAAM,MAAM,GAChD,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;YACH,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAClC,MAAM,SAAS,GACb,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;YAC1E,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACzD,CAAC,CAAC,UAAU,CAAC,QAAQ;gBACrB,CAAC,CAAC,EAAE,CAAA;YACN,MAAM,YAAY,GAAG;gBACnB,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,GAAG,EAAE,OAAO;aACb,CAAA;YAED,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBACxC,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,SAAS;gBACrB,gBAAgB,EAAE,eAAe,IAAI,SAAS;gBAC9C,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;aAChD,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAA;YAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE;gBACvC,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,SAAS;gBACrB,gBAAgB,EAAE,eAAe,IAAI,SAAS;gBAC9C,MAAM;gBACN,aAAa,EAAE,YAAY;gBAC3B,UAAU,EAAE,SAAS;aACtB,CAAC,CAAA;YAEF,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,QAAQ,EAAE,OAAO;wBACjB,UAAU,EAAE,SAAS;wBACrB,OAAO;wBACP,gBAAgB,EAAE,eAAe,IAAI,UAAU,CAAC,gBAAgB;wBAChE,QAAQ,EAAE,CAAC,GAAG,gBAAgB,EAAE,YAAY,CAAC;qBAC9C;oBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE;gBACzC,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK,EAAE,OAAO;aACxB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAyB;QAEzB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;QAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;QACxE,MAAM,YAAY,GAAG,MAAM,CACzB,UAAU,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CACpE,CAAC,IAAI,EAAE,CAAA;QACR,MAAM,gBAAgB,GAAG,MAAM,CAC7B,UAAU,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,CACnF,CAAC,IAAI,EAAE,CAAA;QACR,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC;aACF,CAAA;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,SAAS,EAAE,CAAC,CAAA;QACtE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;QACvE,IAAI,OAAO,GAAkB,IAAI,CAAA;QAEjC,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC/D,MAAM,aAAa,GACjB,MAAM,GAAG,CAAC;gBACR,CAAC,CAAC;oBACE,MAAM,EAAE;wBACN,aAAa,EAAE,YAAY,IAAI,KAAK;wBACpC,KAAK,EAAE,IAAA,+BAAqB,EAAC,MAAM,EAAE,YAAY,IAAI,KAAK,CAAC;qBAC5D;iBACF;gBACH,CAAC,CAAC,EAAE,CAAA;YAER,IAAI,YAAY,EAAE,CAAC;gBACjB,aAAa,CAAC,aAAa,GAAG,YAAY,CAAA;YAC5C,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,yBAAyB,SAAS,SAAS,EAAE;gBAC7E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,WAAW,EAAE;oBACtC,cAAc,EAAE,kBAAkB;oBAClC,mBAAmB,EAAE,SAAS;iBAC/B;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;aACpC,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAClC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;YAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,MAAM,MAAM,MAAM,GAC/C,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;YACH,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACjC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;YACnF,MAAM,WAAW,GAAG;gBAClB,EAAE,EAAE,MAAM,EAAE,EAAE;gBACd,MAAM,EAAE,MAAM,EAAE,MAAM;gBACtB,MAAM,EAAE,MAAM,EAAE,MAAM;gBACtB,MAAM,EAAE,YAAY,IAAI,MAAM,EAAE,aAAa;gBAC7C,WAAW,EAAE,gBAAgB,IAAI,MAAM,EAAE,WAAW;gBACpD,GAAG,EAAE,MAAM;aACZ,CAAA;YAED,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBACvC,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,MAAM,EAAE,EAAE;gBACrB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;aAChD,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;YAC1C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;gBACtC,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,MAAM,EAAE,EAAE;gBACrB,MAAM;gBACN,aAAa,EAAE,YAAY;gBAC3B,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE,YAAY;gBACpB,WAAW,EAAE,gBAAgB;aAC9B,CAAC,CAAA;YAEF,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,SAAS,EAAE,MAAM,EAAE,EAAE;wBACrB,aAAa,EAAE,MAAM,EAAE,MAAM;wBAC7B,aAAa,EAAE,YAAY,IAAI,MAAM,EAAE,aAAa;wBACpD,kBAAkB,EAAE,gBAAgB,IAAI,MAAM,EAAE,WAAW;wBAC3D,OAAO,EAAE,CAAC,GAAG,eAAe,EAAE,WAAW,CAAC;wBAC1C,MAAM;qBACP;oBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE;gBACxC,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK,EAAE,OAAO;aACxB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAyB;QAEzB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAwB,CAAA;QACtD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAClE,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;QACxE,MAAM,qBAAqB,GAAG,MAAM,CAClC,UAAU,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAC3D,CAAA;QACD,IAAI,OAAO,GAAkB,IAAI,CAAA;QAEjC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAClE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;YACxD,MAAM,eAAe,GACnB,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7D,qBAAqB,CAAA;YAEvB,IAAI,MAAM,KAAK,WAAW,IAAI,eAAe,EAAE,CAAC;gBAC9C,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;gBAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,eAAe,EAAE,CAAC,CAAA;gBAE1E,MAAM,IAAI,GAAG,MAAM,KAAK,CACtB,GAAG,IAAI,+BAA+B,eAAe,OAAO,EAC5D;oBACE,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,WAAW,EAAE;wBACtC,cAAc,EAAE,kBAAkB;wBAClC,mBAAmB,EAAE,SAAS;qBAC/B;iBACF,CACF,CAAA;gBAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;oBAC9B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;oBAC7C,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAC,MAAM,MAAM,IAAI,GACzC,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;gBACH,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBACrC,QAAQ,EAAE,OAAO;oBACjB,gBAAgB,EAAE,eAAe;oBACjC,UAAU,EAAE,SAAS;oBACrB,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;iBAC9C,CAAC,CAAA;gBACF,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;gBACxC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;oBACpC,QAAQ,EAAE,OAAO;oBACjB,gBAAgB,EAAE,eAAe;oBACjC,UAAU,EAAE,SAAS;iBACtB,CAAC,CAAA;YACJ,CAAC;iBAAM,IAAI,SAAS,EAAE,CAAC;gBACrB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;gBAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,SAAS,EAAE,CAAC,CAAA;gBAEtE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,yBAAyB,SAAS,SAAS,EAAE;oBAC3E,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,WAAW,EAAE;wBACtC,cAAc,EAAE,kBAAkB;wBAClC,mBAAmB,EAAE,SAAS;qBAC/B;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;iBACzB,CAAC,CAAA;gBAEF,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;oBAC9B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;oBAC7C,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,CAAC,MAAM,MAAM,IAAI,GAC3C,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EACrC,EAAE,CACH,CAAA;gBACH,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBAClD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;gBACnF,MAAM,WAAW,GAAG;oBAClB,EAAE,EAAE,MAAM,EAAE,EAAE;oBACd,MAAM,EAAE,MAAM,EAAE,MAAM;oBACtB,MAAM,EAAE,MAAM,EAAE,MAAM;oBACtB,GAAG,EAAE,MAAM;iBACZ,CAAA;gBACD,UAAU,CAAC,SAAS,GAAG,MAAM,EAAE,EAAE,CAAA;gBACjC,UAAU,CAAC,aAAa,GAAG,MAAM,EAAE,MAAM,CAAA;gBACzC,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,eAAe,EAAE,WAAW,CAAC,CAAA;gBAEtD,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE;oBACvC,QAAQ,EAAE,OAAO;oBACjB,UAAU,EAAE,SAAS;oBACrB,SAAS,EAAE,MAAM,EAAE,EAAE;oBACrB,UAAU,EAAE,SAAS;oBACrB,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;iBAC9C,CAAC,CAAA;gBACF,MAAM,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAA;gBACjD,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE;oBAC7C,QAAQ,EAAE,OAAO;oBACjB,UAAU,EAAE,SAAS;oBACrB,SAAS,EAAE,MAAM,EAAE,EAAE;oBACrB,UAAU,EAAE,SAAS;iBACtB,CAAC,CAAA;YACJ,CAAC;YAED,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,EAAE;wBACN,GAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAkC;wBACzD,KAAK,EAAE,KAAK,IAAI,SAAS;wBACzB,gBAAgB,EAAE,eAAe,IAAI,qBAAqB;wBAC1D,UAAU,EAAE,SAAS,IAAI,UAAU,CAAC,UAAU;wBAC9C,SAAS,EAAE,UAAU,CAAC,SAAS;wBAC/B,aAAa,EAAE,UAAU,CAAC,aAAa;wBACvC,OAAO,EAAE,UAAU,CAAC,OAAO;qBAC5B;oBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE;gBACxC,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK,EAAE,OAAO;aACxB,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAA0B;QAE1B,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CAC3B,OAA0C;QAE1C,OAAO,IAAA,6CAA6B,EAAC,OAAO,CAAC,CAAA;IAC/C,CAAC;;AAIM,sDAAqB;AAD9B,kBAAe,qBAAqB,CAAA"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easypayment/medusa-paypal",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Industry-standard PayPal integration for Medusa v2",
5
5
  "license": "MIT",
6
6
  "main": "./.medusa/server/src/index.js",
@@ -6,6 +6,13 @@ type CreatePaymentSessionBody = {
6
6
  data?: Record<string, unknown>
7
7
  }
8
8
 
9
+ const defaultPaymentCollectionFields = [
10
+ "id",
11
+ "currency_code",
12
+ "amount",
13
+ "*payment_sessions",
14
+ ]
15
+
9
16
  export async function POST(req: MedusaStoreRequest, res: MedusaResponse) {
10
17
  const collectionId = req.params.id
11
18
  const { provider_id, data } = req.body as CreatePaymentSessionBody
@@ -23,7 +30,7 @@ export async function POST(req: MedusaStoreRequest, res: MedusaResponse) {
23
30
  entity: "payment_collection",
24
31
  idOrFilter: collectionId,
25
32
  scope: req.scope,
26
- fields: req.queryConfig.fields,
33
+ fields: req.queryConfig?.fields ?? defaultPaymentCollectionFields,
27
34
  })
28
35
 
29
36
  res.status(200).json({
@@ -57,11 +57,22 @@ class PayPalPaymentProvider extends AbstractPaymentProvider<Options> {
57
57
  const container = this.container as {
58
58
  resolve<T>(key: string): T
59
59
  }
60
- return container.resolve<PayPalModuleService>("paypal_onboarding")
60
+ try {
61
+ return container.resolve<PayPalModuleService>("paypal_onboarding")
62
+ } catch {
63
+ return null
64
+ }
61
65
  }
62
66
 
63
67
  private async resolveSettings() {
64
68
  const paypal = this.resolvePayPalService()
69
+ if (!paypal) {
70
+ return {
71
+ additionalSettings: {},
72
+ apiDetails: {},
73
+ }
74
+ }
75
+
65
76
  const settings = await paypal.getSettings().catch(() => ({}))
66
77
  const data =
67
78
  settings && typeof settings === "object" && "data" in settings
@@ -83,6 +94,11 @@ class PayPalPaymentProvider extends AbstractPaymentProvider<Options> {
83
94
 
84
95
  private async getPayPalAccessToken() {
85
96
  const paypal = this.resolvePayPalService()
97
+ if (!paypal) {
98
+ throw new Error(
99
+ "PayPal module service is unavailable. Ensure the PayPal module is registered in Medusa config."
100
+ )
101
+ }
86
102
  const creds = await paypal.getActiveCredentials()
87
103
  const base =
88
104
  creds.environment === "live"
@@ -248,8 +264,12 @@ class PayPalPaymentProvider extends AbstractPaymentProvider<Options> {
248
264
  }
249
265
 
250
266
  private async recordFailure(eventType: string, metadata?: Record<string, unknown>) {
267
+ const paypal = this.resolvePayPalService()
268
+ if (!paypal) {
269
+ return
270
+ }
271
+
251
272
  try {
252
- const paypal = this.resolvePayPalService()
253
273
  await paypal.recordPaymentLog(eventType, metadata)
254
274
  await paypal.recordAuditEvent(eventType, metadata)
255
275
  await paypal.recordMetric(eventType)
@@ -259,8 +279,12 @@ class PayPalPaymentProvider extends AbstractPaymentProvider<Options> {
259
279
  }
260
280
 
261
281
  private async recordSuccess(metricName: string) {
282
+ const paypal = this.resolvePayPalService()
283
+ if (!paypal) {
284
+ return
285
+ }
286
+
262
287
  try {
263
- const paypal = this.resolvePayPalService()
264
288
  await paypal.recordMetric(metricName)
265
289
  } catch {
266
290
  // ignore metrics failures
@@ -268,8 +292,12 @@ class PayPalPaymentProvider extends AbstractPaymentProvider<Options> {
268
292
  }
269
293
 
270
294
  private async recordPaymentEvent(eventType: string, metadata?: Record<string, unknown>) {
295
+ const paypal = this.resolvePayPalService()
296
+ if (!paypal) {
297
+ return
298
+ }
299
+
271
300
  try {
272
- const paypal = this.resolvePayPalService()
273
301
  await paypal.recordPaymentLog(eventType, metadata)
274
302
  } catch {
275
303
  // ignore payment logging failures