@amalaika/form-sdk-package 1.0.1 → 1.1.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.
- package/README.md +193 -239
- package/dist/cjs/client/index.d.ts +27 -3
- package/dist/cjs/client/index.d.ts.map +1 -1
- package/dist/cjs/client/index.js +148 -90
- package/dist/cjs/client/index.js.map +1 -1
- package/dist/cjs/i18n/en.json +7 -0
- package/dist/cjs/i18n/fr.json +7 -0
- package/dist/cjs/i18n/index.d.ts +2 -0
- package/dist/cjs/i18n/index.d.ts.map +1 -0
- package/dist/cjs/i18n/index.js +15 -0
- package/dist/cjs/i18n/index.js.map +1 -0
- package/dist/cjs/i18n/rw.json +7 -0
- package/dist/cjs/index.d.ts +3 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +6 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/integrations/checkout-script.d.ts +10 -0
- package/dist/cjs/integrations/checkout-script.d.ts.map +1 -0
- package/dist/cjs/integrations/checkout-script.js +38 -0
- package/dist/cjs/integrations/checkout-script.js.map +1 -0
- package/dist/cjs/integrations/index.d.ts +5 -0
- package/dist/cjs/integrations/index.d.ts.map +1 -0
- package/dist/cjs/integrations/index.js +49 -0
- package/dist/cjs/integrations/index.js.map +1 -0
- package/dist/cjs/integrations/mastercard.d.ts +11 -0
- package/dist/cjs/integrations/mastercard.d.ts.map +1 -0
- package/dist/cjs/integrations/mastercard.js +100 -0
- package/dist/cjs/integrations/mastercard.js.map +1 -0
- package/dist/cjs/integrations/types.d.ts +31 -0
- package/dist/cjs/integrations/types.d.ts.map +1 -0
- package/dist/cjs/integrations/types.js +3 -0
- package/dist/cjs/integrations/types.js.map +1 -0
- package/dist/cjs/state/index.d.ts +6 -1
- package/dist/cjs/state/index.d.ts.map +1 -1
- package/dist/cjs/state/index.js +9 -2
- package/dist/cjs/state/index.js.map +1 -1
- package/dist/cjs/types/index.d.ts +38 -1
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.d.ts +12 -1
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +39 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/esm/client/index.d.ts +27 -3
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +148 -90
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/i18n/en.json +7 -0
- package/dist/esm/i18n/fr.json +7 -0
- package/dist/esm/i18n/index.d.ts +2 -0
- package/dist/esm/i18n/index.d.ts.map +1 -0
- package/dist/esm/i18n/index.js +9 -0
- package/dist/esm/i18n/index.js.map +1 -0
- package/dist/esm/i18n/rw.json +7 -0
- package/dist/esm/index.d.ts +3 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/integrations/checkout-script.d.ts +10 -0
- package/dist/esm/integrations/checkout-script.d.ts.map +1 -0
- package/dist/esm/integrations/checkout-script.js +35 -0
- package/dist/esm/integrations/checkout-script.js.map +1 -0
- package/dist/esm/integrations/index.d.ts +5 -0
- package/dist/esm/integrations/index.d.ts.map +1 -0
- package/dist/esm/integrations/index.js +11 -0
- package/dist/esm/integrations/index.js.map +1 -0
- package/dist/esm/integrations/mastercard.d.ts +11 -0
- package/dist/esm/integrations/mastercard.d.ts.map +1 -0
- package/dist/esm/integrations/mastercard.js +97 -0
- package/dist/esm/integrations/mastercard.js.map +1 -0
- package/dist/esm/integrations/types.d.ts +31 -0
- package/dist/esm/integrations/types.d.ts.map +1 -0
- package/dist/esm/integrations/types.js +2 -0
- package/dist/esm/integrations/types.js.map +1 -0
- package/dist/esm/state/index.d.ts +6 -1
- package/dist/esm/state/index.d.ts.map +1 -1
- package/dist/esm/state/index.js +10 -3
- package/dist/esm/state/index.js.map +1 -1
- package/dist/esm/types/index.d.ts +38 -1
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/esm/utils/index.d.ts +12 -1
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +36 -0
- package/dist/esm/utils/index.js.map +1 -1
- 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":"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"}
|
|
@@ -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 @@
|
|
|
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 { 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;
|
|
@@ -18,6 +18,11 @@ export declare class FormStateManager {
|
|
|
18
18
|
reset(): void;
|
|
19
19
|
getVisibleFieldIds(): Set<string>;
|
|
20
20
|
getSubmissionData(): Record<string, unknown>;
|
|
21
|
+
/**
|
|
22
|
+
* Returns integrations that need to be executed based on the current
|
|
23
|
+
* visible field values (e.g. user selected "CARD" → "stripe_checkout").
|
|
24
|
+
*/
|
|
25
|
+
getActiveIntegrations(): ResolvedIntegration[];
|
|
21
26
|
onChange(callback: ChangeCallback): () => void;
|
|
22
27
|
}
|
|
23
28
|
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;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG9E,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;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;IAQb,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"}
|
package/dist/cjs/state/index.js
CHANGED
|
@@ -26,8 +26,6 @@ class FormStateManager {
|
|
|
26
26
|
setValues(values) {
|
|
27
27
|
for (const [key, value] of Object.entries(values)) {
|
|
28
28
|
this.values[key] = value;
|
|
29
|
-
}
|
|
30
|
-
for (const [key, value] of Object.entries(values)) {
|
|
31
29
|
for (const cb of this.callbacks) {
|
|
32
30
|
cb(key, value);
|
|
33
31
|
}
|
|
@@ -79,6 +77,15 @@ class FormStateManager {
|
|
|
79
77
|
}
|
|
80
78
|
return data;
|
|
81
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* Returns integrations that need to be executed based on the current
|
|
82
|
+
* visible field values (e.g. user selected "CARD" → "stripe_checkout").
|
|
83
|
+
*/
|
|
84
|
+
getActiveIntegrations() {
|
|
85
|
+
const visibleIds = this.getVisibleFieldIds();
|
|
86
|
+
const visibleFields = this.fields.filter((f) => visibleIds.has(f.id));
|
|
87
|
+
return (0, index_js_1.resolveIntegrations)(visibleFields, this.values);
|
|
88
|
+
}
|
|
82
89
|
onChange(callback) {
|
|
83
90
|
this.callbacks.add(callback);
|
|
84
91
|
return () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":";;;AACA,
|
|
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,6 +117,37 @@ 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 SubmissionResponse {
|
|
140
|
+
id: number;
|
|
141
|
+
formId: number;
|
|
142
|
+
data: Record<string, unknown>;
|
|
143
|
+
eventId: number;
|
|
144
|
+
resourceType: string;
|
|
145
|
+
resourceId: number;
|
|
146
|
+
attendanceType: string | null;
|
|
147
|
+
submittedBy: number | null;
|
|
148
|
+
submittedAt: string;
|
|
149
|
+
payment: PaymentInfo | null;
|
|
150
|
+
}
|
|
113
151
|
export interface Ticket {
|
|
114
152
|
id: number;
|
|
115
153
|
eventId: number;
|
|
@@ -117,7 +155,6 @@ export interface Ticket {
|
|
|
117
155
|
currency: string;
|
|
118
156
|
attendanceType: "VIRTUAL" | "PHYSICAL" | "HYBRID";
|
|
119
157
|
virtualPrice: string | null;
|
|
120
|
-
physicalPrice: string | null;
|
|
121
158
|
quantityTotal: number;
|
|
122
159
|
salesStartAt: string | null;
|
|
123
160
|
salesEndAt: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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
|
|
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;
|
|
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"}
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -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":";;AAEA,oCAKC;AAwCD,wCAMC;AAED,gDAWC;AAKD,sCAoEC;AAED,oCAcC;
|
|
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 { 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,29 @@ 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
|
-
|
|
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
|
-
|
|
56
|
+
attendanceType?: "HYBRID" | "PHYSICAL" | "VIRTUAL" | null;
|
|
57
|
+
containerId?: string;
|
|
58
|
+
}): Promise<{
|
|
59
|
+
submission: SubmissionResponse;
|
|
60
|
+
integrations: Array<ResolvedIntegration & {
|
|
61
|
+
result: IntegrationResult;
|
|
62
|
+
}>;
|
|
63
|
+
}>;
|
|
40
64
|
}
|
|
41
65
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|