ouisys-engine 2.1.18 → 2.1.22
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/api/click2sms.js +357 -0
- package/dist/api/index.d.ts +1 -1
- package/dist/api/index.js +27 -27
- package/dist/api/mo.js +274 -0
- package/dist/api/moRedir.js +186 -0
- package/dist/api/oneClick.js +366 -0
- package/dist/api/pin.js +493 -0
- package/dist/api/strategies.js +704 -0
- package/dist/api/ussd.js +1 -0
- package/dist/app/store.js +35 -0
- package/dist/features/strategies/categories/askMobileNumber.js +395 -0
- package/dist/features/strategies/categories/askOperator.js +311 -0
- package/dist/features/strategies/categories/detectOperatorByIp.js +606 -0
- package/dist/features/strategies/categories/headerEnrichment.js +670 -0
- package/dist/features/strategies/categories/typings/click2smsSliceTypes.js +12 -0
- package/dist/features/strategies/categories/typings/identifySliceTypes.js +22 -0
- package/dist/features/strategies/categories/typings/moFlowSliceTypes.js +22 -0
- package/dist/features/strategies/categories/typings/moRedirFlowSliceTypes.js +21 -0
- package/dist/features/strategies/categories/typings/oneClickSliceTypes.js +13 -0
- package/dist/features/strategies/categories/typings/pinFlowSliceTypes.js +13 -0
- package/dist/features/strategies/click2smsFlowSlice.js +172 -0
- package/dist/features/strategies/identifySlice.js +455 -0
- package/dist/features/strategies/moFlowSlice.js +196 -0
- package/dist/features/strategies/moRedirFlowSlice.js +190 -0
- package/dist/features/strategies/oneClickFlowSlice.js +277 -0
- package/dist/features/strategies/pinFlowSlice.js +313 -0
- package/dist/features/strategies/ussdFlowSlice.js +1 -0
- package/dist/ips/tryGetIPRangeName.js +14 -13
- package/dist/mockServer/browser.js +48 -0
- package/dist/mockServer/handlers.js +22 -0
- package/dist/mockServer/server.js +48 -0
- package/dist/pacman/index.js +0 -1
- package/dist/reducers/click2smsFlow/utils.js +1 -3
- package/dist/reducers/oneClickFlow/utils.js +8 -7
- package/dist/reducers/pinFlow/utils.js +65 -34
- package/dist/reducers/strategy/strategies/header_enrichment.js +31 -25
- package/dist/reducers/strategy/utils.js +11 -12
- package/dist/reducers/tpayHeFlow/utils.js +1 -1
- package/dist/test/test-utils.js +51 -0
- package/package.json +1 -1
- package/src/@types/window.d.ts +3 -0
- package/src/api/index.ts +7 -7
- package/src/ips/tryGetIPRangeName.ts +3 -2
- package/src/pacman/index.ts +1 -1
- package/src/reducers/click2smsFlow/utils.ts +0 -3
- package/src/reducers/oneClickFlow/utils.ts +3 -2
- package/src/reducers/pinFlow/utils.ts +34 -4
- package/src/reducers/strategy/strategies/header_enrichment.ts +14 -11
- package/src/reducers/strategy/utils.ts +1 -2
- package/src/reducers/tpayHeFlow/utils.ts +1 -1
- package/dist/reducers/strategy/__tests__/strategy.spec.d.ts +0 -1
- package/dist/reducers/strategy/__tests__/strategy.spec.js +0 -33
- package/dist/test/renderWithRouterAndUserMock.d.ts +0 -21
- package/dist/test/renderWithRouterAndUserMock.js +0 -40
- package/dist/test/setup.d.ts +0 -1
|
@@ -0,0 +1,670 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.to-string");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.promise");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.regexp.to-string");
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, "__esModule", {
|
|
10
|
+
value: true
|
|
11
|
+
});
|
|
12
|
+
exports.pinHeaderEnrichment = exports.identifyUserByHe = exports.hePinOneClickHeaderEnrichment = exports.hePinMoRedirHeaderEnrichment = exports.heMoRedirOneClickHeaderEnrichment = void 0;
|
|
13
|
+
|
|
14
|
+
require("regenerator-runtime/runtime");
|
|
15
|
+
|
|
16
|
+
var _strategies = require("../../../api/strategies");
|
|
17
|
+
|
|
18
|
+
var _tryGetIPRangeName = _interopRequireDefault(require("../../../ips/tryGetIPRangeName"));
|
|
19
|
+
|
|
20
|
+
var _identifySlice = require("../identifySlice");
|
|
21
|
+
|
|
22
|
+
var _identifySliceTypes = require("./typings/identifySliceTypes");
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
27
|
+
|
|
28
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
29
|
+
|
|
30
|
+
var oneClick = function oneClick(_ref) {
|
|
31
|
+
var flowObj = _ref.flowObj,
|
|
32
|
+
msisdn = _ref.msisdn,
|
|
33
|
+
operator = _ref.operator,
|
|
34
|
+
isHeaderEnrichmentSuccess = _ref.isHeaderEnrichmentSuccess,
|
|
35
|
+
subscriptionUrl = _ref.subscriptionUrl,
|
|
36
|
+
redirectUrl = _ref.redirectUrl;
|
|
37
|
+
|
|
38
|
+
_identifySlice.tracker.sendOptInFlowEvent('3G click');
|
|
39
|
+
|
|
40
|
+
return {
|
|
41
|
+
type: _identifySliceTypes.StrategyStates.ONE_CLICK,
|
|
42
|
+
result: {},
|
|
43
|
+
nextData: {
|
|
44
|
+
config: flowObj.flowConfig,
|
|
45
|
+
operator: flowObj.operator,
|
|
46
|
+
msisdn: msisdn,
|
|
47
|
+
redirectUrl: redirectUrl,
|
|
48
|
+
subscriptionUrl: subscriptionUrl,
|
|
49
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
var pin = function pin(_ref2) {
|
|
55
|
+
var flowObj = _ref2.flowObj,
|
|
56
|
+
msisdn = _ref2.msisdn,
|
|
57
|
+
isHeaderEnrichmentSuccess = _ref2.isHeaderEnrichmentSuccess;
|
|
58
|
+
|
|
59
|
+
if (isHeaderEnrichmentSuccess !== true) {
|
|
60
|
+
_identifySlice.tracker.sendOptInFlowEvent('Pin');
|
|
61
|
+
} else {
|
|
62
|
+
_identifySlice.tracker.sendOptInFlowEvent('Hybrid Pin');
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return {
|
|
66
|
+
type: _identifySliceTypes.StrategyStates.PIN,
|
|
67
|
+
result: {},
|
|
68
|
+
nextData: {
|
|
69
|
+
config: flowObj.flowConfig,
|
|
70
|
+
operator: flowObj.operator,
|
|
71
|
+
msisdn: msisdn,
|
|
72
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
var moRedir = function moRedir(_ref3) {
|
|
78
|
+
var flowObj = _ref3.flowObj,
|
|
79
|
+
msisdn = _ref3.msisdn,
|
|
80
|
+
isHeaderEnrichmentSuccess = _ref3.isHeaderEnrichmentSuccess;
|
|
81
|
+
|
|
82
|
+
_identifySlice.tracker.sendOptInFlowEvent('Redirect');
|
|
83
|
+
|
|
84
|
+
return {
|
|
85
|
+
type: _identifySliceTypes.StrategyStates.MO_REDIR,
|
|
86
|
+
result: {},
|
|
87
|
+
nextData: {
|
|
88
|
+
config: flowObj.flowConfig,
|
|
89
|
+
operator: flowObj.operator,
|
|
90
|
+
msisdn: msisdn,
|
|
91
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
var pinHeaderEnrichment = /*#__PURE__*/function () {
|
|
97
|
+
var _ref5 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(_ref4) {
|
|
98
|
+
var configs, strategyConfigs, defaultFlow, ipRangeName, heResult, msisdn, operator, isHeaderEnrichmentSuccess;
|
|
99
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
100
|
+
while (1) {
|
|
101
|
+
switch (_context.prev = _context.next) {
|
|
102
|
+
case 0:
|
|
103
|
+
configs = _ref4.configs;
|
|
104
|
+
strategyConfigs = configs.strategyConfigs;
|
|
105
|
+
defaultFlow = strategyConfigs.default;
|
|
106
|
+
_context.prev = 3;
|
|
107
|
+
_context.next = 6;
|
|
108
|
+
return (0, _tryGetIPRangeName.default)(window.pac_analytics.visitor);
|
|
109
|
+
|
|
110
|
+
case 6:
|
|
111
|
+
ipRangeName = _context.sent;
|
|
112
|
+
|
|
113
|
+
if (!(ipRangeName == null)) {
|
|
114
|
+
_context.next = 9;
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return _context.abrupt("return", pin({
|
|
119
|
+
flowObj: defaultFlow
|
|
120
|
+
}));
|
|
121
|
+
|
|
122
|
+
case 9:
|
|
123
|
+
_context.next = 11;
|
|
124
|
+
return (0, _strategies.identifyUser)({
|
|
125
|
+
configs: configs
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
case 11:
|
|
129
|
+
heResult = _context.sent;
|
|
130
|
+
msisdn = heResult.msisdn;
|
|
131
|
+
operator = heResult.operator;
|
|
132
|
+
isHeaderEnrichmentSuccess = !!msisdn;
|
|
133
|
+
return _context.abrupt("return", pin({
|
|
134
|
+
flowObj: defaultFlow,
|
|
135
|
+
msisdn: msisdn,
|
|
136
|
+
operator: operator,
|
|
137
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
138
|
+
}));
|
|
139
|
+
|
|
140
|
+
case 18:
|
|
141
|
+
_context.prev = 18;
|
|
142
|
+
_context.t0 = _context["catch"](3);
|
|
143
|
+
console.warn(_context.t0);
|
|
144
|
+
return _context.abrupt("return", pin({
|
|
145
|
+
flowObj: defaultFlow
|
|
146
|
+
}));
|
|
147
|
+
|
|
148
|
+
case 22:
|
|
149
|
+
case "end":
|
|
150
|
+
return _context.stop();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}, _callee, null, [[3, 18]]);
|
|
154
|
+
}));
|
|
155
|
+
|
|
156
|
+
return function pinHeaderEnrichment(_x) {
|
|
157
|
+
return _ref5.apply(this, arguments);
|
|
158
|
+
};
|
|
159
|
+
}();
|
|
160
|
+
|
|
161
|
+
exports.pinHeaderEnrichment = pinHeaderEnrichment;
|
|
162
|
+
|
|
163
|
+
var hePinMoRedirHeaderEnrichment = /*#__PURE__*/function () {
|
|
164
|
+
var _ref7 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(_ref6) {
|
|
165
|
+
var configs, strategyConfigs, defaultFlow, switchState, heResult, msisdn, operator, _flowObj2, _flowObj, flowObj, _flowObj3;
|
|
166
|
+
|
|
167
|
+
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
168
|
+
while (1) {
|
|
169
|
+
switch (_context2.prev = _context2.next) {
|
|
170
|
+
case 0:
|
|
171
|
+
configs = _ref6.configs;
|
|
172
|
+
strategyConfigs = configs.strategyConfigs;
|
|
173
|
+
defaultFlow = strategyConfigs.default;
|
|
174
|
+
|
|
175
|
+
switchState = function switchState(flowObj, msisdn, operator) {
|
|
176
|
+
var isHeaderEnrichmentSuccess = !!(msisdn !== undefined && msisdn !== '');
|
|
177
|
+
|
|
178
|
+
switch (flowObj.flow) {
|
|
179
|
+
case 'moRedir':
|
|
180
|
+
return moRedir({
|
|
181
|
+
flowObj: flowObj,
|
|
182
|
+
msisdn: msisdn,
|
|
183
|
+
operator: operator,
|
|
184
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
case 'pin':
|
|
188
|
+
return pin({
|
|
189
|
+
flowObj: flowObj,
|
|
190
|
+
msisdn: msisdn,
|
|
191
|
+
operator: operator,
|
|
192
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
default:
|
|
196
|
+
return pin({
|
|
197
|
+
flowObj: defaultFlow
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
|
|
202
|
+
_context2.prev = 4;
|
|
203
|
+
_context2.next = 7;
|
|
204
|
+
return (0, _strategies.identifyUser)({
|
|
205
|
+
configs: configs
|
|
206
|
+
});
|
|
207
|
+
|
|
208
|
+
case 7:
|
|
209
|
+
heResult = _context2.sent;
|
|
210
|
+
|
|
211
|
+
if (!(heResult.msisdn !== undefined && heResult.msisdn !== '')) {
|
|
212
|
+
_context2.next = 19;
|
|
213
|
+
break;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
msisdn = heResult.msisdn;
|
|
217
|
+
operator = heResult.operator;
|
|
218
|
+
|
|
219
|
+
_identifySlice.tracker.customEvent('identify-user', 'msisdn-detected', 'msisdn-detected', {
|
|
220
|
+
msisdn: msisdn
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
if (!(!!operator && operator !== '')) {
|
|
224
|
+
_context2.next = 15;
|
|
225
|
+
break;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
_flowObj2 = (0, _strategies.determineFlowByOperator)({
|
|
229
|
+
configs: configs,
|
|
230
|
+
operator: operator
|
|
231
|
+
});
|
|
232
|
+
return _context2.abrupt("return", switchState(_flowObj2, msisdn, operator));
|
|
233
|
+
|
|
234
|
+
case 15:
|
|
235
|
+
_context2.next = 17;
|
|
236
|
+
return (0, _strategies.determineFlowByOperatorFromIp)({
|
|
237
|
+
configs: configs
|
|
238
|
+
});
|
|
239
|
+
|
|
240
|
+
case 17:
|
|
241
|
+
_flowObj = _context2.sent;
|
|
242
|
+
return _context2.abrupt("return", switchState(_flowObj, msisdn));
|
|
243
|
+
|
|
244
|
+
case 19:
|
|
245
|
+
_context2.next = 21;
|
|
246
|
+
return (0, _strategies.determineFlowByOperatorFromIp)({
|
|
247
|
+
configs: configs
|
|
248
|
+
});
|
|
249
|
+
|
|
250
|
+
case 21:
|
|
251
|
+
flowObj = _context2.sent;
|
|
252
|
+
return _context2.abrupt("return", switchState(flowObj));
|
|
253
|
+
|
|
254
|
+
case 25:
|
|
255
|
+
_context2.prev = 25;
|
|
256
|
+
_context2.t0 = _context2["catch"](4);
|
|
257
|
+
console.warn(_context2.t0);
|
|
258
|
+
|
|
259
|
+
_identifySlice.tracker.customEvent('tallyman.v1-pin', 'msisdn-detection-failure', 'msisdn-detection-failure', {
|
|
260
|
+
errorType: _context2.t0.toString()
|
|
261
|
+
});
|
|
262
|
+
|
|
263
|
+
_context2.prev = 29;
|
|
264
|
+
_context2.next = 32;
|
|
265
|
+
return (0, _strategies.determineFlowByOperatorFromIp)({
|
|
266
|
+
configs: configs
|
|
267
|
+
});
|
|
268
|
+
|
|
269
|
+
case 32:
|
|
270
|
+
_flowObj3 = _context2.sent;
|
|
271
|
+
return _context2.abrupt("return", switchState(_flowObj3));
|
|
272
|
+
|
|
273
|
+
case 36:
|
|
274
|
+
_context2.prev = 36;
|
|
275
|
+
_context2.t1 = _context2["catch"](29);
|
|
276
|
+
console.warn(_context2.t1);
|
|
277
|
+
return _context2.abrupt("return", pin({
|
|
278
|
+
flowObj: defaultFlow
|
|
279
|
+
}));
|
|
280
|
+
|
|
281
|
+
case 40:
|
|
282
|
+
case "end":
|
|
283
|
+
return _context2.stop();
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
}, _callee2, null, [[4, 25], [29, 36]]);
|
|
287
|
+
}));
|
|
288
|
+
|
|
289
|
+
return function hePinMoRedirHeaderEnrichment(_x2) {
|
|
290
|
+
return _ref7.apply(this, arguments);
|
|
291
|
+
};
|
|
292
|
+
}();
|
|
293
|
+
|
|
294
|
+
exports.hePinMoRedirHeaderEnrichment = hePinMoRedirHeaderEnrichment;
|
|
295
|
+
|
|
296
|
+
var hePinOneClickHeaderEnrichment = /*#__PURE__*/function () {
|
|
297
|
+
var _ref9 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(_ref8) {
|
|
298
|
+
var configs, strategyConfigs, defaultFlow, switchState, ipRangeName, flowObj, heResult, msisdn, _subscriptionUrl, _redirectUrl, operator;
|
|
299
|
+
|
|
300
|
+
return regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
301
|
+
while (1) {
|
|
302
|
+
switch (_context3.prev = _context3.next) {
|
|
303
|
+
case 0:
|
|
304
|
+
configs = _ref8.configs;
|
|
305
|
+
strategyConfigs = configs.strategyConfigs;
|
|
306
|
+
defaultFlow = strategyConfigs.default;
|
|
307
|
+
|
|
308
|
+
switchState = function switchState(_ref10) {
|
|
309
|
+
var flowObj = _ref10.flowObj,
|
|
310
|
+
msisdn = _ref10.msisdn,
|
|
311
|
+
operator = _ref10.operator,
|
|
312
|
+
subscriptionUrl = _ref10.subscriptionUrl,
|
|
313
|
+
redirectUrl = _ref10.redirectUrl;
|
|
314
|
+
var isHeaderEnrichmentSuccess = !!(msisdn !== undefined && msisdn !== '');
|
|
315
|
+
|
|
316
|
+
switch (flowObj.flow) {
|
|
317
|
+
case 'oneClick':
|
|
318
|
+
return oneClick({
|
|
319
|
+
flowObj: flowObj,
|
|
320
|
+
msisdn: msisdn,
|
|
321
|
+
operator: operator,
|
|
322
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess,
|
|
323
|
+
subscriptionUrl: subscriptionUrl,
|
|
324
|
+
redirectUrl: redirectUrl
|
|
325
|
+
});
|
|
326
|
+
|
|
327
|
+
case 'pin':
|
|
328
|
+
return pin({
|
|
329
|
+
flowObj: flowObj,
|
|
330
|
+
msisdn: msisdn,
|
|
331
|
+
operator: operator,
|
|
332
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
333
|
+
});
|
|
334
|
+
|
|
335
|
+
default:
|
|
336
|
+
return pin({
|
|
337
|
+
flowObj: defaultFlow
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
};
|
|
341
|
+
|
|
342
|
+
_context3.next = 6;
|
|
343
|
+
return (0, _tryGetIPRangeName.default)(window.pac_analytics.visitor);
|
|
344
|
+
|
|
345
|
+
case 6:
|
|
346
|
+
ipRangeName = _context3.sent;
|
|
347
|
+
|
|
348
|
+
if (!(ipRangeName == null)) {
|
|
349
|
+
_context3.next = 9;
|
|
350
|
+
break;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
return _context3.abrupt("return", pin({
|
|
354
|
+
flowObj: defaultFlow
|
|
355
|
+
}));
|
|
356
|
+
|
|
357
|
+
case 9:
|
|
358
|
+
_context3.prev = 9;
|
|
359
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
360
|
+
configs: configs,
|
|
361
|
+
operator: ipRangeName.toUpperCase()
|
|
362
|
+
});
|
|
363
|
+
|
|
364
|
+
if (!(flowObj.flow === 'oneClick')) {
|
|
365
|
+
_context3.next = 23;
|
|
366
|
+
break;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
_context3.next = 14;
|
|
370
|
+
return (0, _strategies.identifyUser)({
|
|
371
|
+
configs: configs
|
|
372
|
+
});
|
|
373
|
+
|
|
374
|
+
case 14:
|
|
375
|
+
heResult = _context3.sent;
|
|
376
|
+
msisdn = heResult.msisdn, _subscriptionUrl = heResult.subscriptionUrl, _redirectUrl = heResult.redirectUrl;
|
|
377
|
+
operator = heResult.operator ? heResult.operator.toUpperCase() : ipRangeName.toUpperCase();
|
|
378
|
+
|
|
379
|
+
if (!(msisdn && msisdn !== '')) {
|
|
380
|
+
_context3.next = 21;
|
|
381
|
+
break;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
_identifySlice.tracker.customEvent('identify-user', 'msisdn-detected', 'msisdn-detected', {
|
|
385
|
+
msisdn: msisdn
|
|
386
|
+
});
|
|
387
|
+
|
|
388
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
389
|
+
configs: configs,
|
|
390
|
+
operator: operator
|
|
391
|
+
});
|
|
392
|
+
return _context3.abrupt("return", switchState({
|
|
393
|
+
flowObj: flowObj,
|
|
394
|
+
msisdn: msisdn,
|
|
395
|
+
operator: operator,
|
|
396
|
+
subscriptionUrl: _subscriptionUrl,
|
|
397
|
+
redirectUrl: _redirectUrl
|
|
398
|
+
}));
|
|
399
|
+
|
|
400
|
+
case 21:
|
|
401
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
402
|
+
configs: configs,
|
|
403
|
+
operator: operator
|
|
404
|
+
});
|
|
405
|
+
return _context3.abrupt("return", switchState({
|
|
406
|
+
flowObj: flowObj,
|
|
407
|
+
subscriptionUrl: _subscriptionUrl,
|
|
408
|
+
redirectUrl: _redirectUrl,
|
|
409
|
+
operator: operator
|
|
410
|
+
}));
|
|
411
|
+
|
|
412
|
+
case 23:
|
|
413
|
+
return _context3.abrupt("return", pin({
|
|
414
|
+
flowObj: defaultFlow
|
|
415
|
+
}));
|
|
416
|
+
|
|
417
|
+
case 26:
|
|
418
|
+
_context3.prev = 26;
|
|
419
|
+
_context3.t0 = _context3["catch"](9);
|
|
420
|
+
console.warn(_context3.t0);
|
|
421
|
+
|
|
422
|
+
_identifySlice.tracker.customEvent('identify-user', 'msisdn-detection-failure', 'msisdn-detection-failure', {
|
|
423
|
+
errorType: _context3.t0.toString()
|
|
424
|
+
});
|
|
425
|
+
|
|
426
|
+
return _context3.abrupt("return", pin({
|
|
427
|
+
flowObj: defaultFlow
|
|
428
|
+
}));
|
|
429
|
+
|
|
430
|
+
case 31:
|
|
431
|
+
case "end":
|
|
432
|
+
return _context3.stop();
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
}, _callee3, null, [[9, 26]]);
|
|
436
|
+
}));
|
|
437
|
+
|
|
438
|
+
return function hePinOneClickHeaderEnrichment(_x3) {
|
|
439
|
+
return _ref9.apply(this, arguments);
|
|
440
|
+
};
|
|
441
|
+
}();
|
|
442
|
+
|
|
443
|
+
exports.hePinOneClickHeaderEnrichment = hePinOneClickHeaderEnrichment;
|
|
444
|
+
|
|
445
|
+
var heMoRedirOneClickHeaderEnrichment = /*#__PURE__*/function () {
|
|
446
|
+
var _ref12 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(_ref11) {
|
|
447
|
+
var configs, strategyConfigs, defaultFlow, switchState, ipRangeName, flowObj, heResult, msisdn, _subscriptionUrl2, _redirectUrl2, operator;
|
|
448
|
+
|
|
449
|
+
return regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
450
|
+
while (1) {
|
|
451
|
+
switch (_context4.prev = _context4.next) {
|
|
452
|
+
case 0:
|
|
453
|
+
configs = _ref11.configs;
|
|
454
|
+
strategyConfigs = configs.strategyConfigs;
|
|
455
|
+
defaultFlow = strategyConfigs.default;
|
|
456
|
+
|
|
457
|
+
switchState = function switchState(_ref13) {
|
|
458
|
+
var flowObj = _ref13.flowObj,
|
|
459
|
+
msisdn = _ref13.msisdn,
|
|
460
|
+
operator = _ref13.operator;
|
|
461
|
+
var isHeaderEnrichmentSuccess = !!(msisdn !== undefined && msisdn !== '');
|
|
462
|
+
|
|
463
|
+
switch (flowObj.flow) {
|
|
464
|
+
case 'oneClick':
|
|
465
|
+
return oneClick({
|
|
466
|
+
flowObj: flowObj,
|
|
467
|
+
msisdn: msisdn,
|
|
468
|
+
operator: operator,
|
|
469
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess,
|
|
470
|
+
subscriptionUrl: subscriptionUrl,
|
|
471
|
+
redirectUrl: redirectUrl
|
|
472
|
+
});
|
|
473
|
+
|
|
474
|
+
case 'moRedir':
|
|
475
|
+
return moRedir({
|
|
476
|
+
flowObj: flowObj,
|
|
477
|
+
msisdn: msisdn,
|
|
478
|
+
operator: operator,
|
|
479
|
+
isHeaderEnrichmentSuccess: isHeaderEnrichmentSuccess
|
|
480
|
+
});
|
|
481
|
+
|
|
482
|
+
default:
|
|
483
|
+
return moRedir({
|
|
484
|
+
flowObj: defaultFlow
|
|
485
|
+
});
|
|
486
|
+
}
|
|
487
|
+
};
|
|
488
|
+
|
|
489
|
+
_context4.next = 6;
|
|
490
|
+
return (0, _tryGetIPRangeName.default)(window.pac_analytics.visitor);
|
|
491
|
+
|
|
492
|
+
case 6:
|
|
493
|
+
ipRangeName = _context4.sent;
|
|
494
|
+
|
|
495
|
+
if (!(ipRangeName == null)) {
|
|
496
|
+
_context4.next = 9;
|
|
497
|
+
break;
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
return _context4.abrupt("return", moRedir({
|
|
501
|
+
flowObj: defaultFlow
|
|
502
|
+
}));
|
|
503
|
+
|
|
504
|
+
case 9:
|
|
505
|
+
_context4.prev = 9;
|
|
506
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
507
|
+
configs: configs,
|
|
508
|
+
operator: ipRangeName.toUpperCase()
|
|
509
|
+
});
|
|
510
|
+
|
|
511
|
+
if (!(flowObj.flow === 'oneClick')) {
|
|
512
|
+
_context4.next = 23;
|
|
513
|
+
break;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
_context4.next = 14;
|
|
517
|
+
return (0, _strategies.identifyUser)({
|
|
518
|
+
configs: configs
|
|
519
|
+
});
|
|
520
|
+
|
|
521
|
+
case 14:
|
|
522
|
+
heResult = _context4.sent;
|
|
523
|
+
msisdn = heResult.msisdn, _subscriptionUrl2 = heResult.subscriptionUrl, _redirectUrl2 = heResult.redirectUrl;
|
|
524
|
+
operator = heResult.operator ? heResult.operator.toUpperCase() : ipRangeName.toUpperCase();
|
|
525
|
+
|
|
526
|
+
if (!(msisdn && msisdn !== '')) {
|
|
527
|
+
_context4.next = 21;
|
|
528
|
+
break;
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
_identifySlice.tracker.customEvent('identify-user', 'msisdn-detected', 'msisdn-detected', {
|
|
532
|
+
msisdn: msisdn
|
|
533
|
+
});
|
|
534
|
+
|
|
535
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
536
|
+
configs: configs,
|
|
537
|
+
operator: operator
|
|
538
|
+
});
|
|
539
|
+
return _context4.abrupt("return", switchState({
|
|
540
|
+
flowObj: flowObj,
|
|
541
|
+
msisdn: msisdn,
|
|
542
|
+
operator: operator,
|
|
543
|
+
subscriptionUrl: _subscriptionUrl2,
|
|
544
|
+
redirectUrl: _redirectUrl2
|
|
545
|
+
}));
|
|
546
|
+
|
|
547
|
+
case 21:
|
|
548
|
+
flowObj = (0, _strategies.determineFlowByOperator)({
|
|
549
|
+
configs: configs,
|
|
550
|
+
operator: operator
|
|
551
|
+
});
|
|
552
|
+
return _context4.abrupt("return", switchState({
|
|
553
|
+
flowObj: flowObj,
|
|
554
|
+
subscriptionUrl: _subscriptionUrl2,
|
|
555
|
+
redirectUrl: _redirectUrl2,
|
|
556
|
+
operator: operator
|
|
557
|
+
}));
|
|
558
|
+
|
|
559
|
+
case 23:
|
|
560
|
+
return _context4.abrupt("return", moRedir({
|
|
561
|
+
flowObj: defaultFlow
|
|
562
|
+
}));
|
|
563
|
+
|
|
564
|
+
case 26:
|
|
565
|
+
_context4.prev = 26;
|
|
566
|
+
_context4.t0 = _context4["catch"](9);
|
|
567
|
+
console.warn(_context4.t0);
|
|
568
|
+
|
|
569
|
+
_identifySlice.tracker.customEvent('identify-user', 'msisdn-detection-failure', 'msisdn-detection-failure', {
|
|
570
|
+
errorType: _context4.t0.toString()
|
|
571
|
+
});
|
|
572
|
+
|
|
573
|
+
return _context4.abrupt("return", moRedir({
|
|
574
|
+
flowObj: defaultFlow
|
|
575
|
+
}));
|
|
576
|
+
|
|
577
|
+
case 31:
|
|
578
|
+
case "end":
|
|
579
|
+
return _context4.stop();
|
|
580
|
+
}
|
|
581
|
+
}
|
|
582
|
+
}, _callee4, null, [[9, 26]]);
|
|
583
|
+
}));
|
|
584
|
+
|
|
585
|
+
return function heMoRedirOneClickHeaderEnrichment(_x4) {
|
|
586
|
+
return _ref12.apply(this, arguments);
|
|
587
|
+
};
|
|
588
|
+
}();
|
|
589
|
+
|
|
590
|
+
exports.heMoRedirOneClickHeaderEnrichment = heMoRedirOneClickHeaderEnrichment;
|
|
591
|
+
|
|
592
|
+
var identifyUserByHe = /*#__PURE__*/function () {
|
|
593
|
+
var _ref15 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5(_ref14) {
|
|
594
|
+
var configs, strategy;
|
|
595
|
+
return regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
596
|
+
while (1) {
|
|
597
|
+
switch (_context5.prev = _context5.next) {
|
|
598
|
+
case 0:
|
|
599
|
+
configs = _ref14.configs;
|
|
600
|
+
strategy = configs.strategy;
|
|
601
|
+
_context5.prev = 2;
|
|
602
|
+
_context5.t0 = strategy;
|
|
603
|
+
_context5.next = _context5.t0 === 'pin-header-enrichment' ? 6 : _context5.t0 === 'he-pin-mo-redir-header-enrichment' ? 9 : _context5.t0 === 'he-pin-one-click-header-enrichment' ? 12 : _context5.t0 === 'he-mo-redir-one-click-header-enrichment' ? 15 : 18;
|
|
604
|
+
break;
|
|
605
|
+
|
|
606
|
+
case 6:
|
|
607
|
+
_context5.next = 8;
|
|
608
|
+
return pinHeaderEnrichment({
|
|
609
|
+
configs: configs
|
|
610
|
+
});
|
|
611
|
+
|
|
612
|
+
case 8:
|
|
613
|
+
return _context5.abrupt("return", _context5.sent);
|
|
614
|
+
|
|
615
|
+
case 9:
|
|
616
|
+
_context5.next = 11;
|
|
617
|
+
return hePinMoRedirHeaderEnrichment({
|
|
618
|
+
configs: configs
|
|
619
|
+
});
|
|
620
|
+
|
|
621
|
+
case 11:
|
|
622
|
+
return _context5.abrupt("return", _context5.sent);
|
|
623
|
+
|
|
624
|
+
case 12:
|
|
625
|
+
_context5.next = 14;
|
|
626
|
+
return hePinOneClickHeaderEnrichment({
|
|
627
|
+
configs: configs
|
|
628
|
+
});
|
|
629
|
+
|
|
630
|
+
case 14:
|
|
631
|
+
return _context5.abrupt("return", _context5.sent);
|
|
632
|
+
|
|
633
|
+
case 15:
|
|
634
|
+
_context5.next = 17;
|
|
635
|
+
return heMoRedirOneClickHeaderEnrichment({
|
|
636
|
+
configs: configs
|
|
637
|
+
});
|
|
638
|
+
|
|
639
|
+
case 17:
|
|
640
|
+
return _context5.abrupt("return", _context5.sent);
|
|
641
|
+
|
|
642
|
+
case 18:
|
|
643
|
+
console.error('detectOperatorByIp', 'Strategy not supported');
|
|
644
|
+
return _context5.abrupt("return", null);
|
|
645
|
+
|
|
646
|
+
case 20:
|
|
647
|
+
_context5.next = 26;
|
|
648
|
+
break;
|
|
649
|
+
|
|
650
|
+
case 22:
|
|
651
|
+
_context5.prev = 22;
|
|
652
|
+
_context5.t1 = _context5["catch"](2);
|
|
653
|
+
console.error('detectOperatorByIp', _context5.t1); // You can choose to use the message attached to err or write a custom error
|
|
654
|
+
|
|
655
|
+
return _context5.abrupt("return", null);
|
|
656
|
+
|
|
657
|
+
case 26:
|
|
658
|
+
case "end":
|
|
659
|
+
return _context5.stop();
|
|
660
|
+
}
|
|
661
|
+
}
|
|
662
|
+
}, _callee5, null, [[2, 22]]);
|
|
663
|
+
}));
|
|
664
|
+
|
|
665
|
+
return function identifyUserByHe(_x5) {
|
|
666
|
+
return _ref15.apply(this, arguments);
|
|
667
|
+
};
|
|
668
|
+
}();
|
|
669
|
+
|
|
670
|
+
exports.identifyUserByHe = identifyUserByHe;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Click2smsStates = void 0;
|
|
7
|
+
var Click2smsStates;
|
|
8
|
+
exports.Click2smsStates = Click2smsStates;
|
|
9
|
+
|
|
10
|
+
(function (Click2smsStates) {
|
|
11
|
+
Click2smsStates["LOAD_OC2SMS"] = "LOAD_OC2SMS";
|
|
12
|
+
})(Click2smsStates || (exports.Click2smsStates = Click2smsStates = {}));
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StrategyStates = void 0;
|
|
7
|
+
// export type IStrategy = IPinStrategy | IMoStrategy;
|
|
8
|
+
var StrategyStates;
|
|
9
|
+
exports.StrategyStates = StrategyStates;
|
|
10
|
+
|
|
11
|
+
(function (StrategyStates) {
|
|
12
|
+
StrategyStates["IDENTIFY_STRATEGY"] = "IDENTIFY_STRATEGY";
|
|
13
|
+
StrategyStates["IDENTIFY_FLOW_BY_MSISDN"] = "IDENTIFY_FLOW_BY_MSISDN";
|
|
14
|
+
StrategyStates["IDENTIFY_FLOW_BY_OPERATOR_SELECT"] = "IDENTIFY_FLOW_BY_OPERATOR_SELECT";
|
|
15
|
+
StrategyStates["IDENTIFY_FLOW_BY_HE"] = "IDENTIFY_FLOW_BY_HE";
|
|
16
|
+
StrategyStates["ONE_CLICK"] = "ONE_CLICK";
|
|
17
|
+
StrategyStates["PIN"] = "PIN";
|
|
18
|
+
StrategyStates["MO_REDIR"] = "MO_REDIR";
|
|
19
|
+
StrategyStates["CLICK2SMS"] = "CLICK2SMS";
|
|
20
|
+
StrategyStates["MO"] = "MO";
|
|
21
|
+
StrategyStates["USSD"] = "USSD";
|
|
22
|
+
})(StrategyStates || (exports.StrategyStates = StrategyStates = {}));
|