@bikdotai/bik-widgets 1.0.0 → 1.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 (207) hide show
  1. package/dist-package/index.css +95 -0
  2. package/dist-package/index.js +2 -0
  3. package/package.json +17 -4
  4. package/.eslintrc +0 -22
  5. package/.eslintrc.js +0 -19
  6. package/.github/workflows/main.yml +0 -293
  7. package/.prettierignore +0 -13
  8. package/.prettierrc +0 -10
  9. package/cypress/apiHelper/endpoints.ts +0 -21
  10. package/cypress/apiHelper/executor.ts +0 -42
  11. package/cypress/e2e/bottomDrawer.cy.ts +0 -49
  12. package/cypress/e2e/directReward.cy.ts +0 -67
  13. package/cypress/e2e/scratchTheCard.cy.ts +0 -68
  14. package/cypress/e2e/stw.cy.ts +0 -82
  15. package/cypress/e2e/waRedirection.cy.ts +0 -46
  16. package/cypress/fixtures/payloads.ts +0 -330
  17. package/cypress/support/commands.ts +0 -37
  18. package/cypress/support/e2e.ts +0 -20
  19. package/cypress.staging.config.ts +0 -23
  20. package/jsconfig.json +0 -6
  21. package/localtest.sh +0 -10
  22. package/log-server.js +0 -86
  23. package/postcss.config.js +0 -8
  24. package/src/Globals.d.ts +0 -2
  25. package/src/assets/lottie/santa.json +0 -11722
  26. package/src/assets/svg/CalendarClockIcon.tsx +0 -30
  27. package/src/assets/svg/CalendarIcon.tsx +0 -24
  28. package/src/assets/svg/CheckIcon.tsx +0 -17
  29. package/src/assets/svg/ChevronIcon.tsx +0 -21
  30. package/src/assets/svg/Close.tsx +0 -39
  31. package/src/assets/svg/Confetti.tsx +0 -140
  32. package/src/assets/svg/Copy.tsx +0 -26
  33. package/src/assets/svg/DropdownCheckIcon.tsx +0 -35
  34. package/src/assets/svg/ErrorIcon.tsx +0 -27
  35. package/src/assets/svg/RadioIcon.tsx +0 -25
  36. package/src/assets/svg/UncheckedCheckboxIcon.tsx +0 -28
  37. package/src/assets/svg/UncheckedRadioIcon.tsx +0 -26
  38. package/src/assets/svg/info.tsx +0 -30
  39. package/src/assets/svg/qrcode.svg +0 -14
  40. package/src/bootstrap.tsx +0 -8
  41. package/src/components/CtaCard/index.tsx +0 -37
  42. package/src/components/CtaCard/preview.module.css +0 -32
  43. package/src/components/CtaCard/style.module.css +0 -32
  44. package/src/components/EmailInput/emailInputBox.tsx +0 -95
  45. package/src/components/Fab/index.tsx +0 -224
  46. package/src/components/Fab/preview.module.css +0 -28
  47. package/src/components/Fab/style.module.css +0 -37
  48. package/src/components/Icons/Call.tsx +0 -26
  49. package/src/components/Icons/Cross.tsx +0 -24
  50. package/src/components/Icons/Gmail.tsx +0 -61
  51. package/src/components/Icons/Instagram.tsx +0 -60
  52. package/src/components/Icons/LiveChat.tsx +0 -43
  53. package/src/components/Icons/Messenger.tsx +0 -57
  54. package/src/components/Icons/Send.tsx +0 -22
  55. package/src/components/Icons/Whatsapp.tsx +0 -24
  56. package/src/components/Shimmer/index.tsx +0 -12
  57. package/src/components/Shimmer/style.module.css +0 -37
  58. package/src/components/SmsInput/smsInputBox.tsx +0 -135
  59. package/src/components/UserDetailsV2/userDetailsV2.desktop.module.css +0 -52
  60. package/src/components/UserDetailsV2/userDetailsV2.mobile.module.css +0 -52
  61. package/src/components/UserDetailsV2/userDetailsV2.module.css +0 -81
  62. package/src/components/UserDetailsV2/userDetailsV2.tsx +0 -527
  63. package/src/components/WhatsappInput/Spinner.tsx +0 -26
  64. package/src/components/WhatsappInput/whatsappInput.module.css +0 -106
  65. package/src/components/WhatsappInput/whatsappInputBox.tsx +0 -155
  66. package/src/components/WhatsappInput/whatsappInputPreviewDesktop.module.css +0 -71
  67. package/src/components/WhatsappInput/whatsappInputPreviewMobile.module.css +0 -65
  68. package/src/components/checkbox/checkbox.module.css +0 -19
  69. package/src/components/checkbox/checkbox.tsx +0 -88
  70. package/src/components/countryCodePicker/countriesDropdown.module.css +0 -77
  71. package/src/components/countryCodePicker/countriesDropdown.tsx +0 -81
  72. package/src/components/couponDetails/coupon.module.css +0 -208
  73. package/src/components/couponDetails/coupon.tsx +0 -210
  74. package/src/components/couponDetails/couponPreviewDesktop.module.css +0 -158
  75. package/src/components/couponDetails/couponPreviewMobile.module.css +0 -164
  76. package/src/components/index.ts +0 -3
  77. package/src/components/inputComponents/Checkbox.module.css +0 -197
  78. package/src/components/inputComponents/Checkbox.tsx +0 -85
  79. package/src/components/inputComponents/DatePicker.module.css +0 -565
  80. package/src/components/inputComponents/DatePicker.tsx +0 -278
  81. package/src/components/inputComponents/Dropdown.module.css +0 -796
  82. package/src/components/inputComponents/Dropdown.tsx +0 -630
  83. package/src/components/inputComponents/InputBox.module.css +0 -401
  84. package/src/components/inputComponents/InputBox.tsx +0 -209
  85. package/src/components/selectedCountry/selectedCountry.module.css +0 -76
  86. package/src/components/selectedCountry/selectedCountry.tsx +0 -76
  87. package/src/components/selectedCountry/selectedCountryPreviewDesktop.module.css +0 -56
  88. package/src/components/selectedCountry/selectedCountryPreviewMobile.module.css +0 -57
  89. package/src/components/userDetailsForm/RenderCustomFields.tsx +0 -333
  90. package/src/components/userDetailsForm/userDetailsForm.tsx +0 -675
  91. package/src/hooks/index.ts +0 -4
  92. package/src/hooks/useExitIntent.ts +0 -452
  93. package/src/hooks/useIsMobile.tsx +0 -21
  94. package/src/hooks/useMessageEvent.ts +0 -8
  95. package/src/hooks/useTriggeredIntentDetails.ts +0 -43
  96. package/src/hooks/useUrlListerner.ts +0 -30
  97. package/src/hooks/useWebSocketLogger.ts +0 -59
  98. package/src/hooks/useWindowEvent.ts +0 -8
  99. package/src/icons/copyIcon.tsx +0 -26
  100. package/src/icons/crossIconDesktop.tsx +0 -20
  101. package/src/icons/crossIconMobile.tsx +0 -20
  102. package/src/index.html +0 -30
  103. package/src/index.ts +0 -32
  104. package/src/index.tsx +0 -1
  105. package/src/repo/widgetRepo.ts +0 -21
  106. package/src/types/customFields.ts +0 -73
  107. package/src/utilities/cookie.ts +0 -70
  108. package/src/utilities/customFieldTypeMapping.ts +0 -67
  109. package/src/utilities/customFieldValidation.ts +0 -201
  110. package/src/utilities/encryption.ts +0 -21
  111. package/src/utilities/exitIntentUtils.ts +0 -31
  112. package/src/utilities/global.css +0 -11
  113. package/src/utilities/languageUtilities.ts +0 -235
  114. package/src/utilities/localRunner.js +0 -26
  115. package/src/utilities/localRunner.ts +0 -27
  116. package/src/utilities/localStorage.ts +0 -40
  117. package/src/utilities/script.tsx +0 -15
  118. package/src/utilities/stringUtils.ts +0 -5
  119. package/src/utilities/styleUtils.ts +0 -134
  120. package/src/utilities/variables.ts +0 -11
  121. package/src/utilities/widgetUtils.js +0 -342
  122. package/src/utilities/widgetUtils.ts +0 -313
  123. package/src/widgets/BottomDrawer/config.ts +0 -41
  124. package/src/widgets/BottomDrawer/index.tsx +0 -116
  125. package/src/widgets/BottomDrawer/modal.tsx +0 -286
  126. package/src/widgets/BottomDrawer/preview.module.css +0 -122
  127. package/src/widgets/BottomDrawer/previewMobile.module.css +0 -124
  128. package/src/widgets/BottomDrawer/style.module.css +0 -279
  129. package/src/widgets/CaptivateBanner/captivateBanner.tsx +0 -200
  130. package/src/widgets/CaptivateBanner/config.ts +0 -72
  131. package/src/widgets/CaptivateBanner/index.tsx +0 -204
  132. package/src/widgets/CaptivateBanner/previewDesktop.module.css +0 -51
  133. package/src/widgets/CaptivateBanner/previewMobile.module.css +0 -51
  134. package/src/widgets/CaptivateBanner/style.module.css +0 -77
  135. package/src/widgets/CaptivateBanner/utils.ts +0 -104
  136. package/src/widgets/CentrallyAlignedPopup/config.ts +0 -42
  137. package/src/widgets/CentrallyAlignedPopup/index.tsx +0 -109
  138. package/src/widgets/CentrallyAlignedPopup/modal.tsx +0 -269
  139. package/src/widgets/CentrallyAlignedPopup/preview.module.css +0 -153
  140. package/src/widgets/CentrallyAlignedPopup/previewMobile.module.css +0 -153
  141. package/src/widgets/CentrallyAlignedPopup/style.module.css +0 -283
  142. package/src/widgets/DirectReward/components/couponDetails.tsx +0 -265
  143. package/src/widgets/DirectReward/components/userDetails.tsx +0 -117
  144. package/src/widgets/DirectReward/config.ts +0 -186
  145. package/src/widgets/DirectReward/directReward.tsx +0 -350
  146. package/src/widgets/DirectReward/index.tsx +0 -579
  147. package/src/widgets/DirectReward/previewStyles/thankYouPreviewDesktop.module.css +0 -276
  148. package/src/widgets/DirectReward/previewStyles/thankYouPreviewMobile.module.css +0 -303
  149. package/src/widgets/DirectReward/previewStyles/userDetailsPreviewDesktop.module.css +0 -511
  150. package/src/widgets/DirectReward/previewStyles/userDetailsPreviewMobile.module.css +0 -462
  151. package/src/widgets/DirectReward/style.module.css +0 -836
  152. package/src/widgets/ExitIntentHook.tsx +0 -28
  153. package/src/widgets/STW/api.ts +0 -70
  154. package/src/widgets/STW/components/svgFactory.tsx +0 -44
  155. package/src/widgets/STW/config.ts +0 -193
  156. package/src/widgets/STW/context.ts +0 -7
  157. package/src/widgets/STW/couponDetails.tsx +0 -121
  158. package/src/widgets/STW/index.tsx +0 -733
  159. package/src/widgets/STW/previewStyles/thankyouPreviewDesktop.module.css +0 -215
  160. package/src/widgets/STW/previewStyles/thankyouPreviewMobile.module.css +0 -205
  161. package/src/widgets/STW/previewStyles/userInputsPreviewDesktop.module.css +0 -732
  162. package/src/widgets/STW/previewStyles/userInputsPreviewMobile.module.css +0 -661
  163. package/src/widgets/STW/previewStyles/wheelPreviewDesktop.module.css +0 -498
  164. package/src/widgets/STW/previewStyles/wheelPreviewMobile.module.css +0 -497
  165. package/src/widgets/STW/stw1.tsx +0 -119
  166. package/src/widgets/STW/stw2Components/wheelDesign.tsx +0 -183
  167. package/src/widgets/STW/stw2Pages/couponDetails.tsx +0 -72
  168. package/src/widgets/STW/stw2Pages/stw2.tsx +0 -212
  169. package/src/widgets/STW/stw2Pages/style.module.css +0 -1226
  170. package/src/widgets/STW/stw2Pages/userDetails.tsx +0 -86
  171. package/src/widgets/STW/stw2Pages/wheel.tsx +0 -117
  172. package/src/widgets/STW/stw2PreviewStyles/thankyouPreviewDesktop.module.css +0 -835
  173. package/src/widgets/STW/stw2PreviewStyles/thankyouPreviewMobile.module.css +0 -787
  174. package/src/widgets/STW/stw2PreviewStyles/userInputsPreviewDesktop.module.css +0 -867
  175. package/src/widgets/STW/stw2PreviewStyles/userInputsPreviewMobile.module.css +0 -798
  176. package/src/widgets/STW/stw2PreviewStyles/wheelPreviewDesktop.module.css +0 -572
  177. package/src/widgets/STW/stw2PreviewStyles/wheelPreviewMobile.module.css +0 -559
  178. package/src/widgets/STW/style.module.css +0 -901
  179. package/src/widgets/STW/userDetails.tsx +0 -150
  180. package/src/widgets/STW/utility.ts +0 -664
  181. package/src/widgets/STW/wheel.tsx +0 -304
  182. package/src/widgets/ScratchCard/ScratchOff/scratchOff.tsx +0 -157
  183. package/src/widgets/ScratchCard/config.ts +0 -152
  184. package/src/widgets/ScratchCard/globalStyle.module.css +0 -931
  185. package/src/widgets/ScratchCard/index.tsx +0 -546
  186. package/src/widgets/ScratchCard/modal.tsx +0 -225
  187. package/src/widgets/ScratchCard/preview.module.css +0 -250
  188. package/src/widgets/ScratchCard/previewMobile.module.css +0 -247
  189. package/src/widgets/ScratchCard/previewStyles/userDetailsPreviewDesktop.module.css +0 -537
  190. package/src/widgets/ScratchCard/previewStyles/userDetailsPreviewMobile.module.css +0 -463
  191. package/src/widgets/ScratchCard/style.module.css +0 -220
  192. package/src/widgets/ShopifyForm/config.ts +0 -168
  193. package/src/widgets/ShopifyForm/index.tsx +0 -214
  194. package/src/widgets/ShopifyForm/previewDesktop.module.css +0 -117
  195. package/src/widgets/ShopifyForm/previewMobile.module.css +0 -131
  196. package/src/widgets/ShopifyForm/shopifyForm.tsx +0 -445
  197. package/src/widgets/ShopifyForm/style.module.css +0 -161
  198. package/src/widgets/SingleButtonRedirection/config.ts +0 -47
  199. package/src/widgets/SingleButtonRedirection/index.tsx +0 -121
  200. package/src/widgets/WebStories/config.ts +0 -105
  201. package/src/widgets/WebStories/index.css +0 -3
  202. package/src/widgets/WebStories/index.tsx +0 -282
  203. package/src/widgets/WebStories/style.module.css +0 -26
  204. package/src/widgets/index.tsx +0 -3
  205. package/src/widgets/utility.ts +0 -31
  206. package/tsconfig.json +0 -12
  207. package/webpack.config.js +0 -239
@@ -1,283 +0,0 @@
1
- @import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700&display=swap');
2
-
3
- .content {
4
- background-color: white;
5
- box-shadow: rgb(0 0 0 / 12%) 0px 2px 8px;
6
- width: 300px;
7
- border-radius: 8px;
8
- border-width: 10px;
9
- }
10
-
11
- .cardContainer {
12
- position: relative;
13
- border-top-left-radius: 5px;
14
- border-top-right-radius: 5px;
15
- }
16
-
17
- .card {
18
- height: 200px;
19
- position: relative;
20
- border-radius: 5px 5px 0 0;
21
- }
22
-
23
- .cardOverlay {
24
- justify-content: center;
25
- align-items: center;
26
- width: 96%;
27
- margin-left: 3px;
28
- height: 50px;
29
- display: flex;
30
- background-color: white;
31
- border-radius: 5px 5px 0 0;
32
- position: absolute;
33
- bottom: 0px;
34
- }
35
-
36
- .overlay {
37
- position: fixed;
38
- right: 30px;
39
- bottom: 30px;
40
- border-radius: 5px;
41
- background-color: rgba(0, 0, 0, 0.5);
42
- display: flex;
43
- align-items: center;
44
- justify-content: center;
45
- z-index: 10;
46
- }
47
-
48
- .parentContent {
49
- border-radius: 4px;
50
- background-color: white;
51
- }
52
-
53
- .crossBtn {
54
- width: 32px;
55
- height: 32px;
56
- border-radius: 16px;
57
- padding: 4px;
58
- display: flex;
59
- position: absolute;
60
- justify-content: center;
61
- align-items: center;
62
- top: -90px;
63
- left: 278px;
64
- border: none;
65
- min-width: unset !important;
66
- }
67
-
68
- .bannerImageContainer {
69
- overflow: hidden;
70
- border-top-left-radius: 4px;
71
- border-top-right-radius: 4px;
72
- }
73
-
74
- .bannerImage {
75
- border-top-left-radius: 4px;
76
- border-top-right-radius: 4px;
77
- border-left: 4px;
78
- border-right: 4px;
79
- border-top: 4px;
80
- overflow: hidden;
81
- width: 300px;
82
- }
83
-
84
- .titleContainer {
85
- position: absolute;
86
- top: 346px;
87
- display: flex;
88
- justify-content: center;
89
- align-items: center;
90
- border-top-left-radius: 4px;
91
- border-top-right-radius: 4px;
92
- padding: 10px;
93
- width: 272px;
94
- background-color: white;
95
- }
96
-
97
- .title {
98
- font-family: 'Inter';
99
- font-style: normal;
100
- font-weight: 600;
101
- font-size: 16px;
102
- line-height: 24px;
103
- text-align: center;
104
- font-feature-settings:
105
- 'tnum' on,
106
- 'lnum' on,
107
- 'case' on,
108
- 'ss04' on;
109
- color: #212121;
110
- flex: none;
111
- order: 0;
112
- flex-grow: 0;
113
- }
114
-
115
- .poweredByBikContainer {
116
- justify-content: center;
117
- align-items: center;
118
- display: flex;
119
- cursor: pointer;
120
- padding: 4px;
121
- }
122
-
123
- .poweredByBik {
124
- font-family: 'Inter';
125
- font-style: normal;
126
- background: none;
127
- font-weight: 400;
128
- font-size: 12px;
129
- line-height: 16px;
130
- font-feature-settings:
131
- 'tnum' on,
132
- 'lnum' on,
133
- 'case' on,
134
- 'ss04' on;
135
- color: #9e9e9e;
136
- display: flex;
137
- align-items: center;
138
- }
139
-
140
- .poweredByBik svg {
141
- margin-left: 8px !important;
142
- }
143
-
144
- .cardParent {
145
- background-color: white;
146
- border-bottom-left-radius: 5px;
147
- border-bottom-right-radius: 5px;
148
- padding: 10px;
149
- }
150
-
151
- @media screen and (max-width: 768px) {
152
- .content {
153
- background-color: white;
154
- width: 300px;
155
- border-radius: 8px;
156
- border-width: 10px;
157
- }
158
-
159
- .cardContainer {
160
- position: relative;
161
- border-top-left-radius: 5px;
162
- border-top-right-radius: 5px;
163
- }
164
-
165
- .card {
166
- height: 150px;
167
- position: relative;
168
- border-radius: 5px 5px 0 0;
169
- }
170
-
171
- .cardOverlay {
172
- justify-content: center;
173
- align-items: center;
174
- width: 98%;
175
- margin-left: 3px;
176
- height: 30px;
177
- display: flex;
178
- background-color: white;
179
- border-radius: 5px 5px 0 0;
180
- position: absolute;
181
- bottom: 0px;
182
- }
183
-
184
- .overlay {
185
- position: fixed;
186
- right: 30px;
187
- bottom: 98px;
188
- border-radius: 5px;
189
- background-color: rgba(0, 0, 0, 0.5);
190
- display: flex;
191
- align-items: center;
192
- justify-content: center;
193
- z-index: 10;
194
- }
195
-
196
- .parentContent {
197
- border-radius: 4px;
198
- background-color: white;
199
- }
200
-
201
- .crossBtn {
202
- width: 32px;
203
- height: 32px;
204
- border-radius: 16px;
205
- padding: 4px;
206
- position: absolute;
207
- justify-content: center;
208
- align-items: center;
209
- top: 461px;
210
- left: 129px;
211
- border: none;
212
- }
213
-
214
- .bannerImageContainer {
215
- overflow: hidden;
216
- border-top-left-radius: 4px;
217
- border-top-right-radius: 4px;
218
- }
219
-
220
- .bannerImage {
221
- border-top-left-radius: 4px;
222
- border-top-right-radius: 4px;
223
- border-left: 4px;
224
- border-right: 4px;
225
- border-top: 4px;
226
- overflow: hidden;
227
- border-color: red;
228
- width: 100%;
229
- }
230
-
231
- .titleContainer {
232
- position: absolute;
233
- top: 346px;
234
- display: flex;
235
- justify-content: center;
236
- align-items: center;
237
- border-top-left-radius: 4px;
238
- border-top-right-radius: 4px;
239
- padding: 8px;
240
- width: 272px;
241
- background-color: white;
242
- }
243
-
244
- .title {
245
- font-family: 'Inter';
246
- font-style: normal;
247
- font-weight: 600;
248
- font-size: 14px;
249
- line-height: 24px;
250
- text-align: center;
251
- font-feature-settings:
252
- 'tnum' on,
253
- 'lnum' on,
254
- 'case' on,
255
- 'ss04' on;
256
- color: #212121;
257
- flex: none;
258
- order: 0;
259
- flex-grow: 0;
260
- }
261
-
262
- .poweredByBik {
263
- background: none;
264
- font-family: 'Inter';
265
- font-style: normal;
266
- font-weight: 400;
267
- font-size: 12px;
268
- line-height: 16px;
269
- font-feature-settings:
270
- 'tnum' on,
271
- 'lnum' on,
272
- 'case' on,
273
- 'ss04' on;
274
- color: #9e9e9e;
275
- }
276
-
277
- .cardParent {
278
- background-color: white;
279
- border-bottom-left-radius: 5px;
280
- border-bottom-right-radius: 5px;
281
- padding: 8px;
282
- }
283
- }
@@ -1,265 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import SVGFactory, { SVGName } from 'widgets/STW/components/svgFactory';
3
- import { IDRTemplate } from '..';
4
- import CopyIcon from '../../../icons/copyIcon';
5
- import { decodeTextHelper } from '../../utility';
6
- import { WIDGET_NAME } from '@bikdotai/bik-models/dm';
7
- import { ComponentStyleMap } from '../../../utilities/styleUtils';
8
- import { LanguageUtils } from '../../../utilities/languageUtilities';
9
-
10
- const CouponDetails = (props: IDRTemplate) => {
11
- const languageUtilities = new LanguageUtils();
12
- const { discountCodeDetails, preview, isMobile, templateName } = props;
13
- const { discountCodeTitle, discountCodeDescription } = discountCodeDetails;
14
- const multiLingualData =
15
- props?.widgetCustomisation?.multiLingualConfigurations?.[
16
- props.widgetLanguage
17
- ];
18
- const [btnText, setBtnText] = useState<string>(
19
- multiLingualData?.postPlayScreenButtonText ??
20
- props.widgetCustomisation.postPlayScreenButtonText ??
21
- discountCodeTitle,
22
- );
23
- const [currentStyle, setCurrentStyle] = useState<any>(null);
24
-
25
- useEffect(() => {
26
- setBtnText(
27
- multiLingualData?.postPlayScreenButtonText ??
28
- props.widgetCustomisation.postPlayScreenButtonText,
29
- );
30
- }, [
31
- multiLingualData?.postPlayScreenButtonText,
32
- props.widgetCustomisation.postPlayScreenButtonText,
33
- ]);
34
-
35
- const onCopyHandle = () => {
36
- const cb = navigator.clipboard;
37
- cb.writeText(discountCodeDetails.discountCodeTitle).then(() => {
38
- setBtnText(languageUtilities.getCopiedMessage(props.widgetLanguage));
39
- });
40
- };
41
-
42
- const onRedirectionHandle = () => {
43
- window.open(
44
- props.widgetCustomisation.postPlayScreenButtonRedirection,
45
- '_blank',
46
- );
47
- };
48
-
49
- useEffect(() => {
50
- if (preview && isMobile) {
51
- ComponentStyleMap[templateName]?.thankyouPreviewMobile.then(
52
- async style => {
53
- setCurrentStyle((await style()).default);
54
- },
55
- );
56
- } else if (preview && !isMobile) {
57
- ComponentStyleMap[templateName]?.thankyouPreviewDesktop.then(
58
- async style => {
59
- setCurrentStyle((await style()).default);
60
- },
61
- );
62
- } else {
63
- ComponentStyleMap[templateName]?.globalStyle.then(async style => {
64
- setCurrentStyle((await style()).default);
65
- });
66
- }
67
- }, [preview, isMobile]);
68
-
69
- if (!currentStyle) {
70
- return <></>;
71
- }
72
-
73
- let postPlayScreenTitleSize: string;
74
- let postPlayScreenSubTitleSize: string;
75
-
76
- if (preview) {
77
- postPlayScreenTitleSize = isMobile ? '12px' : '11px';
78
- postPlayScreenSubTitleSize = isMobile ? '11px' : '9px';
79
- } else {
80
- postPlayScreenTitleSize = isMobile ? '20px' : `26px`;
81
- postPlayScreenSubTitleSize = isMobile ? '14px' : `16px`;
82
- }
83
-
84
- return (
85
- <>
86
- {templateName === WIDGET_NAME.DIRECT_REWARD && (
87
- <div
88
- className={currentStyle.bikDRContentWrapper}
89
- id={`bik-${props.id}-coupon-screen`}
90
- >
91
- <div className={currentStyle.bikDRTitleWrapper}>
92
- <div
93
- className={currentStyle.bikDRTitle}
94
- style={{
95
- fontSize: postPlayScreenTitleSize,
96
- fontFamily: props.widgetCustomisation.fontFamily?.name,
97
- color: props.widgetCustomisation?.fontColour,
98
- }}
99
- dangerouslySetInnerHTML={{
100
- __html: decodeTextHelper(
101
- multiLingualData?.postPlayScreenTitle ??
102
- props.widgetCustomisation.postPlayScreenTitle,
103
- ),
104
- }}
105
- />
106
- <div
107
- className={currentStyle.bikDRSubTitle}
108
- style={{
109
- fontSize: postPlayScreenSubTitleSize,
110
- fontFamily: props.widgetCustomisation.fontFamily?.name,
111
- color: props.widgetCustomisation?.fontColour,
112
- }}
113
- dangerouslySetInnerHTML={{
114
- __html: decodeTextHelper(
115
- multiLingualData?.postPlayScreenSubTitle ??
116
- props.widgetCustomisation.postPlayScreenSubTitle,
117
- ),
118
- }}
119
- />
120
- </div>
121
- <div className={currentStyle.bikDRDiscountCodeDetailsMain}>
122
- <div
123
- style={{
124
- backgroundColor:
125
- props.widgetCustomisation.postPlayScreenCouponBgColour,
126
- borderColor:
127
- props.widgetCustomisation.postPlayScreenCouponBorderColour,
128
- fontFamily: props.widgetCustomisation.fontFamily?.name,
129
- }}
130
- className={currentStyle.bikDRDiscountCodeDetailsContainer}
131
- >
132
- <h4>{discountCodeTitle}</h4>
133
- <p>{discountCodeDescription}</p>
134
- </div>
135
- <button
136
- style={{
137
- backgroundColor:
138
- props.widgetCustomisation.postPlayScreenButtonColour,
139
- color: props.widgetCustomisation.postPlayScreenButtonTextColour,
140
- fontFamily: props.widgetCustomisation.fontFamily?.name,
141
- }}
142
- onClick={
143
- props.widgetCustomisation.postPlayScreenButtonRedirection
144
- ? onRedirectionHandle
145
- : onCopyHandle
146
- }
147
- >
148
- <div
149
- style={{
150
- marginRight: 7,
151
- color:
152
- props.widgetCustomisation.postPlayScreenButtonTextColour,
153
- }}
154
- >
155
- {btnText}
156
- </div>
157
- {!props.widgetCustomisation.isRedirectionButtonEnabled && (
158
- <CopyIcon
159
- colour={
160
- props.widgetCustomisation.postPlayScreenButtonTextColour
161
- }
162
- />
163
- )}
164
- </button>
165
- </div>
166
- {!props.widgetCustomisation.hidePoweredBy && (
167
- <p className={currentStyle.poweredBy}>
168
- <a
169
- href="https://bik.ai/?utm_campaign=Direct_Reward&utm_medium=Widgets&utm_source=Powered_by_bik"
170
- target="_blank"
171
- rel="noreferrer"
172
- >
173
- {languageUtilities.getPoweredByMessage(props.widgetLanguage)}
174
- </a>
175
- <SVGFactory name={SVGName.BIK} />
176
- </p>
177
- )}
178
- </div>
179
- )}
180
- {templateName === WIDGET_NAME.LEAD_GENERATOR && (
181
- <div
182
- className={currentStyle.bikDRContentWrapper}
183
- id={`bik-${props.id}-coupon-screen`}
184
- >
185
- <div>
186
- {props.widgetCustomisation.postPlayScreenTitleIcon && (
187
- <div className={currentStyle.leadGenPostPlayIconWrapper}>
188
- <img
189
- src={props.widgetCustomisation.postPlayScreenTitleIcon}
190
- className={currentStyle.leadGenPostPlayIcon}
191
- />
192
- </div>
193
- )}
194
- <div className={currentStyle.bikDRTitleWrapper}>
195
- <div
196
- className={currentStyle.bikDRTitle}
197
- style={{
198
- fontSize: postPlayScreenTitleSize,
199
- fontFamily: props.widgetCustomisation.fontFamily?.name,
200
- color: props.widgetCustomisation?.fontColour,
201
- }}
202
- dangerouslySetInnerHTML={{
203
- __html: decodeTextHelper(
204
- multiLingualData?.postPlayScreenTitle ??
205
- props.widgetCustomisation.postPlayScreenTitle,
206
- ),
207
- }}
208
- />
209
- <div
210
- className={currentStyle.bikDRSubTitle}
211
- style={{
212
- fontSize: postPlayScreenSubTitleSize,
213
- fontFamily: props.widgetCustomisation.fontFamily?.name,
214
- color: props.widgetCustomisation?.fontColour,
215
- }}
216
- dangerouslySetInnerHTML={{
217
- __html: decodeTextHelper(
218
- multiLingualData?.postPlayScreenSubTitle ??
219
- props.widgetCustomisation.postPlayScreenSubTitle,
220
- ),
221
- }}
222
- />
223
- </div>
224
- </div>
225
- {props.widgetCustomisation.isRedirectionButtonEnabled && (
226
- <div className={currentStyle.bikDRDiscountCodeDetailsMain}>
227
- <button
228
- style={{
229
- backgroundColor:
230
- props.widgetCustomisation.postPlayScreenButtonColour,
231
- color:
232
- props.widgetCustomisation.postPlayScreenButtonTextColour,
233
- }}
234
- onClick={onRedirectionHandle}
235
- >
236
- <div
237
- style={{
238
- marginRight: 7,
239
- fontFamily: props.widgetCustomisation.fontFamily?.name,
240
- color:
241
- props.widgetCustomisation.postPlayScreenButtonTextColour,
242
- }}
243
- >
244
- {multiLingualData?.postPlayScreenButtonText ??
245
- props.widgetCustomisation.postPlayScreenButtonText}
246
- </div>
247
- </button>
248
- </div>
249
- )}
250
- <p className={currentStyle.poweredBy}>
251
- <a
252
- href="https://bik.ai/?utm_campaign=Direct_Reward&utm_medium=Widgets&utm_source=Powered_by_bik"
253
- target="_blank"
254
- rel="noreferrer"
255
- >
256
- {languageUtilities.getPoweredByMessage(props.widgetLanguage)}
257
- </a>
258
- <SVGFactory name={SVGName.BIK} />
259
- </p>
260
- </div>
261
- )}
262
- </>
263
- );
264
- };
265
- export default CouponDetails;
@@ -1,117 +0,0 @@
1
- import React, { useState, useEffect } from 'react';
2
- import UserDetailsForm from 'components/userDetailsForm/userDetailsForm';
3
- import { STWContext } from 'widgets/STW/context';
4
- import { IDRTemplate } from '../index';
5
- import { decodeTextHelper } from '../../utility';
6
- import { WIDGET_NAME } from '@bikdotai/bik-models/dm';
7
- import { ComponentStyleMap } from '../../../utilities/styleUtils';
8
-
9
- const UserDetails = (props: IDRTemplate) => {
10
- const {
11
- templateName,
12
- isMobile,
13
- preview,
14
- claimPrizeHandle,
15
- widgetCustomisation,
16
- leadGeneration,
17
- error,
18
- isLoading,
19
- widgetLanguage,
20
- } = props;
21
- const [currentStyle, setCurrentStyle] = useState<any>(null);
22
- const multiLingualData =
23
- widgetCustomisation?.multiLingualConfigurations?.[widgetLanguage];
24
-
25
- let playScreenTitleSize: string;
26
- let playScreenSubTitleSize: string;
27
-
28
- if (preview) {
29
- playScreenTitleSize = isMobile ? '14px' : '13px';
30
- playScreenSubTitleSize = isMobile ? '11px' : '10px';
31
- } else {
32
- playScreenTitleSize = props.isMobileDevice ? '20px' : `26px`;
33
- playScreenSubTitleSize = props.isMobileDevice ? '14px' : `16px`;
34
- }
35
-
36
- useEffect(() => {
37
- if (preview && isMobile) {
38
- ComponentStyleMap[templateName]?.userInputPreviewMobile.then(
39
- async style => {
40
- setCurrentStyle((await style()).default);
41
- },
42
- );
43
- } else if (preview && !isMobile) {
44
- ComponentStyleMap[templateName]?.userInputPreviewDesktop.then(
45
- async style => {
46
- setCurrentStyle((await style()).default);
47
- },
48
- );
49
- } else {
50
- ComponentStyleMap[templateName]?.globalStyle.then(async style => {
51
- setCurrentStyle((await style()).default);
52
- });
53
- }
54
- }, [preview, isMobile]);
55
-
56
- if (!currentStyle) {
57
- return <></>;
58
- }
59
- return (
60
- <div
61
- className={currentStyle.bikDRContentWrapper}
62
- id={`bik-dr-${props.id}-user-details-container`}
63
- >
64
- <div className={currentStyle.bikDRTitleWrapper}>
65
- <div
66
- className={currentStyle.bikDRTitle}
67
- style={{
68
- fontSize: playScreenTitleSize,
69
- fontFamily: props.widgetCustomisation.fontFamily?.name,
70
- color: widgetCustomisation?.fontColour,
71
- }}
72
- dangerouslySetInnerHTML={{
73
- __html: decodeTextHelper(
74
- multiLingualData?.playScreenTitle ??
75
- widgetCustomisation?.playScreenTitle,
76
- ),
77
- }}
78
- />
79
- {(multiLingualData?.playScreenSubTitle ??
80
- widgetCustomisation?.playScreenSubTitle) && (
81
- <div
82
- className={currentStyle.bikDRSubTitle}
83
- style={{
84
- fontSize: playScreenSubTitleSize,
85
- fontFamily: props.widgetCustomisation.fontFamily?.name,
86
- color: widgetCustomisation?.fontColour,
87
- }}
88
- dangerouslySetInnerHTML={{
89
- __html: decodeTextHelper(
90
- multiLingualData?.playScreenSubTitle ??
91
- widgetCustomisation?.playScreenSubTitle,
92
- ),
93
- }}
94
- />
95
- )}
96
- </div>
97
- <STWContext.Provider value={{ preview, isMobile, templateName }}>
98
- <UserDetailsForm
99
- id={props.id}
100
- claimPrizeHandle={claimPrizeHandle as any}
101
- widgetCustomisation={widgetCustomisation}
102
- leadGeneration={leadGeneration}
103
- error={error}
104
- isLoading={isLoading}
105
- templateName={WIDGET_NAME.DIRECT_REWARD}
106
- showTitle={false}
107
- skipSubtitle={true}
108
- widgetName="Direct_Reward"
109
- countryCode={props.countryCode}
110
- widgetLanguage={widgetLanguage}
111
- />
112
- </STWContext.Provider>
113
- </div>
114
- );
115
- };
116
-
117
- export default UserDetails;