manage-app-sdk 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/README.md +2 -0
  2. package/dist/Constants/Home.js +85 -0
  3. package/dist/assets/AppConstant.js +293 -0
  4. package/dist/assets/androidResources/Connectivity.java +52 -0
  5. package/dist/assets/androidResources/ConnectivityPackage.java +25 -0
  6. package/dist/assets/fonts/VoltePlay-Bold.ttf +0 -0
  7. package/dist/assets/fonts/VoltePlay-Light.ttf +0 -0
  8. package/dist/assets/fonts/VoltePlay-Medium.ttf +0 -0
  9. package/dist/assets/fonts/VoltePlay-Regular.ttf +0 -0
  10. package/dist/assets/fonts/VoltePlay-SemiBold.ttf +0 -0
  11. package/dist/assets/gif/loader.gif +0 -0
  12. package/dist/assets/images/PartnerLogosSmall.png +0 -0
  13. package/dist/assets/images/Union.png +0 -0
  14. package/dist/assets/images/appIcon.png +0 -0
  15. package/dist/assets/images/desktop-alert.png +0 -0
  16. package/dist/assets/images/desktop-cross.png +0 -0
  17. package/dist/assets/images/mobile-bg.png +0 -0
  18. package/dist/assets/images/stepper-one-small.png +0 -0
  19. package/dist/assets/images/stepper-one.png +0 -0
  20. package/dist/assets/images/stepper-two-small.png +0 -0
  21. package/dist/assets/images/stepper-two.png +0 -0
  22. package/dist/assets/images/tablet-bg.png +0 -0
  23. package/dist/assets/png/Tataplay-Binge.png +0 -0
  24. package/dist/assets/png/arrowBack.png +0 -0
  25. package/dist/assets/png/backArrowPng.png +0 -0
  26. package/dist/assets/svg/BingeLogoSvg.js +44 -0
  27. package/dist/assets/svg/CrossSvg.js +32 -0
  28. package/dist/assets/svg/OfferSvg.js +31 -0
  29. package/dist/assets/svg/PlansSvg.js +75 -0
  30. package/dist/assets/svg/TickSvg.js +28 -0
  31. package/dist/assets/svg/arrowBack.js +27 -0
  32. package/dist/assets/svg/arrowSvg.js +31 -0
  33. package/dist/components/AppIcon/AppIcon.js +70 -0
  34. package/dist/components/AppleBanner/AppleMusicBanner.js +36 -0
  35. package/dist/components/AppleBanner/AppleMusicBannerStyles.js +32 -0
  36. package/dist/components/AppleBanner/AppleMusicBlackBanner.js +66 -0
  37. package/dist/components/AppsContainer/AppsContainer.js +112 -0
  38. package/dist/components/BottomSheet/BottomSheet.js +173 -0
  39. package/dist/components/BottomSheet/BottomSheetStyles.js +48 -0
  40. package/dist/components/Buttons/PrimaryButton/PrimaryButton.js +50 -0
  41. package/dist/components/Buttons/RadioButton/RadioButton.js +24 -0
  42. package/dist/components/Buttons/TextButton/TextButton.js +44 -0
  43. package/dist/components/CheckButton/CheckButton.js +36 -0
  44. package/dist/components/CommonModal/CommonModel.js +79 -0
  45. package/dist/components/CommonModal/ModalTypes.js +10 -0
  46. package/dist/components/Confetti/ConfettiBurst.js +120 -0
  47. package/dist/components/Confetti/FallingConfetti.js +190 -0
  48. package/dist/components/Confetti/MultiConfettiBurst.js +73 -0
  49. package/dist/components/Coupon/CouponCard.js +47 -0
  50. package/dist/components/Coupon/CouponStyles.js +54 -0
  51. package/dist/components/Footer/Footer.js +177 -0
  52. package/dist/components/Footer/MServiceFooter/MServiceFooter.js +103 -0
  53. package/dist/components/Footer/OnButtonFooter/OneButtonFooter.js +65 -0
  54. package/dist/components/Footer/PlanSummaryFooter/SummaryFooter.js +180 -0
  55. package/dist/components/Footer/PrimeAoFooter/PrimeAoFooter.js +193 -0
  56. package/dist/components/Footer/UpgradeFooter/UpgradeFooter.js +89 -0
  57. package/dist/components/Footer/UpgradeFooter/styles.js +73 -0
  58. package/dist/components/GradientBorderContainer/GradientBorderContainer.js +79 -0
  59. package/dist/components/GradientText/GradientText.js +60 -0
  60. package/dist/components/Header/ManageAppHeader.js +71 -0
  61. package/dist/components/HighlightedText/HighlightedText.js +53 -0
  62. package/dist/components/Input/OtpInput.js +105 -0
  63. package/dist/components/Loader/Loader.js +39 -0
  64. package/dist/components/MServicePaymentMethod/MServicePaymentMethod.js +395 -0
  65. package/dist/components/MicroDrama/MicroDramaBanner.js +67 -0
  66. package/dist/components/MicroDrama/MicroDramaCard.js +33 -0
  67. package/dist/components/MicroDrama/styles.js +29 -0
  68. package/dist/components/OfferCard/OfferCard.js +100 -0
  69. package/dist/components/PaymentMethod/PaymentMethod.js +370 -0
  70. package/dist/components/Plan/CurrentPlanCard.js +138 -0
  71. package/dist/components/Plan/PlanCard.js +268 -0
  72. package/dist/components/Plan/PlanCardStyles.js +371 -0
  73. package/dist/components/Plan/RenderAppIcons.js +115 -0
  74. package/dist/components/Plan/SpecialPlanCard.js +272 -0
  75. package/dist/components/PopUps/CancelPopUp/CancelPopUp.js +190 -0
  76. package/dist/components/PopUps/ConfettiAnimation.js +172 -0
  77. package/dist/components/PopUps/ConfettiBurst.js +142 -0
  78. package/dist/components/PopUps/CouponPopUp/CouponPopUp.js +185 -0
  79. package/dist/components/PopUps/ErrorMsgPopup/ErrorMsgPopup.js +104 -0
  80. package/dist/components/PopUps/InternetErrorPopUp/InternetErrorPopUp.js +122 -0
  81. package/dist/components/PopUps/MServicePopUp/MServicePopUp.js +155 -0
  82. package/dist/components/PopUps/MpinPopUp/MpinPopUp.js +193 -0
  83. package/dist/components/PopUps/OtpPopup/OtpPopup.js +345 -0
  84. package/dist/components/PopUps/PlanCancelledPopUp/PlanCancelledPopUp.js +183 -0
  85. package/dist/components/PopUps/PlanDetailPopup/PlanDetailPopup.js +121 -0
  86. package/dist/components/PopUps/PopUp/PopUp.js +171 -0
  87. package/dist/components/PrimeAddOn/PrimeAddOn.js +72 -0
  88. package/dist/components/PrimeAddOn/PrimeAddOnStyles.js +79 -0
  89. package/dist/components/PrimeAddOn/SummaryPage/PrimeAddOnBanner.js +109 -0
  90. package/dist/components/PrimeBanner/PrimeBanner.js +27 -0
  91. package/dist/components/PrimeBanner/PrimeBannerStyles.js +36 -0
  92. package/dist/components/SectionItem/SectionItem.js +42 -0
  93. package/dist/components/Toast/Toast.js +71 -0
  94. package/dist/components/Toast/ToastStyle.js +62 -0
  95. package/dist/navigation/Routes.js +84 -0
  96. package/dist/navigation/RoutesConstants.js +18 -0
  97. package/dist/screens/AppDiscontinue/ChooseApp.js +325 -0
  98. package/dist/screens/AppDiscontinue/styles.js +89 -0
  99. package/dist/screens/AppsReplacement/AppsReplacement.js +359 -0
  100. package/dist/screens/AppsReplacement/styles.js +92 -0
  101. package/dist/screens/ChooseYourPlan/ChooseYourPlan.js +596 -0
  102. package/dist/screens/ChooseYourPlan/ChooseYourPlanStyles.js +28 -0
  103. package/dist/screens/ChooseYourPlan/OffersCarousel.js +146 -0
  104. package/dist/screens/CreateSession/CreateSession.js +620 -0
  105. package/dist/screens/MyPlan/MyPlan.js +429 -0
  106. package/dist/screens/MyPlan/MyPlanStyles.js +227 -0
  107. package/dist/screens/PaymentStatus/PaymentStatus.js +492 -0
  108. package/dist/screens/PaymentStatus/styles.js +68 -0
  109. package/dist/screens/PlanCancellation/CancelPlan.js +127 -0
  110. package/dist/screens/PlanCancellation/InfiniteAutoScroll.js +67 -0
  111. package/dist/screens/PlanCancellation/styles.js +83 -0
  112. package/dist/screens/PlanSummary/PlanSummary.js +748 -0
  113. package/dist/screens/PlanSummary/PlanSummaryStyles.js +385 -0
  114. package/dist/screens/PrimePlanSummary/PrimePlanSummary.js +252 -0
  115. package/dist/screens/PrimePlanSummary/PrimePlanSummaryStyles.js +102 -0
  116. package/dist/screens/SelectApps/SelectApps.js +513 -0
  117. package/dist/screens/SelectApps/SelectAppsStyles.js +165 -0
  118. package/dist/screens/SplashScreen/SplashScreen.js +82 -0
  119. package/dist/services/apiCall/action.js +718 -0
  120. package/dist/services/apiCall/apiServiceUtils.js +136 -0
  121. package/dist/services/apiCall/constants.js +42 -0
  122. package/dist/services/apiCall/parser.js +92 -0
  123. package/dist/services/apiCall/reducer.js +591 -0
  124. package/dist/services/global/action.js +111 -0
  125. package/dist/services/global/commonReducer.js +97 -0
  126. package/dist/services/global/constants.js +22 -0
  127. package/dist/services/serviceCommonHandler.js +220 -0
  128. package/dist/store/configureStore.js +13 -0
  129. package/dist/store/rootReducer.js +14 -0
  130. package/dist/utils/commonUtils.js +381 -0
  131. package/dist/utils/fontUtils.js +13 -0
  132. package/dist/utils/string.js +101 -0
  133. package/package.json +53 -0
@@ -0,0 +1,385 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _AppConstant = require("../../assets/AppConstant");
9
+ var _fontUtils = require("../../utils/fontUtils");
10
+ var _commonUtils = require("../../utils/commonUtils");
11
+ const ratio = _AppConstant.AppConstant.dimension.aspectRatio;
12
+ var _default = exports.default = planSummaryStyles = _reactNative.StyleSheet.create({
13
+ container: {
14
+ flex: 1
15
+ // alignItems: 'center',
16
+ },
17
+ innerContainer: {
18
+ flex: 1
19
+ },
20
+ header: {
21
+ flexDirection: "row",
22
+ alignItems: "center",
23
+ paddingHorizontal: 20 * ratio,
24
+ paddingTop: 50 * ratio,
25
+ paddingBottom: 20 * ratio
26
+ },
27
+ backButton: {
28
+ marginRight: 15 * ratio
29
+ },
30
+ backArrow: {
31
+ color: "white",
32
+ fontSize: _AppConstant.AppConstant.normalizeFont(24)
33
+ },
34
+ headerTitle: {
35
+ color: "white",
36
+ fontSize: _AppConstant.AppConstant.normalizeFont(20),
37
+ flex: 1,
38
+ textAlign: "center",
39
+ marginRight: 39 * ratio,
40
+ fontFamily: _fontUtils.FONTS.SemiBold
41
+ },
42
+ scrollView: {
43
+ flex: 1
44
+ },
45
+ scrollContent: {
46
+ paddingHorizontal: 10 * ratio,
47
+ paddingBottom: 200 * ratio,
48
+ alignItems: "center",
49
+ paddingTop: 10 * ratio
50
+ },
51
+ planCard: {
52
+ width: ratio * ((0, _commonUtils.isTablet)() ? 400 : 330),
53
+ backgroundColor: "#E8E0F5",
54
+ borderRadius: 10 * ratio,
55
+ marginBottom: 5 * ratio,
56
+ paddingHorizontal: 13 * ratio,
57
+ paddingTop: 14 * ratio,
58
+ overflow: "hidden"
59
+ },
60
+ planTitle: {
61
+ fontSize: _AppConstant.AppConstant.normalizeFont(24),
62
+ color: "#220046",
63
+ marginBottom: 15 * ratio,
64
+ fontFamily: _fontUtils.FONTS.SemiBold,
65
+ textAlign: "center",
66
+ marginTop: 5 * ratio
67
+ },
68
+ appsContainer: {
69
+ width: "100%",
70
+ justifyContent: "center",
71
+ alignItems: "center",
72
+ marginTop: 12 * ratio,
73
+ marginBottom: 8 * ratio,
74
+ paddingHorizontal: 22.5 * ratio,
75
+ overflow: "hidden"
76
+ },
77
+ divider: {
78
+ width: "100%",
79
+ height: 1,
80
+ backgroundColor: "#8E81A1",
81
+ alignSelf: "center",
82
+ marginTop: 10 * ratio
83
+ },
84
+ deviceInfo: {
85
+ alignItems: "center",
86
+ justifyContent: "center"
87
+ },
88
+ deviceIcons: {
89
+ marginRight: 10 * ratio
90
+ },
91
+ deviceText: {
92
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
93
+ fontFamily: _fontUtils.FONTS.Medium
94
+ },
95
+ deviceLabel: {
96
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
97
+ color: "#2D1B69",
98
+ fontFamily: _fontUtils.FONTS.Medium
99
+ },
100
+ appsRow: {
101
+ flexDirection: "row",
102
+ marginBottom: 15 * ratio,
103
+ flexWrap: "wrap",
104
+ rowGap: 14 * ratio,
105
+ columnGap: 16 * ratio
106
+ },
107
+ appIcon: {
108
+ borderRadius: 4,
109
+ overflow: "hidden"
110
+ },
111
+ appImage: {
112
+ width: 50 * ratio,
113
+ height: 50 * ratio,
114
+ justifyContent: "center",
115
+ alignItems: "center"
116
+ },
117
+ complimentaryAppShadow: {
118
+ shadowColor: "#FFFFFF",
119
+ shadowOffset: {
120
+ width: 1,
121
+ height: 1
122
+ },
123
+ shadowOpacity: 0.3,
124
+ shadowRadius: 5,
125
+ elevation: 5,
126
+ backgroundColor: "#050308",
127
+ borderRadius: 6
128
+ },
129
+ complimentaryColumnGap: {
130
+ columnGap: 24 * ratio
131
+ },
132
+ complimentaryAppSection: {
133
+ width: 340 * ratio,
134
+ paddingHorizontal: 12 * ratio
135
+ },
136
+ showAllButton: {
137
+ alignItems: "center",
138
+ justifyContent: "center"
139
+ },
140
+ showAllIcon: {
141
+ width: 60 * ratio,
142
+ height: 60 * ratio,
143
+ borderRadius: 12,
144
+ backgroundColor: "#E91E63",
145
+ alignItems: "center",
146
+ justifyContent: "center",
147
+ marginBottom: 5 * ratio
148
+ },
149
+ showAllText: {
150
+ color: "white",
151
+ fontSize: _AppConstant.AppConstant.normalizeFont(16)
152
+ },
153
+ showAllLabel: {
154
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
155
+ color: "#2D1B69"
156
+ },
157
+ changeAppText: {
158
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
159
+ color: "#8e81a1",
160
+ fontFamily: _fontUtils.FONTS.Medium,
161
+ marginBottom: 10 * ratio,
162
+ width: "100%",
163
+ textAlign: "center"
164
+ },
165
+ complimentaryCard: {
166
+ width: 340 * ratio,
167
+ backgroundColor: "#050308",
168
+ borderRadius: 10,
169
+ borderWidth: 1,
170
+ borderColor: "#FFB800",
171
+ paddingVertical: 14 * ratio,
172
+ paddingHorizontal: 12 * ratio
173
+ },
174
+ complimentaryHeader: {
175
+ flexDirection: "row",
176
+ alignItems: "center",
177
+ justifyContent: "center",
178
+ marginTop: 5 * ratio
179
+ },
180
+ giftIcon: {
181
+ width: 30 * ratio,
182
+ height: 30 * ratio,
183
+ marginRight: 4.5 * ratio
184
+ },
185
+ complimentaryTitle: {
186
+ fontSize: _AppConstant.AppConstant.normalizeFont(16),
187
+ color: "#220046",
188
+ fontFamily: _fontUtils.FONTS.SemiBold
189
+ },
190
+ complimentaryAppsGrid: {
191
+ flexDirection: "row",
192
+ justifyContent: "space-between",
193
+ marginBottom: 20 * ratio
194
+ },
195
+ complimentaryAppIcon: {
196
+ width: 53 * ratio,
197
+ height: 53 * ratio
198
+ },
199
+ complimentaryAppPlaceholder: {
200
+ width: "100%",
201
+ height: 60 * ratio,
202
+ backgroundColor: "#333333",
203
+ borderRadius: 12 * ratio,
204
+ alignItems: "center",
205
+ justifyContent: "center"
206
+ },
207
+ complimentaryAppText: {
208
+ color: "white",
209
+ fontSize: _AppConstant.AppConstant.normalizeFont(10),
210
+ textAlign: "center"
211
+ },
212
+ viewMoreButton: {
213
+ alignItems: "center",
214
+ justifyContent: "center",
215
+ marginBottom: 10 * ratio
216
+ },
217
+ viewMoreText: {
218
+ color: "#E10092",
219
+ fontSize: _AppConstant.AppConstant.normalizeFont(14),
220
+ fontFamily: _fontUtils.FONTS.SemiBold
221
+ },
222
+ additionalInfo: {
223
+ flexDirection: "row",
224
+ marginBottom: 15 * ratio,
225
+ paddingHorizontal: 5 * ratio
226
+ },
227
+ bullet: {
228
+ color: "#d6c6f4",
229
+ fontSize: _AppConstant.AppConstant.normalizeFont(14),
230
+ marginRight: 8 * ratio,
231
+ lineHeight: 20,
232
+ fontFamily: _fontUtils.FONTS.SemiBold
233
+ },
234
+ additionalInfoText: {
235
+ color: "#d6c6f4",
236
+ fontSize: _AppConstant.AppConstant.normalizeFont(14),
237
+ lineHeight: 20,
238
+ flex: 1
239
+ },
240
+ belowMessage: {
241
+ color: "#C7C0CF",
242
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
243
+ textAlign: "left",
244
+ lineHeight: 16,
245
+ fontFamily: _fontUtils.FONTS.Medium,
246
+ justifyContent: "center"
247
+ },
248
+ effectiveDate: {
249
+ color: "#d6c6f4",
250
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
251
+ textAlign: "center",
252
+ fontFamily: _fontUtils.FONTS.Medium,
253
+ alignSelf: "center",
254
+ marginVertical: 15 * ratio,
255
+ width: "100%"
256
+ },
257
+ bottomSection: {
258
+ backgroundColor: "#2D1B69",
259
+ flexDirection: "row",
260
+ alignItems: "center",
261
+ justifyContent: "space-between",
262
+ paddingHorizontal: 20 * ratio,
263
+ paddingVertical: 15 * ratio,
264
+ borderTopLeftRadius: 0 * ratio,
265
+ borderTopRightRadius: 0 * ratio
266
+ },
267
+ priceSection: {
268
+ flexDirection: "row",
269
+ alignItems: "baseline"
270
+ },
271
+ priceText: {
272
+ color: "white",
273
+ fontSize: _AppConstant.AppConstant.normalizeFont(28)
274
+ },
275
+ durationText: {
276
+ color: "white",
277
+ fontSize: _AppConstant.AppConstant.normalizeFont(16),
278
+ marginLeft: 8 * ratio
279
+ },
280
+ proceedButton: {
281
+ backgroundColor: "#E91E63",
282
+ paddingHorizontal: 30 * ratio,
283
+ paddingVertical: 12 * ratio,
284
+ borderRadius: 8 * ratio
285
+ },
286
+ proceedText: {
287
+ color: "white",
288
+ fontSize: _AppConstant.AppConstant.normalizeFont(16)
289
+ },
290
+ arrowSvgContainer: {
291
+ width: 16 * ratio,
292
+ height: 16 * ratio,
293
+ backgroundColor: "#E10092",
294
+ borderRadius: 510 * ratio,
295
+ justifyContent: "center",
296
+ alignItems: "center"
297
+ },
298
+ expandedArrowSvg: {
299
+ transform: [{
300
+ rotate: "180deg"
301
+ }]
302
+ },
303
+ expandButtonText: {
304
+ fontSize: _AppConstant.AppConstant.normalizeFont(12),
305
+ textAlign: "center",
306
+ fontFamily: _fontUtils.FONTS.SemiBold,
307
+ marginTop: 2 * ratio
308
+ },
309
+ expandButton: {
310
+ justifyContent: "center",
311
+ alignItems: "center",
312
+ paddingVertical: 10 * ratio
313
+ },
314
+ extraInformationContainer: {
315
+ width: ratio * ((0, _commonUtils.isTablet)() ? 400 : 340),
316
+ marginTop: 12 * ratio,
317
+ paddingHorizontal: 10 * ratio,
318
+ marginRight: 10 * ratio
319
+ },
320
+ deviceSvg: {
321
+ width: 40,
322
+ height: 40,
323
+ marginRight: 4 * ratio
324
+ },
325
+ imageBackground: {
326
+ width: "100%",
327
+ ..._reactNative.StyleSheet.absoluteFillObject,
328
+ height: "30%"
329
+ },
330
+ autoRenewalContainer: {
331
+ width: ratio * ((0, _commonUtils.isTablet)() ? 400 : 320),
332
+ flexDirection: "row",
333
+ alignItems: "center",
334
+ marginTop: 12 * ratio
335
+ },
336
+ autoRenewalImage: {
337
+ width: 22 * ratio,
338
+ height: 22 * ratio
339
+ },
340
+ autoRenewalText: {
341
+ fontSize: (0, _AppConstant.normalizeFont)(12),
342
+ lineHeight: 14 * ratio,
343
+ color: "white",
344
+ fontFamily: _fontUtils.FONTS.Medium,
345
+ textAlign: "left",
346
+ paddingStart: 12 * ratio,
347
+ paddingEnd: 35 * ratio
348
+ },
349
+ alignCenter: {
350
+ justifyContent: "center",
351
+ alignItems: "center"
352
+ },
353
+ planFailiureText: {
354
+ fontSize: (0, _AppConstant.normalizeFont)(22),
355
+ color: "white",
356
+ fontFamily: _fontUtils.FONTS.Medium
357
+ },
358
+ replaceBannerArea: {
359
+ width: "100%",
360
+ backgroundColor: "#D6C6F4",
361
+ flexDirection: "row",
362
+ alignItems: "center",
363
+ borderRadius: 8,
364
+ marginBottom: 10 * ratio,
365
+ padding: 6 * ratio
366
+ },
367
+ replaceIconImage: {
368
+ width: 30 * ratio,
369
+ height: 30 * ratio
370
+ },
371
+ icon: {
372
+ marginRight: 10 * ratio
373
+ },
374
+ replaceBannerText: {
375
+ color: "#220046",
376
+ fontFamily: _fontUtils.FONTS.Medium,
377
+ fontSize: (0, _AppConstant.normalizeFont)(13)
378
+ },
379
+ boldText: {
380
+ fontFamily: _fontUtils.FONTS.SemiBold
381
+ },
382
+ alignItemsCenter: {
383
+ alignItems: "center"
384
+ }
385
+ });
@@ -0,0 +1,252 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _reactNative = require("react-native");
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _PrimePlanSummaryStyles = _interopRequireDefault(require("./PrimePlanSummaryStyles"));
12
+ var _native = require("@react-navigation/native");
13
+ var _reactRedux = require("react-redux");
14
+ var _ManageAppHeader = _interopRequireDefault(require("../../components/Header/ManageAppHeader"));
15
+ var _AppConstant = require("../../assets/AppConstant");
16
+ var _action = require("../../services/global/action");
17
+ var _commonUtils = require("../../utils/commonUtils");
18
+ var _serviceCommonHandler = require("../../services/serviceCommonHandler");
19
+ var _action2 = require("../../services/apiCall/action");
20
+ var _InternetErrorPopUp = _interopRequireDefault(require("../../components/PopUps/InternetErrorPopUp/InternetErrorPopUp"));
21
+ var _PopUp = _interopRequireDefault(require("../../components/PopUps/PopUp/PopUp"));
22
+ var _lodash = require("lodash");
23
+ var _string = require("../../utils/string");
24
+ var _Loader = _interopRequireDefault(require("../../components/Loader/Loader"));
25
+ var _Footer = _interopRequireDefault(require("../../components/Footer/Footer"));
26
+ var _HighlightedText = _interopRequireDefault(require("../../components/HighlightedText/HighlightedText"));
27
+ var _Home = require("../../Constants/Home");
28
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
29
+ const PrimePlanSummary = () => {
30
+ const navigation = (0, _native.useNavigation)();
31
+ const dispatch = (0, _reactRedux.useDispatch)();
32
+ const route = (0, _native.useRoute)();
33
+ const {
34
+ onClose,
35
+ onReady
36
+ } = route === null || route === void 0 ? void 0 : route.params;
37
+ const isFocused = (0, _native.useIsFocused)();
38
+ const [pageData, setPageData] = (0, _react.useState)();
39
+ const [summaryData, setSummaryData] = (0, _react.useState)({});
40
+ const [render, setRender] = (0, _react.useState)(false);
41
+ const {
42
+ errorCode,
43
+ evdErrorCode,
44
+ unauthorizedPopUpKey,
45
+ isLoading
46
+ } = (0, _reactRedux.useSelector)(state => state.commonReducer);
47
+ const {
48
+ cartId,
49
+ createSessionResponse,
50
+ summaryResponse
51
+ } = (0, _reactRedux.useSelector)(state => state.manageAppReducer);
52
+ const {
53
+ source = "",
54
+ journey = ""
55
+ } = createSessionResponse;
56
+ (0, _react.useEffect)(() => {
57
+ if (!isFocused) return; // only show modal when this screen is focused
58
+
59
+ if (errorCode) {
60
+ setRender(true);
61
+ if (evdErrorCode == 11111) {
62
+ dispatch((0, _action.hideLoader)());
63
+ dispatch((0, _action.showModal)({
64
+ onRetry: () => console.log("INTERNET NOT WORKING"),
65
+ Component: _InternetErrorPopUp.default
66
+ }));
67
+ } else {
68
+ var _AppConstant$getManif;
69
+ dispatch((0, _action.showModal)({
70
+ modalData: (_AppConstant$getManif = _AppConstant.AppConstant.getManifestJson()) === null || _AppConstant$getManif === void 0 ? void 0 : _AppConstant$getManif.errorData,
71
+ type: "Plan-summary",
72
+ Component: _PopUp.default
73
+ }));
74
+ }
75
+ }
76
+ if (unauthorizedPopUpKey) {
77
+ // TODO : SHOW POPUP OR REDIRECT TO BINGE
78
+ }
79
+ }, [errorCode, evdErrorCode, unauthorizedPopUpKey, isFocused]);
80
+ const fetchData = async () => {
81
+ const url = _AppConstant.AppConstant.getApiUrlFromManifest("prime_add_on");
82
+ dispatch((0, _action.showLoader)());
83
+ try {
84
+ const response = await (0, _commonUtils.fetchWithHeaders)(url, _serviceCommonHandler.serviceConsts.method.get);
85
+ const respObj = response === null || response === void 0 ? void 0 : response.data;
86
+ if (respObj !== null && respObj !== void 0 && respObj.status) {
87
+ setPageData(respObj === null || respObj === void 0 ? void 0 : respObj.field_json_data);
88
+ fetchSummaryApi();
89
+ } else {
90
+ setRender(true);
91
+ dispatch((0, _action.setApiError)("Something went wrong. Please try again later", true));
92
+ }
93
+ dispatch((0, _action.hideLoader)());
94
+ } catch (error) {
95
+ setRender(true);
96
+ dispatch((0, _action.hideLoader)());
97
+ (0, _commonUtils.handleError)(error, dispatch);
98
+ } finally {
99
+ onReady === null || onReady === void 0 || onReady();
100
+ }
101
+ };
102
+ const fetchSummaryApi = async () => {
103
+ try {
104
+ const api = _AppConstant.AppConstant.getApiUrlFromManifest("getSummary");
105
+ const apiPath = (0, _commonUtils.replaceStringWithParams)(api, {
106
+ "<source>": `${source}`
107
+ });
108
+ const responseObj = await (0, _commonUtils.fetchWithHeaders)(`${apiPath}/${cartId}`, _serviceCommonHandler.serviceConsts.method.get);
109
+ if (responseObj && responseObj !== null && responseObj !== void 0 && responseObj.status) {
110
+ var _responseObj$data;
111
+ setSummaryData(responseObj === null || responseObj === void 0 ? void 0 : responseObj.data);
112
+ const rechargeUrl = responseObj === null || responseObj === void 0 || (_responseObj$data = responseObj.data) === null || _responseObj$data === void 0 ? void 0 : _responseObj$data.rechargeUrl;
113
+ if (!(0, _lodash.isEmpty)(rechargeUrl) && !(0, _lodash.isEmpty)(rechargeUrl === null || rechargeUrl === void 0 ? void 0 : rechargeUrl.url) && checkSourceRedirect()) {
114
+ // TODO rechargeFormSubmit(rechargeUrl); RECHARGE FORM ?
115
+ } else {
116
+ var _responseObj$data2, _responseObj$data3, _responseObj$data4, _responseObj$data5, _responseObj$data6, _responseObj$data7, _responseObj$data8, _responseObj$data9, _responseObj$data0;
117
+ const summaryResponse = {
118
+ userAction: responseObj === null || responseObj === void 0 || (_responseObj$data2 = responseObj.data) === null || _responseObj$data2 === void 0 ? void 0 : _responseObj$data2.userAction,
119
+ redirectionFlag: responseObj === null || responseObj === void 0 || (_responseObj$data3 = responseObj.data) === null || _responseObj$data3 === void 0 ? void 0 : _responseObj$data3.redirectionFlag,
120
+ packageType: responseObj === null || responseObj === void 0 || (_responseObj$data4 = responseObj.data) === null || _responseObj$data4 === void 0 ? void 0 : _responseObj$data4.packageType,
121
+ packTenure: responseObj === null || responseObj === void 0 || (_responseObj$data5 = responseObj.data) === null || _responseObj$data5 === void 0 ? void 0 : _responseObj$data5.tenure,
122
+ userApps: responseObj === null || responseObj === void 0 || (_responseObj$data6 = responseObj.data) === null || _responseObj$data6 === void 0 ? void 0 : _responseObj$data6.userApps,
123
+ packType: responseObj === null || responseObj === void 0 || (_responseObj$data7 = responseObj.data) === null || _responseObj$data7 === void 0 ? void 0 : _responseObj$data7.productType,
124
+ packPrice: (responseObj === null || responseObj === void 0 || (_responseObj$data8 = responseObj.data) === null || _responseObj$data8 === void 0 ? void 0 : _responseObj$data8.planAmount) || (responseObj === null || responseObj === void 0 || (_responseObj$data9 = responseObj.data) === null || _responseObj$data9 === void 0 ? void 0 : _responseObj$data9.payableAmount),
125
+ packId: responseObj === null || responseObj === void 0 || (_responseObj$data0 = responseObj.data) === null || _responseObj$data0 === void 0 ? void 0 : _responseObj$data0.packId
126
+ };
127
+ dispatch(setSummaryData(summaryResponse));
128
+ setRender(true);
129
+ }
130
+ } else {
131
+ setRender(true);
132
+ setSummaryData({});
133
+ }
134
+ } catch (error) {
135
+ (0, _commonUtils.handleError)(error, dispatch);
136
+ }
137
+ };
138
+ const checkSourceRedirect = () => {
139
+ if (["MSERVICE", "MSERVICEFTV", "MSALES", "PULSEFTV", "BINGEMICROSITE", "PULSEBINGE_OB", "PULSEBINGE_IB", "PULSEOBNDTH", "PULSEIBNDTH"].includes(source) || ["ZEROAPPSELECTION"].includes(journey)) {
140
+ return false;
141
+ } else {
142
+ return true;
143
+ }
144
+ };
145
+ (0, _react.useEffect)(() => {
146
+ fetchData();
147
+ }, []);
148
+ (0, _react.useLayoutEffect)(() => {
149
+ navigation.setOptions({
150
+ header: props => /*#__PURE__*/_react.default.createElement(_ManageAppHeader.default, (0, _extends2.default)({}, props, {
151
+ title: (pageData === null || pageData === void 0 ? void 0 : pageData.title) ?? "Plan Summary",
152
+ onBackPress:
153
+ //TODO handle on back press in header in prime plan summary
154
+ // () => {
155
+ // if (!navigation.canGoBack()) {
156
+ // navigation.reset({
157
+ // index: 0,
158
+ // routes: [{ name: "ChooseYourPlan" }],
159
+ // });
160
+ // }
161
+ // }
162
+ null,
163
+ onClosePress:
164
+ //TODO handle on close in header in prime plan summary
165
+ null
166
+ }))
167
+ });
168
+ }, [pageData, navigation]);
169
+ const redirectToPage = () => {
170
+ try {
171
+ if (summaryData !== null && summaryData !== void 0 && summaryData.redirectionFlag) {
172
+ const apiPath1 = _AppConstant.AppConstant.getApiUrlFromManifest("pageRedirection");
173
+ const redirectionApi = (0, _commonUtils.replaceStringWithParams)(apiPath1, {
174
+ "<source>": `${source}`
175
+ });
176
+ const type = "";
177
+ (0, _commonUtils.fetchRedirectionApi)(_Home.pageConstants.PlanSummaryPage, cartId, navigation, redirectionApi, type, journey);
178
+ }
179
+ } catch (error) {
180
+ (0, _commonUtils.handleError)(error, dispatch);
181
+ }
182
+ };
183
+ if (!render || !render && (0, _lodash.isEmpty)(summaryData)) {
184
+ return /*#__PURE__*/_react.default.createElement(_Loader.default, null);
185
+ }
186
+ if (render && (0, _lodash.isEmpty)(summaryData)) {
187
+ var _AppConstant$getManif2;
188
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
189
+ style: [_PrimePlanSummaryStyles.default.container, _PrimePlanSummaryStyles.default.justifyContent]
190
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
191
+ style: _PrimePlanSummaryStyles.default.errorText
192
+ }, (_AppConstant$getManif2 = _AppConstant.AppConstant.getManifestJson()) === null || _AppConstant$getManif2 === void 0 ? void 0 : _AppConstant$getManif2.addOnErrMsg));
193
+ }
194
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
195
+ style: _PrimePlanSummaryStyles.default.container
196
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
197
+ style: _PrimePlanSummaryStyles.default.innerContainer
198
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
199
+ showsHorizontalScrollIndicator: false
200
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
201
+ source: {
202
+ uri: pageData === null || pageData === void 0 ? void 0 : pageData.bannerImg
203
+ },
204
+ resizeMode: "contain",
205
+ style: _PrimePlanSummaryStyles.default.image
206
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
207
+ style: _PrimePlanSummaryStyles.default.primeContentDetails
208
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
209
+ source: {
210
+ uri: pageData === null || pageData === void 0 ? void 0 : pageData.primeLogo
211
+ },
212
+ resizeMode: "contain",
213
+ style: _PrimePlanSummaryStyles.default.primeLogo
214
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
215
+ style: _PrimePlanSummaryStyles.default.heading
216
+ }, (0, _string.replacePlaceholderInString)(pageData === null || pageData === void 0 ? void 0 : pageData.desc, ["amount", "tenure"], [summaryData === null || summaryData === void 0 ? void 0 : summaryData.payableAmount, _Home.tenureConstants[summaryData === null || summaryData === void 0 ? void 0 : summaryData.tenure]])), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
217
+ style: _PrimePlanSummaryStyles.default.subHeading
218
+ }, pageData === null || pageData === void 0 ? void 0 : pageData.primeLite), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
219
+ style: _PrimePlanSummaryStyles.default.benefitsContainer
220
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
221
+ style: _PrimePlanSummaryStyles.default.benefitItem
222
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
223
+ source: {
224
+ uri: pageData === null || pageData === void 0 ? void 0 : pageData.popImg
225
+ },
226
+ style: _PrimePlanSummaryStyles.default.benefitImg,
227
+ resizeMode: "contain"
228
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
229
+ style: _PrimePlanSummaryStyles.default.benefitText
230
+ }, pageData === null || pageData === void 0 ? void 0 : pageData.popTxt)), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
231
+ style: _PrimePlanSummaryStyles.default.benefitItem
232
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
233
+ source: {
234
+ uri: pageData === null || pageData === void 0 ? void 0 : pageData.deliveryImg
235
+ },
236
+ style: _PrimePlanSummaryStyles.default.benefitImg,
237
+ resizeMode: "contain"
238
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
239
+ style: _PrimePlanSummaryStyles.default.benefitText
240
+ }, pageData === null || pageData === void 0 ? void 0 : pageData.deliveryTxt))), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
241
+ style: _PrimePlanSummaryStyles.default.summaryText
242
+ }, "By continuing you agree to terms on ", /*#__PURE__*/_react.default.createElement(_HighlightedText.default, null, "amazon.in/primeterms"), " and ", /*#__PURE__*/_react.default.createElement(_HighlightedText.default, null, "https://www.tataplay.com/dth/tnc/primeterms")))), /*#__PURE__*/_react.default.createElement(_Footer.default, {
243
+ packData: {
244
+ selectedDiscountedPrice: summaryData === null || summaryData === void 0 ? void 0 : summaryData.payableAmount,
245
+ selectedPackTenure: summaryData === null || summaryData === void 0 ? void 0 : summaryData.tenure
246
+ },
247
+ style: _PrimePlanSummaryStyles.default.footer,
248
+ buttonText: pageData === null || pageData === void 0 ? void 0 : pageData.primaryBtnLabel,
249
+ onButtonClick: redirectToPage
250
+ }), isLoading && /*#__PURE__*/_react.default.createElement(_Loader.default, null)));
251
+ };
252
+ var _default = exports.default = PrimePlanSummary;