@fat-zebra/sdk 1.5.1 → 1.5.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.
Files changed (148) hide show
  1. package/.idea/fatzebra-js.iml +12 -0
  2. package/.idea/modules.xml +8 -0
  3. package/.idea/vcs.xml +6 -0
  4. package/README.dev.md +33 -0
  5. package/README.md +4 -1
  6. package/dist/fatzebra.css +91 -0
  7. package/dist/local/fatzebra.js +18990 -0
  8. package/dist/local/fatzebra.js.map +1 -1
  9. package/dist/production/fatzebra.css +91 -0
  10. package/dist/production/fatzebra.js +2 -0
  11. package/dist/sca/cardinal.js +1 -2
  12. package/dist/sca/index.js +0 -1
  13. package/dist/shared/util.d.ts +1 -1
  14. package/dist/shared/util.js +2 -2
  15. package/dist/staging/fatzebra.css +91 -0
  16. package/dist/staging/fatzebra.js +17717 -0
  17. package/dist/staging/fatzebra.js.map +1 -0
  18. package/dist/staging/index.html +247 -0
  19. package/dist/version.d.ts +1 -0
  20. package/dist/version.js +1 -0
  21. package/package.json +7 -6
  22. package/scripts/release-package.js +113 -0
  23. package/dist/react/url.d.ts +0 -12
  24. package/dist/react/url.js +0 -33
  25. package/dist/src/applepay/applepay.js +0 -198
  26. package/dist/src/applepay/applepay.js.map +0 -1
  27. package/dist/src/applepay/clients/apple-pay-client.js +0 -66
  28. package/dist/src/applepay/clients/apple-pay-client.js.map +0 -1
  29. package/dist/src/applepay/clients/paynow-client.js +0 -96
  30. package/dist/src/applepay/clients/paynow-client.js.map +0 -1
  31. package/dist/src/applepay/index.js +0 -6
  32. package/dist/src/applepay/index.js.map +0 -1
  33. package/dist/src/click_to_pay/index.js +0 -88
  34. package/dist/src/click_to_pay/index.js.map +0 -1
  35. package/dist/src/click_to_pay/types.js +0 -3
  36. package/dist/src/click_to_pay/types.js.map +0 -1
  37. package/dist/src/hpp/hpp.js +0 -230
  38. package/dist/src/hpp/hpp.js.map +0 -1
  39. package/dist/src/hpp/hpp.test.js +0 -135
  40. package/dist/src/hpp/hpp.test.js.map +0 -1
  41. package/dist/src/hpp/index.js +0 -6
  42. package/dist/src/hpp/index.js.map +0 -1
  43. package/dist/src/index.js +0 -14
  44. package/dist/src/index.js.map +0 -1
  45. package/dist/src/main.js +0 -243
  46. package/dist/src/main.js.map +0 -1
  47. package/dist/src/main.test.js +0 -236
  48. package/dist/src/main.test.js.map +0 -1
  49. package/dist/src/paypal/paypal-button.js +0 -311
  50. package/dist/src/paypal/paypal-button.js.map +0 -1
  51. package/dist/src/paypal/paypal-button.test.js +0 -41
  52. package/dist/src/paypal/paypal-button.test.js.map +0 -1
  53. package/dist/src/paypal/paypal-checkout.js +0 -111
  54. package/dist/src/paypal/paypal-checkout.js.map +0 -1
  55. package/dist/src/paypal/paypal-checkout.test.js +0 -167
  56. package/dist/src/paypal/paypal-checkout.test.js.map +0 -1
  57. package/dist/src/paypal/types.js +0 -9
  58. package/dist/src/paypal/types.js.map +0 -1
  59. package/dist/src/paypal/validation.js +0 -73
  60. package/dist/src/paypal/validation.js.map +0 -1
  61. package/dist/src/react/VerifyCard.js +0 -29
  62. package/dist/src/react/VerifyCard.js.map +0 -1
  63. package/dist/src/react/index.js +0 -11
  64. package/dist/src/react/index.js.map +0 -1
  65. package/dist/src/react/submitForm.js +0 -13
  66. package/dist/src/react/submitForm.js.map +0 -1
  67. package/dist/src/react/url.js +0 -60
  68. package/dist/src/react/url.js.map +0 -1
  69. package/dist/src/react/url.test.js +0 -88
  70. package/dist/src/react/url.test.js.map +0 -1
  71. package/dist/src/react/useFatZebra.js +0 -119
  72. package/dist/src/react/useFatZebra.js.map +0 -1
  73. package/dist/src/sca/cardinal.js +0 -110
  74. package/dist/src/sca/cardinal.js.map +0 -1
  75. package/dist/src/sca/eci-mappings.js +0 -63
  76. package/dist/src/sca/eci-mappings.js.map +0 -1
  77. package/dist/src/sca/eci-mappings.test.js +0 -31
  78. package/dist/src/sca/eci-mappings.test.js.map +0 -1
  79. package/dist/src/sca/index.js +0 -363
  80. package/dist/src/sca/index.js.map +0 -1
  81. package/dist/src/sca/index.test.js +0 -620
  82. package/dist/src/sca/index.test.js.map +0 -1
  83. package/dist/src/sca/scenarios/enrollment.js +0 -161
  84. package/dist/src/sca/scenarios/enrollment.js.map +0 -1
  85. package/dist/src/sca/scenarios/index.js +0 -8
  86. package/dist/src/sca/scenarios/index.js.map +0 -1
  87. package/dist/src/sca/scenarios/validation.js +0 -139
  88. package/dist/src/sca/scenarios/validation.js.map +0 -1
  89. package/dist/src/sca/types.js +0 -57
  90. package/dist/src/sca/types.js.map +0 -1
  91. package/dist/src/shared/api-gateway-client.js +0 -184
  92. package/dist/src/shared/api-gateway-client.js.map +0 -1
  93. package/dist/src/shared/bridge-client.js +0 -24
  94. package/dist/src/shared/bridge-client.js.map +0 -1
  95. package/dist/src/shared/constants.js +0 -19
  96. package/dist/src/shared/constants.js.map +0 -1
  97. package/dist/src/shared/env.development.js +0 -12
  98. package/dist/src/shared/env.development.js.map +0 -1
  99. package/dist/src/shared/env.js +0 -46
  100. package/dist/src/shared/env.js.map +0 -1
  101. package/dist/src/shared/envs/local.js +0 -12
  102. package/dist/src/shared/envs/local.js.map +0 -1
  103. package/dist/src/shared/envs/production.js +0 -12
  104. package/dist/src/shared/envs/production.js.map +0 -1
  105. package/dist/src/shared/envs/sandbox.js +0 -12
  106. package/dist/src/shared/envs/sandbox.js.map +0 -1
  107. package/dist/src/shared/envs/staging.js +0 -12
  108. package/dist/src/shared/envs/staging.js.map +0 -1
  109. package/dist/src/shared/event-manager.js +0 -14
  110. package/dist/src/shared/event-manager.js.map +0 -1
  111. package/dist/src/shared/post-message-client.js +0 -107
  112. package/dist/src/shared/post-message-client.js.map +0 -1
  113. package/dist/src/shared/post-message-client.test.js +0 -58
  114. package/dist/src/shared/post-message-client.test.js.map +0 -1
  115. package/dist/src/shared/types.js +0 -47
  116. package/dist/src/shared/types.js.map +0 -1
  117. package/dist/src/shared/types.test.js +0 -55
  118. package/dist/src/shared/types.test.js.map +0 -1
  119. package/dist/src/shared/util.js +0 -96
  120. package/dist/src/shared/util.js.map +0 -1
  121. package/dist/src/shared/util.test.js +0 -148
  122. package/dist/src/shared/util.test.js.map +0 -1
  123. package/dist/src/validation/index.js +0 -12
  124. package/dist/src/validation/index.js.map +0 -1
  125. package/dist/src/validation/schemas/click-to-pay/load-params.json +0 -34
  126. package/dist/src/validation/schemas/click-to-pay/options.json +0 -23
  127. package/dist/src/validation/schemas/click-to-pay/payment-intent.json +0 -42
  128. package/dist/src/validation/schemas/customer.json +0 -38
  129. package/dist/src/validation/schemas/hpp-load-params.json +0 -40
  130. package/dist/src/validation/schemas/hpp-options.json +0 -48
  131. package/dist/src/validation/schemas/payment-intent.json +0 -48
  132. package/dist/src/validation/schemas/payment-method.json +0 -83
  133. package/dist/src/validation/schemas/verify-card-options.json +0 -15
  134. package/dist/src/validation/schemas/verify-card-params.json +0 -24
  135. package/dist/src/validation/validation-helper.js +0 -10
  136. package/dist/src/validation/validation-helper.js.map +0 -1
  137. package/dist/src/validation/validation-helper.test.js +0 -34
  138. package/dist/src/validation/validation-helper.test.js.map +0 -1
  139. package/dist/src/validation/validators/click-to-pay-load-params-validator.js +0 -19
  140. package/dist/src/validation/validators/click-to-pay-load-params-validator.js.map +0 -1
  141. package/dist/src/validation/validators/hpp-load-params-validator.js +0 -21
  142. package/dist/src/validation/validators/hpp-load-params-validator.js.map +0 -1
  143. package/dist/src/validation/validators/hpp-load-params-validator.test.js +0 -56
  144. package/dist/src/validation/validators/hpp-load-params-validator.test.js.map +0 -1
  145. package/dist/src/validation/validators/verify-card-params-validator.js +0 -23
  146. package/dist/src/validation/validators/verify-card-params-validator.js.map +0 -1
  147. package/dist/tests/helpers/api-gateway-mock.js +0 -37
  148. package/dist/tests/helpers/api-gateway-mock.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.test.js","sourceRoot":"","sources":["../../src/main.test.ts"],"names":[],"mappings":"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"}
@@ -1,311 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __generator = (this && this.__generator) || function (thisArg, body) {
35
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
- function verb(n) { return function (v) { return step([n, v]); }; }
38
- function step(op) {
39
- if (f) throw new TypeError("Generator is already executing.");
40
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
41
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
42
- if (y = 0, t) op = [op[0] & 2, t.value];
43
- switch (op[0]) {
44
- case 0: case 1: t = op; break;
45
- case 4: _.label++; return { value: op[1], done: false };
46
- case 5: _.label++; y = op[1]; op = [0]; continue;
47
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
- default:
49
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
- if (t[2]) _.ops.pop();
54
- _.trys.pop(); continue;
55
- }
56
- op = body.call(thisArg, _);
57
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
- }
60
- };
61
- var __importDefault = (this && this.__importDefault) || function (mod) {
62
- return (mod && mod.__esModule) ? mod : { "default": mod };
63
- };
64
- Object.defineProperty(exports, "__esModule", { value: true });
65
- exports.PayPalButton = void 0;
66
- var event_manager_1 = require("../shared/event-manager");
67
- var types_1 = require("./types");
68
- var api_gateway_client_1 = __importDefault(require("../shared/api-gateway-client"));
69
- var types_2 = require("../shared/types");
70
- var util = __importStar(require("../shared/util"));
71
- var constants_1 = require("../shared/constants");
72
- var defaultStyle = {
73
- layout: 'horizontal',
74
- color: 'gold',
75
- shape: 'pill',
76
- label: 'paypal',
77
- };
78
- var PayPalButton = /** @class */ (function () {
79
- function PayPalButton(paymentMethod, paymentIntent, billingAgreement, buttonStyle) {
80
- this.paymentMethod = paymentMethod;
81
- this.paymentIntent = paymentIntent;
82
- this.billingAgreement = billingAgreement;
83
- this.buttonStyle = buttonStyle;
84
- this.client = new api_gateway_client_1.default({ accessToken: window.localStorage.getItem(constants_1.LocalStorageAccessTokenKey),
85
- username: window.MerchantUsername,
86
- });
87
- this.createButton();
88
- }
89
- Object.defineProperty(PayPalButton.prototype, "paypalButtons", {
90
- get: function () {
91
- return this._paypalButtons;
92
- },
93
- enumerable: false,
94
- configurable: true
95
- });
96
- Object.defineProperty(PayPalButton.prototype, "paypalActions", {
97
- get: function () {
98
- return this.actions;
99
- },
100
- enumerable: false,
101
- configurable: true
102
- });
103
- PayPalButton.prototype.render = function (containerId) {
104
- var container = this.getContainer(containerId);
105
- if (typeof (container) != 'undefined' && container != null) {
106
- this._paypalButtons.render('#' + container.id);
107
- }
108
- else {
109
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
110
- errors: ["Container with id #".concat(containerId, " does not exist.")],
111
- data: null
112
- });
113
- }
114
- };
115
- PayPalButton.prototype.getContainer = function (containerId) {
116
- return document.getElementById(containerId);
117
- };
118
- PayPalButton.prototype.createButton = function () {
119
- var _this = this;
120
- var button = ({});
121
- button.style = (this.buttonStyle ? this.buttonStyle : defaultStyle);
122
- if (this.billingAgreement === true) {
123
- button.createBillingAgreement = function () { return __awaiter(_this, void 0, void 0, function () {
124
- return __generator(this, function (_a) {
125
- return [2 /*return*/, this.createBillingAgreement()];
126
- });
127
- }); };
128
- button.onApprove = function (data, actions) { return __awaiter(_this, void 0, void 0, function () {
129
- return __generator(this, function (_a) {
130
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_PROCESSESING, { data: {}, message: 'The request is being processed.' });
131
- return [2 /*return*/, this.approveBillingAgreement(data)];
132
- });
133
- }); };
134
- button.onCancel = function (data, actions) {
135
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_CANCEL, { data: { id: data.orderID }, message: 'PayPal Billing Agreement cancelled.' });
136
- };
137
- }
138
- else {
139
- button.createOrder = function () { return __awaiter(_this, void 0, void 0, function () {
140
- return __generator(this, function (_a) {
141
- return [2 /*return*/, this.createOrder()];
142
- });
143
- }); };
144
- button.onApprove = function (data, actions) { return __awaiter(_this, void 0, void 0, function () {
145
- return __generator(this, function (_a) {
146
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_PROCESSESING, { data: {}, message: 'The request is being processed.' });
147
- return [2 /*return*/, this.approveOrder(data)];
148
- });
149
- }); };
150
- button.onCancel = function (data, actions) {
151
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_CANCEL, { data: { id: data.orderID }, message: 'PayPal Order cancelled.' });
152
- };
153
- }
154
- button.onError = function (error) {
155
- // This flag is used to prevent emitting general error from PayPal
156
- // if an error has already been raised and emitted.
157
- if (_this.validationErrorRaised === false) {
158
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
159
- errors: ['PayPal Checkout failed.'],
160
- data: null
161
- });
162
- }
163
- };
164
- this._paypalButtons = window.paypal.Buttons(button);
165
- };
166
- PayPalButton.prototype.createOrder = function () {
167
- return __awaiter(this, void 0, void 0, function () {
168
- var payload, response, error_1;
169
- return __generator(this, function (_a) {
170
- switch (_a.label) {
171
- case 0:
172
- _a.trys.push([0, 2, , 3]);
173
- this.validationErrorRaised = false;
174
- payload = util.toObjectWithSnakeCaseKeys(this.paymentMethod);
175
- payload.payment_intent = this.paymentIntent;
176
- return [4 /*yield*/, this.client.createPayPalOrder({
177
- order: payload
178
- })];
179
- case 1:
180
- response = (_a.sent()).data;
181
- return [2 /*return*/, response.id];
182
- case 2:
183
- error_1 = _a.sent();
184
- this.validationErrorRaised = true;
185
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
186
- errors: this.formatError(error_1),
187
- data: null
188
- });
189
- return [2 /*return*/, null];
190
- case 3: return [2 /*return*/];
191
- }
192
- });
193
- });
194
- };
195
- PayPalButton.prototype.approveOrder = function (data) {
196
- return __awaiter(this, void 0, void 0, function () {
197
- var response, error_2;
198
- return __generator(this, function (_a) {
199
- switch (_a.label) {
200
- case 0:
201
- _a.trys.push([0, 5, , 6]);
202
- this.validationErrorRaised = false;
203
- response = undefined;
204
- if (!(this.paymentMethod.intent.toUpperCase() === types_1.PayPalIntent.CAPTURE)) return [3 /*break*/, 2];
205
- return [4 /*yield*/, this.client.capturePayPalOrder({
206
- id: data.orderID
207
- })];
208
- case 1:
209
- response = (_a.sent()).data;
210
- return [3 /*break*/, 4];
211
- case 2:
212
- if (!(this.paymentMethod.intent.toUpperCase() === types_1.PayPalIntent.AUTHORIZE)) return [3 /*break*/, 4];
213
- return [4 /*yield*/, this.client.authorizePayPalOrder({
214
- id: data.orderID
215
- })];
216
- case 3:
217
- response = (_a.sent()).data;
218
- _a.label = 4;
219
- case 4:
220
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_SUCCESS, {
221
- data: util.toObjectWithCamelCaseKeys(response),
222
- message: 'PayPal order approved.'
223
- });
224
- return [2 /*return*/];
225
- case 5:
226
- error_2 = _a.sent();
227
- this.validationErrorRaised = true;
228
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
229
- errors: this.formatError(error_2),
230
- data: null
231
- });
232
- return [2 /*return*/];
233
- case 6: return [2 /*return*/];
234
- }
235
- });
236
- });
237
- };
238
- PayPalButton.prototype.createBillingAgreement = function () {
239
- return __awaiter(this, void 0, void 0, function () {
240
- var payload, response, error_3;
241
- return __generator(this, function (_a) {
242
- switch (_a.label) {
243
- case 0:
244
- _a.trys.push([0, 2, , 3]);
245
- this.validationErrorRaised = false;
246
- payload = util.toObjectWithSnakeCaseKeys(this.paymentMethod);
247
- delete payload.billing_agreement;
248
- return [4 /*yield*/, this.client.createPayPalBillingAgreement({
249
- billing: payload
250
- })];
251
- case 1:
252
- response = (_a.sent()).data;
253
- return [2 /*return*/, response.token_id];
254
- case 2:
255
- error_3 = _a.sent();
256
- this.validationErrorRaised = true;
257
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
258
- errors: this.formatError(error_3),
259
- data: null
260
- });
261
- return [2 /*return*/];
262
- case 3: return [2 /*return*/];
263
- }
264
- });
265
- });
266
- };
267
- PayPalButton.prototype.approveBillingAgreement = function (data) {
268
- return __awaiter(this, void 0, void 0, function () {
269
- var response, error_4;
270
- return __generator(this, function (_a) {
271
- switch (_a.label) {
272
- case 0:
273
- _a.trys.push([0, 2, , 3]);
274
- this.validationErrorRaised = false;
275
- return [4 /*yield*/, this.client.approvePayPalBillingAgreement({
276
- id: data.billingToken
277
- })];
278
- case 1:
279
- response = (_a.sent()).data;
280
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_SUCCESS, {
281
- data: util.toObjectWithCamelCaseKeys(response),
282
- message: 'PayPal Billing Agreement created.'
283
- });
284
- return [2 /*return*/];
285
- case 2:
286
- error_4 = _a.sent();
287
- this.validationErrorRaised = true;
288
- (0, event_manager_1.emit)(types_2.PublicEvent.PAYPAL_ERROR, {
289
- errors: this.formatError(error_4),
290
- data: null
291
- });
292
- return [2 /*return*/];
293
- case 3: return [2 /*return*/];
294
- }
295
- });
296
- });
297
- };
298
- PayPalButton.prototype.formatError = function (error) {
299
- var _a, _b;
300
- var message = [(_b = (_a = error === null || error === void 0 ? void 0 : error.request) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.errors].flat();
301
- if (typeof message[0] === 'undefined')
302
- message = [error === null || error === void 0 ? void 0 : error.message].flat();
303
- if (typeof message[0] === 'undefined')
304
- message = ['Unknown error'];
305
- return message;
306
- };
307
- return PayPalButton;
308
- }());
309
- exports.PayPalButton = PayPalButton;
310
- exports.default = PayPalButton;
311
- //# sourceMappingURL=paypal-button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paypal-button.js","sourceRoot":"","sources":["../../../src/paypal/paypal-button.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- "use strict";
2
- /**
3
- * @jest-environment jsdom
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var types_1 = require("../shared/types");
7
- var paypal_button_1 = require("./paypal-button");
8
- var eventManager = require('../../src/shared/event-manager');
9
- eventManager.emit = jest.fn();
10
- describe('PayPalButton', function () {
11
- var instance;
12
- beforeEach(function () {
13
- jest.clearAllMocks();
14
- window.paypal = jest.fn();
15
- window.paypal.Buttons = jest.fn().mockImplementation(function () {
16
- return {
17
- render: function () { return true; }
18
- };
19
- });
20
- instance = new paypal_button_1.PayPalButton();
21
- localStorage.setItem('x-fz-token', 'TOKEN');
22
- });
23
- describe('render()', function () {
24
- it('should emit fz.paypal.error if container does not exist', function () {
25
- instance.render('invalid-container-id');
26
- var eventDetail = {
27
- errors: ["Container with id #invalid-container-id does not exist."]
28
- };
29
- expect(eventManager.emit).toHaveBeenCalledTimes(1);
30
- expect(eventManager.emit.mock.calls[0][0]).toBe(types_1.PublicEvent.PAYPAL_ERROR);
31
- expect(eventManager.emit.mock.calls[0][1]).toMatchObject(eventDetail);
32
- });
33
- it('calls paypal.render()', function () {
34
- instance.getContainer = jest.fn().mockReturnValue(Object);
35
- var spy = jest.spyOn(instance.paypalButtons, 'render');
36
- instance.render('containerID');
37
- expect(spy).toHaveBeenCalled();
38
- });
39
- });
40
- });
41
- //# sourceMappingURL=paypal-button.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paypal-button.test.js","sourceRoot":"","sources":["../../../src/paypal/paypal-button.test.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAEH,yCAA6C;AAC7C,iDAA8C;AAC9C,IAAM,YAAY,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAA;AAC9D,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;AAE7B,QAAQ,CAAC,cAAc,EAAE;IACvB,IAAI,QAAsB,CAAA;IAE1B,UAAU,CAAC;QACT,IAAI,CAAC,aAAa,EAAE,CAAA;QAEpB,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACzB,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC;YACnD,OAAO;gBACL,MAAM,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI;aACnB,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,QAAQ,GAAG,IAAI,4BAAY,EAAE,CAAA;QAC7B,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,UAAU,EAAE;QACnB,EAAE,CAAC,yDAAyD,EAAE;YAC5D,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAA;YAEvC,IAAM,WAAW,GAAG;gBAClB,MAAM,EAAE,CAAC,yDAAyD,CAAC;aACpE,CAAA;YAED,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAW,CAAC,YAAY,CAAC,CAAA;YACzE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;QACvE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uBAAuB,EAAE;YAC1B,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;YACzD,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;YACxD,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;YAE9B,MAAM,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,111 +0,0 @@
1
- "use strict";
2
- // This is the implementation of PayPal Checkout
3
- //
4
- // https://developer.paypal.com/docs/checkout/
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PayPalCheckout = void 0;
7
- var event_manager_1 = require("../shared/event-manager");
8
- var types_1 = require("../shared/types");
9
- var paypal_button_1 = require("./paypal-button");
10
- var validation_1 = require("./validation");
11
- var PayPalCheckout = /** @class */ (function () {
12
- function PayPalCheckout(config) {
13
- var _a, _b, _c, _d, _e;
14
- if (!this.validatePayPalSetup(config)) {
15
- (0, event_manager_1.emit)(types_1.PublicEvent.PAYPAL_ERROR, {
16
- errors: this.errors(),
17
- data: null
18
- });
19
- return;
20
- }
21
- this.billingAgreement = (((_b = (_a = config === null || config === void 0 ? void 0 : config.payment) === null || _a === void 0 ? void 0 : _a.paymentMethod) === null || _b === void 0 ? void 0 : _b.type) === types_1.PaymentMethodType.PAYPAL_BILLING);
22
- this.payment = config === null || config === void 0 ? void 0 : config.payment;
23
- this.intent = (_e = (_d = (_c = config === null || config === void 0 ? void 0 : config.payment) === null || _c === void 0 ? void 0 : _c.paymentMethod) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.intent;
24
- this.currency = config === null || config === void 0 ? void 0 : config.currency;
25
- this.containerId = config === null || config === void 0 ? void 0 : config.containerId;
26
- this.buttonStyle = config === null || config === void 0 ? void 0 : config.style;
27
- if (!this.validatePayPalRequest()) {
28
- (0, event_manager_1.emit)(types_1.PublicEvent.PAYPAL_ERROR, {
29
- errors: this.errors(),
30
- data: null
31
- });
32
- return;
33
- }
34
- }
35
- Object.defineProperty(PayPalCheckout.prototype, "paypal", {
36
- get: function () {
37
- return this.paypalButton;
38
- },
39
- set: function (paypal) {
40
- this.paypalButton = paypal;
41
- },
42
- enumerable: false,
43
- configurable: true
44
- });
45
- PayPalCheckout.prototype.load = function () {
46
- var _this = this;
47
- if (this.errors()) {
48
- return;
49
- }
50
- if (this.intent && !this.billingAgreement) {
51
- var data = this.payment.paymentMethod.data;
52
- data.intent = this.intent.toUpperCase();
53
- }
54
- var self = this;
55
- return new Promise(function (resolve, reject) {
56
- var script = document.createElement('script');
57
- script.type = 'text/javascript';
58
- var source = process.env.PAYPAL_SDK_URL + '&client-id=' + process.env.PAYPAL_CLIENT_ID + '&debug=' + process.env.PAYPAL_DEBUG;
59
- if (_this.currency)
60
- source += '&currency=' + _this.currency;
61
- if (_this.intent && !_this.billingAgreement)
62
- source += '&intent=' + _this.intent;
63
- if (_this.billingAgreement === true)
64
- source += '&vault=true';
65
- script.setAttribute('data-partner-attribution-id', process.env.PAYPAL_PARTNER_ID);
66
- script.src = source;
67
- script.async = true;
68
- document.body.appendChild(script);
69
- script.onload = function () {
70
- self.paypalButton = new paypal_button_1.PayPalButton(self.payment.paymentMethod.data, self.payment.paymentIntent, self.billingAgreement, self.buttonStyle);
71
- resolve(null);
72
- };
73
- script.onerror = function () {
74
- reject(['Loading PayPal failed']);
75
- };
76
- });
77
- };
78
- PayPalCheckout.prototype.render = function () {
79
- if (this.errors()) {
80
- return;
81
- }
82
- this.paypalButton.render(this.containerId);
83
- };
84
- PayPalCheckout.prototype.validatePayPalSetup = function (config) {
85
- var validations = (0, validation_1.validatePayPalSetup)(config);
86
- this.validationErrors = null;
87
- if (!validations.valid) {
88
- this.validationErrors = validations.errors;
89
- return false;
90
- }
91
- return true;
92
- };
93
- PayPalCheckout.prototype.validatePayPalRequest = function () {
94
- var validations = (0, validation_1.validatePayPalRequest)(this.payment, this.billingAgreement);
95
- this.validationErrors = null;
96
- if (!validations.valid) {
97
- this.validationErrors = validations.errors;
98
- return false;
99
- }
100
- return true;
101
- };
102
- PayPalCheckout.prototype.errors = function () {
103
- if (this.validationErrors !== null)
104
- return this.validationErrors;
105
- return null;
106
- };
107
- return PayPalCheckout;
108
- }());
109
- exports.PayPalCheckout = PayPalCheckout;
110
- exports.default = PayPalCheckout;
111
- //# sourceMappingURL=paypal-checkout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paypal-checkout.js","sourceRoot":"","sources":["../../../src/paypal/paypal-checkout.ts"],"names":[],"mappings":"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"}
@@ -1,167 +0,0 @@
1
- "use strict";
2
- /**
3
- * @jest-environment jsdom
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var types_1 = require("../shared/types");
7
- var paypal_checkout_1 = require("./paypal-checkout");
8
- var paypal_button_1 = require("./paypal-button");
9
- var validation_1 = require("./validation");
10
- jest.mock('../../src/paypal/paypal-button');
11
- var eventManager = require('../../src/shared/event-manager');
12
- eventManager.emit = jest.fn();
13
- var paymentIntent = {
14
- payment: {
15
- amount: 1000,
16
- currency: 'AUD',
17
- reference: 'ref_12345',
18
- hide_card_holder: false,
19
- },
20
- verification: 'ver_12345'
21
- };
22
- var payPalPaymentMethod = {
23
- intent: "capture",
24
- purchases: [
25
- {
26
- amount: {
27
- itemTotal: 9000,
28
- shipping: 2000,
29
- taxTotal: 1000
30
- },
31
- items: [
32
- {
33
- name: 'T-Shirt',
34
- unitAmount: 9000,
35
- tax: 1000,
36
- qty: 1
37
- }
38
- ]
39
- }
40
- ]
41
- };
42
- describe('validatePayPalSetup()', function () {
43
- it('returns error when params are missing', function () {
44
- var props = {};
45
- var result = (0, validation_1.validatePayPalSetup)(props);
46
- expect(result.valid).toEqual(false);
47
- expect(result.errors).toEqual([
48
- 'currency is missing.',
49
- 'containerId is missing.',
50
- 'payment is missing.'
51
- ]);
52
- });
53
- });
54
- describe('validatePayPalRequest()', function () {
55
- var paymentMethod;
56
- beforeEach(function () {
57
- paymentMethod = {
58
- type: types_1.PaymentMethodType.PAYPAL_ORDER,
59
- data: payPalPaymentMethod
60
- };
61
- });
62
- it('returns when order params are missing', function () {
63
- var _paymentMethod = paymentMethod.data;
64
- delete _paymentMethod['purchases'];
65
- var props = {
66
- paymentIntent: paymentIntent,
67
- paymentMethod: {
68
- type: types_1.PaymentMethodType.PAYPAL_ORDER,
69
- data: _paymentMethod
70
- }
71
- };
72
- var result = (0, validation_1.validatePayPalRequest)(props);
73
- expect(result.valid).toEqual(false);
74
- expect(result.errors).toEqual([
75
- 'purchases is missing.',
76
- ]);
77
- });
78
- it('returns when paymentMethod.type is missing', function () {
79
- var _paymentMethod = paymentMethod;
80
- delete _paymentMethod['type'];
81
- var props = {
82
- paymentIntent: paymentIntent,
83
- paymentMethod: _paymentMethod
84
- };
85
- var result = (0, validation_1.validatePayPalRequest)(props);
86
- expect(result.valid).toEqual(false);
87
- expect(result.errors).toEqual([
88
- 'paymentMethod.type is missing.',
89
- ]);
90
- });
91
- it('returns when paymentIntent/paymentMethod are missing', function () {
92
- var props = {};
93
- var result = (0, validation_1.validatePayPalRequest)(props);
94
- expect(result.valid).toEqual(false);
95
- expect(result.errors).toEqual([
96
- 'paymentMethod is missing.', 'paymentIntent is missing.'
97
- ]);
98
- });
99
- it('returns when intent in invalid', function () {
100
- var _paymentMethod = paymentMethod.data;
101
- //@ts-ignore
102
- _paymentMethod['intent'] = 'INVALID';
103
- var props = {
104
- paymentIntent: paymentIntent,
105
- paymentMethod: {
106
- type: types_1.PaymentMethodType.PAYPAL_ORDER,
107
- data: _paymentMethod
108
- }
109
- };
110
- var result = (0, validation_1.validatePayPalRequest)(props);
111
- expect(result.valid).toEqual(false);
112
- expect(result.errors).toEqual(['intent is invalid, must be one of [capture, authorize].']);
113
- });
114
- });
115
- describe('PayPalCheckout', function () {
116
- var instance;
117
- beforeEach(function () {
118
- jest.clearAllMocks();
119
- // @ts-ignore
120
- paypal_button_1.PayPalButton.mockImplementation(function () {
121
- return {
122
- render: function () { return true; }
123
- };
124
- });
125
- var payPalPaymentMethod = {
126
- intent: 'capture',
127
- purchases: [
128
- {
129
- amount: {
130
- itemTotal: 9000,
131
- shipping: 2000,
132
- taxTotal: 1000
133
- },
134
- items: [
135
- {
136
- name: 'T-Shirt',
137
- unitAmount: 9000,
138
- tax: 1000,
139
- qty: 1
140
- }
141
- ]
142
- }
143
- ]
144
- };
145
- var paymentMethod = {
146
- type: types_1.PaymentMethodType.PAYPAL_ORDER,
147
- data: payPalPaymentMethod
148
- };
149
- instance = new paypal_checkout_1.PayPalCheckout({
150
- currency: 'AUD',
151
- payment: {
152
- paymentIntent: paymentIntent,
153
- paymentMethod: paymentMethod
154
- },
155
- containerId: 'containerId',
156
- });
157
- });
158
- describe('render()', function () {
159
- it('calls paypal.render()', function () {
160
- instance.paypal = new paypal_button_1.PayPalButton();
161
- var spy = jest.spyOn(instance.paypal, 'render');
162
- instance.render();
163
- expect(spy).toHaveBeenCalledTimes(1);
164
- });
165
- });
166
- });
167
- //# sourceMappingURL=paypal-checkout.test.js.map