@gmisoftware/przelewy24-payments-medusa 0.1.0 → 0.1.2
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/.medusa/server/src/providers/przelewy24/core/p24-base.js +22 -2
- package/.medusa/server/src/providers/przelewy24/core/p24-webhook.js +11 -5
- package/.medusa/server/src/providers/przelewy24/services/p24-api.js +5 -22
- package/.medusa/server/src/providers/przelewy24/services/p24-visa-mobile.js +3 -9
- package/.medusa/server/src/providers/przelewy24/types/index.js +5 -7
- package/.medusa/server/src/utils/p24-session-data.js +11 -1
- package/.medusa/server/src/utils/p24-webhook-ips.js +62 -0
- package/README.md +16 -20
- package/package.json +1 -1
- package/.medusa/server/src/api/store/payments/visa-mobile/charge/route.js +0 -58
|
@@ -119,8 +119,28 @@ class P24Base extends utils_1.AbstractPaymentProvider {
|
|
|
119
119
|
}
|
|
120
120
|
return transactionRequest;
|
|
121
121
|
}
|
|
122
|
+
resolvePaymentSessionQuery() {
|
|
123
|
+
const resolve = this.container_.resolve;
|
|
124
|
+
if (typeof resolve !== "function") {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
try {
|
|
128
|
+
const query = resolve.call(this.container_, utils_1.ContainerRegistrationKeys.QUERY);
|
|
129
|
+
if (query && typeof query.graph === "function") {
|
|
130
|
+
return query;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
// Payment provider scope does not register QUERY (e.g. webhook handling).
|
|
135
|
+
}
|
|
136
|
+
return undefined;
|
|
137
|
+
}
|
|
122
138
|
async findMedusaPaymentSessionId(p24SessionId) {
|
|
123
|
-
const
|
|
139
|
+
const inferred = (0, p24_session_data_1.inferMedusaPaymentSessionIdFromP24SessionId)(p24SessionId);
|
|
140
|
+
if (inferred) {
|
|
141
|
+
return inferred;
|
|
142
|
+
}
|
|
143
|
+
const query = this.resolvePaymentSessionQuery();
|
|
124
144
|
if (!query) {
|
|
125
145
|
return p24SessionId;
|
|
126
146
|
}
|
|
@@ -468,4 +488,4 @@ class P24Base extends utils_1.AbstractPaymentProvider {
|
|
|
468
488
|
}
|
|
469
489
|
}
|
|
470
490
|
exports.default = P24Base;
|
|
471
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3ByemVsZXd5MjQvY29yZS9wMjQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQU81QixxREFHbUM7QUFRbkMsaURBQW9EO0FBQ3BELHFFQUdrQztBQUNsQywrQ0FBa0Q7QUFDbEQsd0VBRzBDO0FBQzFDLGtFQUE4RDtBQUM5RCxzRUFJeUM7QUFDekMsNEVBRzRDO0FBQzVDLDBEQUEyRTtBQUMzRSwwREFBMEU7QUFDMUUsMEVBRzJDO0FBbUMzQyxNQUFlLE9BQVEsU0FBUSwrQkFBbUM7SUFDN0MsUUFBUSxDQUFhO0lBQ3JCLE1BQU0sQ0FBZ0I7SUFDdEIsVUFBVSxDQUFlO0lBQ3pCLE9BQU8sQ0FBcUM7SUFFL0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFtQjtRQUN4QyxJQUFJLENBQUMsSUFBQSxpQkFBUyxFQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztRQUM1RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUEsaUJBQVMsRUFBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFBLGlCQUFTLEVBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBQSxpQkFBUyxFQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBQ0Qs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
|
|
491
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3ByemVsZXd5MjQvY29yZS9wMjQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQU81QixxREFJbUM7QUFRbkMsaURBQW9EO0FBQ3BELHFFQUdrQztBQUNsQywrQ0FBa0Q7QUFDbEQsd0VBRzBDO0FBQzFDLGtFQUE4RDtBQUM5RCxzRUFLeUM7QUFDekMsNEVBRzRDO0FBQzVDLDBEQUEyRTtBQUMzRSwwREFBMEU7QUFDMUUsMEVBRzJDO0FBbUMzQyxNQUFlLE9BQVEsU0FBUSwrQkFBbUM7SUFDN0MsUUFBUSxDQUFhO0lBQ3JCLE1BQU0sQ0FBZ0I7SUFDdEIsVUFBVSxDQUFlO0lBQ3pCLE9BQU8sQ0FBcUM7SUFFL0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFtQjtRQUN4QyxJQUFJLENBQUMsSUFBQSxpQkFBUyxFQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztRQUM1RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUEsaUJBQVMsRUFBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFBLGlCQUFTLEVBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBQSxpQkFBUyxFQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBQ0Qs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
|
|
@@ -10,9 +10,15 @@ function extractP24WebhookSourceIp(headers) {
|
|
|
10
10
|
if (!headers) {
|
|
11
11
|
return undefined;
|
|
12
12
|
}
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const cfConnectingIpRaw = headers["cf-connecting-ip"] || headers["CF-Connecting-IP"];
|
|
14
|
+
const cfConnectingIp = typeof cfConnectingIpRaw === "string" ? cfConnectingIpRaw.trim() : "";
|
|
15
|
+
if (cfConnectingIp) {
|
|
16
|
+
return cfConnectingIp;
|
|
17
|
+
}
|
|
18
|
+
const realIpRaw = headers["x-real-ip"] || headers["X-Real-IP"];
|
|
19
|
+
const realIp = typeof realIpRaw === "string" ? realIpRaw.trim() : "";
|
|
20
|
+
if (realIp) {
|
|
21
|
+
return realIp;
|
|
16
22
|
}
|
|
17
23
|
const forwardedFor = headers["x-forwarded-for"] || headers["X-Forwarded-For"];
|
|
18
24
|
if (typeof forwardedFor === "string" && forwardedFor.length > 0) {
|
|
@@ -20,7 +26,7 @@ function extractP24WebhookSourceIp(headers) {
|
|
|
20
26
|
.split(",")
|
|
21
27
|
.map((ip) => ip.trim())
|
|
22
28
|
.filter(Boolean);
|
|
23
|
-
return ips.length > 0 ? ips[
|
|
29
|
+
return ips.length > 0 ? ips[0] : undefined;
|
|
24
30
|
}
|
|
25
31
|
return undefined;
|
|
26
32
|
}
|
|
@@ -126,4 +132,4 @@ async function processP24Webhook(deps, webhookData) {
|
|
|
126
132
|
throw error;
|
|
127
133
|
}
|
|
128
134
|
}
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LXdlYmhvb2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3ByemVsZXd5MjQvY29yZS9wMjQtd2ViaG9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWFBLDhEQStCQztBQVNELDhDQStJQztBQWhNRCxxREFBMkQ7QUFJM0Qsd0VBQTZFO0FBQzdFLDBEQUEyRTtBQUUzRSxxRUFBNEU7QUFFNUUsU0FBZ0IseUJBQXlCLENBQ3ZDLE9BQWlDO0lBRWpDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNiLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNLGlCQUFpQixHQUNyQixPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUM3RCxNQUFNLGNBQWMsR0FDbEIsT0FBTyxpQkFBaUIsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDeEUsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNuQixPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMvRCxNQUFNLE1BQU0sR0FBRyxPQUFPLFNBQVMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3JFLElBQUksTUFBTSxFQUFFLENBQUM7UUFDWCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUUsSUFBSSxPQUFPLFlBQVksS0FBSyxRQUFRLElBQUksWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxNQUFNLEdBQUcsR0FBRyxZQUFZO2FBQ3JCLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUN0QixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkIsT0FBTyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFTTSxLQUFLLFVBQVUsaUJBQWlCLENBQ3JDLElBQW9CLEVBQ3BCLFdBQThDO0lBRTlDLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLFdBQVcsQ0FBQztJQUUvQyxJQUFJLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxJQUFvQyxDQUFDO1FBQ3JELE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRS9ELE1BQU0sUUFBUSxHQUFHLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2YsOENBQThDLFFBQVEsSUFBSSxTQUFTLEVBQUUsQ0FDdEUsQ0FBQztZQUNGLE9BQU8sRUFBRSxNQUFNLEVBQUUsc0JBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNsRCxDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMseUNBQXlDLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDeEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxzQkFBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2xELENBQUM7UUFFRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLDhEQUE4RCxTQUFTLEVBQUUsQ0FDMUUsQ0FBQztZQUNGLE9BQU8sRUFBRSxNQUFNLEVBQUUsc0JBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNsRCxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pDLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ25FLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLDREQUE0RCxTQUFTLEVBQUUsQ0FDeEUsQ0FBQztZQUNGLE9BQU8sRUFBRSxNQUFNLEVBQUUsc0JBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNsRCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBQSw2Q0FBeUIsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakUsTUFBTSxzQkFBc0IsR0FDMUIsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkQsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUN0RCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFFBQVEsRUFDUixPQUFPLENBQ1IsQ0FBQztRQUVGLElBQ0UsWUFBWSxDQUFDLFlBQVksS0FBSyxDQUFDO1lBQy9CLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFDdEMsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLG1EQUFtRCxZQUFZLENBQUMsWUFBWSxhQUFhLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQ3BILENBQUM7WUFDRixPQUFPO2dCQUNMLE1BQU0sRUFBRSxzQkFBYyxDQUFDLE1BQU07Z0JBQzdCLElBQUksRUFBRTtvQkFDSixVQUFVLEVBQUUsc0JBQXNCO29CQUNsQyxNQUFNLEVBQUUsWUFBWTtpQkFDckI7YUFDRixDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxNQUFNLElBQUEseURBQWdDLEVBQzdELElBQUksRUFDSixTQUFTLENBQ1YsQ0FBQztRQUVGLE1BQU0saUJBQWlCLEdBQUc7WUFDeEIsVUFBVSxFQUFFLHNCQUFzQjtZQUNsQyxNQUFNLEVBQUUsWUFBWTtZQUNwQixRQUFRLEVBQUUsT0FBTztZQUNqQixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7WUFDMUIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1NBQ2hDLENBQUM7UUFFRixRQUFRLFlBQVksRUFBRSxDQUFDO1lBQ3JCLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssWUFBWTtnQkFDZixPQUFPO29CQUNMLE1BQU0sRUFBRSxzQkFBYyxDQUFDLFVBQVU7b0JBQ2pDLElBQUksRUFBRSxpQkFBaUI7aUJBQ3hCLENBQUM7WUFDSixLQUFLLFNBQVM7Z0JBQ1osT0FBTztvQkFDTCxNQUFNLEVBQUUsc0JBQWMsQ0FBQyxPQUFPO29CQUM5QixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4QixDQUFDO1lBQ0osS0FBSyxVQUFVO2dCQUNiLE9BQU87b0JBQ0wsTUFBTSxFQUFFLHNCQUFjLENBQUMsUUFBUTtvQkFDL0IsSUFBSSxFQUFFLGlCQUFpQjtpQkFDeEIsQ0FBQztZQUNKLEtBQUssT0FBTztnQkFDVixPQUFPO29CQUNMLE1BQU0sRUFBRSxzQkFBYyxDQUFDLE1BQU07b0JBQzdCLElBQUksRUFBRSxpQkFBaUI7aUJBQ3hCLENBQUM7WUFDSjtnQkFDRSxPQUFPO29CQUNMLE1BQU0sRUFBRSxzQkFBYyxDQUFDLGFBQWE7b0JBQ3BDLElBQUksRUFBRSxpQkFBaUI7aUJBQ3hCLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixpQ0FBa0MsS0FBZSxDQUFDLE9BQU8sUUFBUSxJQUFJLENBQUMsU0FBUyxDQUM3RSxJQUFBLDBCQUFhLEVBQUMsT0FBTyxDQUFDLENBQ3ZCLEVBQUUsQ0FDSixDQUFDO1FBRUYsSUFBSSxDQUFDO1lBQ0gsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLElBQW9DLENBQUM7WUFDekUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsZUFBZSxDQUFDO1lBRXhELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLElBQ0UsU0FBUztnQkFDVCxNQUFNLElBQUksSUFBSTtnQkFDZCxNQUFNLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO2dCQUNsQyxpQkFBaUIsSUFBSSxDQUFDO2dCQUN0QixPQUFPLFFBQVEsS0FBSyxRQUFRO2dCQUM1QixRQUFRLENBQUMsSUFBSSxFQUFFLEVBQ2YsQ0FBQztnQkFDRCxNQUFNLFlBQVksR0FBRyxJQUFBLDZDQUF5QixFQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDakUsT0FBTztvQkFDTCxNQUFNLEVBQUUsc0JBQWMsQ0FBQyxNQUFNO29CQUM3QixJQUFJLEVBQUU7d0JBQ0osVUFBVSxFQUFFLFNBQVM7d0JBQ3JCLE1BQU0sRUFBRSxZQUFZO3FCQUNyQjtpQkFDRixDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLDRDQUE2QyxhQUF1QixDQUFDLE9BQU8sRUFBRSxDQUMvRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMifQ==
|
|
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.P24ApiService = exports.P24ApiError = void 0;
|
|
7
7
|
const crypto_1 = __importDefault(require("crypto"));
|
|
8
|
-
const types_1 = require("../types");
|
|
9
8
|
const coerce_sandbox_1 = require("../../../utils/coerce-sandbox");
|
|
10
9
|
const p24_errors_1 = require("../../../utils/p24-errors");
|
|
10
|
+
const p24_webhook_ips_1 = require("../../../utils/p24-webhook-ips");
|
|
11
11
|
class P24ApiError extends Error {
|
|
12
12
|
responseCode;
|
|
13
13
|
payload;
|
|
@@ -146,15 +146,6 @@ class P24ApiService {
|
|
|
146
146
|
async getCardInfo(orderId) {
|
|
147
147
|
return this.makeRequest(`/card/info/${orderId}`, "GET");
|
|
148
148
|
}
|
|
149
|
-
/**
|
|
150
|
-
* Charge Visa Mobile using phone number (white-label)
|
|
151
|
-
*/
|
|
152
|
-
async chargeVisaMobile(data) {
|
|
153
|
-
return this.makeRequest("/paymentMethod/visaMobile/charge", "POST", {
|
|
154
|
-
token: data.token,
|
|
155
|
-
phone: data.phone,
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
149
|
/**
|
|
159
150
|
* Make a generic request to P24 API
|
|
160
151
|
*/
|
|
@@ -256,17 +247,9 @@ class P24ApiService {
|
|
|
256
247
|
return this.secureCompareHex(expectedSign, receivedSign);
|
|
257
248
|
}
|
|
258
249
|
isAllowedWebhookIp(ipAddress) {
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
}
|
|
262
|
-
const normalized = ipAddress.trim();
|
|
263
|
-
if (!normalized) {
|
|
264
|
-
return false;
|
|
265
|
-
}
|
|
266
|
-
if (this.options.sandbox && (normalized === "127.0.0.1" || normalized === "::1")) {
|
|
267
|
-
return true;
|
|
268
|
-
}
|
|
269
|
-
return types_1.P24_WEBHOOK_ALLOWED_IPS.includes(normalized);
|
|
250
|
+
return (0, p24_webhook_ips_1.isAllowedP24WebhookSourceIp)(ipAddress, {
|
|
251
|
+
sandbox: this.options.sandbox,
|
|
252
|
+
});
|
|
270
253
|
}
|
|
271
254
|
hashSignaturePayload(payload) {
|
|
272
255
|
const jsonString = JSON.stringify(payload, null, 0).replace(/\\\//g, "/");
|
|
@@ -307,4 +290,4 @@ class P24ApiService {
|
|
|
307
290
|
}
|
|
308
291
|
}
|
|
309
292
|
exports.P24ApiService = P24ApiService;
|
|
310
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvcHJ6ZWxld3kyNC9zZXJ2aWNlcy9wMjQtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixvQ0FtQmtCO0FBQ2xCLGtFQUE4RDtBQUM5RCwwREFBMEU7QUFFMUUsTUFBYSxXQUFZLFNBQVEsS0FBSztJQUMzQixZQUFZLENBQVU7SUFDdEIsT0FBTyxDQUFXO0lBRTNCLFlBQVksT0FBZSxFQUFFLFlBQXFCLEVBQUUsT0FBaUI7UUFDbkUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBVkQsa0NBVUM7QUFFRCxNQUFhLGFBQWE7SUFDUCxPQUFPLENBQWE7SUFDcEIsT0FBTyxDQUFTO0lBRWpDLFlBQVksT0FBbUI7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRztZQUNiLEdBQUcsT0FBTztZQUNWLE9BQU8sRUFBRSxJQUFBLDhCQUFhLEVBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUN4QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDakMsQ0FBQyxDQUFDLHNDQUFzQztZQUN4QyxDQUFDLENBQUMscUNBQXFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLG1CQUFtQixDQUN2QixJQUFvQjtRQUVwQixNQUFNLFdBQVcsR0FBNEI7WUFDM0MsVUFBVSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMs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
|
|
293
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvcHJ6ZWxld3kyNC9zZXJ2aWNlcy9wMjQtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUE0QjtBQWtCNUIsa0VBQThEO0FBQzlELDBEQUEwRTtBQUMxRSxvRUFBNkU7QUFFN0UsTUFBYSxXQUFZLFNBQVEsS0FBSztJQUMzQixZQUFZLENBQVU7SUFDdEIsT0FBTyxDQUFXO0lBRTNCLFlBQVksT0FBZSxFQUFFLFlBQXFCLEVBQUUsT0FBaUI7UUFDbkUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBVkQsa0NBVUM7QUFFRCxNQUFhLGFBQWE7SUFDUCxPQUFPLENBQWE7SUFDcEIsT0FBTyxDQUFTO0lBRWpDLFlBQVksT0FBbUI7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRztZQUNiLEdBQUcsT0FBTztZQUNWLE9BQU8sRUFBRSxJQUFBLDhCQUFhLEVBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUN4QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDakMsQ0FBQyxDQUFDLHNDQUFzQztZQUN4QyxDQUFDLENBQUMscUNBQXFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLG1CQUFtQixDQUN2QixJQUFvQjtRQUVwQixNQUFNLFdBQVcsR0FBNEI7WUFDM0MsVUFBVSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUM5QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQ3BDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO2dCQUN0QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQzlDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2dCQUN2QixHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHO2FBQ3RCLENBQUM7U0FDSCxDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzdDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNyQyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3hCLFdBQVcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUN0QyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwQixXQUFXLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDM0MsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGlCQUFpQixDQUNyQixTQUFpQixFQUNqQixNQUFjLEVBQ2QsUUFBZ0IsRUFDaEIsT0FBZTtRQUVmLE1BQU0sSUFBSSxHQUFHO1lBQ1gsVUFBVSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUM5QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQ3BDLFNBQVM7WUFDVCxNQUFNO1lBQ04sUUFBUTtZQUNSLE9BQU87WUFDUCxJQUFJLEVBQUUsSUFBSSxDQUFDLHdCQUF3QixDQUFDO2dCQUNsQyxTQUFTO2dCQUNULE9BQU87Z0JBQ1AsTUFBTTtnQkFDTixRQUFRO2dCQUNSLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7YUFDdEIsQ0FBQztTQUNILENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxpQkFBaUIsQ0FDckIsSUFBWSxFQUNaLFlBQW9CLEVBQ3BCLFFBQWdCO1FBRWhCLE1BQU0sTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDO1lBQ2pDLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ3JELFFBQVEsRUFBRSxRQUFRLENBQUMsV0FBVyxFQUFFO1NBQ2pDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FDckIsb0JBQW9CLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUNqRixLQUFLLENBQ04sQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyx5QkFBeUIsQ0FDN0IsU0FBaUI7UUFFakIsTUFBTSxRQUFRLEdBQUcsNkJBQTZCLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDOUUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsYUFBYSxDQUNqQixVQUFnQztRQUVoQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxnQkFBZ0IsQ0FDcEIsSUFBNkI7UUFFN0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGtDQUFrQyxFQUFFLE1BQU0sRUFBRTtZQUNsRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFhO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBYTtRQUM1QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFlO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7T0FFRztJQUNLLEtBQUssQ0FBQyxXQUFXLENBQ3ZCLFFBQWdCLEVBQ2hCLE1BQWMsRUFDZCxJQUFjO1FBRWQsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsRUFBRSxDQUFDO1FBRXpDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQzdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FDakQsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ2hDLE1BQU07WUFDTixPQUFPLEVBQUU7Z0JBQ1AsY0FBYyxFQUFFLGtCQUFrQjtnQkFDbEMsYUFBYSxFQUFFLFNBQVMsV0FBVyxFQUFFO2FBQ3RDO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUM5QyxDQUFDLENBQUM7UUFFSCxNQUFNLFlBQVksR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQyxJQUFJLE1BQU0sR0FBWSxFQUFFLENBQUM7UUFFekIsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDcEMsQ0FBQztZQUFDLE1BQU0sQ0FBQztnQkFDUCxNQUFNLEdBQUcsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDckMsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxXQUFXLENBQ25CLElBQUEsMENBQTZCLEVBQzNCLE1BQU0sRUFDTiwyQkFBMkIsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFLENBQ3BFLEVBQ0EsTUFBb0MsRUFBRSxZQUFZLEVBQ25ELE1BQU0sQ0FDUCxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxJQUFzQjtRQUNqQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN2RSxPQUFPLGdCQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7T0FFRztJQUNILHdCQUF3QixDQUFDLElBQWtDO1FBQ3pELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sZ0JBQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFFBQWdCLEVBQUUsUUFBZ0I7UUFDekQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDakQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFakQsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM5QyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFFRCxPQUFPLGdCQUFNLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxzQkFBc0IsQ0FDcEIsT0FBMEIsRUFDMUIsWUFBb0I7UUFFcEIsTUFBTSxRQUFRLEdBQUc7WUFDZixVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1lBQzlDLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDcEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTO1lBQzVCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtZQUN0QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7WUFDbEMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1lBQzFCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7WUFDMUIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTO1lBQzVCLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7U0FDdEIsQ0FBQztRQUVGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELHNDQUFzQyxDQUNwQyxPQUEwQyxFQUMxQyxZQUFvQixFQUNwQixTQUFTLEdBQUcsS0FBSztRQUVqQixNQUFNLFFBQVEsR0FBRyxTQUFTO1lBQ3hCLENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUM5QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUNwQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7Z0JBQzVCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7Z0JBQzFCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDdEIsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRzthQUN0QjtZQUNILENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUM5QyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUNwQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7Z0JBQzVCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7Z0JBQzFCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztnQkFDcEIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO2dCQUNoQixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7Z0JBQ2xCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtnQkFDMUIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO2dCQUMxQixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7Z0JBQ2xCLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7YUFDdEIsQ0FBQztRQUVOLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGtCQUFrQixDQUFDLFNBQTZCO1FBQzlDLE9BQU8sSUFBQSw2Q0FBMkIsRUFBQyxTQUFTLEVBQUU7WUFDNUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztTQUM5QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsT0FBZ0M7UUFDM0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDMUUsT0FBTyxnQkFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDekIsQ0FBQyxDQUFDLDBDQUEwQztZQUM1QyxDQUFDLENBQUMseUNBQXlDLENBQUM7SUFDaEQsQ0FBQztJQUVELDRCQUE0QixDQUFDLFNBQWlCO1FBQzVDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO1lBQy9CLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDOUMsU0FBUztZQUNULEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDRCQUE0QjtRQUMxQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDL0IsQ0FBQyxDQUFDLCtCQUErQjtZQUNqQyxDQUFDLENBQUMsOEJBQThCLENBQUM7UUFFbkMsT0FBTyxHQUFHLElBQUksbUNBQW1DLENBQUM7SUFDcEQsQ0FBQztJQUVELDBCQUEwQixDQUFDLEtBQWE7UUFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO1lBQy9CLENBQUMsQ0FBQywrQkFBK0I7WUFDakMsQ0FBQyxDQUFDLDhCQUE4QixDQUFDO1FBRW5DLE9BQU8sR0FBRyxJQUFJLCtCQUErQixrQkFBa0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQzNFLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxLQUFhO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztZQUMvQixDQUFDLENBQUMsK0JBQStCO1lBQ2pDLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQztRQUVuQyxPQUFPLEdBQUcsSUFBSSxzQ0FBc0Msa0JBQWtCLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUNsRixDQUFDO0NBQ0Y7QUFqV0Qsc0NBaVdDIn0=
|
|
@@ -18,7 +18,7 @@ class P24VisaMobileService extends p24_base_1.default {
|
|
|
18
18
|
...options,
|
|
19
19
|
sandbox: (0, coerce_sandbox_1.coerceSandbox)(options.sandbox),
|
|
20
20
|
visa_mobile_method_id: methodId,
|
|
21
|
-
white_label: options.white_label ??
|
|
21
|
+
white_label: options.white_label ?? false,
|
|
22
22
|
};
|
|
23
23
|
super(cradle, normalizedOptions);
|
|
24
24
|
this.visaMobileOptions_ = normalizedOptions;
|
|
@@ -27,7 +27,7 @@ class P24VisaMobileService extends p24_base_1.default {
|
|
|
27
27
|
const options = {
|
|
28
28
|
method_id: this.visaMobileOptions_.visa_mobile_method_id,
|
|
29
29
|
description: "Payment via Przelewy24 - Visa Mobile",
|
|
30
|
-
white_label: this.visaMobileOptions_.white_label ??
|
|
30
|
+
white_label: this.visaMobileOptions_.white_label ?? false,
|
|
31
31
|
};
|
|
32
32
|
if (this.visaMobileOptions_.channel != null &&
|
|
33
33
|
this.visaMobileOptions_.channel > 0) {
|
|
@@ -38,12 +38,6 @@ class P24VisaMobileService extends p24_base_1.default {
|
|
|
38
38
|
getProviderKey() {
|
|
39
39
|
return types_1.PaymentProviderKeys.P24_VISA_MOBILE;
|
|
40
40
|
}
|
|
41
|
-
async chargeVisaMobilePayment(token, phone) {
|
|
42
|
-
return this.p24Api.chargeVisaMobile({
|
|
43
|
-
token,
|
|
44
|
-
phone,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
41
|
}
|
|
48
42
|
exports.default = P24VisaMobileService;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LXZpc2EtbW9iaWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy9wcnplbGV3eTI0L3NlcnZpY2VzL3AyNC12aXNhLW1vYmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdFQUF1QztBQUN2QyxvQ0FLa0I7QUFDbEIsa0VBQThEO0FBRTlELE1BQU0sb0JBQXFCLFNBQVEsa0JBQU87SUFDeEMsTUFBTSxDQUFDLFVBQVUsR0FBRywyQkFBbUIsQ0FBQyxlQUFlLENBQUM7SUFFdkMsa0JBQWtCLENBQW9CO0lBRXZELFlBQVksTUFBK0IsRUFBRSxPQUEwQjtRQUNyRSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMscUJBQXFCLElBQUkscUNBQTZCLENBQUM7UUFFaEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sSUFBSSxLQUFLLENBQ2IscUVBQXFFLENBQ3RFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxpQkFBaUIsR0FBc0I7WUFDM0MsR0FBRyxPQUFPO1lBQ1YsT0FBTyxFQUFFLElBQUEsOEJBQWEsRUFBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3ZDLHFCQUFxQixFQUFFLFFBQVE7WUFDL0IsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXLElBQUksS0FBSztTQUMxQyxDQUFDO1FBRUYsS0FBSyxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsTUFBTSxPQUFPLEdBQTRCO1lBQ3ZDLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMscUJBQXFCO1lBQ3hELFdBQVcsRUFBRSxzQ0FBc0M7WUFDbkQsV0FBVyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLElBQUksS0FBSztTQUMxRCxDQUFDO1FBRUYsSUFDRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxJQUFJLElBQUk7WUFDdkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQ25DLENBQUM7WUFDRCxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDcEQsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFUyxjQUFjO1FBQ3RCLE9BQU8sMkJBQW1CLENBQUMsZUFBZSxDQUFDO0lBQzdDLENBQUM7O0FBR0gsa0JBQWUsb0JBQW9CLENBQUMifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ErrorIntentStatus = exports.ErrorCodes = exports.DEFAULT_VISA_MOBILE_METHOD_ID = exports.DEFAULT_BLIK_CHANNEL = exports.DEFAULT_CARD_CHANNEL = exports.P24_WEBHOOK_ALLOWED_IPS = exports.PaymentProviderKeys = void 0;
|
|
3
|
+
exports.ErrorIntentStatus = exports.ErrorCodes = exports.DEFAULT_VISA_MOBILE_METHOD_ID = exports.DEFAULT_BLIK_CHANNEL = exports.DEFAULT_CARD_CHANNEL = exports.P24_WEBHOOK_ALLOWED_IPS = exports.P24_WEBHOOK_ALLOWED_CIDRS = exports.PaymentProviderKeys = void 0;
|
|
4
4
|
var PaymentProviderKeys;
|
|
5
5
|
(function (PaymentProviderKeys) {
|
|
6
6
|
PaymentProviderKeys["P24_PROVIDER"] = "p24-provider";
|
|
@@ -8,11 +8,9 @@ var PaymentProviderKeys;
|
|
|
8
8
|
PaymentProviderKeys["P24_CARDS"] = "p24-cards";
|
|
9
9
|
PaymentProviderKeys["P24_VISA_MOBILE"] = "p24-visa-mobile";
|
|
10
10
|
})(PaymentProviderKeys || (exports.PaymentProviderKeys = PaymentProviderKeys = {}));
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
"20.215.81.124",
|
|
15
|
-
];
|
|
11
|
+
var p24_webhook_ips_1 = require("../../../utils/p24-webhook-ips");
|
|
12
|
+
Object.defineProperty(exports, "P24_WEBHOOK_ALLOWED_CIDRS", { enumerable: true, get: function () { return p24_webhook_ips_1.P24_WEBHOOK_ALLOWED_CIDRS; } });
|
|
13
|
+
Object.defineProperty(exports, "P24_WEBHOOK_ALLOWED_IPS", { enumerable: true, get: function () { return p24_webhook_ips_1.P24_WEBHOOK_ALLOWED_IPS; } });
|
|
16
14
|
exports.DEFAULT_CARD_CHANNEL = 4096;
|
|
17
15
|
exports.DEFAULT_BLIK_CHANNEL = 64;
|
|
18
16
|
exports.DEFAULT_VISA_MOBILE_METHOD_ID = 198;
|
|
@@ -23,4 +21,4 @@ exports.ErrorIntentStatus = {
|
|
|
23
21
|
CANCELED: "canceled",
|
|
24
22
|
SUCCEEDED: "succeeded",
|
|
25
23
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3ByemVsZXd5MjQvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBNlBBLElBQVksbUJBS1g7QUFMRCxXQUFZLG1CQUFtQjtJQUM3QixvREFBNkIsQ0FBQTtJQUM3Qiw0Q0FBcUIsQ0FBQTtJQUNyQiw4Q0FBdUIsQ0FBQTtJQUN2QiwwREFBbUMsQ0FBQTtBQUNyQyxDQUFDLEVBTFcsbUJBQW1CLG1DQUFuQixtQkFBbUIsUUFLOUI7QUFFRCxrRUFHd0M7QUFGdEMsNEhBQUEseUJBQXlCLE9BQUE7QUFDekIsMEhBQUEsdUJBQXVCLE9BQUE7QUFHWixRQUFBLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUM1QixRQUFBLG9CQUFvQixHQUFHLEVBQUUsQ0FBQztBQUMxQixRQUFBLDZCQUE2QixHQUFHLEdBQUcsQ0FBQztBQUVwQyxRQUFBLFVBQVUsR0FBRztJQUN4QiwrQkFBK0IsRUFBRSxpQ0FBaUM7Q0FDMUQsQ0FBQztBQUVFLFFBQUEsaUJBQWlCLEdBQUc7SUFDL0IsUUFBUSxFQUFFLFVBQVU7SUFDcEIsU0FBUyxFQUFFLFdBQVc7Q0FDZCxDQUFDIn0=
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inferMedusaPaymentSessionIdFromP24SessionId = inferMedusaPaymentSessionIdFromP24SessionId;
|
|
3
4
|
exports.getSessionId = getSessionId;
|
|
4
5
|
exports.getOrderId = getOrderId;
|
|
5
6
|
exports.getToken = getToken;
|
|
6
7
|
exports.normalizeP24SessionData = normalizeP24SessionData;
|
|
8
|
+
const MEDUSA_PAYMENT_SESSION_ID_WITH_RETRY_SUFFIX = /^(payses_[0-9A-Z]{26})(?:-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?$/i;
|
|
9
|
+
/**
|
|
10
|
+
* P24 transaction sessionId is usually the Medusa payment session id (`payses_*`).
|
|
11
|
+
* Retried payments append a UUID suffix after updatePayment.
|
|
12
|
+
*/
|
|
13
|
+
function inferMedusaPaymentSessionIdFromP24SessionId(p24SessionId) {
|
|
14
|
+
const match = p24SessionId.match(MEDUSA_PAYMENT_SESSION_ID_WITH_RETRY_SUFFIX);
|
|
15
|
+
return match?.[1];
|
|
16
|
+
}
|
|
7
17
|
function getSessionId(data) {
|
|
8
18
|
if (!data) {
|
|
9
19
|
return undefined;
|
|
@@ -51,4 +61,4 @@ function normalizeP24SessionData(data) {
|
|
|
51
61
|
: {}),
|
|
52
62
|
};
|
|
53
63
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LXNlc3Npb24tZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9wMjQtc2Vzc2lvbi1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esa0dBS0M7QUFjRCxvQ0FTQztBQUVELGdDQWdCQztBQUVELDRCQU9DO0FBRUQsMERBb0JDO0FBcEZELE1BQU0sMkNBQTJDLEdBQy9DLDRGQUE0RixDQUFDO0FBRS9GOzs7R0FHRztBQUNILFNBQWdCLDJDQUEyQyxDQUN6RCxZQUFvQjtJQUVwQixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7SUFDOUUsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwQixDQUFDO0FBY0QsU0FBZ0IsWUFBWSxDQUFDLElBQXFDO0lBQ2hFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDcEQsT0FBTyxPQUFPLFNBQVMsS0FBSyxRQUFRLElBQUksU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQzFELENBQUMsQ0FBQyxTQUFTO1FBQ1gsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLElBQXFDO0lBQzlELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDOUMsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQzVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzdELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3RELENBQUM7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLElBQXFDO0lBQzVELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3pCLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUMzRSxDQUFDO0FBRUQsU0FBZ0IsdUJBQXVCLENBQ3JDLElBQXFDO0lBRXJDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTdCLE9BQU87UUFDTCxHQUFHLElBQUk7UUFDUCxVQUFVLEVBQUUsU0FBUyxJQUFJLEVBQUU7UUFDM0IsR0FBRyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFELEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzQixHQUFHLENBQUMsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVE7WUFDbkMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDM0QsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUNSLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.P24_WEBHOOK_ALLOWED_CIDRS = exports.P24_WEBHOOK_ALLOWED_IPS = void 0;
|
|
4
|
+
exports.isAllowedP24WebhookSourceIp = isAllowedP24WebhookSourceIp;
|
|
5
|
+
exports.P24_WEBHOOK_ALLOWED_IPS = [
|
|
6
|
+
"5.252.202.254",
|
|
7
|
+
"5.252.202.255",
|
|
8
|
+
"20.215.81.124",
|
|
9
|
+
];
|
|
10
|
+
exports.P24_WEBHOOK_ALLOWED_CIDRS = [
|
|
11
|
+
"193.178.213.0/24",
|
|
12
|
+
"91.220.177.0/24",
|
|
13
|
+
"20.215.183.48/28",
|
|
14
|
+
"134.112.88.8/29",
|
|
15
|
+
];
|
|
16
|
+
function ipv4ToNumber(ip) {
|
|
17
|
+
const parts = ip.split(".");
|
|
18
|
+
if (parts.length !== 4) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
let value = 0;
|
|
22
|
+
for (const part of parts) {
|
|
23
|
+
if (!/^\d{1,3}$/.test(part)) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
const octet = Number(part);
|
|
27
|
+
if (!Number.isInteger(octet) || octet < 0 || octet > 255) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
value = (value << 8) + octet;
|
|
31
|
+
}
|
|
32
|
+
return value >>> 0;
|
|
33
|
+
}
|
|
34
|
+
function isIpv4InCidr(ip, cidr) {
|
|
35
|
+
const [network, prefixStr] = cidr.split("/");
|
|
36
|
+
const prefix = Number(prefixStr);
|
|
37
|
+
if (!network || !Number.isInteger(prefix) || prefix < 0 || prefix > 32) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
const ipNum = ipv4ToNumber(ip);
|
|
41
|
+
const networkNum = ipv4ToNumber(network);
|
|
42
|
+
if (ipNum === null || networkNum === null) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
const mask = prefix === 0 ? 0 : (0xffffffff << (32 - prefix)) >>> 0;
|
|
46
|
+
return (ipNum & mask) === (networkNum & mask);
|
|
47
|
+
}
|
|
48
|
+
function isAllowedP24WebhookSourceIp(ipAddress, options = {}) {
|
|
49
|
+
const normalized = ipAddress?.trim();
|
|
50
|
+
if (!normalized) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
if (options.sandbox &&
|
|
54
|
+
(normalized === "127.0.0.1" || normalized === "::1")) {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
if (exports.P24_WEBHOOK_ALLOWED_IPS.includes(normalized)) {
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
return exports.P24_WEBHOOK_ALLOWED_CIDRS.some((cidr) => isIpv4InCidr(normalized, cidr));
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDI0LXdlYmhvb2staXBzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3V0aWxzL3AyNC13ZWJob29rLWlwcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFxREEsa0VBMkJDO0FBaEZZLFFBQUEsdUJBQXVCLEdBQUc7SUFDckMsZUFBZTtJQUNmLGVBQWU7SUFDZixlQUFlO0NBQ1AsQ0FBQztBQUVFLFFBQUEseUJBQXlCLEdBQUc7SUFDdkMsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsaUJBQWlCO0NBQ1QsQ0FBQztBQUVYLFNBQVMsWUFBWSxDQUFDLEVBQVU7SUFDOUIsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxLQUFLLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQy9CLENBQUM7SUFFRCxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUM7QUFDckIsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEVBQVUsRUFBRSxJQUFZO0lBQzVDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFakMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxHQUFHLENBQUMsSUFBSSxNQUFNLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDdkUsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksVUFBVSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzFDLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEUsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQztBQUNoRCxDQUFDO0FBRUQsU0FBZ0IsMkJBQTJCLENBQ3pDLFNBQTZCLEVBQzdCLFVBQWlDLEVBQUU7SUFFbkMsTUFBTSxVQUFVLEdBQUcsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3JDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxJQUNFLE9BQU8sQ0FBQyxPQUFPO1FBQ2YsQ0FBQyxVQUFVLEtBQUssV0FBVyxJQUFJLFVBQVUsS0FBSyxLQUFLLENBQUMsRUFDcEQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQ0UsK0JBQXVCLENBQUMsUUFBUSxDQUM5QixVQUFzRCxDQUN2RCxFQUNELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLGlDQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQzdDLFlBQVksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQy9CLENBQUM7QUFDSixDQUFDIn0=
|
package/README.md
CHANGED
|
@@ -221,30 +221,19 @@ const { token, chargeScriptUrl } = await cardResponse.json();
|
|
|
221
221
|
// 6) Capture happens via P24 webhook to urlStatus (not via a separate confirm API)
|
|
222
222
|
```
|
|
223
223
|
|
|
224
|
-
#### Visa Mobile (
|
|
224
|
+
#### Visa Mobile (redirect with pre-selected method)
|
|
225
225
|
|
|
226
226
|
```typescript
|
|
227
|
-
// 1) Create payment session — returns
|
|
227
|
+
// 1) Create payment session — returns redirect_url with method 198 pre-selected
|
|
228
228
|
const { payment_session } = await medusa.store.cart.createPaymentSession(cartId, {
|
|
229
229
|
provider_id: "pp_p24-visa-mobile_przelewy24",
|
|
230
230
|
});
|
|
231
231
|
|
|
232
|
-
// 2)
|
|
233
|
-
|
|
234
|
-
method: "POST",
|
|
235
|
-
headers: {
|
|
236
|
-
"Content-Type": "application/json",
|
|
237
|
-
"x-publishable-api-key": publishableKey,
|
|
238
|
-
},
|
|
239
|
-
body: JSON.stringify({
|
|
240
|
-
token: payment_session.data.token,
|
|
241
|
-
phone: "48600100200",
|
|
242
|
-
payment_session_id: payment_session.id,
|
|
243
|
-
}),
|
|
244
|
-
});
|
|
232
|
+
// 2) Redirect customer to P24 Visa Mobile flow
|
|
233
|
+
window.location.href = payment_session.data.redirect_url;
|
|
245
234
|
|
|
246
|
-
// 3) Customer
|
|
247
|
-
// 4)
|
|
235
|
+
// 3) Customer completes payment on P24 hosted page
|
|
236
|
+
// 4) Return to frontend_url / return_url
|
|
248
237
|
// 5) Capture happens via P24 webhook to urlStatus (not via a separate confirm API)
|
|
249
238
|
```
|
|
250
239
|
|
|
@@ -290,7 +279,7 @@ The plugin currently supports the following Przelewy24 payment methods:
|
|
|
290
279
|
| -------------- | ----------------------------------- | ------------------------------ |
|
|
291
280
|
| BLIK | `pp_p24-blik_przelewy24` | White-label, channel 64 |
|
|
292
281
|
| Cards | `pp_p24-cards_przelewy24` | White-label iframe, channel 4096 |
|
|
293
|
-
| Visa Mobile | `pp_p24-visa-mobile_przelewy24` |
|
|
282
|
+
| Visa Mobile | `pp_p24-visa-mobile_przelewy24` | Redirect with method `198` |
|
|
294
283
|
| General P24 | `pp_p24-provider_przelewy24` | Redirect to P24 method picker |
|
|
295
284
|
|
|
296
285
|
## Payment Flows
|
|
@@ -318,7 +307,14 @@ BLIK does not use redirect URLs.
|
|
|
318
307
|
|
|
319
308
|
See [P24 Card 2.0 docs](https://developers.przelewy24.pl/extended/index.php?pl#tag/Inicjalizacja-formularza).
|
|
320
309
|
|
|
321
|
-
### 3.
|
|
310
|
+
### 3. Visa Mobile (redirect with pre-selected method)
|
|
311
|
+
|
|
312
|
+
1. Create payment session → `redirect_url` (P24 `transaction/register` includes `method: 198`)
|
|
313
|
+
2. Customer pays on P24 hosted Visa Mobile page
|
|
314
|
+
3. Return to `frontend_url` / `return_url`
|
|
315
|
+
4. Webhook confirms payment
|
|
316
|
+
|
|
317
|
+
### 4. General P24 (redirect)
|
|
322
318
|
|
|
323
319
|
1. Create payment session → `redirect_url`
|
|
324
320
|
2. Customer pays on P24 hosted page
|
|
@@ -329,7 +325,7 @@ See [P24 Card 2.0 docs](https://developers.przelewy24.pl/extended/index.php?pl#t
|
|
|
329
325
|
|
|
330
326
|
| Step | Mechanism |
|
|
331
327
|
|------|-----------|
|
|
332
|
-
| Order creation | Storefront polls `complete`; Medusa `authorizePayment` queries P24 API |
|
|
328
|
+
| Order creation | Storefront polls `complete`; Medusa `authorizePayment` queries P24 API; or `complete-captured-carts-backstop` (Medusa, every 2 min) when payment is already captured |
|
|
333
329
|
| Capture + `completed_at` | P24 webhook to `urlStatus`, or `reconcile-p24-payments` job (every 5 min) |
|
|
334
330
|
|
|
335
331
|
**Do not** add a separate store “confirm” route to replace webhooks. Production capture is webhook-driven.
|
package/package.json
CHANGED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.POST = POST;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
const charge_helper_1 = require("../../utils/charge-helper");
|
|
6
|
-
const types_1 = require("../../../../../providers/przelewy24/types");
|
|
7
|
-
const PL_PHONE_REGEX = /^(\+?48)?\d{9}$/;
|
|
8
|
-
function normalizePolishPhone(phone) {
|
|
9
|
-
const digitsOnly = phone.replace(/\D/g, "");
|
|
10
|
-
if (digitsOnly.length === 9) {
|
|
11
|
-
return `48${digitsOnly}`;
|
|
12
|
-
}
|
|
13
|
-
if (digitsOnly.length === 11 && digitsOnly.startsWith("48")) {
|
|
14
|
-
return digitsOnly;
|
|
15
|
-
}
|
|
16
|
-
throw new Error("Invalid Polish mobile phone number");
|
|
17
|
-
}
|
|
18
|
-
const visaMobileChargeSchema = zod_1.z.object({
|
|
19
|
-
token: zod_1.z.string().min(1, "Token is required").max(200, "Token is too long"),
|
|
20
|
-
phone: zod_1.z
|
|
21
|
-
.string()
|
|
22
|
-
.min(9, "Phone number is required")
|
|
23
|
-
.max(15, "Phone number is too long")
|
|
24
|
-
.regex(PL_PHONE_REGEX, "Invalid Polish mobile phone number"),
|
|
25
|
-
payment_session_id: zod_1.z.string().min(1).optional(),
|
|
26
|
-
});
|
|
27
|
-
async function POST(req, res) {
|
|
28
|
-
const validationResult = visaMobileChargeSchema.safeParse(req.body);
|
|
29
|
-
if (!validationResult.success) {
|
|
30
|
-
const errors = validationResult.error.errors.map((err) => `${err.path.join(".")}: ${err.message}`);
|
|
31
|
-
return res.status(400).json({
|
|
32
|
-
error: "Validation failed",
|
|
33
|
-
details: errors,
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
const { token, phone, payment_session_id } = validationResult.data;
|
|
37
|
-
try {
|
|
38
|
-
const normalizedPhone = normalizePolishPhone(phone);
|
|
39
|
-
const provider = (0, charge_helper_1.resolveP24Provider)(req, types_1.PaymentProviderKeys.P24_VISA_MOBILE);
|
|
40
|
-
const result = await (0, charge_helper_1.handleP24Charge)({
|
|
41
|
-
req,
|
|
42
|
-
paymentSessionId: payment_session_id,
|
|
43
|
-
execute: async () => {
|
|
44
|
-
const response = await provider.chargeVisaMobilePayment(token, normalizedPhone);
|
|
45
|
-
return (0, charge_helper_1.parseP24ChargeResponse)(response);
|
|
46
|
-
},
|
|
47
|
-
});
|
|
48
|
-
return res.status(200).json(result);
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
const message = error instanceof Error ? error.message : "Visa Mobile payment failed";
|
|
52
|
-
return res.status(400).json({
|
|
53
|
-
error: "Visa Mobile payment failed",
|
|
54
|
-
message,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3BheW1lbnRzL3Zpc2EtbW9iaWxlL2NoYXJnZS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXFDQSxvQkE2Q0M7QUFqRkQsNkJBQXdCO0FBR3hCLDZEQUltQztBQUNuQyxxRUFBZ0Y7QUFFaEYsTUFBTSxjQUFjLEdBQUcsaUJBQWlCLENBQUM7QUFFekMsU0FBUyxvQkFBb0IsQ0FBQyxLQUFhO0lBQ3pDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTVDLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM1QixPQUFPLEtBQUssVUFBVSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxFQUFFLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUVELE1BQU0sc0JBQXNCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN0QyxLQUFLLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDO0lBQzNFLEtBQUssRUFBRSxPQUFDO1NBQ0wsTUFBTSxFQUFFO1NBQ1IsR0FBRyxDQUFDLENBQUMsRUFBRSwwQkFBMEIsQ0FBQztTQUNsQyxHQUFHLENBQUMsRUFBRSxFQUFFLDBCQUEwQixDQUFDO1NBQ25DLEtBQUssQ0FBQyxjQUFjLEVBQUUsb0NBQW9DLENBQUM7SUFDOUQsa0JBQWtCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7Q0FDakQsQ0FBQyxDQUFDO0FBRUksS0FBSyxVQUFVLElBQUksQ0FBQyxHQUFrQixFQUFFLEdBQW1CO0lBQ2hFLE1BQU0sZ0JBQWdCLEdBQUcsc0JBQXNCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVwRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQzlDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FDakQsQ0FBQztRQUVGLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDMUIsS0FBSyxFQUFFLG1CQUFtQjtZQUMxQixPQUFPLEVBQUUsTUFBTTtTQUNoQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7SUFFbkUsSUFBSSxDQUFDO1FBQ0gsTUFBTSxlQUFlLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEQsTUFBTSxRQUFRLEdBQUcsSUFBQSxrQ0FBa0IsRUFDakMsR0FBRyxFQUNILDJCQUFtQixDQUFDLGVBQWUsQ0FDcEMsQ0FBQztRQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSwrQkFBZSxFQUFDO1lBQ25DLEdBQUc7WUFDSCxnQkFBZ0IsRUFBRSxrQkFBa0I7WUFDcEMsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO2dCQUNsQixNQUFNLFFBQVEsR0FBRyxNQUFNLFFBQVEsQ0FBQyx1QkFBdUIsQ0FDckQsS0FBSyxFQUNMLGVBQWUsQ0FDaEIsQ0FBQztnQkFDRixPQUFPLElBQUEsc0NBQXNCLEVBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUMsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUVILE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLE9BQU8sR0FDWCxLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQztRQUV4RSxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzFCLEtBQUssRUFBRSw0QkFBNEI7WUFDbkMsT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDIn0=
|