@amalaika/form-sdk-package 1.0.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +193 -239
  2. package/dist/cjs/client/index.d.ts +28 -3
  3. package/dist/cjs/client/index.d.ts.map +1 -1
  4. package/dist/cjs/client/index.js +158 -96
  5. package/dist/cjs/client/index.js.map +1 -1
  6. package/dist/cjs/i18n/en.json +7 -0
  7. package/dist/cjs/i18n/fr.json +7 -0
  8. package/dist/cjs/i18n/index.d.ts +2 -0
  9. package/dist/cjs/i18n/index.d.ts.map +1 -0
  10. package/dist/cjs/i18n/index.js +15 -0
  11. package/dist/cjs/i18n/index.js.map +1 -0
  12. package/dist/cjs/i18n/rw.json +7 -0
  13. package/dist/cjs/index.d.ts +3 -2
  14. package/dist/cjs/index.d.ts.map +1 -1
  15. package/dist/cjs/index.js +6 -1
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/integrations/checkout-script.d.ts +10 -0
  18. package/dist/cjs/integrations/checkout-script.d.ts.map +1 -0
  19. package/dist/cjs/integrations/checkout-script.js +38 -0
  20. package/dist/cjs/integrations/checkout-script.js.map +1 -0
  21. package/dist/cjs/integrations/index.d.ts +5 -0
  22. package/dist/cjs/integrations/index.d.ts.map +1 -0
  23. package/dist/cjs/integrations/index.js +49 -0
  24. package/dist/cjs/integrations/index.js.map +1 -0
  25. package/dist/cjs/integrations/mastercard.d.ts +11 -0
  26. package/dist/cjs/integrations/mastercard.d.ts.map +1 -0
  27. package/dist/cjs/integrations/mastercard.js +100 -0
  28. package/dist/cjs/integrations/mastercard.js.map +1 -0
  29. package/dist/cjs/integrations/types.d.ts +31 -0
  30. package/dist/cjs/integrations/types.d.ts.map +1 -0
  31. package/dist/cjs/integrations/types.js +3 -0
  32. package/dist/cjs/integrations/types.js.map +1 -0
  33. package/dist/cjs/state/index.d.ts +12 -1
  34. package/dist/cjs/state/index.d.ts.map +1 -1
  35. package/dist/cjs/state/index.js +26 -2
  36. package/dist/cjs/state/index.js.map +1 -1
  37. package/dist/cjs/types/index.d.ts +55 -2
  38. package/dist/cjs/types/index.d.ts.map +1 -1
  39. package/dist/cjs/utils/index.d.ts +12 -1
  40. package/dist/cjs/utils/index.d.ts.map +1 -1
  41. package/dist/cjs/utils/index.js +39 -0
  42. package/dist/cjs/utils/index.js.map +1 -1
  43. package/dist/esm/client/index.d.ts +28 -3
  44. package/dist/esm/client/index.d.ts.map +1 -1
  45. package/dist/esm/client/index.js +158 -96
  46. package/dist/esm/client/index.js.map +1 -1
  47. package/dist/esm/i18n/en.json +7 -0
  48. package/dist/esm/i18n/fr.json +7 -0
  49. package/dist/esm/i18n/index.d.ts +2 -0
  50. package/dist/esm/i18n/index.d.ts.map +1 -0
  51. package/dist/esm/i18n/index.js +9 -0
  52. package/dist/esm/i18n/index.js.map +1 -0
  53. package/dist/esm/i18n/rw.json +7 -0
  54. package/dist/esm/index.d.ts +3 -2
  55. package/dist/esm/index.d.ts.map +1 -1
  56. package/dist/esm/index.js +2 -1
  57. package/dist/esm/index.js.map +1 -1
  58. package/dist/esm/integrations/checkout-script.d.ts +10 -0
  59. package/dist/esm/integrations/checkout-script.d.ts.map +1 -0
  60. package/dist/esm/integrations/checkout-script.js +35 -0
  61. package/dist/esm/integrations/checkout-script.js.map +1 -0
  62. package/dist/esm/integrations/index.d.ts +5 -0
  63. package/dist/esm/integrations/index.d.ts.map +1 -0
  64. package/dist/esm/integrations/index.js +11 -0
  65. package/dist/esm/integrations/index.js.map +1 -0
  66. package/dist/esm/integrations/mastercard.d.ts +11 -0
  67. package/dist/esm/integrations/mastercard.d.ts.map +1 -0
  68. package/dist/esm/integrations/mastercard.js +97 -0
  69. package/dist/esm/integrations/mastercard.js.map +1 -0
  70. package/dist/esm/integrations/types.d.ts +31 -0
  71. package/dist/esm/integrations/types.d.ts.map +1 -0
  72. package/dist/esm/integrations/types.js +2 -0
  73. package/dist/esm/integrations/types.js.map +1 -0
  74. package/dist/esm/state/index.d.ts +12 -1
  75. package/dist/esm/state/index.d.ts.map +1 -1
  76. package/dist/esm/state/index.js +27 -3
  77. package/dist/esm/state/index.js.map +1 -1
  78. package/dist/esm/types/index.d.ts +55 -2
  79. package/dist/esm/types/index.d.ts.map +1 -1
  80. package/dist/esm/utils/index.d.ts +12 -1
  81. package/dist/esm/utils/index.d.ts.map +1 -1
  82. package/dist/esm/utils/index.js +36 -0
  83. package/dist/esm/utils/index.js.map +1 -1
  84. package/package.json +2 -4
@@ -0,0 +1,11 @@
1
+ import type { IntegrationResult } from "../types/index.js";
2
+ import type { IntegrationHandlerParams } from "./types.js";
3
+ declare global {
4
+ interface Window {
5
+ completeCallback?: (result: Record<string, unknown>) => void;
6
+ errorCallback?: (error: Record<string, unknown>) => void;
7
+ cancelCallback?: () => void;
8
+ }
9
+ }
10
+ export declare function mastercardPaymentGateway(params: IntegrationHandlerParams): Promise<IntegrationResult>;
11
+ //# sourceMappingURL=mastercard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mastercard.d.ts","sourceRoot":"","sources":["../../../src/integrations/mastercard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAG3D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QACzD,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;KAC7B;CACF;AAyDD,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAqE5B"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mastercardPaymentGateway = mastercardPaymentGateway;
4
+ const index_js_1 = require("../i18n/index.js");
5
+ const checkout_script_js_1 = require("./checkout-script.js");
6
+ const DEFAULT_CHECKOUT_SCRIPT_URL = "https://ap-gateway.mastercard.com/static/checkout/checkout.min.js";
7
+ const ELEMENT_WAIT_TIMEOUT_MS = 5_000;
8
+ function waitForElement(selector) {
9
+ return new Promise((resolve, reject) => {
10
+ const existing = document.querySelector(selector);
11
+ if (existing) {
12
+ resolve(existing);
13
+ return;
14
+ }
15
+ const timer = setTimeout(() => {
16
+ observer.disconnect();
17
+ reject(new Error(`Element "${selector}" not found within timeout`));
18
+ }, ELEMENT_WAIT_TIMEOUT_MS);
19
+ const observer = new MutationObserver(() => {
20
+ const el = document.querySelector(selector);
21
+ if (el) {
22
+ observer.disconnect();
23
+ clearTimeout(timer);
24
+ resolve(el);
25
+ }
26
+ });
27
+ observer.observe(document.body, { childList: true, subtree: true });
28
+ });
29
+ }
30
+ async function confirmPayment(params, resultIndicator) {
31
+ const res = await fetch(`${params.apiBase}/payments/mastercard-payment-gateway/confirm/public`, {
32
+ method: "POST",
33
+ headers: { ...params.headers, "Content-Type": "application/json" },
34
+ body: JSON.stringify({
35
+ orderId: params.orderId,
36
+ resultIndicator,
37
+ }),
38
+ });
39
+ if (!res.ok) {
40
+ const body = await res.json().catch(() => null);
41
+ throw new Error(body?.message
42
+ ?? "Payment confirmation failed");
43
+ }
44
+ }
45
+ async function mastercardPaymentGateway(params) {
46
+ const locale = params.locale;
47
+ if (typeof document === "undefined") {
48
+ return { success: false, error: (0, index_js_1.t)("mastercard_script_load_failed", locale) };
49
+ }
50
+ if (!params.sessionId || !params.orderId || !params.containerId) {
51
+ return { success: false, error: (0, index_js_1.t)("mastercard_missing_session", locale) };
52
+ }
53
+ return new Promise((resolve) => {
54
+ const cleanup = () => {
55
+ delete window.completeCallback;
56
+ delete window.errorCallback;
57
+ delete window.cancelCallback;
58
+ sessionStorage.clear();
59
+ };
60
+ const fail = (error, data) => {
61
+ cleanup();
62
+ resolve({ success: false, error, data });
63
+ };
64
+ const scriptUrl = params.checkoutUrl || DEFAULT_CHECKOUT_SCRIPT_URL;
65
+ (0, checkout_script_js_1.loadCheckoutScript)(scriptUrl)
66
+ .then(async () => {
67
+ if (!window.Checkout) {
68
+ fail((0, index_js_1.t)("mastercard_script_load_failed", locale));
69
+ return;
70
+ }
71
+ window.completeCallback = (result) => {
72
+ cleanup();
73
+ confirmPayment(params, String(result.resultIndicator ?? ""))
74
+ .then(() => resolve({ success: true, status: "complete", data: result }))
75
+ .catch(() => resolve({ success: false, error: (0, index_js_1.t)("mastercard_payment_failed", locale), data: result }));
76
+ };
77
+ window.errorCallback = (error) => {
78
+ const explanation = error?.["error.explanation"];
79
+ fail(typeof explanation === "string" ? explanation : (0, index_js_1.t)("mastercard_payment_failed", locale), error);
80
+ };
81
+ window.cancelCallback = () => {
82
+ fail((0, index_js_1.t)("mastercard_cancelled", locale));
83
+ };
84
+ window.Checkout.configure({
85
+ session: { id: params.sessionId },
86
+ });
87
+ try {
88
+ await waitForElement(params.containerId);
89
+ }
90
+ catch {
91
+ fail((0, index_js_1.t)("mastercard_script_load_failed", locale));
92
+ return;
93
+ }
94
+ document.dispatchEvent(new CustomEvent("mastercard-payment-start"));
95
+ window.Checkout.showEmbeddedPage(params.containerId);
96
+ })
97
+ .catch(() => fail((0, index_js_1.t)("mastercard_script_load_failed", locale)));
98
+ });
99
+ }
100
+ //# sourceMappingURL=mastercard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mastercard.js","sourceRoot":"","sources":["../../../src/integrations/mastercard.ts"],"names":[],"mappings":";;AAoEA,4DAuEC;AA1ID,+CAAqC;AAErC,6DAA0D;AAU1D,MAAM,2BAA2B,GAC/B,mEAAmE,CAAC;AACtE,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAEtC,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,QAAQ,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,QAAQ,4BAA4B,CAAC,CAAC,CAAC;QACtE,CAAC,EAAE,uBAAuB,CAAC,CAAC;QAE5B,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;YACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,EAAE,EAAE,CAAC;gBACP,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACtB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,CAAC,EAAE,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,MAAgC,EAChC,eAAuB;IAEvB,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,GAAG,MAAM,CAAC,OAAO,qDAAqD,EACtE;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAClE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,eAAe;SAChB,CAAC;KACH,CACF,CAAC;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,IAAI,KAAK,CACZ,IAAuC,EAAE,OAAiB;eACtD,6BAA6B,CACnC,CAAC;IACJ,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,wBAAwB,CAC5C,MAAgC;IAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAE7B,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAA,YAAC,EAAC,+BAA+B,EAAE,MAAM,CAAC,EAAE,CAAC;IAC/E,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAChE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAA,YAAC,EAAC,4BAA4B,EAAE,MAAM,CAAC,EAAE,CAAC;IAC5E,CAAC;IAED,OAAO,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,EAAE;QAChD,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,OAAO,MAAM,CAAC,gBAAgB,CAAC;YAC/B,OAAO,MAAM,CAAC,aAAa,CAAC;YAC5B,OAAO,MAAM,CAAC,cAAc,CAAC;YAC7B,cAAc,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,IAAc,EAAE,EAAE;YAC7C,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,IAAI,2BAA2B,CAAC;QAEpE,IAAA,uCAAkB,EAAC,SAAS,CAAC;aAC1B,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,IAAI,CAAC,IAAA,YAAC,EAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,MAAM,CAAC,gBAAgB,GAAG,CAAC,MAA+B,EAAE,EAAE;gBAC5D,OAAO,EAAE,CAAC;gBAEV,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;qBACzD,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;qBACxE,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAA,YAAC,EAAC,2BAA2B,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3G,CAAC,CAAC;YAEF,MAAM,CAAC,aAAa,GAAG,CAAC,KAA8B,EAAE,EAAE;gBACxD,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,mBAAmB,CAAC,CAAC;gBACjD,IAAI,CACF,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,YAAC,EAAC,2BAA2B,EAAE,MAAM,CAAC,EACtF,KAAK,CACN,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,GAAG,GAAG,EAAE;gBAC3B,IAAI,CAAC,IAAA,YAAC,EAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC;YAEF,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACxB,OAAO,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE;aAClC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,cAAc,CAAC,MAAM,CAAC,WAAY,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,IAAA,YAAC,EAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,QAAQ,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACpE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAY,CAAC,CAAC;QACxD,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAA,YAAC,EAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { IntegrationResult } from "../types/index.js";
2
+ export interface IntegrationHandlerParams {
3
+ /** SDK's configured API base URL */
4
+ apiBase: string;
5
+ /** Pre-built headers (locale, origin, cache-control) */
6
+ headers: Record<string, string>;
7
+ /** The integration method name as stored in the schema */
8
+ methodName: string;
9
+ /** All current form field values */
10
+ formData: Record<string, unknown>;
11
+ /** Event ID from submission context */
12
+ eventId: number;
13
+ /** Ticket / resource ID from submission context */
14
+ resourceId: number;
15
+ /** Resource type (ticketing, accommodation, exhibition) */
16
+ resourceType: string;
17
+ /** Active locale (e.g. "en", "fr", "rw") for localized error messages */
18
+ locale?: string;
19
+ /** Payment session ID from the submission response */
20
+ sessionId?: string;
21
+ /** Order ID from the submission response */
22
+ orderId?: string;
23
+ /** CSS selector for the container where embedded payment UI should render */
24
+ containerId?: string;
25
+ /** Mastercard checkout script URL override */
26
+ checkoutUrl?: string;
27
+ /** Merchant name shown in the Mastercard checkout UI */
28
+ merchantName?: string;
29
+ }
30
+ export type IntegrationHandler = (params: IntegrationHandlerParams) => Promise<IntegrationResult>;
31
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/integrations/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,MAAM,EAAE,wBAAwB,KAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/integrations/types.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import type { FieldDefinition } from "../types/index.js";
1
+ import type { AdditionalAttendee, FieldDefinition, ResolvedIntegration } from "../types/index.js";
2
2
  type ChangeCallback = (fieldId: string, value: unknown) => void;
3
3
  export declare class FormStateManager {
4
4
  private readonly fields;
@@ -6,6 +6,7 @@ export declare class FormStateManager {
6
6
  private readonly initialValues;
7
7
  private readonly touched;
8
8
  private readonly callbacks;
9
+ private attendees;
9
10
  constructor(fields: FieldDefinition[]);
10
11
  getValue(fieldId: string): unknown;
11
12
  setValue(fieldId: string, value: unknown): void;
@@ -16,8 +17,18 @@ export declare class FormStateManager {
16
17
  isTouched(fieldId: string): boolean;
17
18
  touchField(fieldId: string): void;
18
19
  reset(): void;
20
+ addAttendee(attendee: AdditionalAttendee): void;
21
+ removeAttendee(index: number): void;
22
+ updateAttendee(index: number, attendee: AdditionalAttendee): void;
23
+ getAttendees(): AdditionalAttendee[];
24
+ clearAttendees(): void;
19
25
  getVisibleFieldIds(): Set<string>;
20
26
  getSubmissionData(): Record<string, unknown>;
27
+ /**
28
+ * Returns integrations that need to be executed based on the current
29
+ * visible field values (e.g. user selected "CARD" → "stripe_checkout").
30
+ */
31
+ getActiveIntegrations(): ResolvedIntegration[];
21
32
  onChange(callback: ChangeCallback): () => void;
22
33
  }
23
34
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGzD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEhE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;gBAE3C,MAAM,EAAE,eAAe,EAAE;IAIrC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIlC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAO/C,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIpC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAWhD,OAAO,IAAI,OAAO;IAIlB,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC;IAY7B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAInC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC,KAAK,IAAI,IAAI;IAQb,kBAAkB,IAAI,GAAG,CAAC,MAAM,CAAC;IAUjC,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAW5C,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,IAAI;CAM/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGlG,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEhE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IACvD,OAAO,CAAC,SAAS,CAA4B;gBAEjC,MAAM,EAAE,eAAe,EAAE;IAIrC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIlC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAO/C,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIpC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAShD,OAAO,IAAI,OAAO;IAIlB,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC;IAY7B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAInC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC,KAAK,IAAI,IAAI;IASb,WAAW,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAI/C,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAInC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAIjE,YAAY,IAAI,kBAAkB,EAAE;IAIpC,cAAc,IAAI,IAAI;IAItB,kBAAkB,IAAI,GAAG,CAAC,MAAM,CAAC;IAUjC,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAW5C;;;OAGG;IACH,qBAAqB,IAAI,mBAAmB,EAAE;IAM9C,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,IAAI;CAM/C"}
@@ -8,6 +8,7 @@ class FormStateManager {
8
8
  initialValues = {};
9
9
  touched = new Set();
10
10
  callbacks = new Set();
11
+ attendees = [];
11
12
  constructor(fields) {
12
13
  this.fields = fields;
13
14
  }
@@ -26,8 +27,6 @@ class FormStateManager {
26
27
  setValues(values) {
27
28
  for (const [key, value] of Object.entries(values)) {
28
29
  this.values[key] = value;
29
- }
30
- for (const [key, value] of Object.entries(values)) {
31
30
  for (const cb of this.callbacks) {
32
31
  cb(key, value);
33
32
  }
@@ -59,6 +58,22 @@ class FormStateManager {
59
58
  }
60
59
  Object.assign(this.values, structuredClone(this.initialValues));
61
60
  this.touched.clear();
61
+ this.attendees = [];
62
+ }
63
+ addAttendee(attendee) {
64
+ this.attendees.push(attendee);
65
+ }
66
+ removeAttendee(index) {
67
+ this.attendees.splice(index, 1);
68
+ }
69
+ updateAttendee(index, attendee) {
70
+ this.attendees[index] = attendee;
71
+ }
72
+ getAttendees() {
73
+ return [...this.attendees];
74
+ }
75
+ clearAttendees() {
76
+ this.attendees = [];
62
77
  }
63
78
  getVisibleFieldIds() {
64
79
  const visible = new Set();
@@ -79,6 +94,15 @@ class FormStateManager {
79
94
  }
80
95
  return data;
81
96
  }
97
+ /**
98
+ * Returns integrations that need to be executed based on the current
99
+ * visible field values (e.g. user selected "CARD" → "stripe_checkout").
100
+ */
101
+ getActiveIntegrations() {
102
+ const visibleIds = this.getVisibleFieldIds();
103
+ const visibleFields = this.fields.filter((f) => visibleIds.has(f.id));
104
+ return (0, index_js_1.resolveIntegrations)(visibleFields, this.values);
105
+ }
82
106
  onChange(callback) {
83
107
  this.callbacks.add(callback);
84
108
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export interface ErrorMessages {
2
2
  fetchTickets: string;
3
3
  fetchTicketById: string;
4
+ fetchPublicTicket: string;
4
5
  fetchLanguages: string;
5
6
  fetchForm: string;
6
7
  authorizeUpload: string;
@@ -34,6 +35,10 @@ export interface EventFormConfig {
34
35
  };
35
36
  /** Send Cache-Control: no-cache header with every request (default: false) */
36
37
  noCache?: boolean;
38
+ /** Mastercard checkout script URL — defaults to production gateway */
39
+ mastercardCheckoutUrl?: string;
40
+ /** Merchant name shown in the Mastercard embedded checkout UI */
41
+ merchantName?: string;
37
42
  /** Request/response interceptors */
38
43
  interceptors?: {
39
44
  request?: (config: {
@@ -75,6 +80,8 @@ export interface FieldDefinition {
75
80
  operator: "equals" | "not_equals" | "in";
76
81
  value: string | string[];
77
82
  };
83
+ /** Maps option values to integration method names (e.g. { "CARD": "stripe_checkout" }) */
84
+ integrations?: Record<string, string>;
78
85
  }
79
86
  export interface ValidationResult {
80
87
  valid: boolean;
@@ -110,14 +117,60 @@ export interface TicketTranslation {
110
117
  name: string;
111
118
  createdBy: number;
112
119
  }
120
+ export interface IntegrationResult {
121
+ success: boolean;
122
+ /** "pending" means the handler started an async process (e.g. payment modal/redirect)
123
+ * and the consumer should NOT show a final success message yet.
124
+ * "complete" (or omitted) means the handler finished and `success` is the final outcome. */
125
+ status?: "pending" | "complete";
126
+ data?: unknown;
127
+ error?: string;
128
+ }
129
+ export interface ResolvedIntegration {
130
+ fieldId: string;
131
+ methodName: string;
132
+ selectedValue: string;
133
+ }
134
+ export interface PaymentInfo {
135
+ session_id: string;
136
+ order_id: string;
137
+ requiresPayment: boolean;
138
+ }
139
+ export interface AdditionalAttendee {
140
+ first_name: string;
141
+ last_name: string;
142
+ email: string;
143
+ resourceId?: number;
144
+ attendanceType?: "HYBRID" | "IN_PERSON" | "VIRTUAL";
145
+ }
146
+ export interface SubmissionResponse {
147
+ id: number;
148
+ formId: number;
149
+ data: Record<string, unknown>;
150
+ eventId: number;
151
+ resourceType: string;
152
+ resourceId: number;
153
+ attendanceType: string | null;
154
+ submittedBy: number | null;
155
+ submittedAt: string;
156
+ payment: PaymentInfo | null;
157
+ groupId: string | null;
158
+ isPrimary: boolean | null;
159
+ groupSize: number | null;
160
+ additionalAttendees: Array<{
161
+ id: number;
162
+ firstName: string;
163
+ lastName: string;
164
+ email: string;
165
+ }> | null;
166
+ }
113
167
  export interface Ticket {
114
168
  id: number;
115
169
  eventId: number;
116
170
  price: string;
117
171
  currency: string;
118
- attendanceType: "VIRTUAL" | "PHYSICAL" | "HYBRID";
172
+ attendanceType: "VIRTUAL" | "IN_PERSON" | "HYBRID";
119
173
  virtualPrice: string | null;
120
- physicalPrice: string | null;
121
174
  quantityTotal: number;
122
175
  salesStartAt: string | null;
123
176
  salesEndAt: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,YAAY,EAAE,WAAW,GAAG,eAAe,GAAG,YAAY,CAAC;IAC3D,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,KAAK,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,wCAAwC;IACxC,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oCAAoC;IACpC,YAAY,CAAC,EAAE;QACb,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;YACjB,GAAG,EAAE,MAAM,CAAC;YACZ,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,EAAE,OAAO,CAAC;SAChB,KAAK;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAAC,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QACvF,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC;QAC1C,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;KACrC,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EACA,MAAM,GACN,OAAO,GACP,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,UAAU,GACV,MAAM,GACN,MAAM,GACN,UAAU,GACV,KAAK,GACL,KAAK,GACL,MAAM,GACN,gBAAgB,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC;QACzC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAClD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACpC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,18 @@
1
- import type { FieldDefinition, FormSchema, ValidationResult } from "../types/index.js";
1
+ import type { FieldDefinition, FormSchema, ResolvedIntegration, ValidationResult } from "../types/index.js";
2
2
  export declare function getAllFields(schema: FormSchema): FieldDefinition[];
3
3
  export declare function isFieldVisible(field: FieldDefinition, formValues: Record<string, unknown>, allFields: FieldDefinition[]): boolean;
4
4
  export declare function getVisibleFieldIds(allFields: FieldDefinition[], formValues: Record<string, unknown>): Set<string>;
5
5
  export declare function validateField(field: FieldDefinition, value: unknown): ValidationResult;
6
6
  export declare function validateForm(fields: FieldDefinition[], values: Record<string, unknown>): Record<string, ValidationResult>;
7
+ /** Returns true if the field has at least one integration mapping. */
8
+ export declare function hasIntegration(field: FieldDefinition): boolean;
9
+ /** Returns the integration method name for a given selected value or option object, or undefined. */
10
+ export declare function getIntegrationMethod(field: FieldDefinition, selectedValue: string | {
11
+ id: string;
12
+ }): string | undefined;
13
+ /**
14
+ * Scans all fields + current values and returns every integration that
15
+ * needs to be executed before submission.
16
+ */
17
+ export declare function resolveIntegrations(fields: FieldDefinition[], formValues: Record<string, unknown>): ResolvedIntegration[];
7
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEvF,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,EAAE,CAKlE;AAwCD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,SAAS,EAAE,eAAe,EAAE,GAC3B,OAAO,CAET;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,EAAE,EAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,GAAG,CAAC,MAAM,CAAC,CAQb;AAKD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,OAAO,GACb,gBAAgB,CAiElB;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,eAAe,EAAE,EACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAWlC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE5G,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,EAAE,CAKlE;AAwCD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,SAAS,EAAE,eAAe,EAAE,GAC3B,OAAO,CAET;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,EAAE,EAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,GAAG,CAAC,MAAM,CAAC,CAQb;AAKD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,OAAO,GACb,gBAAgB,CAiElB;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,eAAe,EAAE,EACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAWlC;AAID,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE9D;AAED,qGAAqG;AACrG,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GACrC,MAAM,GAAG,SAAS,CAGpB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,EAAE,EACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,mBAAmB,EAAE,CAyBvB"}
@@ -5,6 +5,9 @@ exports.isFieldVisible = isFieldVisible;
5
5
  exports.getVisibleFieldIds = getVisibleFieldIds;
6
6
  exports.validateField = validateField;
7
7
  exports.validateForm = validateForm;
8
+ exports.hasIntegration = hasIntegration;
9
+ exports.getIntegrationMethod = getIntegrationMethod;
10
+ exports.resolveIntegrations = resolveIntegrations;
8
11
  function getAllFields(schema) {
9
12
  if (schema.steps) {
10
13
  return schema.steps.flatMap((step) => step.fields);
@@ -121,4 +124,40 @@ function validateForm(fields, values) {
121
124
  }
122
125
  return results;
123
126
  }
127
+ // ── Integration helpers ─────────────────────────────────────────────
128
+ /** Returns true if the field has at least one integration mapping. */
129
+ function hasIntegration(field) {
130
+ return !!field.integrations && Object.keys(field.integrations).length > 0;
131
+ }
132
+ /** Returns the integration method name for a given selected value or option object, or undefined. */
133
+ function getIntegrationMethod(field, selectedValue) {
134
+ const key = typeof selectedValue === "string" ? selectedValue : selectedValue.id;
135
+ return field.integrations?.[key];
136
+ }
137
+ /**
138
+ * Scans all fields + current values and returns every integration that
139
+ * needs to be executed before submission.
140
+ */
141
+ function resolveIntegrations(fields, formValues) {
142
+ const result = [];
143
+ for (const field of fields) {
144
+ if (!field.integrations)
145
+ continue;
146
+ const raw = formValues[field.id];
147
+ // Support both plain string ("CARD") and option object ({ id: "CARD", value: "CARD" })
148
+ const key = typeof raw === "string"
149
+ ? raw
150
+ : raw !== null && typeof raw === "object" && "id" in raw
151
+ ? String(raw.id)
152
+ : undefined;
153
+ if (key && field.integrations[key]) {
154
+ result.push({
155
+ fieldId: field.id,
156
+ methodName: field.integrations[key],
157
+ selectedValue: key,
158
+ });
159
+ }
160
+ }
161
+ return result;
162
+ }
124
163
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { EventFormConfig, FormData, Ticket } from "../types/index.js";
1
+ import type { AdditionalAttendee, EventFormConfig, FormData, IntegrationResult, ResolvedIntegration, SubmissionResponse, Ticket } from "../types/index.js";
2
2
  export declare class EventFormClient {
3
3
  private readonly apiBase;
4
4
  private readonly apiKey;
@@ -10,17 +10,26 @@ export declare class EventFormClient {
10
10
  private readonly cacheConfig;
11
11
  private readonly noCache;
12
12
  private readonly interceptors;
13
+ private readonly mastercardCheckoutUrl;
14
+ private readonly merchantName;
13
15
  private readonly cache;
14
16
  private locale;
15
17
  constructor(config: EventFormConfig);
16
18
  setLocale(locale: string): void;
17
19
  getLocale(): string | undefined;
20
+ /**
21
+ * Preload the Mastercard Checkout.js script so it's ready when payment starts.
22
+ * Call this early (e.g. on page load) to avoid skeleton delay.
23
+ */
24
+ preloadCheckoutScript(): Promise<void>;
18
25
  clearCache(): void;
19
26
  private getCached;
20
27
  private setCache;
21
28
  private applyRequestInterceptor;
22
29
  private applyResponseInterceptor;
23
30
  private applyErrorInterceptor;
31
+ private throwMapped;
32
+ private cachedGet;
24
33
  private isRetryable;
25
34
  private executeRequest;
26
35
  fetchTickets(options?: {
@@ -28,14 +37,30 @@ export declare class EventFormClient {
28
37
  name?: string;
29
38
  }): Promise<Ticket[]>;
30
39
  fetchTicketById(id: number, locale?: string): Promise<Ticket>;
40
+ fetchPublicTicket(id: number, locale?: string): Promise<Ticket>;
31
41
  fetchLanguages(): Promise<string[]>;
32
42
  fetchForm(ticketId: number, locale?: string): Promise<FormData>;
33
43
  authorizeUpload(formId: number, fieldId: string, file: File, locale?: string): Promise<string>;
34
44
  uploadFile(formId: number, token: string, file: File, locale?: string): Promise<string>;
35
- submitForm(formId: number, data: Record<string, unknown>, context: {
45
+ /**
46
+ * Submits the form to the backend first, then conditionally runs payment
47
+ * integrations if the response indicates payment is required.
48
+ *
49
+ * If an integration fails after submission, the failure is returned in the
50
+ * result (not thrown), since the submission is already saved on the backend.
51
+ */
52
+ submitForm(form: FormData, data: Record<string, unknown>, context: {
36
53
  eventId: number;
37
54
  ticketId: number;
38
55
  locale?: string;
39
- }): Promise<void>;
56
+ attendanceType?: "HYBRID" | "IN_PERSON" | "VIRTUAL" | null;
57
+ containerId?: string;
58
+ additionalAttendees?: AdditionalAttendee[];
59
+ }): Promise<{
60
+ submission: SubmissionResponse;
61
+ integrations: Array<ResolvedIntegration & {
62
+ result: IntegrationResult;
63
+ }>;
64
+ }>;
40
65
  }
41
66
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,eAAe,EACf,QAAQ,EACR,MAAM,EACP,MAAM,mBAAmB,CAAC;AAuD3B,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwC;IACpE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IACvD,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,eAAe;IAoBnC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,WAAW;YAOL,cAAc;IAsBtB,YAAY,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA6Bf,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwB7D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IA4BnC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAwB/D,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IA0BZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IAsBZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,IAAI,CAAC;CAyBjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}