@easypayment/medusa-payment-paypal 0.9.9 → 0.9.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -224,92 +224,11 @@ function AdditionalSettingsTab() {
224
224
  )
225
225
  ] }) });
226
226
  }
227
- function PayPalApplePayPage() {
227
+ function PayPalGooglePayPage() {
228
228
  return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
229
229
  }
230
- const DEFAULT_FORM = {
231
- enabled: true,
232
- title: "Credit or Debit Card",
233
- threeDS: "when_required"
234
- };
235
- function mergeWithDefaults(saved) {
236
- if (!saved) return { ...DEFAULT_FORM };
237
- const entries = Object.entries(saved).filter(([, value]) => value !== void 0);
238
- return { ...DEFAULT_FORM, ...Object.fromEntries(entries) };
239
- }
240
- const THREE_DS_OPTIONS = [
241
- { value: "when_required", label: "3D Secure when required", hint: "Triggers 3DS only when the card / issuer requires it." },
242
- { value: "sli", label: "3D Secure (SCA) / liability shift (recommended)", hint: "Attempts to optimize for liability shift while remaining compliant." },
243
- { value: "always", label: "Always request 3D Secure", hint: "Forces 3DS challenge whenever possible (may reduce conversion)." }
244
- ];
245
- function AdvancedCardPaymentsTab() {
246
- var _a, _b;
247
- const [form, setForm] = react.useState(() => ({ ...DEFAULT_FORM }));
248
- const [loading, setLoading] = react.useState(false);
249
- const [saving, setSaving] = react.useState(false);
250
- const [toast, setToast] = react.useState(null);
251
- const didInit = react.useRef(false);
252
- const dismissToast = react.useCallback(() => setToast(null), []);
253
- react.useEffect(() => {
254
- if (didInit.current) return;
255
- didInit.current = true;
256
- (async () => {
257
- try {
258
- setLoading(true);
259
- const json = await adminFetch("/admin/paypal/settings");
260
- const payload = (json == null ? void 0 : json.data) ?? json;
261
- const saved = payload == null ? void 0 : payload.advanced_card_payments;
262
- if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
263
- } catch {
264
- } finally {
265
- setLoading(false);
266
- }
267
- })();
268
- }, []);
269
- async function onSave() {
270
- try {
271
- setSaving(true);
272
- const json = await adminFetch("/admin/paypal/settings", {
273
- method: "POST",
274
- body: { advanced_card_payments: form }
275
- });
276
- const payload = (json == null ? void 0 : json.data) ?? json;
277
- const saved = payload == null ? void 0 : payload.advanced_card_payments;
278
- if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
279
- setToast({ kind: "success", message: "Settings saved" });
280
- } catch (e) {
281
- setToast({ kind: "error", message: (e instanceof Error ? e.message : "") || "Failed to save settings." });
282
- } finally {
283
- setSaving(false);
284
- }
285
- }
286
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
287
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Gateway By Easy Payment" }) }) }),
288
- /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
289
- /* @__PURE__ */ jsxRuntime.jsx(Toast, { toast, onClose: dismissToast }),
290
- /* @__PURE__ */ jsxRuntime.jsx(
291
- SectionCard,
292
- {
293
- title: "Advanced Card Payments",
294
- description: "Control card checkout settings and 3D Secure behavior.",
295
- right: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
296
- /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: onSave, disabled: saving || loading, className: "transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md outline-none shadow-buttons-neutral text-ui-fg-base bg-ui-button-neutral after:transition-fg after:absolute after:inset-0 after:content-[''] after:button-neutral-gradient hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient focus-visible:shadow-buttons-neutral-focus disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:shadow-buttons-neutral disabled:after:hidden txt-compact-small-plus px-3 py-1.5", children: saving ? "Saving..." : "Save settings" }),
297
- loading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-ui-fg-subtle", children: "Loading…" }) : null
298
- ] }),
299
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "divide-y divide-ui-border-base", children: [
300
- /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Enable/Disable", children: /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "inline-flex items-center gap-2", children: [
301
- /* @__PURE__ */ jsxRuntime.jsx("input", { type: "checkbox", checked: form.enabled, onChange: (e) => setForm((p) => ({ ...p, enabled: e.target.checked })), className: "h-4 w-4 rounded border-ui-border-base" }),
302
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-ui-fg-base", children: "Enable Advanced Credit/Debit Card" })
303
- ] }) }),
304
- /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Title", htmlFor: "acp-title", children: /* @__PURE__ */ jsxRuntime.jsx("input", { id: "acp-title", value: form.title, onChange: (e) => setForm((p) => ({ ...p, title: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", placeholder: "Credit or Debit Card" }) }),
305
- /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Contingency for 3D Secure", hint: "Choose when 3D Secure should be triggered during card payments.", htmlFor: "acp-threeds", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
306
- /* @__PURE__ */ jsxRuntime.jsx("select", { id: "acp-threeds", value: form.threeDS, onChange: (e) => setForm((p) => ({ ...p, threeDS: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", children: THREE_DS_OPTIONS.map((o) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: o.value, children: o.label }, o.value)) }),
307
- ((_a = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _a.hint) ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-ui-fg-subtle", children: (_b = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _b.hint }) : null
308
- ] }) })
309
- ] })
310
- }
311
- )
312
- ] }) });
230
+ function PayPalApplePayPage() {
231
+ return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
313
232
  }
314
233
  const config = adminSdk.defineRouteConfig({
315
234
  label: "PayPal Connection"
@@ -895,8 +814,89 @@ function PayPalConnectionPage() {
895
814
  ` })
896
815
  ] });
897
816
  }
898
- function PayPalGooglePayPage() {
899
- return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
817
+ const DEFAULT_FORM = {
818
+ enabled: true,
819
+ title: "Credit or Debit Card",
820
+ threeDS: "when_required"
821
+ };
822
+ function mergeWithDefaults(saved) {
823
+ if (!saved) return { ...DEFAULT_FORM };
824
+ const entries = Object.entries(saved).filter(([, value]) => value !== void 0);
825
+ return { ...DEFAULT_FORM, ...Object.fromEntries(entries) };
826
+ }
827
+ const THREE_DS_OPTIONS = [
828
+ { value: "when_required", label: "3D Secure when required", hint: "Triggers 3DS only when the card / issuer requires it." },
829
+ { value: "sli", label: "3D Secure (SCA) / liability shift (recommended)", hint: "Attempts to optimize for liability shift while remaining compliant." },
830
+ { value: "always", label: "Always request 3D Secure", hint: "Forces 3DS challenge whenever possible (may reduce conversion)." }
831
+ ];
832
+ function AdvancedCardPaymentsTab() {
833
+ var _a, _b;
834
+ const [form, setForm] = react.useState(() => ({ ...DEFAULT_FORM }));
835
+ const [loading, setLoading] = react.useState(false);
836
+ const [saving, setSaving] = react.useState(false);
837
+ const [toast, setToast] = react.useState(null);
838
+ const didInit = react.useRef(false);
839
+ const dismissToast = react.useCallback(() => setToast(null), []);
840
+ react.useEffect(() => {
841
+ if (didInit.current) return;
842
+ didInit.current = true;
843
+ (async () => {
844
+ try {
845
+ setLoading(true);
846
+ const json = await adminFetch("/admin/paypal/settings");
847
+ const payload = (json == null ? void 0 : json.data) ?? json;
848
+ const saved = payload == null ? void 0 : payload.advanced_card_payments;
849
+ if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
850
+ } catch {
851
+ } finally {
852
+ setLoading(false);
853
+ }
854
+ })();
855
+ }, []);
856
+ async function onSave() {
857
+ try {
858
+ setSaving(true);
859
+ const json = await adminFetch("/admin/paypal/settings", {
860
+ method: "POST",
861
+ body: { advanced_card_payments: form }
862
+ });
863
+ const payload = (json == null ? void 0 : json.data) ?? json;
864
+ const saved = payload == null ? void 0 : payload.advanced_card_payments;
865
+ if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
866
+ setToast({ kind: "success", message: "Settings saved" });
867
+ } catch (e) {
868
+ setToast({ kind: "error", message: (e instanceof Error ? e.message : "") || "Failed to save settings." });
869
+ } finally {
870
+ setSaving(false);
871
+ }
872
+ }
873
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
874
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Gateway By Easy Payment" }) }) }),
875
+ /* @__PURE__ */ jsxRuntime.jsx(PayPalTabs, {}),
876
+ /* @__PURE__ */ jsxRuntime.jsx(Toast, { toast, onClose: dismissToast }),
877
+ /* @__PURE__ */ jsxRuntime.jsx(
878
+ SectionCard,
879
+ {
880
+ title: "Advanced Card Payments",
881
+ description: "Control card checkout settings and 3D Secure behavior.",
882
+ right: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
883
+ /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: onSave, disabled: saving || loading, className: "transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md outline-none shadow-buttons-neutral text-ui-fg-base bg-ui-button-neutral after:transition-fg after:absolute after:inset-0 after:content-[''] after:button-neutral-gradient hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient focus-visible:shadow-buttons-neutral-focus disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:shadow-buttons-neutral disabled:after:hidden txt-compact-small-plus px-3 py-1.5", children: saving ? "Saving..." : "Save settings" }),
884
+ loading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-ui-fg-subtle", children: "Loading…" }) : null
885
+ ] }),
886
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "divide-y divide-ui-border-base", children: [
887
+ /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Enable/Disable", children: /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "inline-flex items-center gap-2", children: [
888
+ /* @__PURE__ */ jsxRuntime.jsx("input", { type: "checkbox", checked: form.enabled, onChange: (e) => setForm((p) => ({ ...p, enabled: e.target.checked })), className: "h-4 w-4 rounded border-ui-border-base" }),
889
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-ui-fg-base", children: "Enable Advanced Credit/Debit Card" })
890
+ ] }) }),
891
+ /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Title", htmlFor: "acp-title", children: /* @__PURE__ */ jsxRuntime.jsx("input", { id: "acp-title", value: form.title, onChange: (e) => setForm((p) => ({ ...p, title: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", placeholder: "Credit or Debit Card" }) }),
892
+ /* @__PURE__ */ jsxRuntime.jsx(FieldRow, { label: "Contingency for 3D Secure", hint: "Choose when 3D Secure should be triggered during card payments.", htmlFor: "acp-threeds", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
893
+ /* @__PURE__ */ jsxRuntime.jsx("select", { id: "acp-threeds", value: form.threeDS, onChange: (e) => setForm((p) => ({ ...p, threeDS: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", children: THREE_DS_OPTIONS.map((o) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: o.value, children: o.label }, o.value)) }),
894
+ ((_a = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _a.hint) ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-ui-fg-subtle", children: (_b = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _b.hint }) : null
895
+ ] }) })
896
+ ] })
897
+ }
898
+ )
899
+ ] }) });
900
900
  }
901
901
  function PayPalPayLaterMessagingPage() {
902
902
  return /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Navigate, { to: "/settings/paypal/connection", replace: true });
@@ -1120,20 +1120,20 @@ const routeModule = {
1120
1120
  path: "/settings/paypal/additional-settings"
1121
1121
  },
1122
1122
  {
1123
- Component: PayPalApplePayPage,
1124
- path: "/settings/paypal/apple-pay"
1123
+ Component: PayPalGooglePayPage,
1124
+ path: "/settings/paypal/google-pay"
1125
1125
  },
1126
1126
  {
1127
- Component: AdvancedCardPaymentsTab,
1128
- path: "/settings/paypal/advanced-card-payments"
1127
+ Component: PayPalApplePayPage,
1128
+ path: "/settings/paypal/apple-pay"
1129
1129
  },
1130
1130
  {
1131
1131
  Component: PayPalConnectionPage,
1132
1132
  path: "/settings/paypal/connection"
1133
1133
  },
1134
1134
  {
1135
- Component: PayPalGooglePayPage,
1136
- path: "/settings/paypal/google-pay"
1135
+ Component: AdvancedCardPaymentsTab,
1136
+ path: "/settings/paypal/advanced-card-payments"
1137
1137
  },
1138
1138
  {
1139
1139
  Component: PayPalPayLaterMessagingPage,
@@ -223,92 +223,11 @@ function AdditionalSettingsTab() {
223
223
  )
224
224
  ] }) });
225
225
  }
226
- function PayPalApplePayPage() {
226
+ function PayPalGooglePayPage() {
227
227
  return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
228
228
  }
229
- const DEFAULT_FORM = {
230
- enabled: true,
231
- title: "Credit or Debit Card",
232
- threeDS: "when_required"
233
- };
234
- function mergeWithDefaults(saved) {
235
- if (!saved) return { ...DEFAULT_FORM };
236
- const entries = Object.entries(saved).filter(([, value]) => value !== void 0);
237
- return { ...DEFAULT_FORM, ...Object.fromEntries(entries) };
238
- }
239
- const THREE_DS_OPTIONS = [
240
- { value: "when_required", label: "3D Secure when required", hint: "Triggers 3DS only when the card / issuer requires it." },
241
- { value: "sli", label: "3D Secure (SCA) / liability shift (recommended)", hint: "Attempts to optimize for liability shift while remaining compliant." },
242
- { value: "always", label: "Always request 3D Secure", hint: "Forces 3DS challenge whenever possible (may reduce conversion)." }
243
- ];
244
- function AdvancedCardPaymentsTab() {
245
- var _a, _b;
246
- const [form, setForm] = useState(() => ({ ...DEFAULT_FORM }));
247
- const [loading, setLoading] = useState(false);
248
- const [saving, setSaving] = useState(false);
249
- const [toast, setToast] = useState(null);
250
- const didInit = useRef(false);
251
- const dismissToast = useCallback(() => setToast(null), []);
252
- useEffect(() => {
253
- if (didInit.current) return;
254
- didInit.current = true;
255
- (async () => {
256
- try {
257
- setLoading(true);
258
- const json = await adminFetch("/admin/paypal/settings");
259
- const payload = (json == null ? void 0 : json.data) ?? json;
260
- const saved = payload == null ? void 0 : payload.advanced_card_payments;
261
- if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
262
- } catch {
263
- } finally {
264
- setLoading(false);
265
- }
266
- })();
267
- }, []);
268
- async function onSave() {
269
- try {
270
- setSaving(true);
271
- const json = await adminFetch("/admin/paypal/settings", {
272
- method: "POST",
273
- body: { advanced_card_payments: form }
274
- });
275
- const payload = (json == null ? void 0 : json.data) ?? json;
276
- const saved = payload == null ? void 0 : payload.advanced_card_payments;
277
- if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
278
- setToast({ kind: "success", message: "Settings saved" });
279
- } catch (e) {
280
- setToast({ kind: "error", message: (e instanceof Error ? e.message : "") || "Failed to save settings." });
281
- } finally {
282
- setSaving(false);
283
- }
284
- }
285
- return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
286
- /* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-4", children: /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Gateway By Easy Payment" }) }) }),
287
- /* @__PURE__ */ jsx(PayPalTabs, {}),
288
- /* @__PURE__ */ jsx(Toast, { toast, onClose: dismissToast }),
289
- /* @__PURE__ */ jsx(
290
- SectionCard,
291
- {
292
- title: "Advanced Card Payments",
293
- description: "Control card checkout settings and 3D Secure behavior.",
294
- right: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
295
- /* @__PURE__ */ jsx("button", { type: "button", onClick: onSave, disabled: saving || loading, className: "transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md outline-none shadow-buttons-neutral text-ui-fg-base bg-ui-button-neutral after:transition-fg after:absolute after:inset-0 after:content-[''] after:button-neutral-gradient hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient focus-visible:shadow-buttons-neutral-focus disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:shadow-buttons-neutral disabled:after:hidden txt-compact-small-plus px-3 py-1.5", children: saving ? "Saving..." : "Save settings" }),
296
- loading ? /* @__PURE__ */ jsx("span", { className: "text-sm text-ui-fg-subtle", children: "Loading…" }) : null
297
- ] }),
298
- children: /* @__PURE__ */ jsxs("div", { className: "divide-y divide-ui-border-base", children: [
299
- /* @__PURE__ */ jsx(FieldRow, { label: "Enable/Disable", children: /* @__PURE__ */ jsxs("label", { className: "inline-flex items-center gap-2", children: [
300
- /* @__PURE__ */ jsx("input", { type: "checkbox", checked: form.enabled, onChange: (e) => setForm((p) => ({ ...p, enabled: e.target.checked })), className: "h-4 w-4 rounded border-ui-border-base" }),
301
- /* @__PURE__ */ jsx("span", { className: "text-sm text-ui-fg-base", children: "Enable Advanced Credit/Debit Card" })
302
- ] }) }),
303
- /* @__PURE__ */ jsx(FieldRow, { label: "Title", htmlFor: "acp-title", children: /* @__PURE__ */ jsx("input", { id: "acp-title", value: form.title, onChange: (e) => setForm((p) => ({ ...p, title: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", placeholder: "Credit or Debit Card" }) }),
304
- /* @__PURE__ */ jsx(FieldRow, { label: "Contingency for 3D Secure", hint: "Choose when 3D Secure should be triggered during card payments.", htmlFor: "acp-threeds", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
305
- /* @__PURE__ */ jsx("select", { id: "acp-threeds", value: form.threeDS, onChange: (e) => setForm((p) => ({ ...p, threeDS: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", children: THREE_DS_OPTIONS.map((o) => /* @__PURE__ */ jsx("option", { value: o.value, children: o.label }, o.value)) }),
306
- ((_a = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _a.hint) ? /* @__PURE__ */ jsx("div", { className: "text-xs text-ui-fg-subtle", children: (_b = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _b.hint }) : null
307
- ] }) })
308
- ] })
309
- }
310
- )
311
- ] }) });
229
+ function PayPalApplePayPage() {
230
+ return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
312
231
  }
313
232
  const config = defineRouteConfig({
314
233
  label: "PayPal Connection"
@@ -894,8 +813,89 @@ function PayPalConnectionPage() {
894
813
  ` })
895
814
  ] });
896
815
  }
897
- function PayPalGooglePayPage() {
898
- return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
816
+ const DEFAULT_FORM = {
817
+ enabled: true,
818
+ title: "Credit or Debit Card",
819
+ threeDS: "when_required"
820
+ };
821
+ function mergeWithDefaults(saved) {
822
+ if (!saved) return { ...DEFAULT_FORM };
823
+ const entries = Object.entries(saved).filter(([, value]) => value !== void 0);
824
+ return { ...DEFAULT_FORM, ...Object.fromEntries(entries) };
825
+ }
826
+ const THREE_DS_OPTIONS = [
827
+ { value: "when_required", label: "3D Secure when required", hint: "Triggers 3DS only when the card / issuer requires it." },
828
+ { value: "sli", label: "3D Secure (SCA) / liability shift (recommended)", hint: "Attempts to optimize for liability shift while remaining compliant." },
829
+ { value: "always", label: "Always request 3D Secure", hint: "Forces 3DS challenge whenever possible (may reduce conversion)." }
830
+ ];
831
+ function AdvancedCardPaymentsTab() {
832
+ var _a, _b;
833
+ const [form, setForm] = useState(() => ({ ...DEFAULT_FORM }));
834
+ const [loading, setLoading] = useState(false);
835
+ const [saving, setSaving] = useState(false);
836
+ const [toast, setToast] = useState(null);
837
+ const didInit = useRef(false);
838
+ const dismissToast = useCallback(() => setToast(null), []);
839
+ useEffect(() => {
840
+ if (didInit.current) return;
841
+ didInit.current = true;
842
+ (async () => {
843
+ try {
844
+ setLoading(true);
845
+ const json = await adminFetch("/admin/paypal/settings");
846
+ const payload = (json == null ? void 0 : json.data) ?? json;
847
+ const saved = payload == null ? void 0 : payload.advanced_card_payments;
848
+ if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
849
+ } catch {
850
+ } finally {
851
+ setLoading(false);
852
+ }
853
+ })();
854
+ }, []);
855
+ async function onSave() {
856
+ try {
857
+ setSaving(true);
858
+ const json = await adminFetch("/admin/paypal/settings", {
859
+ method: "POST",
860
+ body: { advanced_card_payments: form }
861
+ });
862
+ const payload = (json == null ? void 0 : json.data) ?? json;
863
+ const saved = payload == null ? void 0 : payload.advanced_card_payments;
864
+ if (saved && typeof saved === "object") setForm(mergeWithDefaults(saved));
865
+ setToast({ kind: "success", message: "Settings saved" });
866
+ } catch (e) {
867
+ setToast({ kind: "error", message: (e instanceof Error ? e.message : "") || "Failed to save settings." });
868
+ } finally {
869
+ setSaving(false);
870
+ }
871
+ }
872
+ return /* @__PURE__ */ jsx("div", { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
873
+ /* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-4", children: /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("h1", { className: "text-xl font-semibold text-ui-fg-base", children: "PayPal Gateway By Easy Payment" }) }) }),
874
+ /* @__PURE__ */ jsx(PayPalTabs, {}),
875
+ /* @__PURE__ */ jsx(Toast, { toast, onClose: dismissToast }),
876
+ /* @__PURE__ */ jsx(
877
+ SectionCard,
878
+ {
879
+ title: "Advanced Card Payments",
880
+ description: "Control card checkout settings and 3D Secure behavior.",
881
+ right: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
882
+ /* @__PURE__ */ jsx("button", { type: "button", onClick: onSave, disabled: saving || loading, className: "transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md outline-none shadow-buttons-neutral text-ui-fg-base bg-ui-button-neutral after:transition-fg after:absolute after:inset-0 after:content-[''] after:button-neutral-gradient hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient focus-visible:shadow-buttons-neutral-focus disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:shadow-buttons-neutral disabled:after:hidden txt-compact-small-plus px-3 py-1.5", children: saving ? "Saving..." : "Save settings" }),
883
+ loading ? /* @__PURE__ */ jsx("span", { className: "text-sm text-ui-fg-subtle", children: "Loading…" }) : null
884
+ ] }),
885
+ children: /* @__PURE__ */ jsxs("div", { className: "divide-y divide-ui-border-base", children: [
886
+ /* @__PURE__ */ jsx(FieldRow, { label: "Enable/Disable", children: /* @__PURE__ */ jsxs("label", { className: "inline-flex items-center gap-2", children: [
887
+ /* @__PURE__ */ jsx("input", { type: "checkbox", checked: form.enabled, onChange: (e) => setForm((p) => ({ ...p, enabled: e.target.checked })), className: "h-4 w-4 rounded border-ui-border-base" }),
888
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-ui-fg-base", children: "Enable Advanced Credit/Debit Card" })
889
+ ] }) }),
890
+ /* @__PURE__ */ jsx(FieldRow, { label: "Title", htmlFor: "acp-title", children: /* @__PURE__ */ jsx("input", { id: "acp-title", value: form.title, onChange: (e) => setForm((p) => ({ ...p, title: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", placeholder: "Credit or Debit Card" }) }),
891
+ /* @__PURE__ */ jsx(FieldRow, { label: "Contingency for 3D Secure", hint: "Choose when 3D Secure should be triggered during card payments.", htmlFor: "acp-threeds", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
892
+ /* @__PURE__ */ jsx("select", { id: "acp-threeds", value: form.threeDS, onChange: (e) => setForm((p) => ({ ...p, threeDS: e.target.value })), className: "w-full rounded-md border border-ui-border-base bg-ui-bg-base px-3 py-2 text-sm text-ui-fg-base outline-none focus:ring-2 focus:ring-ui-border-interactive", children: THREE_DS_OPTIONS.map((o) => /* @__PURE__ */ jsx("option", { value: o.value, children: o.label }, o.value)) }),
893
+ ((_a = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _a.hint) ? /* @__PURE__ */ jsx("div", { className: "text-xs text-ui-fg-subtle", children: (_b = THREE_DS_OPTIONS.find((o) => o.value === form.threeDS)) == null ? void 0 : _b.hint }) : null
894
+ ] }) })
895
+ ] })
896
+ }
897
+ )
898
+ ] }) });
899
899
  }
900
900
  function PayPalPayLaterMessagingPage() {
901
901
  return /* @__PURE__ */ jsx(Navigate, { to: "/settings/paypal/connection", replace: true });
@@ -1119,20 +1119,20 @@ const routeModule = {
1119
1119
  path: "/settings/paypal/additional-settings"
1120
1120
  },
1121
1121
  {
1122
- Component: PayPalApplePayPage,
1123
- path: "/settings/paypal/apple-pay"
1122
+ Component: PayPalGooglePayPage,
1123
+ path: "/settings/paypal/google-pay"
1124
1124
  },
1125
1125
  {
1126
- Component: AdvancedCardPaymentsTab,
1127
- path: "/settings/paypal/advanced-card-payments"
1126
+ Component: PayPalApplePayPage,
1127
+ path: "/settings/paypal/apple-pay"
1128
1128
  },
1129
1129
  {
1130
1130
  Component: PayPalConnectionPage,
1131
1131
  path: "/settings/paypal/connection"
1132
1132
  },
1133
1133
  {
1134
- Component: PayPalGooglePayPage,
1135
- path: "/settings/paypal/google-pay"
1134
+ Component: AdvancedCardPaymentsTab,
1135
+ path: "/settings/paypal/advanced-card-payments"
1136
1136
  },
1137
1137
  {
1138
1138
  Component: PayPalPayLaterMessagingPage,
@@ -1 +1 @@
1
- {"version":3,"file":"card-service.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/card-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;AAYjB,cAAM,0BAA2B,SAAQ,uBAAuB,CAAC,OAAO,CAAC;IACvE,MAAM,CAAC,UAAU,SAAgB;IAEjC,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;YAqBf,uBAAuB;YAQvB,oBAAoB;YAcpB,eAAe;IAmB7B,OAAO,CAAC,iBAAiB;YAWX,oBAAoB;IAclC,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,cAAc;IAuBhB,mBAAmB,CACvB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAa/B,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAoB5E,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmBtE,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkJhF,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiJ1E,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA6GvE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsEvE,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyB7E,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA+BhF,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAIvE,uBAAuB,CAC3B,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC;CAGhC;AAED,eAAe,0BAA0B,CAAA;AACzC,OAAO,EAAE,0BAA0B,EAAE,CAAA"}
1
+ {"version":3,"file":"card-service.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/card-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;AAYjB,cAAM,0BAA2B,SAAQ,uBAAuB,CAAC,OAAO,CAAC;IACvE,MAAM,CAAC,UAAU,SAAgB;IAEjC,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;YAqBf,uBAAuB;YAQvB,oBAAoB;YAcpB,eAAe;IAmB7B,OAAO,CAAC,iBAAiB;YAWX,oBAAoB;IAclC,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,cAAc;IAuBhB,mBAAmB,CACvB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAa/B,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAoB5E,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmBtE,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoLhF,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiJ1E,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA6GvE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsEvE,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyB7E,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA+BhF,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAIvE,uBAAuB,CAC3B,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC;CAGhC;AAED,eAAe,0BAA0B,CAAA;AACzC,OAAO,EAAE,0BAA0B,EAAE,CAAA"}
@@ -226,8 +226,21 @@ class PayPalAdvancedCardProvider extends utils_1.AbstractPaymentProvider {
226
226
  if (cardBrand && disabledCards.includes(cardBrand)) {
227
227
  throw new Error(`Card brand ${cardBrand} is disabled by admin settings.`);
228
228
  }
229
- const { accessToken, base } = await this.getPayPalAccessToken();
230
229
  const existingPayPal = (data.paypal || {});
230
+ if (existingPayPal.capture_id ||
231
+ existingPayPal.authorization_id ||
232
+ data.authorized_at ||
233
+ data.captured_at) {
234
+ const timestampKey = paymentActionRaw === "authorize" ? "authorized_at" : "captured_at";
235
+ return {
236
+ status: "authorized",
237
+ data: {
238
+ ...(_input.data || {}),
239
+ [timestampKey]: data[timestampKey] || new Date().toISOString(),
240
+ },
241
+ };
242
+ }
243
+ const { accessToken, base } = await this.getPayPalAccessToken();
231
244
  let orderId = String(existingPayPal.order_id || data.order_id || "");
232
245
  let order = null;
233
246
  let authorization = null;
@@ -285,9 +298,26 @@ class PayPalAdvancedCardProvider extends utils_1.AbstractPaymentProvider {
285
298
  throw new Error("Unable to resolve PayPal order details for authorization.");
286
299
  }
287
300
  const existingAuthorization = order?.purchase_units?.[0]?.payments?.authorizations?.[0] || null;
301
+ const existingCapture = order?.purchase_units?.[0]?.payments?.captures?.[0] || null;
288
302
  if (existingAuthorization) {
289
303
  authorization = order;
290
304
  }
305
+ else if (existingCapture) {
306
+ return {
307
+ status: "authorized",
308
+ data: {
309
+ ...(data || {}),
310
+ paypal: {
311
+ ...existingPayPal,
312
+ order_id: orderId,
313
+ order,
314
+ capture_id: existingCapture.id,
315
+ capture: existingCapture,
316
+ },
317
+ authorized_at: new Date().toISOString(),
318
+ },
319
+ };
320
+ }
291
321
  else {
292
322
  const authorizeResp = await fetch(`${base}/v2/checkout/orders/${encodeURIComponent(orderId)}/authorize`, {
293
323
  method: "POST",
@@ -1 +1 @@
1
- {"version":3,"file":"card-service.js","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/card-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card-service.js","sourceRoot":"","sources":["../../../../../../src/modules/paypal/payment-provider/card-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easypayment/medusa-payment-paypal",
3
- "version": "0.9.9",
3
+ "version": "0.9.10",
4
4
  "description": "PayPal integration for Medusa v2",
5
5
  "author": "EasyPayment Plugins",
6
6
  "license": "MIT",
@@ -296,8 +296,25 @@ class PayPalAdvancedCardProvider extends AbstractPaymentProvider<Options> {
296
296
  throw new Error(`Card brand ${cardBrand} is disabled by admin settings.`)
297
297
  }
298
298
 
299
- const { accessToken, base } = await this.getPayPalAccessToken()
300
299
  const existingPayPal = (data.paypal || {}) as Record<string, any>
300
+
301
+ if (
302
+ existingPayPal.capture_id ||
303
+ existingPayPal.authorization_id ||
304
+ (data as any).authorized_at ||
305
+ (data as any).captured_at
306
+ ) {
307
+ const timestampKey = paymentActionRaw === "authorize" ? "authorized_at" : "captured_at"
308
+ return {
309
+ status: "authorized",
310
+ data: {
311
+ ...(_input.data || {}),
312
+ [timestampKey]: (data as any)[timestampKey] || new Date().toISOString(),
313
+ },
314
+ }
315
+ }
316
+
317
+ const { accessToken, base } = await this.getPayPalAccessToken()
301
318
  let orderId = String(existingPayPal.order_id || data.order_id || "")
302
319
  let order: Record<string, any> | null = null
303
320
  let authorization: Record<string, any> | null = null
@@ -365,9 +382,26 @@ class PayPalAdvancedCardProvider extends AbstractPaymentProvider<Options> {
365
382
 
366
383
  const existingAuthorization =
367
384
  order?.purchase_units?.[0]?.payments?.authorizations?.[0] || null
385
+ const existingCapture =
386
+ order?.purchase_units?.[0]?.payments?.captures?.[0] || null
368
387
 
369
388
  if (existingAuthorization) {
370
389
  authorization = order
390
+ } else if (existingCapture) {
391
+ return {
392
+ status: "authorized",
393
+ data: {
394
+ ...(data || {}),
395
+ paypal: {
396
+ ...existingPayPal,
397
+ order_id: orderId,
398
+ order,
399
+ capture_id: existingCapture.id,
400
+ capture: existingCapture,
401
+ },
402
+ authorized_at: new Date().toISOString(),
403
+ },
404
+ }
371
405
  } else {
372
406
  const authorizeResp = await fetch(`${base}/v2/checkout/orders/${encodeURIComponent(orderId)}/authorize`, {
373
407
  method: "POST",