ouisys-engine 4.6.2 → 4.7.0-alpha.1

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 (222) hide show
  1. package/dist/RemoteDataState-CwHLI23e.js +75 -0
  2. package/dist/RemoteDataState-CwHLI23e.js.map +1 -0
  3. package/dist/bupperizeCountry-CCDIOHP6.js +4 -0
  4. package/dist/bupperizeCountry-CCDIOHP6.js.map +1 -0
  5. package/dist/checkSubscriptionByRockmanIdOnly-C89Ph9cV.js +27 -0
  6. package/dist/checkSubscriptionByRockmanIdOnly-C89Ph9cV.js.map +1 -0
  7. package/dist/checkSubscriptionHander.js +53 -0
  8. package/dist/checkSubscriptionHander.js.map +1 -0
  9. package/dist/click2smsFlow.js +246 -0
  10. package/dist/click2smsFlow.js.map +1 -0
  11. package/dist/creditCardFlow.js +248 -0
  12. package/dist/creditCardFlow.js.map +1 -0
  13. package/dist/getConfig.js +14 -0
  14. package/dist/getConfig.js.map +1 -0
  15. package/dist/handleClickChainFlow.js +32 -0
  16. package/dist/handleClickChainFlow.js.map +1 -0
  17. package/dist/handleSubmitNumber.js +65 -0
  18. package/dist/handleSubmitNumber.js.map +1 -0
  19. package/dist/helpers-J_h-ZgxH.js +29 -0
  20. package/dist/helpers-J_h-ZgxH.js.map +1 -0
  21. package/dist/loadScriptInnerHtml-DPcoY467.js +26 -0
  22. package/dist/loadScriptInnerHtml-DPcoY467.js.map +1 -0
  23. package/dist/moFlow.js +275 -0
  24. package/dist/moFlow.js.map +1 -0
  25. package/dist/moRedirFlow.js +225 -0
  26. package/dist/moRedirFlow.js.map +1 -0
  27. package/dist/oneClickFlow.js +464 -0
  28. package/dist/oneClickFlow.js.map +1 -0
  29. package/dist/pinFlow.js +697 -0
  30. package/dist/pinFlow.js.map +1 -0
  31. package/dist/searchToObject.js +19 -0
  32. package/dist/searchToObject.js.map +1 -0
  33. package/dist/storeMsisdn-ChiBh8mI.js +58 -0
  34. package/dist/storeMsisdn-ChiBh8mI.js.map +1 -0
  35. package/dist/strategy.js +50 -0
  36. package/dist/strategy.js.map +1 -0
  37. package/dist/strategySlice-bF74rxDK.js +842 -0
  38. package/dist/strategySlice-bF74rxDK.js.map +1 -0
  39. package/dist/tracker-B_zsMRN2.js +79 -0
  40. package/dist/tracker-B_zsMRN2.js.map +1 -0
  41. package/dist/tracker.js +5 -0
  42. package/dist/tracker.js.map +1 -0
  43. package/dist/tryGetIPRangeName-C69HEG5W.js +42 -0
  44. package/dist/tryGetIPRangeName-C69HEG5W.js.map +1 -0
  45. package/dist/types/CreditCardTypes-B-IT-l6I.d.ts +72 -0
  46. package/dist/types/IHash-0OgZ_1ij.d.ts +5 -0
  47. package/dist/types/MoRedirTypes-4tEJjT1g.d.ts +31 -0
  48. package/dist/types/MoTypes-D-UK92gs.d.ts +45 -0
  49. package/dist/types/OneClickTypes-DF0jodl-.d.ts +69 -0
  50. package/dist/types/PinTypes-BLJDBZe6.d.ts +128 -0
  51. package/dist/types/RemoteDataState-D1aFrz8W.d.ts +61 -0
  52. package/dist/types/StrategyTypes-BEIYqoJV.d.ts +325 -0
  53. package/dist/types/UssdTypes-C7QlIW11.d.ts +34 -0
  54. package/dist/types/checkSubscriptionHander.d.ts +8 -0
  55. package/dist/types/click2smsFlow.d.ts +37 -0
  56. package/dist/types/creditCardFlow.d.ts +37 -0
  57. package/dist/types/getConfig.d.ts +38 -0
  58. package/dist/types/handleClickChainFlow.d.ts +6 -0
  59. package/dist/types/handleSubmitNumber.d.ts +26 -0
  60. package/dist/types/moFlow.d.ts +70 -0
  61. package/dist/types/moRedirFlow.d.ts +82 -0
  62. package/dist/types/oneClickFlow.d.ts +56 -0
  63. package/dist/types/pinFlow.d.ts +179 -0
  64. package/dist/types/searchToObject.d.ts +3 -0
  65. package/dist/types/strategy.d.ts +86 -0
  66. package/dist/types/tracker.d.ts +5 -0
  67. package/dist/types/ussdFlow.d.ts +84 -0
  68. package/dist/ussdFlow.js +211 -0
  69. package/dist/ussdFlow.js.map +1 -0
  70. package/package.json +85 -9
  71. package/.babelrc +0 -30
  72. package/.browserslistrc +0 -6
  73. package/.eslintrc.js +0 -3
  74. package/.nvmrc +0 -1
  75. package/.prettierignore +0 -4
  76. package/dist/@types/react-tracker.d.js +0 -1
  77. package/dist/@types/redux-cli-logger.d.js +0 -1
  78. package/dist/@types/tiny-async-pool.d.js +0 -1
  79. package/dist/@types/window.d.js +0 -1
  80. package/dist/api/index.d.ts +0 -43
  81. package/dist/api/index.js +0 -1
  82. package/dist/common-types/AppThunk.d.ts +0 -13
  83. package/dist/common-types/AppThunk.js +0 -1
  84. package/dist/common-types/Either.d.ts +0 -8
  85. package/dist/common-types/Either.js +0 -1
  86. package/dist/common-types/IError.d.ts +0 -3
  87. package/dist/common-types/IError.js +0 -1
  88. package/dist/common-types/IOptInFlowName.d.ts +0 -1
  89. package/dist/common-types/IOptInFlowName.js +0 -1
  90. package/dist/common-types/ITracker.d.ts +0 -9
  91. package/dist/common-types/ITracker.js +0 -1
  92. package/dist/common-types/IVisitor.d.ts +0 -14
  93. package/dist/common-types/IVisitor.js +0 -1
  94. package/dist/common-types/RemoteDataState.d.ts +0 -38
  95. package/dist/common-types/RemoteDataState.js +0 -1
  96. package/dist/custom-hooks/useOneClickRedirectUrl.d.ts +0 -3
  97. package/dist/custom-hooks/useOneClickRedirectUrl.js +0 -1
  98. package/dist/custom-hooks/usePinEntryState.d.ts +0 -8
  99. package/dist/custom-hooks/usePinEntryState.js +0 -1
  100. package/dist/custom-hooks/useStrategyConfig.d.ts +0 -4
  101. package/dist/custom-hooks/useStrategyConfig.js +0 -1
  102. package/dist/flows/click2smsFlow.d.ts +0 -6
  103. package/dist/flows/click2smsFlow.js +0 -1
  104. package/dist/flows/creditCardFlow.d.ts +0 -6
  105. package/dist/flows/creditCardFlow.js +0 -1
  106. package/dist/flows/moFlow.d.ts +0 -6
  107. package/dist/flows/moFlow.js +0 -1
  108. package/dist/flows/moRedirFlow.d.ts +0 -6
  109. package/dist/flows/moRedirFlow.js +0 -1
  110. package/dist/flows/oneClickFlow.d.ts +0 -7
  111. package/dist/flows/oneClickFlow.js +0 -1
  112. package/dist/flows/pinFlow.d.ts +0 -7
  113. package/dist/flows/pinFlow.js +0 -1
  114. package/dist/flows/strategy.d.ts +0 -14
  115. package/dist/flows/strategy.js +0 -1
  116. package/dist/flows/ussdFlow.d.ts +0 -6
  117. package/dist/flows/ussdFlow.js +0 -1
  118. package/dist/index.d.ts +0 -0
  119. package/dist/index.js +0 -1
  120. package/dist/ips/tryGetIPRangeName.d.ts +0 -2
  121. package/dist/ips/tryGetIPRangeName.js +0 -1
  122. package/dist/jest.config.js +0 -194
  123. package/dist/pacman/index.d.ts +0 -6
  124. package/dist/pacman/index.js +0 -1
  125. package/dist/pacman/queryString.d.ts +0 -3
  126. package/dist/pacman/queryString.js +0 -1
  127. package/dist/reducers/click2smsFlow/Click2smsTypes.d.ts +0 -76
  128. package/dist/reducers/click2smsFlow/Click2smsTypes.js +0 -1
  129. package/dist/reducers/click2smsFlow/IClick2smsConstants.d.ts +0 -2
  130. package/dist/reducers/click2smsFlow/IClick2smsConstants.js +0 -1
  131. package/dist/reducers/click2smsFlow/index.d.ts +0 -5
  132. package/dist/reducers/click2smsFlow/index.js +0 -1
  133. package/dist/reducers/click2smsFlow/utils.d.ts +0 -4
  134. package/dist/reducers/click2smsFlow/utils.js +0 -1
  135. package/dist/reducers/creditCardFlow/CreditCardTypes.d.ts +0 -79
  136. package/dist/reducers/creditCardFlow/CreditCardTypes.js +0 -1
  137. package/dist/reducers/creditCardFlow/ICreditCardConstants.d.ts +0 -2
  138. package/dist/reducers/creditCardFlow/ICreditCardConstants.js +0 -1
  139. package/dist/reducers/creditCardFlow/index.d.ts +0 -5
  140. package/dist/reducers/creditCardFlow/index.js +0 -1
  141. package/dist/reducers/creditCardFlow/utils.d.ts +0 -8
  142. package/dist/reducers/creditCardFlow/utils.js +0 -1
  143. package/dist/reducers/moFlow/IMoConstants.d.ts +0 -2
  144. package/dist/reducers/moFlow/IMoConstants.js +0 -1
  145. package/dist/reducers/moFlow/MoTypes.d.ts +0 -88
  146. package/dist/reducers/moFlow/MoTypes.js +0 -1
  147. package/dist/reducers/moFlow/index.d.ts +0 -16
  148. package/dist/reducers/moFlow/index.js +0 -1
  149. package/dist/reducers/moFlow/utils.d.ts +0 -12
  150. package/dist/reducers/moFlow/utils.js +0 -1
  151. package/dist/reducers/moRedirFlow/IMoRedirConstants.d.ts +0 -2
  152. package/dist/reducers/moRedirFlow/IMoRedirConstants.js +0 -1
  153. package/dist/reducers/moRedirFlow/MoRedirTypes.d.ts +0 -64
  154. package/dist/reducers/moRedirFlow/MoRedirTypes.js +0 -1
  155. package/dist/reducers/moRedirFlow/index.d.ts +0 -14
  156. package/dist/reducers/moRedirFlow/index.js +0 -1
  157. package/dist/reducers/moRedirFlow/utils.d.ts +0 -10
  158. package/dist/reducers/moRedirFlow/utils.js +0 -1
  159. package/dist/reducers/oneClickFlow/IOneClickConstants.d.ts +0 -2
  160. package/dist/reducers/oneClickFlow/IOneClickConstants.js +0 -1
  161. package/dist/reducers/oneClickFlow/OneClickTypes.d.ts +0 -85
  162. package/dist/reducers/oneClickFlow/OneClickTypes.js +0 -1
  163. package/dist/reducers/oneClickFlow/index.d.ts +0 -13
  164. package/dist/reducers/oneClickFlow/index.js +0 -1
  165. package/dist/reducers/oneClickFlow/utils.d.ts +0 -16
  166. package/dist/reducers/oneClickFlow/utils.js +0 -1
  167. package/dist/reducers/pinFlow/IPinConstants.d.ts +0 -2
  168. package/dist/reducers/pinFlow/IPinConstants.js +0 -1
  169. package/dist/reducers/pinFlow/PinTypes.d.ts +0 -156
  170. package/dist/reducers/pinFlow/PinTypes.js +0 -1
  171. package/dist/reducers/pinFlow/index.d.ts +0 -19
  172. package/dist/reducers/pinFlow/index.js +0 -1
  173. package/dist/reducers/pinFlow/utils.d.ts +0 -11
  174. package/dist/reducers/pinFlow/utils.js +0 -1
  175. package/dist/reducers/strategy/IStategyActionContants.d.ts +0 -2
  176. package/dist/reducers/strategy/IStategyActionContants.js +0 -1
  177. package/dist/reducers/strategy/StrategyTypes.d.ts +0 -248
  178. package/dist/reducers/strategy/StrategyTypes.js +0 -1
  179. package/dist/reducers/strategy/index.d.ts +0 -13
  180. package/dist/reducers/strategy/index.js +0 -1
  181. package/dist/reducers/strategy/strategies/ask_mobile_number.d.ts +0 -15
  182. package/dist/reducers/strategy/strategies/ask_mobile_number.js +0 -1
  183. package/dist/reducers/strategy/strategies/ask_operator.d.ts +0 -5
  184. package/dist/reducers/strategy/strategies/ask_operator.js +0 -1
  185. package/dist/reducers/strategy/strategies/detect_operator_by_ip.d.ts +0 -10
  186. package/dist/reducers/strategy/strategies/detect_operator_by_ip.js +0 -1
  187. package/dist/reducers/strategy/strategies/header_enrichment.d.ts +0 -7
  188. package/dist/reducers/strategy/strategies/header_enrichment.js +0 -1
  189. package/dist/reducers/strategy/strategies/injectHeaderEnrichmentScript.d.ts +0 -7
  190. package/dist/reducers/strategy/strategies/injectHeaderEnrichmentScript.js +0 -1
  191. package/dist/reducers/strategy/utils.d.ts +0 -30
  192. package/dist/reducers/strategy/utils.js +0 -1
  193. package/dist/reducers/ussdFlow/IUssdConstants.d.ts +0 -2
  194. package/dist/reducers/ussdFlow/IUssdConstants.js +0 -1
  195. package/dist/reducers/ussdFlow/UssdTypes.d.ts +0 -77
  196. package/dist/reducers/ussdFlow/UssdTypes.js +0 -1
  197. package/dist/reducers/ussdFlow/index.d.ts +0 -14
  198. package/dist/reducers/ussdFlow/index.js +0 -1
  199. package/dist/reducers/ussdFlow/utils.d.ts +0 -11
  200. package/dist/reducers/ussdFlow/utils.js +0 -1
  201. package/dist/store/index.d.ts +0 -14
  202. package/dist/store/index.js +0 -1
  203. package/dist/store/reducers.d.ts +0 -20
  204. package/dist/store/reducers.js +0 -1
  205. package/dist/utilities/addEmpelloToken.d.ts +0 -4
  206. package/dist/utilities/addEmpelloToken.js +0 -1
  207. package/dist/utilities/handleSubmitNumber.d.ts +0 -21
  208. package/dist/utilities/handleSubmitNumber.js +0 -1
  209. package/dist/utilities/index.d.ts +0 -17
  210. package/dist/utilities/index.js +0 -1
  211. package/dist/utilities/loadScriptInnerHtml.d.ts +0 -2
  212. package/dist/utilities/loadScriptInnerHtml.js +0 -1
  213. package/dist/utilities/loadScriptSrc.d.ts +0 -8
  214. package/dist/utilities/loadScriptSrc.js +0 -1
  215. package/dist/utilities/replaceUrlParam.d.ts +0 -1
  216. package/dist/utilities/replaceUrlParam.js +0 -1
  217. package/dist/utilities/storeMsisdn.d.ts +0 -3
  218. package/dist/utilities/storeMsisdn.js +0 -1
  219. package/index.html +0 -49
  220. package/mockData/config.json +0 -28
  221. package/setupJest.js +0 -6
  222. package/tsconfig.json +0 -28
@@ -0,0 +1,248 @@
1
+ import { __awaiter, __generator, __assign } from 'tslib';
2
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
3
+ import { S as Success, L as Loading, F as Failure, N as NothingYet } from './RemoteDataState-CwHLI23e.js';
4
+ import { l as loadScriptInnerHtml } from './loadScriptInnerHtml-DPcoY467.js';
5
+ import { t as tracker } from './tracker-B_zsMRN2.js';
6
+ import 'pacman-client';
7
+ import 'uuid';
8
+
9
+ var loadScriptSrc = function (_a) {
10
+ var url = _a.url, key = _a.key, _b = _a.isRecaptcha, isRecaptcha = _b === void 0 ? false : _b, callBack = _a.callBack, _c = _a.id, id = _c === void 0 ? '' : _c;
11
+ var script = document.createElement('script');
12
+ script.type = 'text/javascript';
13
+ script.src = url;
14
+ script.id = "injected_script_".concat(id);
15
+ var headElem = document.getElementsByTagName('head')[0];
16
+ headElem.insertBefore(script, headElem.firstChild);
17
+ if (isRecaptcha) {
18
+ script.onload = function () {
19
+ var scriptInner = "\n grecaptcha.ready(function() {\n grecaptcha.execute(\"".concat(key, "\", {action: 'submit'}).then(function(token) {\n // To be used by tallyman\n window.reCaptchaToken = token;\n console.log(\"-------\" + token);\n });\n });\n ");
20
+ loadScriptInnerHtml(scriptInner, true);
21
+ };
22
+ }
23
+ script.onerror = function () {
24
+ console.error('Error loading script', url);
25
+ if (callBack) {
26
+ callBack();
27
+ }
28
+ };
29
+ };
30
+
31
+ var redirect = function (_a) {
32
+ var window = _a.window, slug = _a.slug, country = _a.country, msisdn = _a.msisdn, device = _a.device, offer = _a.offer, rockmanId = _a.rockmanId, ip_range_name = _a.ip_range_name, search = _a.search, extraParamsQs = _a.extraParamsQs, email = _a.email, password = _a.password;
33
+ return __awaiter(void 0, void 0, void 0, function () {
34
+ var params, host, url;
35
+ var _b, _c, _d;
36
+ return __generator(this, function (_e) {
37
+ params = new URLSearchParams(__assign(__assign(__assign(__assign(__assign(__assign({ action: 'redirect', slug: slug, country: country, device: device, offerId: offer.toString(), rockman_id: rockmanId, page: encodeURIComponent(window.location.href), network_type: ip_range_name ? '' : 'wifi' }, (search && { search: search })), (((_d = (_c = (_b = window.pac_analytics) === null || _b === void 0 ? void 0 : _b.visitor) === null || _c === void 0 ? void 0 : _c.page) === null || _d === void 0 ? void 0 : _d.includes('agency')) && { evinaTi: rockmanId })), (window.securityProcessId && { securityProcessId: window.securityProcessId })), (window.languageCode && { language_code: window.languageCode })), (email && password ? { email: email, password: password } : { msisdn: msisdn })), (extraParamsQs && { extraParams: extraParamsQs }))).toString();
38
+ host = window.DEV_BASE_URL || '';
39
+ url = "".concat(host, "/tallyman/v1/?").concat(params);
40
+ if (slug.includes('za-mtn-beyondvr-r7')) {
41
+ return [2 /*return*/, {
42
+ success: true,
43
+ rockman_id: rockmanId,
44
+ redirect_url: url
45
+ }];
46
+ }
47
+ return [2 /*return*/, fetch(url).then(function (x) { return x.json(); })];
48
+ });
49
+ });
50
+ };
51
+ var creditCardPayment = function (_a) {
52
+ var window = _a.window, userDetails = _a.userDetails, extraConfig = _a.extraConfig;
53
+ return __awaiter(void 0, void 0, void 0, function () {
54
+ var isMaxPay, host, apiBaseURL, apiPath, commonDetails, requestOptions;
55
+ var _b;
56
+ return __generator(this, function (_c) {
57
+ isMaxPay = 'cc_number' in userDetails;
58
+ host = window.DEV_BASE_URL_CREDIT_CARD || '';
59
+ apiBaseURL = "".concat(host, "/api/v1");
60
+ apiPath = isMaxPay ? '/maxpay/frontend/initiate-payment' : '/ecardon/frontend/initiate-payment';
61
+ commonDetails = __assign(__assign({ rockman_id: (_b = window.pac_analytics.visitor) === null || _b === void 0 ? void 0 : _b.rockmanId, landing_page_url: window.location.href,
62
+ // Use conditional operation for service_id as it varies
63
+ service_id: isMaxPay ? extraConfig === null || extraConfig === void 0 ? void 0 : extraConfig.serviceId : '2' }, (isMaxPay ? {} : { user_agent: window.navigator.userAgent, ip: window.pac_analytics.visitor.ip })), userDetails);
64
+ requestOptions = {
65
+ method: 'POST',
66
+ headers: new Headers({ 'Content-Type': 'application/json' }),
67
+ body: JSON.stringify(commonDetails)
68
+ };
69
+ return [2 /*return*/, fetch("".concat(apiBaseURL).concat(apiPath), requestOptions).then(function (response) { return response.json(); })];
70
+ });
71
+ });
72
+ };
73
+
74
+ function submitUserDetails(window, config, userDetails) {
75
+ var _a, _b, _c, _d, _e;
76
+ return __awaiter(this, void 0, void 0, function () {
77
+ var slug, country, device, serviceId, search, visitor, rockmanId, extraConfig, result, _f, type, error;
78
+ return __generator(this, function (_g) {
79
+ switch (_g.label) {
80
+ case 0:
81
+ slug = config.slug, country = config.country, device = config.device, serviceId = config.serviceId;
82
+ search = window.location.search.substr(1) || '';
83
+ visitor = window.pac_analytics.visitor;
84
+ rockmanId = visitor.rockmanId;
85
+ extraConfig = { serviceId: serviceId };
86
+ if (!((_c = (_b = (_a = window === null || window === void 0 ? void 0 : window.pac_analytics) === null || _a === void 0 ? void 0 : _a.visitor) === null || _b === void 0 ? void 0 : _b.page) === null || _c === void 0 ? void 0 : _c.includes('agency'))) return [3 /*break*/, 2];
87
+ return [4 /*yield*/, redirect({
88
+ window: window,
89
+ slug: slug,
90
+ country: country,
91
+ device: device,
92
+ offer: (_e = (_d = window === null || window === void 0 ? void 0 : window.pac_analytics) === null || _d === void 0 ? void 0 : _d.visitor) === null || _e === void 0 ? void 0 : _e.offer,
93
+ rockmanId: rockmanId,
94
+ email: userDetails === null || userDetails === void 0 ? void 0 : userDetails.email,
95
+ password: userDetails === null || userDetails === void 0 ? void 0 : userDetails.password,
96
+ search: search
97
+ })];
98
+ case 1:
99
+ _f = _g.sent();
100
+ return [3 /*break*/, 4];
101
+ case 2: return [4 /*yield*/, creditCardPayment({ window: window, userDetails: userDetails, extraConfig: extraConfig })];
102
+ case 3:
103
+ _f = _g.sent();
104
+ _g.label = 4;
105
+ case 4:
106
+ result = _f;
107
+ if (result.success === false) {
108
+ type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : result.message;
109
+ error = new Error("".concat(type, ":\n").concat(result.message));
110
+ error.type = type;
111
+ console.error(error);
112
+ throw error;
113
+ }
114
+ else {
115
+ return [2 /*return*/, {
116
+ gateway_url: result.gateway_url || result.redirect_url,
117
+ method: result.redirect_url ? 'redirection' : result.method
118
+ }];
119
+ }
120
+ }
121
+ });
122
+ });
123
+ }
124
+
125
+ var initialState = {
126
+ currentState: {
127
+ type: 'USER_DETAILS_ENTRY',
128
+ result: NothingYet()
129
+ }
130
+ };
131
+ /**
132
+ * submitUserDetailsAction
133
+ * @returns {type: ' 'pinFlow/submitUserDetailsAction', payload: {type: PossibleTypes, result: USERDETAILSEntryState}}
134
+
135
+ * Calls redirect or max api and returns a url
136
+ *
137
+ */
138
+ var submitUserDetailsAction = createAsyncThunk('creditCardFlow/submitUserDetailsAction', function (_a, _b) {
139
+ var window = _a.window, userDetails = _a.userDetails;
140
+ var getState = _b.getState, rejectWithValue = _b.rejectWithValue;
141
+ return __awaiter(void 0, void 0, void 0, function () {
142
+ var state, config, _c, gateway_url_1, method, ex_1, errorType;
143
+ return __generator(this, function (_d) {
144
+ switch (_d.label) {
145
+ case 0:
146
+ state = getState();
147
+ config = state.strategy.currentState.data.config;
148
+ _d.label = 1;
149
+ case 1:
150
+ _d.trys.push([1, 3, , 4]);
151
+ // Start Credit Card API
152
+ tracker.advancedInFlow('tallyman.v1-credit-card', 'cc-form-submitted', { email: userDetails === null || userDetails === void 0 ? void 0 : userDetails.email });
153
+ return [4 /*yield*/, submitUserDetails(window, config, userDetails)];
154
+ case 2:
155
+ _c = _d.sent(), gateway_url_1 = _c.gateway_url, method = _c.method;
156
+ tracker.advancedInFlow('tallyman.v1-credit-card', 'cc-form-submission-success', {
157
+ email: userDetails === null || userDetails === void 0 ? void 0 : userDetails.email,
158
+ gateway_url: gateway_url_1
159
+ });
160
+ // Start Credit Card API
161
+ if (method === 'jslink' && gateway_url_1) {
162
+ tracker.advancedInFlow('tallyman.v1-credit-card', 'load-script-start', { gateway_url: gateway_url_1 });
163
+ loadScriptSrc({
164
+ id: 'ecardon-credit-card',
165
+ url: gateway_url_1,
166
+ callBack: function () {
167
+ tracker.advancedInFlow('tallyman.v1-credit-card', 'load-script-success', { gateway_url: gateway_url_1 });
168
+ }
169
+ });
170
+ }
171
+ if (method === 'redirection' && gateway_url_1) {
172
+ tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url: gateway_url_1 });
173
+ window.location.href = gateway_url_1;
174
+ }
175
+ return [2 /*return*/, {
176
+ type: 'USER_DETAILS_ENTRY',
177
+ result: Success({ gateway_url: gateway_url_1, method: method })
178
+ }];
179
+ case 3:
180
+ ex_1 = _d.sent();
181
+ console.warn(ex_1);
182
+ errorType = void 0;
183
+ switch (ex_1.type) {
184
+ case 'AlreadySubscribed':
185
+ errorType = 'AlreadySubscribed';
186
+ break;
187
+ case 'InvalidUserDetails':
188
+ errorType = 'InvalidUserDetails';
189
+ break;
190
+ default:
191
+ errorType = 'UnknownError';
192
+ }
193
+ tracker.recedeInFlow('tallyman.v1-credit-card', 'cc-form-submission-failure', {
194
+ email: userDetails === null || userDetails === void 0 ? void 0 : userDetails.email,
195
+ errorType: errorType || ex_1.type
196
+ });
197
+ return [2 /*return*/, rejectWithValue({
198
+ errorType: errorType,
199
+ error: ex_1.toString()
200
+ })];
201
+ case 4: return [2 /*return*/];
202
+ }
203
+ });
204
+ });
205
+ });
206
+ var creditCardFlowSlice = createSlice({
207
+ name: 'creditCardFlow',
208
+ initialState: initialState,
209
+ reducers: {},
210
+ extraReducers: function (builder) {
211
+ builder
212
+ .addCase(submitUserDetailsAction.pending, function (state) {
213
+ state.currentState = { type: 'USER_DETAILS_ENTRY', result: Loading() };
214
+ })
215
+ .addCase(submitUserDetailsAction.fulfilled, function (state, action) {
216
+ state.currentState = action.payload;
217
+ })
218
+ .addCase(submitUserDetailsAction.rejected, function (state, action) {
219
+ state.currentState = {
220
+ type: 'USER_DETAILS_ENTRY',
221
+ result: Failure(action.payload)
222
+ };
223
+ });
224
+ }
225
+ });
226
+ // Export reducers and actions
227
+ var creditCardFlowReducer = creditCardFlowSlice.reducer; creditCardFlowSlice.actions;
228
+
229
+ var useCreditCardFlowState = function (useSelector) {
230
+ var currentState = useSelector(function (state) { return state.creditCardFlow.currentState; });
231
+ return currentState;
232
+ };
233
+
234
+ function creditCardFlowMatch(_a) {
235
+ var userDetailsEntry = _a.userDetailsEntry;
236
+ return function (state) {
237
+ switch (state.type) {
238
+ case 'USER_DETAILS_ENTRY':
239
+ return userDetailsEntry(state.result);
240
+ default:
241
+ // TODO - this should be an error or something
242
+ return userDetailsEntry(state.result);
243
+ }
244
+ };
245
+ }
246
+
247
+ export { creditCardFlowMatch, creditCardFlowReducer, submitUserDetailsAction, useCreditCardFlowState };
248
+ //# sourceMappingURL=creditCardFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creditCardFlow.js","sources":["../src/utilities/loadScriptSrc.ts","../src/flows/creditCardFlow/api.ts","../src/flows/creditCardFlow/main.ts","../src/flows/creditCardFlow/creditCardFlowSlice.ts","../src/flows/creditCardFlow/hooks/useCreditCardFlowState.ts","../src/flows/creditCardFlow/match.ts"],"sourcesContent":["import { loadScriptInnerHtml } from './loadScriptInnerHtml';\n\nconst loadScriptSrc = ({\n url,\n key,\n isRecaptcha = false,\n callBack,\n id = ''\n}: {\n url: string;\n key?: string;\n isRecaptcha?: boolean;\n callBack?: () => void;\n id?: string;\n}) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = url;\n script.id = `injected_script_${id}`;\n const headElem = document.getElementsByTagName('head')[0];\n headElem.insertBefore(script, headElem.firstChild);\n\n if (isRecaptcha) {\n script.onload = () => {\n const scriptInner = `\n grecaptcha.ready(function() {\n grecaptcha.execute(\"${key}\", {action: 'submit'}).then(function(token) {\n // To be used by tallyman\n window.reCaptchaToken = token;\n console.log(\"-------\" + token);\n });\n });\n `;\n loadScriptInnerHtml(scriptInner, true);\n };\n }\n\n script.onerror = () => {\n console.error('Error loading script', url);\n if (callBack) {\n callBack();\n }\n };\n};\n\nexport default loadScriptSrc;\n","import { IUserDetails, IUserDetailsEcardon, IUserDetailsSubmissionResult } from '../../sharedFlowTypes/CreditCardTypes';\nimport { IMSISDNSubmissionResult } from '../../sharedFlowTypes/MoRedirTypes';\n\nconst redirect = async ({\n window,\n slug,\n country,\n msisdn,\n device,\n offer,\n rockmanId,\n ip_range_name,\n search,\n extraParamsQs,\n email,\n password\n}: {\n window: Window;\n slug: string;\n country: string;\n msisdn?: string;\n device: string;\n offer: string;\n rockmanId: string;\n ip_range_name?: string;\n search: string;\n extraParamsQs?: string;\n email?: string;\n password?: string;\n}): Promise<IMSISDNSubmissionResult> => {\n const params = new URLSearchParams({\n action: 'redirect',\n slug,\n country,\n device,\n offerId: offer.toString(),\n rockman_id: rockmanId,\n page: encodeURIComponent(window.location.href),\n network_type: ip_range_name ? '' : 'wifi',\n ...(search && { search }),\n ...(window.pac_analytics?.visitor?.page?.includes('agency') && { evinaTi: rockmanId }),\n ...(window.securityProcessId && { securityProcessId: window.securityProcessId }),\n ...(window.languageCode && { language_code: window.languageCode }),\n ...(email && password ? { email, password } : { msisdn }),\n ...(extraParamsQs && { extraParams: extraParamsQs })\n }).toString();\n\n const host = window.DEV_BASE_URL || '';\n const url = `${host}/tallyman/v1/?${params}`;\n\n if (slug.includes('za-mtn-beyondvr-r7')) {\n return {\n success: true,\n rockman_id: rockmanId,\n redirect_url: url\n };\n }\n\n return fetch(url).then((x) => x.json());\n};\n\nconst creditCardPayment = async ({\n window,\n userDetails,\n extraConfig\n}: {\n window: Window;\n userDetails: IUserDetails | IUserDetailsEcardon;\n extraConfig?: { serviceId: string };\n}): Promise<IUserDetailsSubmissionResult> => {\n const isMaxPay = 'cc_number' in userDetails;\n const host = window.DEV_BASE_URL_CREDIT_CARD || '';\n const apiBaseURL = `${host}/api/v1`;\n const apiPath = isMaxPay ? '/maxpay/frontend/initiate-payment' : '/ecardon/frontend/initiate-payment';\n\n // Common userDetails properties\n const commonDetails = {\n rockman_id: window.pac_analytics.visitor?.rockmanId,\n landing_page_url: window.location.href,\n // Use conditional operation for service_id as it varies\n service_id: isMaxPay ? extraConfig?.serviceId : '2',\n ...(isMaxPay ? {} : { user_agent: window.navigator.userAgent, ip: window.pac_analytics.visitor.ip }),\n ...userDetails\n };\n\n const requestOptions = {\n method: 'POST',\n headers: new Headers({ 'Content-Type': 'application/json' }),\n body: JSON.stringify(commonDetails)\n };\n\n return fetch(`${apiBaseURL}${apiPath}`, requestOptions).then((response) => response.json());\n};\n\nexport { redirect, creditCardPayment };\n","import { IError } from '../../common-types/IError';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n CreditCardFlowState,\n IUserDetails,\n IUserDetailsEcardon,\n IUserDetailsSubmissionResult,\n SubmitUserDetailsFailure,\n SubmitUserDetailsSuccess\n} from '../../sharedFlowTypes/CreditCardTypes';\nimport { IConfig } from '../../sharedFlowTypes/StrategyTypes';\nimport { creditCardPayment, redirect } from './api';\n\nexport async function submitUserDetails(\n window: Window,\n config: IConfig,\n userDetails: IUserDetails | IUserDetailsEcardon\n): Promise<{\n gateway_url: string;\n method: string;\n}> {\n const { slug, country, device, serviceId } = config;\n const search = window.location.search.substr(1) || '';\n const { visitor } = window.pac_analytics;\n\n const { rockmanId } = visitor;\n const extraConfig = { serviceId };\n const result: IUserDetailsSubmissionResult = window?.pac_analytics?.visitor?.page?.includes('agency')\n ? await redirect({\n window,\n slug,\n country,\n device,\n offer: window?.pac_analytics?.visitor?.offer,\n rockmanId,\n email: userDetails?.email,\n password: userDetails?.password,\n search\n })\n : await creditCardPayment({ window, userDetails, extraConfig });\n\n if (result.success === false) {\n const type = result.message === 'ALREADY SUBSCRIBED' ? 'AlreadySubscribed' : result.message;\n const error = new Error(`${type}:\\n${result.message}`) as IError & { type: string };\n error.type = type;\n console.error(error);\n throw error;\n } else {\n return {\n gateway_url: result.gateway_url || result.redirect_url,\n method: result.redirect_url ? 'redirection' : result.method\n };\n }\n}\n\nexport const mockedUserDetailsEntrySuccess: CreditCardFlowState = {\n currentState: {\n type: 'USER_DETAILS_ENTRY',\n result: RDS.Success<SubmitUserDetailsFailure, SubmitUserDetailsSuccess>({\n gateway_url: 'https://www.google.com',\n method: 'jslink'\n })\n }\n};\n\nexport const mockedUserDetailsEntryFailure: CreditCardFlowState = {\n currentState: {\n type: 'USER_DETAILS_ENTRY',\n result: RDS.Failure<SubmitUserDetailsFailure, SubmitUserDetailsSuccess>({\n errorType: 'AlreadySubscribed',\n error: 'Already Subscribed'\n })\n }\n};\n","import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport * as RDS from '../../common-types/RemoteDataState';\nimport {\n CreditCardFlowState,\n IUserDetails,\n IUserDetailsEcardon,\n SubmitUserDetailsErrorTypes,\n SubmitUserDetailsFailure,\n SubmitUserDetailsSuccess,\n USERDETAILSEntryState\n} from '../../sharedFlowTypes/CreditCardTypes';\nimport { RootState } from '../../sharedFlowTypes/StrategyTypes';\nimport loadScriptSrc from '../../utilities/loadScriptSrc';\nimport { tracker } from '../../utilities/tracker';\nimport { submitUserDetails } from './main';\n\nconst initialState: CreditCardFlowState = {\n currentState: {\n type: 'USER_DETAILS_ENTRY',\n result: RDS.NothingYet()\n }\n};\n\ninterface SubmitUserDetailsArgs {\n window: Window;\n userDetails: IUserDetails | IUserDetailsEcardon;\n}\n/**\n * submitUserDetailsAction\n * @returns {type: ' 'pinFlow/submitUserDetailsAction', payload: {type: PossibleTypes, result: USERDETAILSEntryState}}\n \n * Calls redirect or max api and returns a url\n * \n */\nexport const submitUserDetailsAction = createAsyncThunk<\n USERDETAILSEntryState,\n SubmitUserDetailsArgs,\n {\n rejectValue: SubmitUserDetailsFailure;\n }\n>('creditCardFlow/submitUserDetailsAction', async ({ window, userDetails }, { getState, rejectWithValue }) => {\n const state: RootState = getState();\n\n const { config } = state.strategy.currentState.data;\n\n try {\n // Start Credit Card API\n tracker.advancedInFlow('tallyman.v1-credit-card', 'cc-form-submitted', { email: userDetails?.email });\n const { gateway_url, method } = await submitUserDetails(window, config, userDetails);\n tracker.advancedInFlow('tallyman.v1-credit-card', 'cc-form-submission-success', {\n email: userDetails?.email,\n gateway_url\n });\n // Start Credit Card API\n\n if (method === 'jslink' && gateway_url) {\n tracker.advancedInFlow('tallyman.v1-credit-card', 'load-script-start', { gateway_url });\n loadScriptSrc({\n id: 'ecardon-credit-card',\n url: gateway_url,\n callBack: () => {\n tracker.advancedInFlow('tallyman.v1-credit-card', 'load-script-success', { gateway_url });\n }\n });\n }\n\n if (method === 'redirection' && gateway_url) {\n tracker.customEvent('Flow', 'advance-auto', 'redirect-success', { redirect_url: gateway_url });\n window.location.href = gateway_url;\n }\n\n return {\n type: 'USER_DETAILS_ENTRY',\n result: RDS.Success<SubmitUserDetailsFailure, SubmitUserDetailsSuccess>({ gateway_url, method })\n };\n } catch (ex) {\n console.warn(ex);\n let errorType: SubmitUserDetailsErrorTypes;\n switch (ex.type) {\n case 'AlreadySubscribed':\n errorType = 'AlreadySubscribed';\n break;\n case 'InvalidUserDetails':\n errorType = 'InvalidUserDetails';\n break;\n default:\n errorType = 'UnknownError';\n }\n\n tracker.recedeInFlow('tallyman.v1-credit-card', 'cc-form-submission-failure', {\n email: userDetails?.email,\n errorType: errorType || ex.type\n });\n\n return rejectWithValue({\n errorType,\n error: ex.toString()\n });\n }\n});\n\nconst creditCardFlowSlice = createSlice({\n name: 'creditCardFlow',\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n builder\n .addCase(submitUserDetailsAction.pending, (state) => {\n state.currentState = { type: 'USER_DETAILS_ENTRY', result: RDS.Loading() };\n })\n .addCase(submitUserDetailsAction.fulfilled, (state, action: PayloadAction<USERDETAILSEntryState>) => {\n state.currentState = action.payload;\n })\n .addCase(submitUserDetailsAction.rejected, (state, action: PayloadAction<SubmitUserDetailsFailure>) => {\n state.currentState = {\n type: 'USER_DETAILS_ENTRY',\n result: RDS.Failure(action.payload)\n };\n });\n }\n});\n\n// Export reducers and actions\nexport const { reducer: creditCardFlowReducer, actions: creditCardFlowActions } = creditCardFlowSlice;\n\n// If you have selectors or thunks related to this slice, export them as named exports as well\nexport const selectCreditCardFlowState = (state: any) => state.creditCardFlow;\n","import { useSelector as IuseSelector } from 'react-redux';\nimport { RootState } from '../../../sharedFlowTypes/StrategyTypes';\n\nexport const useCreditCardFlowState = (useSelector: typeof IuseSelector) => {\n const currentState = useSelector((state: RootState) => state.creditCardFlow.currentState);\n return currentState;\n};\n","import * as RDS from '../../common-types/RemoteDataState';\nimport {\n CreditCardFlowCurrentState,\n SubmitUserDetailsFailure,\n SubmitUserDetailsSuccess\n} from '../../sharedFlowTypes/CreditCardTypes';\n\nfunction creditCardFlowMatch<R>({\n userDetailsEntry\n}: {\n userDetailsEntry: (rds: RDS.RemoteDataState<SubmitUserDetailsFailure, SubmitUserDetailsSuccess>) => R;\n}): (state: CreditCardFlowCurrentState) => R {\n return (state) => {\n switch (state.type) {\n case 'USER_DETAILS_ENTRY':\n return userDetailsEntry(state.result);\n default:\n // TODO - this should be an error or something\n return userDetailsEntry(state.result);\n }\n };\n}\n\nexport { creditCardFlowMatch };\n"],"names":["RDS.NothingYet","RDS.Success","RDS.Loading","RDS.Failure"],"mappings":";;;;;;;;AAEA,IAAM,aAAa,GAAG,UAAC,EAYtB,EAAA;QAXC,GAAG,GAAA,EAAA,CAAA,GAAA,EACH,GAAG,GAAA,EAAA,CAAA,GAAA,EACH,EAAmB,GAAA,EAAA,CAAA,WAAA,EAAnB,WAAW,GAAG,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,KAAA,EACnB,QAAQ,cAAA,EACR,EAAA,GAAA,EAAA,CAAA,EAAO,EAAP,EAAE,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAA,EAAA,CAAA;IAQP,IAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAChD,IAAA,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;AAChC,IAAA,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;AACjB,IAAA,MAAM,CAAC,EAAE,GAAG,kBAAmB,CAAA,MAAA,CAAA,EAAE,CAAE,CAAC;IACpC,IAAM,QAAQ,GAAG,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAEnD,IAAA,IAAI,WAAW,EAAE;QACf,MAAM,CAAC,MAAM,GAAG,YAAA;AACd,YAAA,IAAM,WAAW,GAAG,4EAEQ,CAAA,MAAA,CAAA,GAAG,iOAM9B,CAAC;AACF,YAAA,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACzC,SAAC,CAAC;AACH,KAAA;IAED,MAAM,CAAC,OAAO,GAAG,YAAA;AACf,QAAA,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;AAC3C,QAAA,IAAI,QAAQ,EAAE;AACZ,YAAA,QAAQ,EAAE,CAAC;AACZ,SAAA;AACH,KAAC,CAAC;AACJ,CAAC;;ACxCD,IAAM,QAAQ,GAAG,UAAO,EA0BvB,EAAA;AAzBC,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,IAAI,GAAA,EAAA,CAAA,IAAA,EACJ,OAAO,GAAA,EAAA,CAAA,OAAA,EACP,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,KAAK,GAAA,EAAA,CAAA,KAAA,EACL,SAAS,GAAA,EAAA,CAAA,SAAA,EACT,aAAa,GAAA,EAAA,CAAA,aAAA,EACb,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,aAAa,mBAAA,EACb,KAAK,GAAA,EAAA,CAAA,KAAA,EACL,QAAQ,GAAA,EAAA,CAAA,QAAA,CAAA;;;;;AAeF,YAAA,MAAM,GAAG,IAAI,eAAe,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,EAChC,MAAM,EAAE,UAAU,EAClB,IAAI,MAAA,EACJ,OAAO,EAAA,OAAA,EACP,MAAM,EAAA,MAAA,EACN,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,EACzB,UAAU,EAAE,SAAS,EACrB,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAC9C,YAAY,EAAE,aAAa,GAAG,EAAE,GAAG,MAAM,EACtC,GAAC,MAAM,IAAI,EAAE,MAAM,EAAA,MAAA,EAAE,EACrB,GAAC,CAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAM,CAAC,aAAa,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,CAAC,QAAQ,CAAC,KAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAC,GAClF,MAAM,CAAC,iBAAiB,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,EAAC,GAC5E,MAAM,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,EAC9D,GAAC,KAAK,IAAI,QAAQ,GAAG,EAAE,KAAK,EAAA,KAAA,EAAE,QAAQ,EAAA,QAAA,EAAE,GAAG,EAAE,MAAM,EAAA,MAAA,EAAE,EAAC,GACrD,aAAa,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,EAAC,CACpD,CAAC,QAAQ,EAAE,CAAC;AAER,YAAA,IAAI,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;AACjC,YAAA,GAAG,GAAG,EAAG,CAAA,MAAA,CAAA,IAAI,EAAiB,gBAAA,CAAA,CAAA,MAAA,CAAA,MAAM,CAAE,CAAC;AAE7C,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;gBACvC,OAAO,CAAA,CAAA,aAAA;AACL,wBAAA,OAAO,EAAE,IAAI;AACb,wBAAA,UAAU,EAAE,SAAS;AACrB,wBAAA,YAAY,EAAE,GAAG;qBAClB,CAAC,CAAA;AACH,aAAA;AAED,YAAA,OAAA,CAAA,CAAA,aAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,EAAK,EAAA,OAAA,CAAC,CAAC,IAAI,EAAE,CAAR,EAAQ,CAAC,CAAC,CAAA;;;CACzC,CAAC;AAEF,IAAM,iBAAiB,GAAG,UAAO,EAQhC,EAAA;AAPC,IAAA,IAAA,MAAM,YAAA,EACN,WAAW,GAAA,EAAA,CAAA,WAAA,EACX,WAAW,GAAA,EAAA,CAAA,WAAA,CAAA;;;;;AAML,YAAA,QAAQ,GAAG,WAAW,IAAI,WAAW,CAAC;AACtC,YAAA,IAAI,GAAG,MAAM,CAAC,wBAAwB,IAAI,EAAE,CAAC;AAC7C,YAAA,UAAU,GAAG,EAAA,CAAA,MAAA,CAAG,IAAI,EAAA,SAAA,CAAS,CAAC;YAC9B,OAAO,GAAG,QAAQ,GAAG,mCAAmC,GAAG,oCAAoC,CAAC;AAGhG,YAAA,aAAa,uBACjB,UAAU,EAAE,MAAA,MAAM,CAAC,aAAa,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,EACnD,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;;gBAEtC,UAAU,EAAE,QAAQ,GAAG,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAX,WAAW,CAAE,SAAS,GAAG,GAAG,EAAA,GAC/C,QAAQ,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,EAAC,EACjG,WAAW,CACf,CAAC;AAEI,YAAA,cAAc,GAAG;AACrB,gBAAA,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,OAAO,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;AAC5D,gBAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;aACpC,CAAC;YAEF,OAAO,CAAA,CAAA,aAAA,KAAK,CAAC,EAAA,CAAA,MAAA,CAAG,UAAU,CAAA,CAAA,MAAA,CAAG,OAAO,CAAE,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ,EAAK,EAAA,OAAA,QAAQ,CAAC,IAAI,EAAE,CAAA,EAAA,CAAC,CAAC,CAAA;;;CAC7F;;SC/EqB,iBAAiB,CACrC,MAAc,EACd,MAAe,EACf,WAA+C,EAAA;;;;;;;AAKvC,oBAAA,IAAI,GAAiC,MAAM,CAAA,IAAvC,EAAE,OAAO,GAAwB,MAAM,CAA9B,OAAA,EAAE,MAAM,GAAgB,MAAM,CAAtB,MAAA,EAAE,SAAS,GAAK,MAAM,UAAX,CAAY;AAC9C,oBAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C,oBAAA,OAAO,GAAK,MAAM,CAAC,aAAa,QAAzB,CAA0B;oBAEjC,SAAS,GAAK,OAAO,CAAA,SAAZ,CAAa;AACxB,oBAAA,WAAW,GAAG,EAAE,SAAS,EAAA,SAAA,EAAE,CAAC;AACW,oBAAA,IAAA,EAAA,CAAA,EAAA,GAAA,MAAA,CAAA,EAAA,GAAA,MAAM,KAAN,IAAA,IAAA,MAAM,uBAAN,MAAM,CAAE,aAAa,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,0CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA,EAAA,OAAA,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACjG,oBAAA,OAAA,CAAA,CAAA,YAAM,QAAQ,CAAC;AACb,4BAAA,MAAM,EAAA,MAAA;AACN,4BAAA,IAAI,EAAA,IAAA;AACJ,4BAAA,OAAO,EAAA,OAAA;AACP,4BAAA,MAAM,EAAA,MAAA;AACN,4BAAA,KAAK,EAAE,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,aAAa,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,0CAAE,KAAK;AAC5C,4BAAA,SAAS,EAAA,SAAA;AACT,4BAAA,KAAK,EAAE,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,KAAK;AACzB,4BAAA,QAAQ,EAAE,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,QAAQ;AAC/B,4BAAA,MAAM,EAAA,MAAA;AACP,yBAAA,CAAC,CAAA,CAAA;;AAVF,oBAAA,EAAA,GAAA,SAUE,CAAA;;AACF,gBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,iBAAiB,CAAC,EAAE,MAAM,EAAA,MAAA,EAAE,WAAW,EAAA,WAAA,EAAE,WAAW,EAAA,WAAA,EAAE,CAAC,CAAA,CAAA;;AAA7D,oBAAA,EAAA,GAAA,SAA6D,CAAA;;;AAZ3D,oBAAA,MAAM,GAYqD,EAAA,CAAA;AAEjE,oBAAA,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE;AACtB,wBAAA,IAAI,GAAG,MAAM,CAAC,OAAO,KAAK,oBAAoB,GAAG,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC;AACtF,wBAAA,KAAK,GAAG,IAAI,KAAK,CAAC,EAAG,CAAA,MAAA,CAAA,IAAI,EAAM,KAAA,CAAA,CAAA,MAAA,CAAA,MAAM,CAAC,OAAO,CAAE,CAA8B,CAAC;AACpF,wBAAA,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;AAClB,wBAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACrB,wBAAA,MAAM,KAAK,CAAC;AACb,qBAAA;AAAM,yBAAA;wBACL,OAAO,CAAA,CAAA,aAAA;AACL,gCAAA,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,YAAY;AACtD,gCAAA,MAAM,EAAE,MAAM,CAAC,YAAY,GAAG,aAAa,GAAG,MAAM,CAAC,MAAM;6BAC5D,CAAC,CAAA;AACH,qBAAA;;;;AACF;;ACrCD,IAAM,YAAY,GAAwB;AACxC,IAAA,YAAY,EAAE;AACZ,QAAA,IAAI,EAAE,oBAAoB;AAC1B,QAAA,MAAM,EAAEA,UAAc,EAAE;AACzB,KAAA;CACF,CAAC;AAMF;;;;;;AAMG;AACU,IAAA,uBAAuB,GAAG,gBAAgB,CAMrD,wCAAwC,EAAE,UAAO,EAAuB,EAAE,EAA6B,EAAA;QAApD,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,WAAW,GAAA,EAAA,CAAA,WAAA,CAAA;QAAM,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,eAAe,GAAA,EAAA,CAAA,eAAA,CAAA;;;;;;oBAC/F,KAAK,GAAc,QAAQ,EAAE,CAAC;oBAE5B,MAAM,GAAK,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAA,MAArC,CAAsC;;;;;AAIlD,oBAAA,OAAO,CAAC,cAAc,CAAC,yBAAyB,EAAE,mBAAmB,EAAE,EAAE,KAAK,EAAE,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,KAAK,EAAE,CAAC,CAAC;oBACtE,OAAM,CAAA,CAAA,YAAA,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA,CAAA;;AAA9E,oBAAA,EAAA,GAA0B,EAAoD,CAAA,IAAA,EAAA,EAA5E,aAAW,GAAA,EAAA,CAAA,WAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,CAAA;AAC3B,oBAAA,OAAO,CAAC,cAAc,CAAC,yBAAyB,EAAE,4BAA4B,EAAE;AAC9E,wBAAA,KAAK,EAAE,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,KAAK;AACzB,wBAAA,WAAW,EAAA,aAAA;AACZ,qBAAA,CAAC,CAAC;;AAGH,oBAAA,IAAI,MAAM,KAAK,QAAQ,IAAI,aAAW,EAAE;AACtC,wBAAA,OAAO,CAAC,cAAc,CAAC,yBAAyB,EAAE,mBAAmB,EAAE,EAAE,WAAW,EAAA,aAAA,EAAE,CAAC,CAAC;AACxF,wBAAA,aAAa,CAAC;AACZ,4BAAA,EAAE,EAAE,qBAAqB;AACzB,4BAAA,GAAG,EAAE,aAAW;AAChB,4BAAA,QAAQ,EAAE,YAAA;AACR,gCAAA,OAAO,CAAC,cAAc,CAAC,yBAAyB,EAAE,qBAAqB,EAAE,EAAE,WAAW,EAAA,aAAA,EAAE,CAAC,CAAC;6BAC3F;AACF,yBAAA,CAAC,CAAC;AACJ,qBAAA;AAED,oBAAA,IAAI,MAAM,KAAK,aAAa,IAAI,aAAW,EAAE;AAC3C,wBAAA,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,YAAY,EAAE,aAAW,EAAE,CAAC,CAAC;AAC/F,wBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,aAAW,CAAC;AACpC,qBAAA;oBAED,OAAO,CAAA,CAAA,aAAA;AACL,4BAAA,IAAI,EAAE,oBAAoB;AAC1B,4BAAA,MAAM,EAAEC,OAAW,CAAqD,EAAE,WAAW,EAAA,aAAA,EAAE,MAAM,EAAA,MAAA,EAAE,CAAC;yBACjG,CAAC,CAAA;;;AAEF,oBAAA,OAAO,CAAC,IAAI,CAAC,IAAE,CAAC,CAAC;AACb,oBAAA,SAAS,SAA6B,CAAC;oBAC3C,QAAQ,IAAE,CAAC,IAAI;AACb,wBAAA,KAAK,mBAAmB;4BACtB,SAAS,GAAG,mBAAmB,CAAC;4BAChC,MAAM;AACR,wBAAA,KAAK,oBAAoB;4BACvB,SAAS,GAAG,oBAAoB,CAAC;4BACjC,MAAM;AACR,wBAAA;4BACE,SAAS,GAAG,cAAc,CAAC;AAC9B,qBAAA;AAED,oBAAA,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,4BAA4B,EAAE;AAC5E,wBAAA,KAAK,EAAE,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,KAAK;AACzB,wBAAA,SAAS,EAAE,SAAS,IAAI,IAAE,CAAC,IAAI;AAChC,qBAAA,CAAC,CAAC;AAEH,oBAAA,OAAA,CAAA,CAAA,aAAO,eAAe,CAAC;AACrB,4BAAA,SAAS,EAAA,SAAA;AACT,4BAAA,KAAK,EAAE,IAAE,CAAC,QAAQ,EAAE;AACrB,yBAAA,CAAC,CAAC,CAAA;;;;;AAEN,CAAA,EAAE;AAEH,IAAM,mBAAmB,GAAG,WAAW,CAAC;AACtC,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,YAAY,EAAA,YAAA;AACZ,IAAA,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,UAAC,OAAO,EAAA;QACrB,OAAO;AACJ,aAAA,OAAO,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAC,KAAK,EAAA;AAC9C,YAAA,KAAK,CAAC,YAAY,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAEC,OAAW,EAAE,EAAE,CAAC;AAC7E,SAAC,CAAC;aACD,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE,UAAC,KAAK,EAAE,MAA4C,EAAA;AAC9F,YAAA,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;AACtC,SAAC,CAAC;aACD,OAAO,CAAC,uBAAuB,CAAC,QAAQ,EAAE,UAAC,KAAK,EAAE,MAA+C,EAAA;YAChG,KAAK,CAAC,YAAY,GAAG;AACnB,gBAAA,IAAI,EAAE,oBAAoB;gBAC1B,MAAM,EAAEC,OAAW,CAAC,MAAM,CAAC,OAAO,CAAC;aACpC,CAAC;AACJ,SAAC,CAAC,CAAC;KACN;AACF,CAAA,CAAC,CAAC;AAEH;AACwB,IAAA,qBAAqB,GAAqC,mBAAmB,CAAxD,OAAA,CAAA,CAAqC,mBAAmB,CAAA;;ACxH9F,IAAM,sBAAsB,GAAG,UAAC,WAAgC,EAAA;AACrE,IAAA,IAAM,YAAY,GAAG,WAAW,CAAC,UAAC,KAAgB,EAAK,EAAA,OAAA,KAAK,CAAC,cAAc,CAAC,YAAY,CAAjC,EAAiC,CAAC,CAAC;AAC1F,IAAA,OAAO,YAAY,CAAC;AACtB;;ACCA,SAAS,mBAAmB,CAAI,EAI/B,EAAA;AAHC,IAAA,IAAA,gBAAgB,GAAA,EAAA,CAAA,gBAAA,CAAA;AAIhB,IAAA,OAAO,UAAC,KAAK,EAAA;QACX,QAAQ,KAAK,CAAC,IAAI;AAChB,YAAA,KAAK,oBAAoB;AACvB,gBAAA,OAAO,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACxC,YAAA;;AAEE,gBAAA,OAAO,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACzC,SAAA;AACH,KAAC,CAAC;AACJ;;;;"}
@@ -0,0 +1,14 @@
1
+ // Function to set the configuration within your library
2
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
3
+ // @ts-ignore
4
+ var config = {};
5
+ function setConfig(userConfig) {
6
+ config = userConfig;
7
+ }
8
+ // Function to get the current configuration
9
+ function getConfig() {
10
+ return config;
11
+ }
12
+
13
+ export { getConfig, setConfig };
14
+ //# sourceMappingURL=getConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConfig.js","sources":["../src/utilities/getConfig.ts"],"sourcesContent":["import { IStrategy } from '../common-types/Strategy';\n\n// Function to set the configuration within your library\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nlet config: IStrategy = {};\n\nexport function setConfig(userConfig: IStrategy) {\n config = userConfig;\n}\n\n// Function to get the current configuration\nexport function getConfig(): IStrategy {\n return config;\n}\n"],"names":[],"mappings":"AAEA;AACA;AACA;AACA,IAAI,MAAM,GAAc,EAAE,CAAC;AAErB,SAAU,SAAS,CAAC,UAAqB,EAAA;IAC7C,MAAM,GAAG,UAAU,CAAC;AACtB,CAAC;AAED;SACgB,SAAS,GAAA;AACvB,IAAA,OAAO,MAAM,CAAC;AAChB;;;;"}
@@ -0,0 +1,32 @@
1
+ import { checkSubscriptionHander } from './checkSubscriptionHander.js';
2
+ import { t as tracker } from './tracker-B_zsMRN2.js';
3
+ import 'tslib';
4
+ import './checkSubscriptionByRockmanIdOnly-C89Ph9cV.js';
5
+ import './helpers-J_h-ZgxH.js';
6
+ import './searchToObject.js';
7
+ import 'pacman-client';
8
+ import 'uuid';
9
+
10
+ var handleClickChainFlow = function (_a) {
11
+ var window = _a.window, trackState = _a.trackState;
12
+ if (typeof window !== 'undefined') {
13
+ var chainRedirectUrl_1 = window.pac_analytics.visitor.chainRedirectUrl || null;
14
+ checkSubscriptionHander({ window: window })
15
+ .then(function (productUrl) {
16
+ if (chainRedirectUrl_1) {
17
+ tracker.customEvent(trackState, 'redirect', 'chain-redirect', { redirect_url: chainRedirectUrl_1 });
18
+ window.location.replace(chainRedirectUrl_1);
19
+ }
20
+ else {
21
+ tracker.customEvent(trackState, 'redirect', 'product-redirect', { redirect_url: productUrl });
22
+ window.location.replace(productUrl);
23
+ }
24
+ })
25
+ .catch(function (err) {
26
+ throw err;
27
+ });
28
+ }
29
+ };
30
+
31
+ export { handleClickChainFlow };
32
+ //# sourceMappingURL=handleClickChainFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleClickChainFlow.js","sources":["../src/utilities/handleClickChainFlow.ts"],"sourcesContent":["import { checkSubscriptionHander } from './checkSubscriptionHander';\nimport { tracker } from './tracker';\n\nexport const handleClickChainFlow = ({ window, trackState }: { window: Window; trackState: string }) => {\n if (typeof window !== 'undefined') {\n const chainRedirectUrl = window.pac_analytics.visitor.chainRedirectUrl || null;\n checkSubscriptionHander({ window })\n .then((productUrl) => {\n if (chainRedirectUrl) {\n tracker.customEvent(trackState, 'redirect', 'chain-redirect', { redirect_url: chainRedirectUrl });\n window.location.replace(chainRedirectUrl);\n } else {\n tracker.customEvent(trackState, 'redirect', 'product-redirect', { redirect_url: productUrl });\n window.location.replace(productUrl);\n }\n })\n .catch((err) => {\n throw err;\n });\n }\n};\n"],"names":[],"mappings":";;;;;;;;;AAGO,IAAM,oBAAoB,GAAG,UAAC,EAA8D,EAAA;QAA5D,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,CAAA;AACvD,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,IAAM,kBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC;AAC/E,QAAA,uBAAuB,CAAC,EAAE,MAAM,EAAA,MAAA,EAAE,CAAC;aAChC,IAAI,CAAC,UAAC,UAAU,EAAA;AACf,YAAA,IAAI,kBAAgB,EAAE;AACpB,gBAAA,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,kBAAgB,EAAE,CAAC,CAAC;AAClG,gBAAA,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAgB,CAAC,CAAC;AAC3C,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;AAC9F,gBAAA,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,aAAA;AACH,SAAC,CAAC;aACD,KAAK,CAAC,UAAC,GAAG,EAAA;AACT,YAAA,MAAM,GAAG,CAAC;AACZ,SAAC,CAAC,CAAC;AACN,KAAA;AACH;;;;"}
@@ -0,0 +1,65 @@
1
+ import PhoneNumber from 'awesome-phonenumber';
2
+ import { searchToObject } from './searchToObject.js';
3
+ import 'tslib';
4
+
5
+ var isCookieExists = function (window, cookieName) {
6
+ return typeof window !== 'undefined' &&
7
+ document.cookie.match(new RegExp("^(.*;)?\\s*".concat(cookieName, "\\s*=\\s*[^;]+(.*)?$"))) !== null;
8
+ };
9
+
10
+ var handleAutoSubmitMsisdn = function (_a) {
11
+ var msisdnValue = _a.msisdnValue, dispatch = _a.dispatch, submitMSISDNAction = _a.submitMSISDNAction, isHeaderEnrichmentSuccess = _a.isHeaderEnrichmentSuccess, setMsisdnValue = _a.setMsisdnValue, isHeaderEnrichmentAutoSubmit = _a.isHeaderEnrichmentAutoSubmit;
12
+ //
13
+ // eslint-disable-next-line no-console
14
+ console.log('handleAutoSubmitMsisdn', msisdnValue);
15
+ if (msisdnValue &&
16
+ msisdnValue.length > 3 &&
17
+ (!isHeaderEnrichmentSuccess || (isHeaderEnrichmentSuccess === true && isHeaderEnrichmentAutoSubmit === true))) {
18
+ var pn = new PhoneNumber("+".concat(msisdnValue), process.env.country.toUpperCase());
19
+ // eslint-disable-next-line no-console
20
+ console.log('pn', pn);
21
+ if (pn.isValid()) {
22
+ dispatch(submitMSISDNAction({ window: window, msisdn: msisdnValue }));
23
+ }
24
+ else {
25
+ setMsisdnValue(pn.getCountryCode() + msisdnValue);
26
+ dispatch(submitMSISDNAction({ window: window, msisdn: pn.getCountryCode() + msisdnValue }));
27
+ }
28
+ }
29
+ };
30
+ var handleFormSubmit = function (_a) {
31
+ var window = _a.window, isHeaderEnrichmentSuccess = _a.isHeaderEnrichmentSuccess, setInternationalNumber = _a.setInternationalNumber, onEnd = _a.onEnd, internationalNumber = _a.internationalNumber;
32
+ var pn = new PhoneNumber("+".concat(internationalNumber), process.env.country.toUpperCase());
33
+ var countryCode = pn.getCountryCode();
34
+ var networkType = isHeaderEnrichmentSuccess ? 'mobile_data' : 'wifi';
35
+ var searchObj = searchToObject(window);
36
+ if (isHeaderEnrichmentSuccess === true &&
37
+ process.env.country === 'kw' &&
38
+ internationalNumber !== '' &&
39
+ !pn.isValid()) {
40
+ setInternationalNumber(countryCode + internationalNumber);
41
+ var newNumber = countryCode + internationalNumber;
42
+ onEnd(newNumber.match(/\d+/gi).join(''));
43
+ }
44
+ else if (isHeaderEnrichmentSuccess === true && (searchObj === null || searchObj === void 0 ? void 0 : searchObj.success) === 'true' && searchObj['msisdn-alias'] === '1') {
45
+ // Special case Digital Virgo sents encrypted msisdn we dont need to validate is
46
+ if (searchObj === null || searchObj === void 0 ? void 0 : searchObj.msisdn) {
47
+ var encryptedMsisdn = searchObj.msisdn;
48
+ onEnd(encryptedMsisdn, { network_type: networkType, 'skip-validation': '1' });
49
+ }
50
+ }
51
+ else if (typeof window !== 'undefined' && isCookieExists(window, 'OMEU') && process.env.country === 'es') {
52
+ onEnd('1', { network_type: networkType, 'skip-validation': '1' });
53
+ }
54
+ else if (internationalNumber) {
55
+ if (process.env.country === 'ci') {
56
+ onEnd(internationalNumber.match(/\d+/gi).join(''), { network_type: networkType });
57
+ }
58
+ else {
59
+ onEnd(internationalNumber.match(/\d+/gi).join(''));
60
+ }
61
+ }
62
+ };
63
+
64
+ export { handleAutoSubmitMsisdn, handleFormSubmit };
65
+ //# sourceMappingURL=handleSubmitNumber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleSubmitNumber.js","sources":["../src/utilities/isCookieExists.ts","../src/utilities/handleSubmitNumber.ts"],"sourcesContent":["export const isCookieExists = (window: Window, cookieName: string) =>\n typeof window !== 'undefined' &&\n document.cookie.match(new RegExp(`^(.*;)?\\\\s*${cookieName}\\\\s*=\\\\s*[^;]+(.*)?$`)) !== null;\n","import { Dispatch } from '@reduxjs/toolkit';\nimport PhoneNumber from 'awesome-phonenumber';\nimport { isCookieExists } from './isCookieExists';\nimport { searchToObject } from './searchToObject';\n\nexport const handleAutoSubmitMsisdn = ({\n msisdnValue,\n dispatch,\n submitMSISDNAction,\n isHeaderEnrichmentSuccess,\n setMsisdnValue,\n isHeaderEnrichmentAutoSubmit\n}: {\n window: Window;\n msisdnValue: string;\n dispatch: Dispatch;\n submitMSISDNAction: ({ window, msisdn }: { window: Window; msisdn: string }) => any;\n isHeaderEnrichmentSuccess: boolean;\n setMsisdnValue: (msisdnValue: string) => void;\n isHeaderEnrichmentAutoSubmit?: boolean;\n}) => {\n //\n // eslint-disable-next-line no-console\n console.log('handleAutoSubmitMsisdn', msisdnValue);\n if (\n msisdnValue &&\n msisdnValue.length > 3 &&\n (!isHeaderEnrichmentSuccess || (isHeaderEnrichmentSuccess === true && isHeaderEnrichmentAutoSubmit === true))\n ) {\n const pn = new PhoneNumber(`+${msisdnValue}`, process.env.country.toUpperCase());\n // eslint-disable-next-line no-console\n console.log('pn', pn);\n if (pn.isValid()) {\n dispatch(submitMSISDNAction({ window, msisdn: msisdnValue }));\n } else {\n setMsisdnValue(pn.getCountryCode() + msisdnValue);\n dispatch(submitMSISDNAction({ window, msisdn: pn.getCountryCode() + msisdnValue }));\n }\n }\n};\n\nexport const handleFormSubmit = ({\n window,\n isHeaderEnrichmentSuccess,\n setInternationalNumber,\n onEnd,\n internationalNumber\n}: {\n window: Window;\n isHeaderEnrichmentSuccess: boolean;\n country: string;\n setInternationalNumber: (msisdn: string) => void;\n onEnd: (msisdn: string, extraParams?: { [key: string]: string }) => void;\n internationalNumber: string;\n}) => {\n const pn = new PhoneNumber(`+${internationalNumber}`, process.env.country.toUpperCase());\n\n const countryCode = pn.getCountryCode();\n const networkType = isHeaderEnrichmentSuccess ? 'mobile_data' : 'wifi';\n const searchObj = searchToObject(window) as any;\n\n if (\n isHeaderEnrichmentSuccess === true &&\n process.env.country === 'kw' &&\n internationalNumber !== '' &&\n !pn.isValid()\n ) {\n setInternationalNumber(countryCode + internationalNumber);\n const newNumber = countryCode + internationalNumber;\n\n onEnd(newNumber.match(/\\d+/gi).join(''));\n } else if (isHeaderEnrichmentSuccess === true && searchObj?.success === 'true' && searchObj['msisdn-alias'] === '1') {\n // Special case Digital Virgo sents encrypted msisdn we dont need to validate is\n if (searchObj?.msisdn) {\n const encryptedMsisdn = searchObj.msisdn;\n onEnd(encryptedMsisdn, { network_type: networkType, 'skip-validation': '1' });\n }\n } else if (typeof window !== 'undefined' && isCookieExists(window, 'OMEU') && process.env.country === 'es') {\n onEnd('1', { network_type: networkType, 'skip-validation': '1' });\n } else if (internationalNumber) {\n if (process.env.country === 'ci') {\n onEnd(internationalNumber.match(/\\d+/gi).join(''), { network_type: networkType });\n } else {\n onEnd(internationalNumber.match(/\\d+/gi).join(''));\n }\n }\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { __awaiter, __generator } from 'tslib';
2
+
3
+ var wait = function (ms) { return new Promise(function (resolve) { return setTimeout(function () { return resolve(); }, ms); }); };
4
+ var loop = function (f, max, stop, i) { return __awaiter(void 0, void 0, void 0, function () {
5
+ var r;
6
+ return __generator(this, function (_a) {
7
+ switch (_a.label) {
8
+ case 0: return [4 /*yield*/, f()];
9
+ case 1:
10
+ r = _a.sent();
11
+ if (stop(r) || i >= max) {
12
+ return [2 /*return*/, r];
13
+ }
14
+ return [4 /*yield*/, wait(1000)];
15
+ case 2:
16
+ _a.sent();
17
+ return [2 /*return*/, loop(f, max, stop, i + 1)];
18
+ }
19
+ });
20
+ }); };
21
+ function right(r) {
22
+ return { type: 'right', value: r };
23
+ }
24
+ function left(l) {
25
+ return { type: 'left', value: l };
26
+ }
27
+
28
+ export { loop as a, left as l, right as r };
29
+ //# sourceMappingURL=helpers-J_h-ZgxH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers-J_h-ZgxH.js","sources":["../src/utilities/helpers.ts"],"sourcesContent":["import Either from '../common-types/Either';\n\nexport const wait = (ms: number) => new Promise<void>((resolve) => setTimeout(() => resolve(), ms));\n\nexport const loop = async <_I extends Record<string, unknown>, R extends Record<string, unknown>>(\n f: () => Promise<R>,\n max: number,\n stop: (r: R) => boolean,\n i: number\n): Promise<R> => {\n const r = await f();\n if (stop(r) || i >= max) {\n return r;\n }\n await wait(1000);\n return loop(f, max, stop, i + 1);\n};\n\nexport function right<L, R>(r: R) {\n return { type: 'right', value: r } as Either<L, R>;\n}\nexport function left<L, R>(l: L) {\n return { type: 'left', value: l } as Either<L, R>;\n}\n"],"names":[],"mappings":";;AAEO,IAAM,IAAI,GAAG,UAAC,EAAU,EAAK,EAAA,OAAA,IAAI,OAAO,CAAO,UAAC,OAAO,EAAK,EAAA,OAAA,UAAU,CAAC,YAAM,EAAA,OAAA,OAAO,EAAE,GAAA,EAAE,EAAE,CAAC,CAA/B,EAA+B,CAAC,CAAA,EAAA,CAAC;AAEvF,IAAA,IAAI,GAAG,UAClB,CAAmB,EACnB,GAAW,EACX,IAAuB,EACvB,CAAS,EAAA,EAAA,OAAA,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,YAAA;;;;oBAEC,OAAM,CAAA,CAAA,YAAA,CAAC,EAAE,CAAA,CAAA;;AAAb,gBAAA,CAAC,GAAG,EAAS,CAAA,IAAA,EAAA,CAAA;gBACnB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE;AACvB,oBAAA,OAAA,CAAA,CAAA,aAAO,CAAC,CAAC,CAAA;AACV,iBAAA;AACD,gBAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,IAAI,CAAC,CAAA,CAAA;;AAAhB,gBAAA,EAAA,CAAA,IAAA,EAAgB,CAAC;AACjB,gBAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;;;MACjC;AAEI,SAAU,KAAK,CAAO,CAAI,EAAA;IAC9B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAkB,CAAC;AACrD,CAAC;AACK,SAAU,IAAI,CAAO,CAAI,EAAA;IAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAkB,CAAC;AACpD;;;;"}
@@ -0,0 +1,26 @@
1
+ var loadScriptInnerHtml = function (innerHTML, isBody) {
2
+ var script = document.createElement('script');
3
+ script.type = 'text/javascript';
4
+ script.innerHTML = innerHTML;
5
+ script.id = window.gateway === 'agency_mt2' ? 'EvinaPinTrigger' : '';
6
+ if (isBody) {
7
+ document.getElementsByTagName('body')[0].appendChild(script);
8
+ }
9
+ else {
10
+ var headElem = document.getElementsByTagName('head')[0];
11
+ headElem.insertBefore(script, headElem.firstChild);
12
+ setTimeout(function () {
13
+ if (window.gateway === 'agency_mt2' && typeof window.evina_dcb !== undefined) {
14
+ // eslint-disable-next-line no-console
15
+ console.log('Ev ready');
16
+ var event_1 = new Event('DCBProtectRun');
17
+ if (typeof window !== 'undefined') {
18
+ document.dispatchEvent(event_1);
19
+ }
20
+ }
21
+ }, 0);
22
+ }
23
+ };
24
+
25
+ export { loadScriptInnerHtml as l };
26
+ //# sourceMappingURL=loadScriptInnerHtml-DPcoY467.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadScriptInnerHtml-DPcoY467.js","sources":["../src/utilities/loadScriptInnerHtml.ts"],"sourcesContent":["const loadScriptInnerHtml = (innerHTML: string, isBody?: boolean) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.innerHTML = innerHTML;\n script.id = window.gateway === 'agency_mt2' ? 'EvinaPinTrigger' : '';\n if (isBody) {\n document.getElementsByTagName('body')[0].appendChild(script);\n } else {\n const headElem = document.getElementsByTagName('head')[0];\n headElem.insertBefore(script, headElem.firstChild);\n\n setTimeout(() => {\n if (window.gateway === 'agency_mt2' && typeof window.evina_dcb !== undefined) {\n // eslint-disable-next-line no-console\n console.log('Ev ready');\n const event = new Event('DCBProtectRun');\n if (typeof window !== 'undefined') {\n document.dispatchEvent(event);\n }\n }\n }, 0);\n }\n};\n\nexport { loadScriptInnerHtml };\n"],"names":[],"mappings":"AAAA,IAAM,mBAAmB,GAAG,UAAC,SAAiB,EAAE,MAAgB,EAAA;IAC9D,IAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAChD,IAAA,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;AAChC,IAAA,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;AAC7B,IAAA,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,KAAK,YAAY,GAAG,iBAAiB,GAAG,EAAE,CAAC;AACrE,IAAA,IAAI,MAAM,EAAE;AACV,QAAA,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAC9D,KAAA;AAAM,SAAA;QACL,IAAM,QAAQ,GAAG,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAEnD,QAAA,UAAU,CAAC,YAAA;AACT,YAAA,IAAI,MAAM,CAAC,OAAO,KAAK,YAAY,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE;;AAE5E,gBAAA,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACxB,gBAAA,IAAM,OAAK,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;AACzC,gBAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACjC,oBAAA,QAAQ,CAAC,aAAa,CAAC,OAAK,CAAC,CAAC;AAC/B,iBAAA;AACF,aAAA;SACF,EAAE,CAAC,CAAC,CAAC;AACP,KAAA;AACH;;;;"}