@fat-zebra/sdk 1.3.2-staging → 1.4.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/dist/react/VerifyCard.js +3 -2
- package/dist/react/url.d.ts +2 -1
- package/dist/react/url.js +4 -3
- package/dist/react/useFatZebra.js +1 -1
- package/dist/sca/index.d.ts +4 -1
- package/dist/sca/index.js +4 -3
- package/dist/shared/api-gateway-client.d.ts +4 -1
- package/dist/shared/api-gateway-client.js +4 -3
- package/dist/shared/env.d.ts +17 -5
- package/dist/shared/env.js +18 -5
- package/dist/shared/envs/env.staging.d.ts +1 -1
- package/dist/shared/envs/env.staging.js +1 -1
- package/dist/shared/envs/local.d.ts +5 -0
- package/dist/shared/envs/local.js +5 -0
- package/dist/shared/envs/production.d.ts +5 -0
- package/dist/shared/envs/production.js +5 -0
- package/dist/shared/envs/sandbox.d.ts +5 -0
- package/dist/shared/envs/sandbox.js +5 -0
- package/dist/shared/envs/staging.d.ts +5 -0
- package/dist/shared/envs/staging.js +5 -0
- package/dist/shared/types.d.ts +2 -0
- package/dist/src/applepay/applepay.js +198 -0
- package/dist/src/applepay/applepay.js.map +1 -0
- package/dist/src/applepay/clients/apple-pay-client.js +66 -0
- package/dist/src/applepay/clients/apple-pay-client.js.map +1 -0
- package/dist/src/applepay/clients/paynow-client.js +96 -0
- package/dist/src/applepay/clients/paynow-client.js.map +1 -0
- package/dist/src/applepay/index.js +6 -0
- package/dist/src/applepay/index.js.map +1 -0
- package/dist/src/hpp/hpp.js +230 -0
- package/dist/src/hpp/hpp.js.map +1 -0
- package/dist/src/hpp/hpp.test.js +135 -0
- package/dist/src/hpp/hpp.test.js.map +1 -0
- package/dist/src/hpp/index.js +6 -0
- package/dist/src/hpp/index.js.map +1 -0
- package/dist/src/index.js +12 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/main.js +225 -0
- package/dist/src/main.js.map +1 -0
- package/dist/src/main.test.js +236 -0
- package/dist/src/main.test.js.map +1 -0
- package/dist/src/paypal/paypal-button.js +311 -0
- package/dist/src/paypal/paypal-button.js.map +1 -0
- package/dist/src/paypal/paypal-button.test.js +41 -0
- package/dist/src/paypal/paypal-button.test.js.map +1 -0
- package/dist/src/paypal/paypal-checkout.js +111 -0
- package/dist/src/paypal/paypal-checkout.js.map +1 -0
- package/dist/src/paypal/paypal-checkout.test.js +167 -0
- package/dist/src/paypal/paypal-checkout.test.js.map +1 -0
- package/dist/src/paypal/types.js +9 -0
- package/dist/src/paypal/types.js.map +1 -0
- package/dist/src/paypal/validation.js +73 -0
- package/dist/src/paypal/validation.js.map +1 -0
- package/dist/src/react/VerifyCard.js +45 -0
- package/dist/src/react/VerifyCard.js.map +1 -0
- package/dist/src/react/index.js +9 -0
- package/dist/src/react/index.js.map +1 -0
- package/dist/src/react/url.js +60 -0
- package/dist/src/react/url.js.map +1 -0
- package/dist/src/react/useFatZebra.js +150 -0
- package/dist/src/react/useFatZebra.js.map +1 -0
- package/dist/src/sca/cardinal.js +110 -0
- package/dist/src/sca/cardinal.js.map +1 -0
- package/dist/src/sca/eci-mappings.js +63 -0
- package/dist/src/sca/eci-mappings.js.map +1 -0
- package/dist/src/sca/eci-mappings.test.js +31 -0
- package/dist/src/sca/eci-mappings.test.js.map +1 -0
- package/dist/src/sca/index.js +348 -0
- package/dist/src/sca/index.js.map +1 -0
- package/dist/src/sca/index.test.js +550 -0
- package/dist/src/sca/index.test.js.map +1 -0
- package/dist/src/sca/scenarios/enrollment.js +150 -0
- package/dist/src/sca/scenarios/enrollment.js.map +1 -0
- package/dist/src/sca/scenarios/index.js +8 -0
- package/dist/src/sca/scenarios/index.js.map +1 -0
- package/dist/src/sca/scenarios/validation.js +128 -0
- package/dist/src/sca/scenarios/validation.js.map +1 -0
- package/dist/src/sca/types.js +57 -0
- package/dist/src/sca/types.js.map +1 -0
- package/dist/src/shared/api-gateway-client.js +174 -0
- package/dist/src/shared/api-gateway-client.js.map +1 -0
- package/dist/src/shared/bridge-client.js +24 -0
- package/dist/src/shared/bridge-client.js.map +1 -0
- package/dist/src/shared/constants.js +19 -0
- package/dist/src/shared/constants.js.map +1 -0
- package/dist/src/shared/env.development.js +12 -0
- package/dist/src/shared/env.development.js.map +1 -0
- package/dist/src/shared/env.js +46 -0
- package/dist/src/shared/env.js.map +1 -0
- package/dist/src/shared/envs/local.js +12 -0
- package/dist/src/shared/envs/local.js.map +1 -0
- package/dist/src/shared/envs/production.js +12 -0
- package/dist/src/shared/envs/production.js.map +1 -0
- package/dist/src/shared/envs/sandbox.js +12 -0
- package/dist/src/shared/envs/sandbox.js.map +1 -0
- package/dist/src/shared/envs/staging.js +12 -0
- package/dist/src/shared/envs/staging.js.map +1 -0
- package/dist/src/shared/event-manager.js +14 -0
- package/dist/src/shared/event-manager.js.map +1 -0
- package/dist/src/shared/post-message-client.js +107 -0
- package/dist/src/shared/post-message-client.js.map +1 -0
- package/dist/src/shared/post-message-client.test.js +58 -0
- package/dist/src/shared/post-message-client.test.js.map +1 -0
- package/dist/src/shared/types.js +47 -0
- package/dist/src/shared/types.js.map +1 -0
- package/dist/src/shared/types.test.js +55 -0
- package/dist/src/shared/types.test.js.map +1 -0
- package/dist/src/shared/util.js +96 -0
- package/dist/src/shared/util.js.map +1 -0
- package/dist/src/shared/util.test.js +148 -0
- package/dist/src/shared/util.test.js.map +1 -0
- package/dist/src/validation/index.js +10 -0
- package/dist/src/validation/index.js.map +1 -0
- package/dist/src/validation/schemas/customer.json +38 -0
- package/dist/src/validation/schemas/hpp-load-params.json +40 -0
- package/dist/src/validation/schemas/hpp-options.json +48 -0
- package/dist/src/validation/schemas/payment-intent.json +48 -0
- package/dist/src/validation/schemas/payment-method.json +83 -0
- package/dist/src/validation/schemas/verify-card-options.json +15 -0
- package/dist/src/validation/schemas/verify-card-params.json +24 -0
- package/dist/src/validation/validation-helper.js +10 -0
- package/dist/src/validation/validation-helper.js.map +1 -0
- package/dist/src/validation/validation-helper.test.js +34 -0
- package/dist/src/validation/validation-helper.test.js.map +1 -0
- package/dist/src/validation/validators/hpp-load-params-validator.js +21 -0
- package/dist/src/validation/validators/hpp-load-params-validator.js.map +1 -0
- package/dist/src/validation/validators/hpp-load-params-validator.test.js +56 -0
- package/dist/src/validation/validators/hpp-load-params-validator.test.js.map +1 -0
- package/dist/src/validation/validators/verify-card-params-validator.js +23 -0
- package/dist/src/validation/validators/verify-card-params-validator.js.map +1 -0
- package/dist/tests/helpers/api-gateway-mock.js +37 -0
- package/dist/tests/helpers/api-gateway-mock.js.map +1 -0
- package/package.json +2 -3
- package/tsconfig.json +1 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var util_1 = require("./util");
|
|
4
|
+
var objectWithCamelCaseKeys = {
|
|
5
|
+
stringKey: 'asdf',
|
|
6
|
+
nestedKey: {
|
|
7
|
+
firstName: 'John',
|
|
8
|
+
lastName: 'Doe',
|
|
9
|
+
nestedArray: [1, 2, 3],
|
|
10
|
+
nestedArray2: [
|
|
11
|
+
{ itemName: 'a1', itemDesc: { partDesc: 'p1' }, subParts: [{ unitCost: 100 }, { unitCost: 200 }] },
|
|
12
|
+
{ itemName: 'a2', itemDesc: { partDesc: 'p2' }, subParts: [{ unitCost: 300 }, { unitCost: 400 }] },
|
|
13
|
+
]
|
|
14
|
+
},
|
|
15
|
+
arrayKey: ['asd', 'f12'],
|
|
16
|
+
nullKey: null,
|
|
17
|
+
undefinedKey: undefined,
|
|
18
|
+
emptyKey: '',
|
|
19
|
+
};
|
|
20
|
+
var objectWithSnakeCaseKeys = {
|
|
21
|
+
string_key: 'asdf',
|
|
22
|
+
nested_key: {
|
|
23
|
+
first_name: 'John',
|
|
24
|
+
last_name: 'Doe',
|
|
25
|
+
nested_array: [1, 2, 3],
|
|
26
|
+
nested_array2: [
|
|
27
|
+
{ item_name: 'a1', item_desc: { part_desc: 'p1' }, sub_parts: [{ unit_cost: 100 }, { unit_cost: 200 }] },
|
|
28
|
+
{ item_name: 'a2', item_desc: { part_desc: 'p2' }, sub_parts: [{ unit_cost: 300 }, { unit_cost: 400 }] },
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
array_key: ['asd', 'f12'],
|
|
32
|
+
null_key: null,
|
|
33
|
+
undefined_key: undefined,
|
|
34
|
+
empty_key: '',
|
|
35
|
+
};
|
|
36
|
+
describe('toCamelCase', function () {
|
|
37
|
+
it('Convert snakecase string to camelcase string', function () {
|
|
38
|
+
var subject = 'snake_case';
|
|
39
|
+
var actual = (0, util_1.toCamelCase)(subject);
|
|
40
|
+
var expected = 'snakeCase';
|
|
41
|
+
expect(actual).toEqual(expected);
|
|
42
|
+
});
|
|
43
|
+
it('Leaves camelcase string intact', function () {
|
|
44
|
+
var subject = 'camelCase';
|
|
45
|
+
var actual = (0, util_1.toCamelCase)(subject);
|
|
46
|
+
var expected = 'camelCase';
|
|
47
|
+
expect(actual).toEqual(expected);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
describe('toSnakeCase', function () {
|
|
51
|
+
it('Convert camelcase string to snakecase string', function () {
|
|
52
|
+
var subject = 'camelCase';
|
|
53
|
+
var actual = (0, util_1.toSnakeCase)(subject);
|
|
54
|
+
var expected = 'camel_case';
|
|
55
|
+
expect(actual).toEqual(expected);
|
|
56
|
+
});
|
|
57
|
+
it('Leaves snakecase string intact', function () {
|
|
58
|
+
var subject = 'snake_case';
|
|
59
|
+
var actual = (0, util_1.toSnakeCase)(subject);
|
|
60
|
+
var expected = 'snake_case';
|
|
61
|
+
expect(actual).toEqual(expected);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe('toObjectWithCamelCaseKeys', function () {
|
|
65
|
+
it('Converts object with snake case keys to camel case', function () {
|
|
66
|
+
var actual = (0, util_1.toObjectWithCamelCaseKeys)(objectWithSnakeCaseKeys);
|
|
67
|
+
var expected = {
|
|
68
|
+
stringKey: 'asdf',
|
|
69
|
+
nestedKey: {
|
|
70
|
+
firstName: 'John',
|
|
71
|
+
lastName: 'Doe',
|
|
72
|
+
nestedArray: [1, 2, 3],
|
|
73
|
+
nestedArray2: [
|
|
74
|
+
{ itemName: 'a1', itemDesc: { partDesc: 'p1' }, subParts: [{ unitCost: 100 }, { unitCost: 200 }] },
|
|
75
|
+
{ itemName: 'a2', itemDesc: { partDesc: 'p2' }, subParts: [{ unitCost: 300 }, { unitCost: 400 }] },
|
|
76
|
+
]
|
|
77
|
+
},
|
|
78
|
+
arrayKey: ['asd', 'f12'],
|
|
79
|
+
nullKey: null,
|
|
80
|
+
undefinedKey: undefined,
|
|
81
|
+
emptyKey: '',
|
|
82
|
+
};
|
|
83
|
+
expect(actual).toMatchObject(expected);
|
|
84
|
+
});
|
|
85
|
+
it('Leave object with camel case intact', function () {
|
|
86
|
+
var actual = (0, util_1.toObjectWithCamelCaseKeys)(objectWithCamelCaseKeys);
|
|
87
|
+
var expected = {
|
|
88
|
+
stringKey: 'asdf',
|
|
89
|
+
nestedKey: {
|
|
90
|
+
firstName: 'John',
|
|
91
|
+
lastName: 'Doe',
|
|
92
|
+
nestedArray: [1, 2, 3],
|
|
93
|
+
nestedArray2: [
|
|
94
|
+
{ itemName: 'a1', itemDesc: { partDesc: 'p1' }, subParts: [{ unitCost: 100 }, { unitCost: 200 }] },
|
|
95
|
+
{ itemName: 'a2', itemDesc: { partDesc: 'p2' }, subParts: [{ unitCost: 300 }, { unitCost: 400 }] },
|
|
96
|
+
]
|
|
97
|
+
},
|
|
98
|
+
arrayKey: ['asd', 'f12'],
|
|
99
|
+
nullKey: null,
|
|
100
|
+
undefinedKey: undefined,
|
|
101
|
+
emptyKey: '',
|
|
102
|
+
};
|
|
103
|
+
expect(actual).toMatchObject(expected);
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
describe('toObjectWithSnakeCaseKeys', function () {
|
|
107
|
+
it('Converts object with camel case keys to snake case', function () {
|
|
108
|
+
var actual = (0, util_1.toObjectWithSnakeCaseKeys)(objectWithCamelCaseKeys);
|
|
109
|
+
var expected = {
|
|
110
|
+
string_key: 'asdf',
|
|
111
|
+
nested_key: {
|
|
112
|
+
first_name: 'John',
|
|
113
|
+
last_name: 'Doe',
|
|
114
|
+
nested_array: [1, 2, 3],
|
|
115
|
+
nested_array2: [
|
|
116
|
+
{ item_name: 'a1', item_desc: { part_desc: 'p1' }, sub_parts: [{ unit_cost: 100 }, { unit_cost: 200 }] },
|
|
117
|
+
{ item_name: 'a2', item_desc: { part_desc: 'p2' }, sub_parts: [{ unit_cost: 300 }, { unit_cost: 400 }] },
|
|
118
|
+
]
|
|
119
|
+
},
|
|
120
|
+
array_key: ['asd', 'f12'],
|
|
121
|
+
null_key: null,
|
|
122
|
+
undefined_key: undefined,
|
|
123
|
+
empty_key: '',
|
|
124
|
+
};
|
|
125
|
+
expect(actual).toMatchObject(expected);
|
|
126
|
+
});
|
|
127
|
+
it('Leave object with snake case intact', function () {
|
|
128
|
+
var actual = (0, util_1.toObjectWithSnakeCaseKeys)(objectWithSnakeCaseKeys);
|
|
129
|
+
var expected = {
|
|
130
|
+
string_key: 'asdf',
|
|
131
|
+
nested_key: {
|
|
132
|
+
first_name: 'John',
|
|
133
|
+
last_name: 'Doe',
|
|
134
|
+
nested_array: [1, 2, 3],
|
|
135
|
+
nested_array2: [
|
|
136
|
+
{ item_name: 'a1', item_desc: { part_desc: 'p1' }, sub_parts: [{ unit_cost: 100 }, { unit_cost: 200 }] },
|
|
137
|
+
{ item_name: 'a2', item_desc: { part_desc: 'p2' }, sub_parts: [{ unit_cost: 300 }, { unit_cost: 400 }] },
|
|
138
|
+
]
|
|
139
|
+
},
|
|
140
|
+
array_key: ['asd', 'f12'],
|
|
141
|
+
null_key: null,
|
|
142
|
+
undefined_key: undefined,
|
|
143
|
+
empty_key: '',
|
|
144
|
+
};
|
|
145
|
+
expect(actual).toMatchObject(expected);
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
//# sourceMappingURL=util.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.test.js","sourceRoot":"","sources":["../../../src/shared/util.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toHumanizedErrors = exports.validateVerifyCardParams = exports.validateHppLoadParams = void 0;
|
|
4
|
+
var hpp_load_params_validator_1 = require("./validators/hpp-load-params-validator");
|
|
5
|
+
Object.defineProperty(exports, "validateHppLoadParams", { enumerable: true, get: function () { return hpp_load_params_validator_1.validateHppLoadParams; } });
|
|
6
|
+
var verify_card_params_validator_1 = require("./validators/verify-card-params-validator");
|
|
7
|
+
Object.defineProperty(exports, "validateVerifyCardParams", { enumerable: true, get: function () { return verify_card_params_validator_1.validateVerifyCardParams; } });
|
|
8
|
+
var validation_helper_1 = require("./validation-helper");
|
|
9
|
+
Object.defineProperty(exports, "toHumanizedErrors", { enumerable: true, get: function () { return validation_helper_1.toHumanizedErrors; } });
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/validation/index.ts"],"names":[],"mappings":";;;AAAA,oFAA8E;AAArE,kIAAA,qBAAqB,OAAA;AAC9B,0FAAoF;AAA3E,wIAAA,wBAAwB,OAAA;AACjC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/customer.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"definitions": {
|
|
5
|
+
"Customer": {
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"properties": {
|
|
9
|
+
"firstName": {
|
|
10
|
+
"type": "string"
|
|
11
|
+
},
|
|
12
|
+
"lastName": {
|
|
13
|
+
"type": "string"
|
|
14
|
+
},
|
|
15
|
+
"email": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"format": "email"
|
|
18
|
+
},
|
|
19
|
+
"address": {
|
|
20
|
+
"type": "string"
|
|
21
|
+
},
|
|
22
|
+
"city": {
|
|
23
|
+
"type": "string"
|
|
24
|
+
},
|
|
25
|
+
"postcode": {
|
|
26
|
+
"type": "string"
|
|
27
|
+
},
|
|
28
|
+
"state": {
|
|
29
|
+
"type": "string"
|
|
30
|
+
},
|
|
31
|
+
"country": {
|
|
32
|
+
"type": "string"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"required": []
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/hpp-load-params.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"additionalProperties": false,
|
|
5
|
+
"required": [
|
|
6
|
+
"containerId",
|
|
7
|
+
"paymentIntent"
|
|
8
|
+
],
|
|
9
|
+
"properties": {
|
|
10
|
+
"version": {
|
|
11
|
+
"type": "number"
|
|
12
|
+
},
|
|
13
|
+
"containerId": {
|
|
14
|
+
"type": "string"
|
|
15
|
+
},
|
|
16
|
+
"customer": {
|
|
17
|
+
"$ref": "customer.json#/definitions/Customer"
|
|
18
|
+
},
|
|
19
|
+
"paymentIntent": {
|
|
20
|
+
"$ref": "payment-intent.json#/definitions/PaymentIntent"
|
|
21
|
+
},
|
|
22
|
+
"options": {
|
|
23
|
+
"$ref": "hpp-options.json#/definitions/HppOptions"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"if": {
|
|
27
|
+
"properties": {
|
|
28
|
+
"options": {
|
|
29
|
+
"propertes": {
|
|
30
|
+
"tokenizeOnly": {
|
|
31
|
+
"boolean": true
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"else": {
|
|
38
|
+
"required": []
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/hpp-options.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"definitions": {
|
|
5
|
+
"HppOptions": {
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"buttonText": {
|
|
9
|
+
"type": "string"
|
|
10
|
+
},
|
|
11
|
+
"cards": {
|
|
12
|
+
"type": "string"
|
|
13
|
+
},
|
|
14
|
+
"challengeWindowSize": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"enum": ["01", "02", "03", "04", "05"]
|
|
17
|
+
},
|
|
18
|
+
"css": {
|
|
19
|
+
"type": "string"
|
|
20
|
+
},
|
|
21
|
+
"cssSignature": {
|
|
22
|
+
"type": "string"
|
|
23
|
+
},
|
|
24
|
+
"enableSca": {
|
|
25
|
+
"type": "boolean"
|
|
26
|
+
},
|
|
27
|
+
"hideButton": {
|
|
28
|
+
"type": "boolean"
|
|
29
|
+
},
|
|
30
|
+
"hideLogos": {
|
|
31
|
+
"type": "boolean"
|
|
32
|
+
},
|
|
33
|
+
"logoUrl": {
|
|
34
|
+
"type": "string"
|
|
35
|
+
},
|
|
36
|
+
"showEmail": {
|
|
37
|
+
"type": "boolean"
|
|
38
|
+
},
|
|
39
|
+
"showExtras": {
|
|
40
|
+
"type": "boolean"
|
|
41
|
+
},
|
|
42
|
+
"tokenizeOnly": {
|
|
43
|
+
"type": "boolean"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/payment-intent.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"additionalProperties": false,
|
|
5
|
+
"definitions": {
|
|
6
|
+
"PaymentIntent": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"payment": {
|
|
11
|
+
"type": "object",
|
|
12
|
+
"additionalProperties": false,
|
|
13
|
+
"required": [
|
|
14
|
+
"amount",
|
|
15
|
+
"currency",
|
|
16
|
+
"reference"
|
|
17
|
+
],
|
|
18
|
+
"optional": [
|
|
19
|
+
"hide_card_holder"
|
|
20
|
+
],
|
|
21
|
+
"properties": {
|
|
22
|
+
"amount": {
|
|
23
|
+
"type": "integer",
|
|
24
|
+
"minimum": 1
|
|
25
|
+
},
|
|
26
|
+
"currency": {
|
|
27
|
+
"type": "string"
|
|
28
|
+
},
|
|
29
|
+
"reference": {
|
|
30
|
+
"type": "string"
|
|
31
|
+
},
|
|
32
|
+
"hide_card_holder": {
|
|
33
|
+
"type": "boolean"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"verification": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"minLength": 5
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"required": [
|
|
43
|
+
"payment",
|
|
44
|
+
"verification"
|
|
45
|
+
]
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/payment-method.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"definitions": {
|
|
5
|
+
"PaymentMethod": {
|
|
6
|
+
"type": "object",
|
|
7
|
+
"oneOff": [{
|
|
8
|
+
"properties": {
|
|
9
|
+
"type:": {
|
|
10
|
+
"const": "card"
|
|
11
|
+
},
|
|
12
|
+
"data": {
|
|
13
|
+
"type": "object",
|
|
14
|
+
"properties": {
|
|
15
|
+
"number": {
|
|
16
|
+
"type": "string"
|
|
17
|
+
},
|
|
18
|
+
"holder": {
|
|
19
|
+
"type": "string"
|
|
20
|
+
},
|
|
21
|
+
"expiryMonth": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"enum": [
|
|
24
|
+
"01",
|
|
25
|
+
"02",
|
|
26
|
+
"03",
|
|
27
|
+
"04",
|
|
28
|
+
"05",
|
|
29
|
+
"06",
|
|
30
|
+
"07",
|
|
31
|
+
"08",
|
|
32
|
+
"09",
|
|
33
|
+
"10",
|
|
34
|
+
"11",
|
|
35
|
+
"12"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"expiryYear": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"maxLength": 4
|
|
41
|
+
},
|
|
42
|
+
"cvv": {
|
|
43
|
+
"type": "string"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"required": [
|
|
47
|
+
"number",
|
|
48
|
+
"holder",
|
|
49
|
+
"expiryMonth",
|
|
50
|
+
"expiryYear",
|
|
51
|
+
"cvv"
|
|
52
|
+
]
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"required": [
|
|
56
|
+
"type",
|
|
57
|
+
"data"
|
|
58
|
+
]
|
|
59
|
+
}, {
|
|
60
|
+
"properties": {
|
|
61
|
+
"type:": {
|
|
62
|
+
"const": "card_on_file"
|
|
63
|
+
},
|
|
64
|
+
"data": {
|
|
65
|
+
"type": "object",
|
|
66
|
+
"properties": {
|
|
67
|
+
"token": {
|
|
68
|
+
"type": "string"
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": [
|
|
72
|
+
"token"
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": [
|
|
77
|
+
"type",
|
|
78
|
+
"data"
|
|
79
|
+
]
|
|
80
|
+
}]
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/verify-card-options.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"definitions": {
|
|
5
|
+
"VerifyCardOptions": {
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"challengeWindowSize": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"enum": ["01", "02", "03", "04", "05"]
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "https://www.fatzebra.com/schemas/hpp-load-params.json",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"additionalProperties": false,
|
|
5
|
+
"required": [
|
|
6
|
+
"customer",
|
|
7
|
+
"paymentIntent",
|
|
8
|
+
"paymentMethod"
|
|
9
|
+
],
|
|
10
|
+
"properties": {
|
|
11
|
+
"customer": {
|
|
12
|
+
"$ref": "customer.json#/definitions/Customer"
|
|
13
|
+
},
|
|
14
|
+
"paymentIntent": {
|
|
15
|
+
"$ref": "payment-intent.json#/definitions/PaymentIntent"
|
|
16
|
+
},
|
|
17
|
+
"paymentMethod": {
|
|
18
|
+
"$ref": "payment-method.json#/definitions/PaymentMethod"
|
|
19
|
+
},
|
|
20
|
+
"options": {
|
|
21
|
+
"$ref": "verify-card-options.json#/definitions/VerifyCardOptions"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toHumanizedErrors = void 0;
|
|
4
|
+
var toHumanizedErrors = function (errors) {
|
|
5
|
+
return errors.map(function (e) {
|
|
6
|
+
return e.dataPath == '' ? e.message : "".concat(e.dataPath, " ").concat(e.message);
|
|
7
|
+
});
|
|
8
|
+
};
|
|
9
|
+
exports.toHumanizedErrors = toHumanizedErrors;
|
|
10
|
+
//# sourceMappingURL=validation-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-helper.js","sourceRoot":"","sources":["../../../src/validation/validation-helper.ts"],"names":[],"mappings":";;;AAEA,IAAM,iBAAiB,GAAG,UAAC,MAAqB;IAC9C,OAAO,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC;QAClB,OAAO,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAG,CAAC,CAAC,QAAQ,cAAI,CAAC,CAAC,OAAO,CAAE,CAAA;IACpE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAGC,8CAAiB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var validation_helper_1 = require("./validation-helper");
|
|
4
|
+
var hpp_load_params_validator_1 = require("./validators/hpp-load-params-validator");
|
|
5
|
+
describe('toHumanizedErrors', function () {
|
|
6
|
+
it('Converts Ajv ErrorObject to readable strings', function () {
|
|
7
|
+
var input = {
|
|
8
|
+
containerId: 'fz-hpp'
|
|
9
|
+
};
|
|
10
|
+
var errors = [
|
|
11
|
+
{
|
|
12
|
+
keyword: 'required',
|
|
13
|
+
dataPath: '',
|
|
14
|
+
schemaPath: '#/required',
|
|
15
|
+
params: { missingProperty: 'customer' },
|
|
16
|
+
message: "should have required property 'customer'"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
keyword: 'required',
|
|
20
|
+
dataPath: '',
|
|
21
|
+
schemaPath: '#/required',
|
|
22
|
+
params: { missingProperty: 'paymentIntent' },
|
|
23
|
+
message: "should have required property 'paymentIntent'"
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
var valid = (0, hpp_load_params_validator_1.validateHppLoadParams)(input);
|
|
27
|
+
var expected = [
|
|
28
|
+
"should have required property 'paymentIntent'"
|
|
29
|
+
];
|
|
30
|
+
expect(valid).toEqual(false);
|
|
31
|
+
expect((0, validation_helper_1.toHumanizedErrors)(hpp_load_params_validator_1.validateHppLoadParams.errors)).toEqual(expect.arrayContaining(expected));
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=validation-helper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-helper.test.js","sourceRoot":"","sources":["../../../src/validation/validation-helper.test.ts"],"names":[],"mappings":";;AACA,yDAAuD;AACvD,oFAA8E;AAE9E,QAAQ,CAAC,mBAAmB,EAAE;IAC5B,EAAE,CAAC,8CAA8C,EAAE;QACjD,IAAM,KAAK,GAAG;YACZ,WAAW,EAAE,QAAQ;SACtB,CAAA;QAED,IAAM,MAAM,GAAkB;YAC5B;gBACE,OAAO,EAAE,UAAU;gBACnB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,YAAY;gBACxB,MAAM,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE;gBACvC,OAAO,EAAE,0CAA0C;aACpD;YACD;gBACE,OAAO,EAAE,UAAU;gBACnB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,YAAY;gBACxB,MAAM,EAAE,EAAE,eAAe,EAAE,eAAe,EAAE;gBAC5C,OAAO,EAAE,+CAA+C;aACzD;SACF,CAAA;QAGD,IAAM,KAAK,GAAG,IAAA,iDAAqB,EAAC,KAAK,CAAC,CAAA;QAE1C,IAAM,QAAQ,GAAG;YACf,+CAA+C;SAChD,CAAA;QAED,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,CAAC,IAAA,qCAAiB,EAAC,iDAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAA;IACnG,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.validateHppLoadParams = void 0;
|
|
7
|
+
var ajv_1 = __importDefault(require("ajv"));
|
|
8
|
+
var customer_json_1 = __importDefault(require("../schemas/customer.json"));
|
|
9
|
+
var payment_intent_json_1 = __importDefault(require("../schemas/payment-intent.json"));
|
|
10
|
+
var hpp_options_json_1 = __importDefault(require("../schemas/hpp-options.json"));
|
|
11
|
+
var hpp_load_params_json_1 = __importDefault(require("../schemas/hpp-load-params.json"));
|
|
12
|
+
var validator = new ajv_1.default({
|
|
13
|
+
allErrors: true,
|
|
14
|
+
jsonPointers: true,
|
|
15
|
+
})
|
|
16
|
+
.addSchema(customer_json_1.default)
|
|
17
|
+
.addSchema(payment_intent_json_1.default)
|
|
18
|
+
.addSchema(hpp_options_json_1.default)
|
|
19
|
+
.compile(hpp_load_params_json_1.default);
|
|
20
|
+
exports.validateHppLoadParams = validator;
|
|
21
|
+
//# sourceMappingURL=hpp-load-params-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hpp-load-params-validator.js","sourceRoot":"","sources":["../../../../src/validation/validators/hpp-load-params-validator.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAqB;AACrB,2EAAqD;AACrD,uFAAgE;AAChE,iFAA0D;AAC1D,yFAAiE;AAEjE,IAAM,SAAS,GAAG,IAAI,aAAG,CAAC;IACxB,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,IAAI;CACnB,CAAC;KACC,SAAS,CAAC,uBAAc,CAAC;KACzB,SAAS,CAAC,6BAAmB,CAAC;KAC9B,SAAS,CAAC,0BAAgB,CAAC;KAC3B,OAAO,CAAC,8BAAmB,CAAC,CAAA;AAGhB,0CAAqB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var hpp_load_params_validator_1 = require("./hpp-load-params-validator");
|
|
4
|
+
var customer = {
|
|
5
|
+
firstName: 'John',
|
|
6
|
+
lastName: 'Doe',
|
|
7
|
+
email: 'john.doe@gmail.com',
|
|
8
|
+
address: '123 Sesame St.',
|
|
9
|
+
city: 'Sin City',
|
|
10
|
+
postcode: '2000',
|
|
11
|
+
state: 'NSW',
|
|
12
|
+
country: 'Australia'
|
|
13
|
+
};
|
|
14
|
+
var paymentIntent = {
|
|
15
|
+
payment: {
|
|
16
|
+
amount: 100,
|
|
17
|
+
currency: 'AUD',
|
|
18
|
+
reference: 'ref123',
|
|
19
|
+
hide_card_holder: false,
|
|
20
|
+
},
|
|
21
|
+
verification: 'ver123'
|
|
22
|
+
};
|
|
23
|
+
var input;
|
|
24
|
+
beforeEach(function () {
|
|
25
|
+
input = {
|
|
26
|
+
containerId: 'fz-iframe',
|
|
27
|
+
customer: customer,
|
|
28
|
+
paymentIntent: paymentIntent,
|
|
29
|
+
options: {
|
|
30
|
+
tokenizeOnly: false
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
describe('hppLoadParamsValidator', function () {
|
|
35
|
+
describe('hppOptions: tokenizeOnly', function () {
|
|
36
|
+
it('does not require customer object when true', function () {
|
|
37
|
+
delete input.customer;
|
|
38
|
+
input.options.tokenizeOnly = true;
|
|
39
|
+
var valid = (0, hpp_load_params_validator_1.validateHppLoadParams)(input);
|
|
40
|
+
expect(valid).toEqual(true);
|
|
41
|
+
});
|
|
42
|
+
it('require customer object when false', function () {
|
|
43
|
+
input.customer = customer;
|
|
44
|
+
input.options.tokenizeOnly = false;
|
|
45
|
+
var valid = (0, hpp_load_params_validator_1.validateHppLoadParams)(input);
|
|
46
|
+
expect(valid).toEqual(true);
|
|
47
|
+
});
|
|
48
|
+
it('require customer object when not set', function () {
|
|
49
|
+
input.customer = customer;
|
|
50
|
+
delete input.options.tokenizeOnly;
|
|
51
|
+
var valid = (0, hpp_load_params_validator_1.validateHppLoadParams)(input);
|
|
52
|
+
expect(valid).toEqual(true);
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=hpp-load-params-validator.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hpp-load-params-validator.test.js","sourceRoot":"","sources":["../../../../src/validation/validators/hpp-load-params-validator.test.ts"],"names":[],"mappings":";;AAAA,yEAAmE;AAGnE,IAAM,QAAQ,GAAG;IACf,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE,oBAAoB;IAC3B,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,WAAW;CACrB,CAAA;AAED,IAAM,aAAa,GAAG;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,GAAG;QACX,QAAQ,EAAE,KAAK;QACf,SAAS,EAAE,QAAQ;QACnB,gBAAgB,EAAE,KAAK;KACxB;IACD,YAAY,EAAE,QAAQ;CACvB,CAAA;AAED,IAAI,KAAoB,CAAA;AAExB,UAAU,CAAC;IACT,KAAK,GAAG;QACN,WAAW,EAAE,WAAW;QACxB,QAAQ,UAAA;QACR,aAAa,eAAA;QACb,OAAO,EAAE;YACP,YAAY,EAAE,KAAK;SACpB;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,wBAAwB,EAAE;IACjC,QAAQ,CAAC,0BAA0B,EAAE;QACnC,EAAE,CAAC,4CAA4C,EAAE;YAC/C,OAAO,KAAK,CAAC,QAAQ,CAAA;YACrB,KAAK,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAA;YAEjC,IAAM,KAAK,GAAG,IAAA,iDAAqB,EAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE;YACvC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACzB,KAAK,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAA;YAElC,IAAM,KAAK,GAAG,IAAA,iDAAqB,EAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE;YACzC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACzB,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,CAAA;YAEjC,IAAM,KAAK,GAAG,IAAA,iDAAqB,EAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.validateVerifyCardParams = void 0;
|
|
7
|
+
var ajv_1 = __importDefault(require("ajv"));
|
|
8
|
+
var customer_json_1 = __importDefault(require("../schemas/customer.json"));
|
|
9
|
+
var payment_intent_json_1 = __importDefault(require("../schemas/payment-intent.json"));
|
|
10
|
+
var payment_method_json_1 = __importDefault(require("../schemas/payment-method.json"));
|
|
11
|
+
var verify_card_options_json_1 = __importDefault(require("../schemas/verify-card-options.json"));
|
|
12
|
+
var verify_card_params_json_1 = __importDefault(require("../schemas/verify-card-params.json"));
|
|
13
|
+
var validator = new ajv_1.default({
|
|
14
|
+
allErrors: true,
|
|
15
|
+
jsonPointers: true,
|
|
16
|
+
})
|
|
17
|
+
.addSchema(customer_json_1.default)
|
|
18
|
+
.addSchema(payment_intent_json_1.default)
|
|
19
|
+
.addSchema(payment_method_json_1.default)
|
|
20
|
+
.addSchema(verify_card_options_json_1.default)
|
|
21
|
+
.compile(verify_card_params_json_1.default);
|
|
22
|
+
exports.validateVerifyCardParams = validator;
|
|
23
|
+
//# sourceMappingURL=verify-card-params-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-card-params-validator.js","sourceRoot":"","sources":["../../../../src/validation/validators/verify-card-params-validator.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAqB;AAErB,2EAAqD;AACrD,uFAAgE;AAChE,uFAAgE;AAChE,iGAAyE;AACzE,+FAAuE;AAEvE,IAAM,SAAS,GAAG,IAAI,aAAG,CAAC;IACxB,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,IAAI;CACnB,CAAC;KACD,SAAS,CAAC,uBAAc,CAAC;KACzB,SAAS,CAAC,6BAAmB,CAAC;KAC9B,SAAS,CAAC,6BAAmB,CAAC;KAC9B,SAAS,CAAC,kCAAuB,CAAC;KAClC,OAAO,CAAC,iCAAsB,CAAC,CAAA;AAGlB,6CAAwB"}
|