cmi-node 1.0.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/LICENSE +21 -0
- package/dist/constants/confirmationModes.cjs +19 -0
- package/dist/constants/confirmationModes.d.ts +5 -0
- package/dist/constants/confirmationModes.d.ts.map +1 -0
- package/dist/constants/confirmationModes.js.map +1 -0
- package/dist/constants/confirmationModes.mjs +15 -0
- package/dist/constants/currencies.cjs +73 -0
- package/dist/constants/currencies.d.ts +219 -0
- package/dist/constants/currencies.d.ts.map +1 -0
- package/dist/constants/currencies.js.map +1 -0
- package/dist/constants/currencies.mjs +66 -0
- package/dist/constants/fields.cjs +54 -0
- package/dist/constants/fields.d.ts +9 -0
- package/dist/constants/fields.d.ts.map +1 -0
- package/dist/constants/fields.js.map +1 -0
- package/dist/constants/fields.mjs +48 -0
- package/dist/constants/index.cjs +7 -0
- package/dist/constants/index.d.ts +7 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/index.mjs +7 -0
- package/dist/constants/languages.cjs +56 -0
- package/dist/constants/languages.d.ts +5 -0
- package/dist/constants/languages.d.ts.map +1 -0
- package/dist/constants/languages.js.map +1 -0
- package/dist/constants/languages.mjs +52 -0
- package/dist/constants/storeTypes.cjs +26 -0
- package/dist/constants/storeTypes.d.ts +5 -0
- package/dist/constants/storeTypes.d.ts.map +1 -0
- package/dist/constants/storeTypes.js.map +1 -0
- package/dist/constants/storeTypes.mjs +22 -0
- package/dist/constants/tranTypes.cjs +22 -0
- package/dist/constants/tranTypes.d.ts +5 -0
- package/dist/constants/tranTypes.d.ts.map +1 -0
- package/dist/constants/tranTypes.js.map +1 -0
- package/dist/constants/tranTypes.mjs +18 -0
- package/dist/core/CMIPaymentGateway.cjs +94 -0
- package/dist/core/CMIPaymentGateway.d.ts +29 -0
- package/dist/core/CMIPaymentGateway.d.ts.map +1 -0
- package/dist/core/CMIPaymentGateway.js.map +1 -0
- package/dist/core/CMIPaymentGateway.mjs +92 -0
- package/dist/core/CallbackHandler.cjs +92 -0
- package/dist/core/CallbackHandler.d.ts +16 -0
- package/dist/core/CallbackHandler.d.ts.map +1 -0
- package/dist/core/CallbackHandler.js.map +1 -0
- package/dist/core/CallbackHandler.mjs +90 -0
- package/dist/core/CallbackVerifier.cjs +92 -0
- package/dist/core/CallbackVerifier.d.ts +12 -0
- package/dist/core/CallbackVerifier.d.ts.map +1 -0
- package/dist/core/CallbackVerifier.js.map +1 -0
- package/dist/core/CallbackVerifier.mjs +90 -0
- package/dist/core/FormGenerator.cjs +44 -0
- package/dist/core/FormGenerator.d.ts +7 -0
- package/dist/core/FormGenerator.d.ts.map +1 -0
- package/dist/core/FormGenerator.js.map +1 -0
- package/dist/core/FormGenerator.mjs +42 -0
- package/dist/core/PaymentBuilder.cjs +63 -0
- package/dist/core/PaymentBuilder.d.ts +17 -0
- package/dist/core/PaymentBuilder.d.ts.map +1 -0
- package/dist/core/PaymentBuilder.js.map +1 -0
- package/dist/core/PaymentBuilder.mjs +61 -0
- package/dist/core/index.cjs +12 -0
- package/dist/core/index.d.ts +7 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/index.mjs +6 -0
- package/dist/index.cjs +44 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +11 -0
- package/dist/logger/index.cjs +55 -0
- package/dist/logger/index.d.ts +16 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/index.mjs +51 -0
- package/dist/middleware/express.middleware.cjs +12 -0
- package/dist/middleware/express.middleware.d.ts +5 -0
- package/dist/middleware/express.middleware.d.ts.map +1 -0
- package/dist/middleware/express.middleware.js.map +1 -0
- package/dist/middleware/express.middleware.mjs +9 -0
- package/dist/middleware/fastify.helper.cjs +25 -0
- package/dist/middleware/fastify.helper.d.ts +6 -0
- package/dist/middleware/fastify.helper.d.ts.map +1 -0
- package/dist/middleware/fastify.helper.js.map +1 -0
- package/dist/middleware/fastify.helper.mjs +22 -0
- package/dist/middleware/hono.helper.cjs +32 -0
- package/dist/middleware/hono.helper.d.ts +6 -0
- package/dist/middleware/hono.helper.d.ts.map +1 -0
- package/dist/middleware/hono.helper.js.map +1 -0
- package/dist/middleware/hono.helper.mjs +29 -0
- package/dist/middleware/index.cjs +6 -0
- package/dist/middleware/index.d.ts +6 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/index.mjs +6 -0
- package/dist/middleware/nestjs.helper.cjs +33 -0
- package/dist/middleware/nestjs.helper.d.ts +10 -0
- package/dist/middleware/nestjs.helper.d.ts.map +1 -0
- package/dist/middleware/nestjs.helper.js.map +1 -0
- package/dist/middleware/nestjs.helper.mjs +30 -0
- package/dist/middleware/nextjs.helper.cjs +44 -0
- package/dist/middleware/nextjs.helper.d.ts +4 -0
- package/dist/middleware/nextjs.helper.d.ts.map +1 -0
- package/dist/middleware/nextjs.helper.js.map +1 -0
- package/dist/middleware/nextjs.helper.mjs +42 -0
- package/dist/types/callback-handler.types.cjs +2 -0
- package/dist/types/callback-handler.types.d.ts +28 -0
- package/dist/types/callback-handler.types.d.ts.map +1 -0
- package/dist/types/callback-handler.types.js.map +1 -0
- package/dist/types/callback-handler.types.mjs +2 -0
- package/dist/types/callback.types.cjs +2 -0
- package/dist/types/callback.types.d.ts +14 -0
- package/dist/types/callback.types.d.ts.map +1 -0
- package/dist/types/callback.types.js.map +1 -0
- package/dist/types/callback.types.mjs +2 -0
- package/dist/types/config.types.cjs +2 -0
- package/dist/types/config.types.d.ts +11 -0
- package/dist/types/config.types.d.ts.map +1 -0
- package/dist/types/config.types.js.map +1 -0
- package/dist/types/config.types.mjs +2 -0
- package/dist/types/confirmation-mode.types.cjs +2 -0
- package/dist/types/confirmation-mode.types.d.ts +2 -0
- package/dist/types/confirmation-mode.types.d.ts.map +1 -0
- package/dist/types/confirmation-mode.types.js.map +1 -0
- package/dist/types/confirmation-mode.types.mjs +2 -0
- package/dist/types/gateway.types.cjs +2 -0
- package/dist/types/gateway.types.d.ts +16 -0
- package/dist/types/gateway.types.d.ts.map +1 -0
- package/dist/types/gateway.types.js.map +1 -0
- package/dist/types/gateway.types.mjs +2 -0
- package/dist/types/index.cjs +6 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/index.mjs +6 -0
- package/dist/types/payment.types.cjs +2 -0
- package/dist/types/payment.types.d.ts +29 -0
- package/dist/types/payment.types.d.ts.map +1 -0
- package/dist/types/payment.types.js.map +1 -0
- package/dist/types/payment.types.mjs +2 -0
- package/dist/utils/crypto/index.cjs +2 -0
- package/dist/utils/crypto/index.d.ts +2 -0
- package/dist/utils/crypto/index.d.ts.map +1 -0
- package/dist/utils/crypto/index.js.map +1 -0
- package/dist/utils/crypto/index.mjs +2 -0
- package/dist/utils/crypto/timing-safe.util.cjs +23 -0
- package/dist/utils/crypto/timing-safe.util.d.ts +3 -0
- package/dist/utils/crypto/timing-safe.util.d.ts.map +1 -0
- package/dist/utils/crypto/timing-safe.util.js.map +1 -0
- package/dist/utils/crypto/timing-safe.util.mjs +20 -0
- package/dist/utils/formatter.util.cjs +42 -0
- package/dist/utils/formatter.util.d.ts +9 -0
- package/dist/utils/formatter.util.d.ts.map +1 -0
- package/dist/utils/formatter.util.js.map +1 -0
- package/dist/utils/formatter.util.mjs +40 -0
- package/dist/utils/generator.util.cjs +14 -0
- package/dist/utils/generator.util.d.ts +5 -0
- package/dist/utils/generator.util.d.ts.map +1 -0
- package/dist/utils/generator.util.js.map +1 -0
- package/dist/utils/generator.util.mjs +12 -0
- package/dist/utils/hash.util.cjs +42 -0
- package/dist/utils/hash.util.d.ts +4 -0
- package/dist/utils/hash.util.d.ts.map +1 -0
- package/dist/utils/hash.util.js.map +1 -0
- package/dist/utils/hash.util.mjs +40 -0
- package/dist/utils/index.cjs +6 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/index.mjs +6 -0
- package/dist/utils/sanitization.util.cjs +26 -0
- package/dist/utils/sanitization.util.d.ts +6 -0
- package/dist/utils/sanitization.util.d.ts.map +1 -0
- package/dist/utils/sanitization.util.js.map +1 -0
- package/dist/utils/sanitization.util.mjs +24 -0
- package/dist/validators/config.validator.cjs +53 -0
- package/dist/validators/config.validator.d.ts +8 -0
- package/dist/validators/config.validator.d.ts.map +1 -0
- package/dist/validators/config.validator.js.map +1 -0
- package/dist/validators/config.validator.mjs +51 -0
- package/dist/validators/index.cjs +4 -0
- package/dist/validators/index.d.ts +4 -0
- package/dist/validators/index.d.ts.map +1 -0
- package/dist/validators/index.js.map +1 -0
- package/dist/validators/index.mjs +4 -0
- package/dist/validators/payment.validator.cjs +161 -0
- package/dist/validators/payment.validator.d.ts +7 -0
- package/dist/validators/payment.validator.d.ts.map +1 -0
- package/dist/validators/payment.validator.js.map +1 -0
- package/dist/validators/payment.validator.mjs +159 -0
- package/dist/validators/validator.cjs +50 -0
- package/dist/validators/validator.d.ts +10 -0
- package/dist/validators/validator.d.ts.map +1 -0
- package/dist/validators/validator.js.map +1 -0
- package/dist/validators/validator.mjs +48 -0
- package/package.json +88 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 CMI
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const SUPPORTED_CONFIRMATION_MODES = [
|
|
2
|
+
'auto',
|
|
3
|
+
'manual'
|
|
4
|
+
];
|
|
5
|
+
function isSupportedConfirmationMode(mode) {
|
|
6
|
+
return SUPPORTED_CONFIRMATION_MODES.includes(mode.toLowerCase());
|
|
7
|
+
}
|
|
8
|
+
function normalizeConfirmationMode(mode) {
|
|
9
|
+
const normalized = mode.toLowerCase();
|
|
10
|
+
if (!SUPPORTED_CONFIRMATION_MODES.includes(normalized)) {
|
|
11
|
+
throw new Error(`Unsupported confirmation mode: ${mode}. Supported modes: ${SUPPORTED_CONFIRMATION_MODES.join(', ')}`);
|
|
12
|
+
}
|
|
13
|
+
return normalized;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=confirmationModes.js.map
|
|
16
|
+
|
|
17
|
+
module.exports.SUPPORTED_CONFIRMATION_MODES = SUPPORTED_CONFIRMATION_MODES;
|
|
18
|
+
module.exports.isSupportedConfirmationMode = isSupportedConfirmationMode;
|
|
19
|
+
module.exports.normalizeConfirmationMode = normalizeConfirmationMode;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const SUPPORTED_CONFIRMATION_MODES: readonly ["auto", "manual"];
|
|
2
|
+
export type ConfirmationModeValue = typeof SUPPORTED_CONFIRMATION_MODES[number];
|
|
3
|
+
export declare function isSupportedConfirmationMode(mode: string): boolean;
|
|
4
|
+
export declare function normalizeConfirmationMode(mode: string): ConfirmationModeValue;
|
|
5
|
+
//# sourceMappingURL=confirmationModes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirmationModes.d.ts","sourceRoot":"","sources":["../../src/constants/confirmationModes.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,4BAA4B,6BAG/B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,OAAO,4BAA4B,CAAC,MAAM,CAAC,CAAC;AAKhF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE;AAKD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAM7E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirmationModes.js","sourceRoot":"","sources":["../../src/constants/confirmationModes.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,4BAA4B,GAAG;IACxC,MAAM;IACN,QAAQ;CACF,CAAC;AAOX,MAAM,UAAU,2BAA2B,CAAC,IAAY;IACpD,OAAO,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAA2B,CAAC,CAAC;AAC9F,CAAC;AAKD,MAAM,UAAU,yBAAyB,CAAC,IAAY;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAA2B,CAAC;IAC/D,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,sBAAsB,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3H,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const SUPPORTED_CONFIRMATION_MODES = [
|
|
2
|
+
'auto',
|
|
3
|
+
'manual'
|
|
4
|
+
];
|
|
5
|
+
export function isSupportedConfirmationMode(mode) {
|
|
6
|
+
return SUPPORTED_CONFIRMATION_MODES.includes(mode.toLowerCase());
|
|
7
|
+
}
|
|
8
|
+
export function normalizeConfirmationMode(mode) {
|
|
9
|
+
const normalized = mode.toLowerCase();
|
|
10
|
+
if (!SUPPORTED_CONFIRMATION_MODES.includes(normalized)) {
|
|
11
|
+
throw new Error(`Unsupported confirmation mode: ${mode}. Supported modes: ${SUPPORTED_CONFIRMATION_MODES.join(', ')}`);
|
|
12
|
+
}
|
|
13
|
+
return normalized;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=confirmationModes.js.map
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
const SUPPORTED_CURRENCIES = {
|
|
2
|
+
USD: { code: "USD", numeric: "840", name: "United States Dollar", decimals: 2 },
|
|
3
|
+
EUR: { code: "EUR", numeric: "978", name: "Euro", decimals: 2 },
|
|
4
|
+
JPY: { code: "JPY", numeric: "392", name: "Japanese Yen", decimals: 0 },
|
|
5
|
+
GBP: { code: "GBP", numeric: "826", name: "British Pound Sterling", decimals: 2 },
|
|
6
|
+
CNY: { code: "CNY", numeric: "156", name: "Chinese Yuan", decimals: 2 },
|
|
7
|
+
AUD: { code: "AUD", numeric: "036", name: "Australian Dollar", decimals: 2 },
|
|
8
|
+
CAD: { code: "CAD", numeric: "124", name: "Canadian Dollar", decimals: 2 },
|
|
9
|
+
CHF: { code: "CHF", numeric: "756", name: "Swiss Franc", decimals: 2 },
|
|
10
|
+
HKD: { code: "HKD", numeric: "344", name: "Hong Kong Dollar", decimals: 2 },
|
|
11
|
+
SGD: { code: "SGD", numeric: "702", name: "Singapore Dollar", decimals: 2 },
|
|
12
|
+
SEK: { code: "SEK", numeric: "752", name: "Swedish Krona", decimals: 2 },
|
|
13
|
+
KRW: { code: "KRW", numeric: "410", name: "South Korean Won", decimals: 0 },
|
|
14
|
+
NOK: { code: "NOK", numeric: "578", name: "Norwegian Krone", decimals: 2 },
|
|
15
|
+
NZD: { code: "NZD", numeric: "554", name: "New Zealand Dollar", decimals: 2 },
|
|
16
|
+
INR: { code: "INR", numeric: "356", name: "Indian Rupee", decimals: 2 },
|
|
17
|
+
MXN: { code: "MXN", numeric: "484", name: "Mexican Peso", decimals: 2 },
|
|
18
|
+
TWD: { code: "TWD", numeric: "901", name: "New Taiwan Dollar", decimals: 2 },
|
|
19
|
+
ZAR: { code: "ZAR", numeric: "710", name: "South African Rand", decimals: 2 },
|
|
20
|
+
BRL: { code: "BRL", numeric: "986", name: "Brazilian Real", decimals: 2 },
|
|
21
|
+
DKK: { code: "DKK", numeric: "208", name: "Danish Krone", decimals: 2 },
|
|
22
|
+
PLN: { code: "PLN", numeric: "985", name: "Polish Zloty", decimals: 2 },
|
|
23
|
+
THB: { code: "THB", numeric: "764", name: "Thai Baht", decimals: 2 },
|
|
24
|
+
IDR: { code: "IDR", numeric: "360", name: "Indonesian Rupiah", decimals: 2 },
|
|
25
|
+
HUF: { code: "HUF", numeric: "348", name: "Hungarian Forint", decimals: 2 },
|
|
26
|
+
CZK: { code: "CZK", numeric: "203", name: "Czech Koruna", decimals: 2 },
|
|
27
|
+
ILS: { code: "ILS", numeric: "376", name: "Israeli New Shekel", decimals: 2 },
|
|
28
|
+
CLP: { code: "CLP", numeric: "152", name: "Chilean Peso", decimals: 0 },
|
|
29
|
+
PHP: { code: "PHP", numeric: "608", name: "Philippine Peso", decimals: 2 },
|
|
30
|
+
AED: { code: "AED", numeric: "784", name: "UAE Dirham", decimals: 2 },
|
|
31
|
+
COP: { code: "COP", numeric: "170", name: "Colombian Peso", decimals: 2 },
|
|
32
|
+
MAD: { code: "MAD", numeric: "504", name: "Moroccan Dirham", decimals: 2 },
|
|
33
|
+
SAR: { code: "SAR", numeric: "682", name: "Saudi Riyal", decimals: 2 },
|
|
34
|
+
TRY: { code: "TRY", numeric: "949", name: "Turkish Lira", decimals: 2 },
|
|
35
|
+
EGP: { code: "EGP", numeric: "818", name: "Egyptian Pound", decimals: 2 },
|
|
36
|
+
};
|
|
37
|
+
const NUMERIC_TO_CODE_MAP = Object.entries(SUPPORTED_CURRENCIES).reduce((acc, [code, info]) => {
|
|
38
|
+
acc[info.numeric] = code;
|
|
39
|
+
return acc;
|
|
40
|
+
}, {});
|
|
41
|
+
function getCurrencyInfo(value) {
|
|
42
|
+
if (value in SUPPORTED_CURRENCIES) {
|
|
43
|
+
return SUPPORTED_CURRENCIES[value];
|
|
44
|
+
}
|
|
45
|
+
const code = NUMERIC_TO_CODE_MAP[value];
|
|
46
|
+
if (code) {
|
|
47
|
+
return SUPPORTED_CURRENCIES[code];
|
|
48
|
+
}
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
function normalizeCurrency(currency) {
|
|
52
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
53
|
+
return info?.numeric;
|
|
54
|
+
}
|
|
55
|
+
function normalizeCurrencyCode(currency) {
|
|
56
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
57
|
+
return info?.code;
|
|
58
|
+
}
|
|
59
|
+
function isMoroccanDirham(currency) {
|
|
60
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
61
|
+
return info?.code === 'MAD';
|
|
62
|
+
}
|
|
63
|
+
function isSupportedCurrency(value) {
|
|
64
|
+
return normalizeCurrency(value) !== undefined;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=currencies.js.map
|
|
67
|
+
|
|
68
|
+
module.exports.SUPPORTED_CURRENCIES = SUPPORTED_CURRENCIES;
|
|
69
|
+
module.exports.getCurrencyInfo = getCurrencyInfo;
|
|
70
|
+
module.exports.normalizeCurrency = normalizeCurrency;
|
|
71
|
+
module.exports.normalizeCurrencyCode = normalizeCurrencyCode;
|
|
72
|
+
module.exports.isMoroccanDirham = isMoroccanDirham;
|
|
73
|
+
module.exports.isSupportedCurrency = isSupportedCurrency;
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
export interface CurrencyInfo {
|
|
2
|
+
code: string;
|
|
3
|
+
numeric: string;
|
|
4
|
+
name: string;
|
|
5
|
+
decimals: number;
|
|
6
|
+
}
|
|
7
|
+
export declare const SUPPORTED_CURRENCIES: {
|
|
8
|
+
readonly USD: {
|
|
9
|
+
readonly code: "USD";
|
|
10
|
+
readonly numeric: "840";
|
|
11
|
+
readonly name: "United States Dollar";
|
|
12
|
+
readonly decimals: 2;
|
|
13
|
+
};
|
|
14
|
+
readonly EUR: {
|
|
15
|
+
readonly code: "EUR";
|
|
16
|
+
readonly numeric: "978";
|
|
17
|
+
readonly name: "Euro";
|
|
18
|
+
readonly decimals: 2;
|
|
19
|
+
};
|
|
20
|
+
readonly JPY: {
|
|
21
|
+
readonly code: "JPY";
|
|
22
|
+
readonly numeric: "392";
|
|
23
|
+
readonly name: "Japanese Yen";
|
|
24
|
+
readonly decimals: 0;
|
|
25
|
+
};
|
|
26
|
+
readonly GBP: {
|
|
27
|
+
readonly code: "GBP";
|
|
28
|
+
readonly numeric: "826";
|
|
29
|
+
readonly name: "British Pound Sterling";
|
|
30
|
+
readonly decimals: 2;
|
|
31
|
+
};
|
|
32
|
+
readonly CNY: {
|
|
33
|
+
readonly code: "CNY";
|
|
34
|
+
readonly numeric: "156";
|
|
35
|
+
readonly name: "Chinese Yuan";
|
|
36
|
+
readonly decimals: 2;
|
|
37
|
+
};
|
|
38
|
+
readonly AUD: {
|
|
39
|
+
readonly code: "AUD";
|
|
40
|
+
readonly numeric: "036";
|
|
41
|
+
readonly name: "Australian Dollar";
|
|
42
|
+
readonly decimals: 2;
|
|
43
|
+
};
|
|
44
|
+
readonly CAD: {
|
|
45
|
+
readonly code: "CAD";
|
|
46
|
+
readonly numeric: "124";
|
|
47
|
+
readonly name: "Canadian Dollar";
|
|
48
|
+
readonly decimals: 2;
|
|
49
|
+
};
|
|
50
|
+
readonly CHF: {
|
|
51
|
+
readonly code: "CHF";
|
|
52
|
+
readonly numeric: "756";
|
|
53
|
+
readonly name: "Swiss Franc";
|
|
54
|
+
readonly decimals: 2;
|
|
55
|
+
};
|
|
56
|
+
readonly HKD: {
|
|
57
|
+
readonly code: "HKD";
|
|
58
|
+
readonly numeric: "344";
|
|
59
|
+
readonly name: "Hong Kong Dollar";
|
|
60
|
+
readonly decimals: 2;
|
|
61
|
+
};
|
|
62
|
+
readonly SGD: {
|
|
63
|
+
readonly code: "SGD";
|
|
64
|
+
readonly numeric: "702";
|
|
65
|
+
readonly name: "Singapore Dollar";
|
|
66
|
+
readonly decimals: 2;
|
|
67
|
+
};
|
|
68
|
+
readonly SEK: {
|
|
69
|
+
readonly code: "SEK";
|
|
70
|
+
readonly numeric: "752";
|
|
71
|
+
readonly name: "Swedish Krona";
|
|
72
|
+
readonly decimals: 2;
|
|
73
|
+
};
|
|
74
|
+
readonly KRW: {
|
|
75
|
+
readonly code: "KRW";
|
|
76
|
+
readonly numeric: "410";
|
|
77
|
+
readonly name: "South Korean Won";
|
|
78
|
+
readonly decimals: 0;
|
|
79
|
+
};
|
|
80
|
+
readonly NOK: {
|
|
81
|
+
readonly code: "NOK";
|
|
82
|
+
readonly numeric: "578";
|
|
83
|
+
readonly name: "Norwegian Krone";
|
|
84
|
+
readonly decimals: 2;
|
|
85
|
+
};
|
|
86
|
+
readonly NZD: {
|
|
87
|
+
readonly code: "NZD";
|
|
88
|
+
readonly numeric: "554";
|
|
89
|
+
readonly name: "New Zealand Dollar";
|
|
90
|
+
readonly decimals: 2;
|
|
91
|
+
};
|
|
92
|
+
readonly INR: {
|
|
93
|
+
readonly code: "INR";
|
|
94
|
+
readonly numeric: "356";
|
|
95
|
+
readonly name: "Indian Rupee";
|
|
96
|
+
readonly decimals: 2;
|
|
97
|
+
};
|
|
98
|
+
readonly MXN: {
|
|
99
|
+
readonly code: "MXN";
|
|
100
|
+
readonly numeric: "484";
|
|
101
|
+
readonly name: "Mexican Peso";
|
|
102
|
+
readonly decimals: 2;
|
|
103
|
+
};
|
|
104
|
+
readonly TWD: {
|
|
105
|
+
readonly code: "TWD";
|
|
106
|
+
readonly numeric: "901";
|
|
107
|
+
readonly name: "New Taiwan Dollar";
|
|
108
|
+
readonly decimals: 2;
|
|
109
|
+
};
|
|
110
|
+
readonly ZAR: {
|
|
111
|
+
readonly code: "ZAR";
|
|
112
|
+
readonly numeric: "710";
|
|
113
|
+
readonly name: "South African Rand";
|
|
114
|
+
readonly decimals: 2;
|
|
115
|
+
};
|
|
116
|
+
readonly BRL: {
|
|
117
|
+
readonly code: "BRL";
|
|
118
|
+
readonly numeric: "986";
|
|
119
|
+
readonly name: "Brazilian Real";
|
|
120
|
+
readonly decimals: 2;
|
|
121
|
+
};
|
|
122
|
+
readonly DKK: {
|
|
123
|
+
readonly code: "DKK";
|
|
124
|
+
readonly numeric: "208";
|
|
125
|
+
readonly name: "Danish Krone";
|
|
126
|
+
readonly decimals: 2;
|
|
127
|
+
};
|
|
128
|
+
readonly PLN: {
|
|
129
|
+
readonly code: "PLN";
|
|
130
|
+
readonly numeric: "985";
|
|
131
|
+
readonly name: "Polish Zloty";
|
|
132
|
+
readonly decimals: 2;
|
|
133
|
+
};
|
|
134
|
+
readonly THB: {
|
|
135
|
+
readonly code: "THB";
|
|
136
|
+
readonly numeric: "764";
|
|
137
|
+
readonly name: "Thai Baht";
|
|
138
|
+
readonly decimals: 2;
|
|
139
|
+
};
|
|
140
|
+
readonly IDR: {
|
|
141
|
+
readonly code: "IDR";
|
|
142
|
+
readonly numeric: "360";
|
|
143
|
+
readonly name: "Indonesian Rupiah";
|
|
144
|
+
readonly decimals: 2;
|
|
145
|
+
};
|
|
146
|
+
readonly HUF: {
|
|
147
|
+
readonly code: "HUF";
|
|
148
|
+
readonly numeric: "348";
|
|
149
|
+
readonly name: "Hungarian Forint";
|
|
150
|
+
readonly decimals: 2;
|
|
151
|
+
};
|
|
152
|
+
readonly CZK: {
|
|
153
|
+
readonly code: "CZK";
|
|
154
|
+
readonly numeric: "203";
|
|
155
|
+
readonly name: "Czech Koruna";
|
|
156
|
+
readonly decimals: 2;
|
|
157
|
+
};
|
|
158
|
+
readonly ILS: {
|
|
159
|
+
readonly code: "ILS";
|
|
160
|
+
readonly numeric: "376";
|
|
161
|
+
readonly name: "Israeli New Shekel";
|
|
162
|
+
readonly decimals: 2;
|
|
163
|
+
};
|
|
164
|
+
readonly CLP: {
|
|
165
|
+
readonly code: "CLP";
|
|
166
|
+
readonly numeric: "152";
|
|
167
|
+
readonly name: "Chilean Peso";
|
|
168
|
+
readonly decimals: 0;
|
|
169
|
+
};
|
|
170
|
+
readonly PHP: {
|
|
171
|
+
readonly code: "PHP";
|
|
172
|
+
readonly numeric: "608";
|
|
173
|
+
readonly name: "Philippine Peso";
|
|
174
|
+
readonly decimals: 2;
|
|
175
|
+
};
|
|
176
|
+
readonly AED: {
|
|
177
|
+
readonly code: "AED";
|
|
178
|
+
readonly numeric: "784";
|
|
179
|
+
readonly name: "UAE Dirham";
|
|
180
|
+
readonly decimals: 2;
|
|
181
|
+
};
|
|
182
|
+
readonly COP: {
|
|
183
|
+
readonly code: "COP";
|
|
184
|
+
readonly numeric: "170";
|
|
185
|
+
readonly name: "Colombian Peso";
|
|
186
|
+
readonly decimals: 2;
|
|
187
|
+
};
|
|
188
|
+
readonly MAD: {
|
|
189
|
+
readonly code: "MAD";
|
|
190
|
+
readonly numeric: "504";
|
|
191
|
+
readonly name: "Moroccan Dirham";
|
|
192
|
+
readonly decimals: 2;
|
|
193
|
+
};
|
|
194
|
+
readonly SAR: {
|
|
195
|
+
readonly code: "SAR";
|
|
196
|
+
readonly numeric: "682";
|
|
197
|
+
readonly name: "Saudi Riyal";
|
|
198
|
+
readonly decimals: 2;
|
|
199
|
+
};
|
|
200
|
+
readonly TRY: {
|
|
201
|
+
readonly code: "TRY";
|
|
202
|
+
readonly numeric: "949";
|
|
203
|
+
readonly name: "Turkish Lira";
|
|
204
|
+
readonly decimals: 2;
|
|
205
|
+
};
|
|
206
|
+
readonly EGP: {
|
|
207
|
+
readonly code: "EGP";
|
|
208
|
+
readonly numeric: "818";
|
|
209
|
+
readonly name: "Egyptian Pound";
|
|
210
|
+
readonly decimals: 2;
|
|
211
|
+
};
|
|
212
|
+
};
|
|
213
|
+
export type CurrencyCode = keyof typeof SUPPORTED_CURRENCIES;
|
|
214
|
+
export declare function getCurrencyInfo(value: string): CurrencyInfo | undefined;
|
|
215
|
+
export declare function normalizeCurrency(currency: string): string | undefined;
|
|
216
|
+
export declare function normalizeCurrencyCode(currency: string): string | undefined;
|
|
217
|
+
export declare function isMoroccanDirham(currency: string): boolean;
|
|
218
|
+
export declare function isSupportedCurrency(value: string): boolean;
|
|
219
|
+
//# sourceMappingURL=currencies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currencies.d.ts","sourceRoot":"","sources":["../../src/constants/currencies.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCvB,CAAC;AAGX,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,oBAAoB,CAAC;AAS7D,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAWvE;AAgCD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGtE;AAQD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1E;AAOD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG1D;AAGD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currencies.js","sourceRoot":"","sources":["../../src/constants/currencies.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export const SUPPORTED_CURRENCIES = {
|
|
2
|
+
USD: { code: "USD", numeric: "840", name: "United States Dollar", decimals: 2 },
|
|
3
|
+
EUR: { code: "EUR", numeric: "978", name: "Euro", decimals: 2 },
|
|
4
|
+
JPY: { code: "JPY", numeric: "392", name: "Japanese Yen", decimals: 0 },
|
|
5
|
+
GBP: { code: "GBP", numeric: "826", name: "British Pound Sterling", decimals: 2 },
|
|
6
|
+
CNY: { code: "CNY", numeric: "156", name: "Chinese Yuan", decimals: 2 },
|
|
7
|
+
AUD: { code: "AUD", numeric: "036", name: "Australian Dollar", decimals: 2 },
|
|
8
|
+
CAD: { code: "CAD", numeric: "124", name: "Canadian Dollar", decimals: 2 },
|
|
9
|
+
CHF: { code: "CHF", numeric: "756", name: "Swiss Franc", decimals: 2 },
|
|
10
|
+
HKD: { code: "HKD", numeric: "344", name: "Hong Kong Dollar", decimals: 2 },
|
|
11
|
+
SGD: { code: "SGD", numeric: "702", name: "Singapore Dollar", decimals: 2 },
|
|
12
|
+
SEK: { code: "SEK", numeric: "752", name: "Swedish Krona", decimals: 2 },
|
|
13
|
+
KRW: { code: "KRW", numeric: "410", name: "South Korean Won", decimals: 0 },
|
|
14
|
+
NOK: { code: "NOK", numeric: "578", name: "Norwegian Krone", decimals: 2 },
|
|
15
|
+
NZD: { code: "NZD", numeric: "554", name: "New Zealand Dollar", decimals: 2 },
|
|
16
|
+
INR: { code: "INR", numeric: "356", name: "Indian Rupee", decimals: 2 },
|
|
17
|
+
MXN: { code: "MXN", numeric: "484", name: "Mexican Peso", decimals: 2 },
|
|
18
|
+
TWD: { code: "TWD", numeric: "901", name: "New Taiwan Dollar", decimals: 2 },
|
|
19
|
+
ZAR: { code: "ZAR", numeric: "710", name: "South African Rand", decimals: 2 },
|
|
20
|
+
BRL: { code: "BRL", numeric: "986", name: "Brazilian Real", decimals: 2 },
|
|
21
|
+
DKK: { code: "DKK", numeric: "208", name: "Danish Krone", decimals: 2 },
|
|
22
|
+
PLN: { code: "PLN", numeric: "985", name: "Polish Zloty", decimals: 2 },
|
|
23
|
+
THB: { code: "THB", numeric: "764", name: "Thai Baht", decimals: 2 },
|
|
24
|
+
IDR: { code: "IDR", numeric: "360", name: "Indonesian Rupiah", decimals: 2 },
|
|
25
|
+
HUF: { code: "HUF", numeric: "348", name: "Hungarian Forint", decimals: 2 },
|
|
26
|
+
CZK: { code: "CZK", numeric: "203", name: "Czech Koruna", decimals: 2 },
|
|
27
|
+
ILS: { code: "ILS", numeric: "376", name: "Israeli New Shekel", decimals: 2 },
|
|
28
|
+
CLP: { code: "CLP", numeric: "152", name: "Chilean Peso", decimals: 0 },
|
|
29
|
+
PHP: { code: "PHP", numeric: "608", name: "Philippine Peso", decimals: 2 },
|
|
30
|
+
AED: { code: "AED", numeric: "784", name: "UAE Dirham", decimals: 2 },
|
|
31
|
+
COP: { code: "COP", numeric: "170", name: "Colombian Peso", decimals: 2 },
|
|
32
|
+
MAD: { code: "MAD", numeric: "504", name: "Moroccan Dirham", decimals: 2 },
|
|
33
|
+
SAR: { code: "SAR", numeric: "682", name: "Saudi Riyal", decimals: 2 },
|
|
34
|
+
TRY: { code: "TRY", numeric: "949", name: "Turkish Lira", decimals: 2 },
|
|
35
|
+
EGP: { code: "EGP", numeric: "818", name: "Egyptian Pound", decimals: 2 },
|
|
36
|
+
};
|
|
37
|
+
const NUMERIC_TO_CODE_MAP = Object.entries(SUPPORTED_CURRENCIES).reduce((acc, [code, info]) => {
|
|
38
|
+
acc[info.numeric] = code;
|
|
39
|
+
return acc;
|
|
40
|
+
}, {});
|
|
41
|
+
export function getCurrencyInfo(value) {
|
|
42
|
+
if (value in SUPPORTED_CURRENCIES) {
|
|
43
|
+
return SUPPORTED_CURRENCIES[value];
|
|
44
|
+
}
|
|
45
|
+
const code = NUMERIC_TO_CODE_MAP[value];
|
|
46
|
+
if (code) {
|
|
47
|
+
return SUPPORTED_CURRENCIES[code];
|
|
48
|
+
}
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
export function normalizeCurrency(currency) {
|
|
52
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
53
|
+
return info?.numeric;
|
|
54
|
+
}
|
|
55
|
+
export function normalizeCurrencyCode(currency) {
|
|
56
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
57
|
+
return info?.code;
|
|
58
|
+
}
|
|
59
|
+
export function isMoroccanDirham(currency) {
|
|
60
|
+
const info = getCurrencyInfo(currency.toUpperCase());
|
|
61
|
+
return info?.code === 'MAD';
|
|
62
|
+
}
|
|
63
|
+
export function isSupportedCurrency(value) {
|
|
64
|
+
return normalizeCurrency(value) !== undefined;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=currencies.js.map
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
const BILLING_FIELDS = [
|
|
2
|
+
'BillToName',
|
|
3
|
+
'BillToCompany',
|
|
4
|
+
'BillToStreet1',
|
|
5
|
+
'BillToStreet2',
|
|
6
|
+
'BillToStreet3',
|
|
7
|
+
'BillToCity',
|
|
8
|
+
'BillToStateProv',
|
|
9
|
+
'BillToPostalCode',
|
|
10
|
+
'BillToCountry',
|
|
11
|
+
];
|
|
12
|
+
const OPTIONAL_PAYMENT_FIELDS = [
|
|
13
|
+
'BillToCity',
|
|
14
|
+
'BillToCountry',
|
|
15
|
+
'BillToStreet1',
|
|
16
|
+
'BillToStateProv',
|
|
17
|
+
'BillToPostalCode',
|
|
18
|
+
'BillToTelVoice',
|
|
19
|
+
'tel',
|
|
20
|
+
];
|
|
21
|
+
const STANDARD_PAYMENT_FIELDS = [
|
|
22
|
+
'amount',
|
|
23
|
+
'oid',
|
|
24
|
+
'okUrl',
|
|
25
|
+
'failUrl',
|
|
26
|
+
'email',
|
|
27
|
+
'BillToName',
|
|
28
|
+
'rnd',
|
|
29
|
+
'encoding',
|
|
30
|
+
'currency',
|
|
31
|
+
'lang',
|
|
32
|
+
'hashAlgorithm',
|
|
33
|
+
'AutoRedirect',
|
|
34
|
+
'amountCur',
|
|
35
|
+
'symbolCur',
|
|
36
|
+
...OPTIONAL_PAYMENT_FIELDS,
|
|
37
|
+
];
|
|
38
|
+
const HASH_EXCLUDED_FIELDS = ['hash', 'HASH', 'encoding'];
|
|
39
|
+
const HASH_SANITIZE_FIELDS = [
|
|
40
|
+
'BillToName',
|
|
41
|
+
'BillToCompany',
|
|
42
|
+
'BillToStreet1',
|
|
43
|
+
'BillToCity',
|
|
44
|
+
'BillToStateProv',
|
|
45
|
+
'BillToPostalCode',
|
|
46
|
+
'BillToCountry',
|
|
47
|
+
];
|
|
48
|
+
//# sourceMappingURL=fields.js.map
|
|
49
|
+
|
|
50
|
+
module.exports.BILLING_FIELDS = BILLING_FIELDS;
|
|
51
|
+
module.exports.OPTIONAL_PAYMENT_FIELDS = OPTIONAL_PAYMENT_FIELDS;
|
|
52
|
+
module.exports.STANDARD_PAYMENT_FIELDS = STANDARD_PAYMENT_FIELDS;
|
|
53
|
+
module.exports.HASH_EXCLUDED_FIELDS = HASH_EXCLUDED_FIELDS;
|
|
54
|
+
module.exports.HASH_SANITIZE_FIELDS = HASH_SANITIZE_FIELDS;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const BILLING_FIELDS: readonly ["BillToName", "BillToCompany", "BillToStreet1", "BillToStreet2", "BillToStreet3", "BillToCity", "BillToStateProv", "BillToPostalCode", "BillToCountry"];
|
|
2
|
+
export type BillingField = typeof BILLING_FIELDS[number];
|
|
3
|
+
export declare const OPTIONAL_PAYMENT_FIELDS: readonly ["BillToCity", "BillToCountry", "BillToStreet1", "BillToStateProv", "BillToPostalCode", "BillToTelVoice", "tel"];
|
|
4
|
+
export type OptionalPaymentField = typeof OPTIONAL_PAYMENT_FIELDS[number];
|
|
5
|
+
export declare const STANDARD_PAYMENT_FIELDS: readonly ["amount", "oid", "okUrl", "failUrl", "email", "BillToName", "rnd", "encoding", "currency", "lang", "hashAlgorithm", "AutoRedirect", "amountCur", "symbolCur", "BillToCity", "BillToCountry", "BillToStreet1", "BillToStateProv", "BillToPostalCode", "BillToTelVoice", "tel"];
|
|
6
|
+
export type StandardPaymentField = typeof STANDARD_PAYMENT_FIELDS[number];
|
|
7
|
+
export declare const HASH_EXCLUDED_FIELDS: readonly ["hash", "HASH", "encoding"];
|
|
8
|
+
export declare const HASH_SANITIZE_FIELDS: readonly ["BillToName", "BillToCompany", "BillToStreet1", "BillToCity", "BillToStateProv", "BillToPostalCode", "BillToCountry"];
|
|
9
|
+
//# sourceMappingURL=fields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../src/constants/fields.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,mKAUjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAKzD,eAAO,MAAM,uBAAuB,2HAQ1B,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAK1E,eAAO,MAAM,uBAAuB,yRAgB1B,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAK1E,eAAO,MAAM,oBAAoB,uCAAwC,CAAC;AAK1E,eAAO,MAAM,oBAAoB,iIAQvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/constants/fields.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B,YAAY;IACZ,eAAe;IACf,eAAe;IACf,eAAe;IACf,eAAe;IACf,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;CACT,CAAC;AAOX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,YAAY;IACZ,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,kBAAkB;IAClB,gBAAgB;IAChB,KAAK;CACC,CAAC;AAOX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,QAAQ;IACR,KAAK;IACL,OAAO;IACP,SAAS;IACT,OAAO;IACP,YAAY;IACZ,KAAK;IACL,UAAU;IACV,UAAU;IACV,MAAM;IACN,eAAe;IACf,cAAc;IACd,WAAW;IACX,WAAW;IACX,GAAG,uBAAuB;CACpB,CAAC;AAOX,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAU,CAAC;AAK1E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,YAAY;IACZ,eAAe;IACf,eAAe;IACf,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;CACT,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export const BILLING_FIELDS = [
|
|
2
|
+
'BillToName',
|
|
3
|
+
'BillToCompany',
|
|
4
|
+
'BillToStreet1',
|
|
5
|
+
'BillToStreet2',
|
|
6
|
+
'BillToStreet3',
|
|
7
|
+
'BillToCity',
|
|
8
|
+
'BillToStateProv',
|
|
9
|
+
'BillToPostalCode',
|
|
10
|
+
'BillToCountry',
|
|
11
|
+
];
|
|
12
|
+
export const OPTIONAL_PAYMENT_FIELDS = [
|
|
13
|
+
'BillToCity',
|
|
14
|
+
'BillToCountry',
|
|
15
|
+
'BillToStreet1',
|
|
16
|
+
'BillToStateProv',
|
|
17
|
+
'BillToPostalCode',
|
|
18
|
+
'BillToTelVoice',
|
|
19
|
+
'tel',
|
|
20
|
+
];
|
|
21
|
+
export const STANDARD_PAYMENT_FIELDS = [
|
|
22
|
+
'amount',
|
|
23
|
+
'oid',
|
|
24
|
+
'okUrl',
|
|
25
|
+
'failUrl',
|
|
26
|
+
'email',
|
|
27
|
+
'BillToName',
|
|
28
|
+
'rnd',
|
|
29
|
+
'encoding',
|
|
30
|
+
'currency',
|
|
31
|
+
'lang',
|
|
32
|
+
'hashAlgorithm',
|
|
33
|
+
'AutoRedirect',
|
|
34
|
+
'amountCur',
|
|
35
|
+
'symbolCur',
|
|
36
|
+
...OPTIONAL_PAYMENT_FIELDS,
|
|
37
|
+
];
|
|
38
|
+
export const HASH_EXCLUDED_FIELDS = ['hash', 'HASH', 'encoding'];
|
|
39
|
+
export const HASH_SANITIZE_FIELDS = [
|
|
40
|
+
'BillToName',
|
|
41
|
+
'BillToCompany',
|
|
42
|
+
'BillToStreet1',
|
|
43
|
+
'BillToCity',
|
|
44
|
+
'BillToStateProv',
|
|
45
|
+
'BillToPostalCode',
|
|
46
|
+
'BillToCountry',
|
|
47
|
+
];
|
|
48
|
+
//# sourceMappingURL=fields.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
Object.assign(module.exports, require("./currencies.cjs"));;
|
|
2
|
+
Object.assign(module.exports, require("./languages.cjs"));;
|
|
3
|
+
Object.assign(module.exports, require("./storeTypes.cjs"));;
|
|
4
|
+
Object.assign(module.exports, require("./tranTypes.cjs"));;
|
|
5
|
+
Object.assign(module.exports, require("./confirmationModes.cjs"));;
|
|
6
|
+
Object.assign(module.exports, require("./fields.cjs"));;
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC"}
|