1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var tslib_1 = require("tslib");
|
4 | var page_type_1 = require("../../commons/types/page-type");
|
5 | var event_runner_1 = require("../../event/core/event-runner");
|
6 | var confirmation_1 = require("../../event/types/page/confirmation");
|
7 | var cart_1 = require("../types/page/cart");
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | var BiggyRunner = (function (_super) {
|
15 | tslib_1.__extends(BiggyRunner, _super);
|
16 | function BiggyRunner() {
|
17 | return _super !== null && _super.apply(this, arguments) || this;
|
18 | }
|
19 | |
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 | BiggyRunner.prototype.processItem = function (item) {
|
27 | var info = this.getPageInfo(item);
|
28 | if (info) {
|
29 | if (info.pageType === page_type_1.PageType.Confirmation) {
|
30 | this.sendOrderEvent(info.item);
|
31 | }
|
32 | else if (info.pageType === page_type_1.PageType.Cart) {
|
33 | this.sendCartEvent(info.item);
|
34 | }
|
35 | }
|
36 | };
|
37 | |
38 |
|
39 |
|
40 |
|
41 |
|
42 |
|
43 |
|
44 |
|
45 | BiggyRunner.prototype.getPageInfo = function (item) {
|
46 | if (item && item.event) {
|
47 | if (item.event.toUpperCase() === "BIGGY.TRANSACTION") {
|
48 | return {
|
49 | item: item,
|
50 | pageType: page_type_1.PageType.Confirmation,
|
51 | };
|
52 | }
|
53 | else if (item.event.toUpperCase() === "BIGGY.CART") {
|
54 | return {
|
55 | item: item,
|
56 | pageType: page_type_1.PageType.Cart,
|
57 | };
|
58 | }
|
59 | }
|
60 | return undefined;
|
61 | };
|
62 | |
63 |
|
64 |
|
65 |
|
66 |
|
67 |
|
68 |
|
69 | BiggyRunner.prototype.sendOrderEvent = function (orderItem) {
|
70 | var biggyItem = orderItem.biggy;
|
71 | var orderId = biggyItem.order;
|
72 | var products = [];
|
73 | if (biggyItem.products) {
|
74 | for (var _i = 0, _a = biggyItem.products; _i < _a.length; _i++) {
|
75 | var transactionProduct = _a[_i];
|
76 | products.push({
|
77 | product: transactionProduct.product,
|
78 | quantity: transactionProduct.quantity,
|
79 | price: transactionProduct.price,
|
80 | });
|
81 | }
|
82 | }
|
83 | var event = new confirmation_1.PageConfirmationEvent(orderId).withProducts(products);
|
84 | event.push();
|
85 | };
|
86 | |
87 |
|
88 |
|
89 |
|
90 |
|
91 |
|
92 |
|
93 | BiggyRunner.prototype.sendCartEvent = function (cartItem) {
|
94 |
|
95 | var event = this.createCartEvent(cartItem.event);
|
96 | var biggyItem = cartItem.biggy;
|
97 |
|
98 | var layerProducts = biggyItem.products;
|
99 | if (layerProducts && layerProducts instanceof Array && layerProducts.length > 0) {
|
100 | for (var _i = 0, layerProducts_1 = layerProducts; _i < layerProducts_1.length; _i++) {
|
101 | var product = layerProducts_1[_i];
|
102 | event.withProduct(product.product, product.quantity);
|
103 | }
|
104 | }
|
105 | event.push();
|
106 | };
|
107 | |
108 |
|
109 |
|
110 |
|
111 |
|
112 |
|
113 |
|
114 |
|
115 | BiggyRunner.prototype.createCartEvent = function (_event) {
|
116 | return new cart_1.PageCartEvent();
|
117 | };
|
118 | return BiggyRunner;
|
119 | }(event_runner_1.EventRunner));
|
120 | exports.BiggyRunner = BiggyRunner;
|
121 |
|
\ | No newline at end of file |