@cuemath/web-utils 1.2.37 → 2.0.0-beta.0

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 (308) hide show
  1. package/README.md +334 -1
  2. package/dist/browser.d.mts +15 -0
  3. package/dist/browser.d.ts +15 -0
  4. package/dist/browser.js +2 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/browser.mjs +2 -0
  7. package/dist/browser.mjs.map +1 -0
  8. package/dist/chunk-5X4UT2UI.js +3 -0
  9. package/dist/chunk-5X4UT2UI.js.map +1 -0
  10. package/dist/chunk-CVZIO6BX.mjs +4 -0
  11. package/dist/chunk-CVZIO6BX.mjs.map +1 -0
  12. package/dist/chunk-LUUB665J.mjs +3 -0
  13. package/dist/chunk-LUUB665J.mjs.map +1 -0
  14. package/dist/chunk-OBXSX4MO.js +3 -0
  15. package/dist/chunk-OBXSX4MO.js.map +1 -0
  16. package/dist/chunk-SMWXEBQ2.js +4 -0
  17. package/dist/chunk-SMWXEBQ2.js.map +1 -0
  18. package/dist/chunk-TG7DRTM7.mjs +3 -0
  19. package/dist/chunk-TG7DRTM7.mjs.map +1 -0
  20. package/dist/cloudfront-DRTOCXPV.d.mts +758 -0
  21. package/dist/cloudfront-DRTOCXPV.d.ts +758 -0
  22. package/dist/cloudfront.d.mts +2 -0
  23. package/dist/cloudfront.d.ts +2 -0
  24. package/dist/cloudfront.js +2 -0
  25. package/dist/cloudfront.js.map +1 -0
  26. package/dist/cloudfront.mjs +2 -0
  27. package/dist/cloudfront.mjs.map +1 -0
  28. package/dist/data-props-RvZdA60G.d.mts +157 -0
  29. package/dist/data-props-RvZdA60G.d.ts +157 -0
  30. package/dist/date-time-helper/timezone.d.mts +61 -0
  31. package/dist/date-time-helper/timezone.d.ts +61 -0
  32. package/dist/date-time-helper/timezone.js +2 -0
  33. package/dist/date-time-helper/timezone.js.map +1 -0
  34. package/dist/date-time-helper/timezone.mjs +2 -0
  35. package/dist/date-time-helper/timezone.mjs.map +1 -0
  36. package/dist/{cjs/constants/teacher/index.d.ts → index.d.mts} +63 -1
  37. package/dist/{esm/constants/teacher/index.d.ts → index.d.ts} +63 -1
  38. package/dist/index.js +4 -0
  39. package/dist/index.js.map +1 -0
  40. package/dist/index.mjs +4 -0
  41. package/dist/index.mjs.map +1 -0
  42. package/dist/metafile-cjs.json +1 -0
  43. package/dist/metafile-esm.json +1 -0
  44. package/package.json +41 -10
  45. package/dist/cjs/ab-experiment/constants/index.d.ts +0 -64
  46. package/dist/cjs/ab-experiment/constants/index.js +0 -68
  47. package/dist/cjs/ab-experiment/constants/index.js.map +0 -1
  48. package/dist/cjs/ab-experiment/index.d.ts +0 -2
  49. package/dist/cjs/ab-experiment/index.js +0 -15
  50. package/dist/cjs/ab-experiment/index.js.map +0 -1
  51. package/dist/cjs/ab-experiment/utils/ab-variant.d.ts +0 -13
  52. package/dist/cjs/ab-experiment/utils/ab-variant.js +0 -125
  53. package/dist/cjs/ab-experiment/utils/ab-variant.js.map +0 -1
  54. package/dist/cjs/ab-experiment/utils/experiments.d.ts +0 -21
  55. package/dist/cjs/ab-experiment/utils/experiments.js +0 -95
  56. package/dist/cjs/ab-experiment/utils/experiments.js.map +0 -1
  57. package/dist/cjs/analytics/attributes.d.ts +0 -10
  58. package/dist/cjs/analytics/attributes.js +0 -33
  59. package/dist/cjs/analytics/attributes.js.map +0 -1
  60. package/dist/cjs/analytics/data-props.d.ts +0 -3
  61. package/dist/cjs/analytics/data-props.js +0 -20
  62. package/dist/cjs/analytics/data-props.js.map +0 -1
  63. package/dist/cjs/analytics/index.d.ts +0 -2
  64. package/dist/cjs/analytics/index.js +0 -19
  65. package/dist/cjs/analytics/index.js.map +0 -1
  66. package/dist/cjs/constants/analytics/index.d.ts +0 -8
  67. package/dist/cjs/constants/analytics/index.js +0 -12
  68. package/dist/cjs/constants/analytics/index.js.map +0 -1
  69. package/dist/cjs/constants/country/country-code-map.d.ts +0 -9
  70. package/dist/cjs/constants/country/country-code-map.js +0 -997
  71. package/dist/cjs/constants/country/country-code-map.js.map +0 -1
  72. package/dist/cjs/constants/country/country-region-map.d.ts +0 -12
  73. package/dist/cjs/constants/country/country-region-map.js +0 -202
  74. package/dist/cjs/constants/country/country-region-map.js.map +0 -1
  75. package/dist/cjs/constants/country/index.d.ts +0 -5
  76. package/dist/cjs/constants/country/index.js +0 -24
  77. package/dist/cjs/constants/country/index.js.map +0 -1
  78. package/dist/cjs/constants/country/iso-country-code.d.ts +0 -248
  79. package/dist/cjs/constants/country/iso-country-code.js +0 -252
  80. package/dist/cjs/constants/country/iso-country-code.js.map +0 -1
  81. package/dist/cjs/constants/country/region.d.ts +0 -10
  82. package/dist/cjs/constants/country/region.js +0 -14
  83. package/dist/cjs/constants/country/region.js.map +0 -1
  84. package/dist/cjs/constants/country/states.d.ts +0 -8
  85. package/dist/cjs/constants/country/states.js +0 -103
  86. package/dist/cjs/constants/country/states.js.map +0 -1
  87. package/dist/cjs/constants/currency-symbols/index.d.ts +0 -175
  88. package/dist/cjs/constants/currency-symbols/index.js +0 -179
  89. package/dist/cjs/constants/currency-symbols/index.js.map +0 -1
  90. package/dist/cjs/constants/date-time/index.d.ts +0 -18
  91. package/dist/cjs/constants/date-time/index.js +0 -44
  92. package/dist/cjs/constants/date-time/index.js.map +0 -1
  93. package/dist/cjs/constants/date-time/international-timezones.d.ts +0 -7
  94. package/dist/cjs/constants/date-time/international-timezones.js +0 -160
  95. package/dist/cjs/constants/date-time/international-timezones.js.map +0 -1
  96. package/dist/cjs/constants/index.d.ts +0 -5
  97. package/dist/cjs/constants/index.js +0 -22
  98. package/dist/cjs/constants/index.js.map +0 -1
  99. package/dist/cjs/constants/instrumentation/index.d.ts +0 -5
  100. package/dist/cjs/constants/instrumentation/index.js +0 -9
  101. package/dist/cjs/constants/instrumentation/index.js.map +0 -1
  102. package/dist/cjs/constants/teacher/index.js +0 -277
  103. package/dist/cjs/constants/teacher/index.js.map +0 -1
  104. package/dist/cjs/cookie/index.d.ts +0 -4
  105. package/dist/cjs/cookie/index.js +0 -46
  106. package/dist/cjs/cookie/index.js.map +0 -1
  107. package/dist/cjs/country-code/index.d.ts +0 -8
  108. package/dist/cjs/country-code/index.js +0 -23
  109. package/dist/cjs/country-code/index.js.map +0 -1
  110. package/dist/cjs/data/utm-source.json +0 -54
  111. package/dist/cjs/date-time-helper/index.d.ts +0 -30
  112. package/dist/cjs/date-time-helper/index.js +0 -107
  113. package/dist/cjs/date-time-helper/index.js.map +0 -1
  114. package/dist/cjs/e-cna/index.d.ts +0 -4
  115. package/dist/cjs/e-cna/index.js +0 -22
  116. package/dist/cjs/e-cna/index.js.map +0 -1
  117. package/dist/cjs/growth-source/index.d.ts +0 -21
  118. package/dist/cjs/growth-source/index.js +0 -235
  119. package/dist/cjs/growth-source/index.js.map +0 -1
  120. package/dist/cjs/growth-source/scripts/source-channel.d.ts +0 -1
  121. package/dist/cjs/growth-source/scripts/source-channel.js +0 -44
  122. package/dist/cjs/growth-source/scripts/source-channel.js.map +0 -1
  123. package/dist/cjs/growth-source/types.d.ts +0 -75
  124. package/dist/cjs/growth-source/types.js +0 -3
  125. package/dist/cjs/growth-source/types.js.map +0 -1
  126. package/dist/cjs/index.d.ts +0 -17
  127. package/dist/cjs/index.js +0 -35
  128. package/dist/cjs/index.js.map +0 -1
  129. package/dist/cjs/last-landing-page/index.d.ts +0 -5
  130. package/dist/cjs/last-landing-page/index.js +0 -34
  131. package/dist/cjs/last-landing-page/index.js.map +0 -1
  132. package/dist/cjs/local-storage/index.d.ts +0 -13
  133. package/dist/cjs/local-storage/index.js +0 -173
  134. package/dist/cjs/local-storage/index.js.map +0 -1
  135. package/dist/cjs/object/index.d.ts +0 -2
  136. package/dist/cjs/object/index.js +0 -24
  137. package/dist/cjs/object/index.js.map +0 -1
  138. package/dist/cjs/script/index.d.ts +0 -1
  139. package/dist/cjs/script/index.js +0 -14
  140. package/dist/cjs/script/index.js.map +0 -1
  141. package/dist/cjs/url/index.d.ts +0 -3
  142. package/dist/cjs/url/index.js +0 -10
  143. package/dist/cjs/url/index.js.map +0 -1
  144. package/dist/cjs/url-parser/index.d.ts +0 -3
  145. package/dist/cjs/url-parser/index.js +0 -13
  146. package/dist/cjs/url-parser/index.js.map +0 -1
  147. package/dist/cjs/utils/env-mode.d.ts +0 -5
  148. package/dist/cjs/utils/env-mode.js +0 -9
  149. package/dist/cjs/utils/env-mode.js.map +0 -1
  150. package/dist/cjs/utils/index.d.ts +0 -2
  151. package/dist/cjs/utils/index.js +0 -19
  152. package/dist/cjs/utils/index.js.map +0 -1
  153. package/dist/cjs/utils/server.d.ts +0 -1
  154. package/dist/cjs/utils/server.js +0 -5
  155. package/dist/cjs/utils/server.js.map +0 -1
  156. package/dist/cjs/validations/form-validations.d.ts +0 -12
  157. package/dist/cjs/validations/form-validations.js +0 -47
  158. package/dist/cjs/validations/form-validations.js.map +0 -1
  159. package/dist/cjs/validations/index.d.ts +0 -1
  160. package/dist/cjs/validations/index.js +0 -18
  161. package/dist/cjs/validations/index.js.map +0 -1
  162. package/dist/cjs/website-category/constants/index.d.ts +0 -116
  163. package/dist/cjs/website-category/constants/index.js +0 -230
  164. package/dist/cjs/website-category/constants/index.js.map +0 -1
  165. package/dist/cjs/website-category/constants/instrumentation.d.ts +0 -178
  166. package/dist/cjs/website-category/constants/instrumentation.js +0 -182
  167. package/dist/cjs/website-category/constants/instrumentation.js.map +0 -1
  168. package/dist/cjs/website-category/index.d.ts +0 -3
  169. package/dist/cjs/website-category/index.js +0 -14
  170. package/dist/cjs/website-category/index.js.map +0 -1
  171. package/dist/cjs/website-category/utils/index.d.ts +0 -1
  172. package/dist/cjs/website-category/utils/index.js +0 -10
  173. package/dist/cjs/website-category/utils/index.js.map +0 -1
  174. package/dist/cjs/website-category/utils/instrumentation.d.ts +0 -8
  175. package/dist/cjs/website-category/utils/instrumentation.js +0 -70
  176. package/dist/cjs/website-category/utils/instrumentation.js.map +0 -1
  177. package/dist/esm/ab-experiment/constants/index.d.ts +0 -64
  178. package/dist/esm/ab-experiment/constants/index.js +0 -65
  179. package/dist/esm/ab-experiment/constants/index.js.map +0 -1
  180. package/dist/esm/ab-experiment/index.d.ts +0 -2
  181. package/dist/esm/ab-experiment/index.js +0 -3
  182. package/dist/esm/ab-experiment/index.js.map +0 -1
  183. package/dist/esm/ab-experiment/utils/ab-variant.d.ts +0 -13
  184. package/dist/esm/ab-experiment/utils/ab-variant.js +0 -117
  185. package/dist/esm/ab-experiment/utils/ab-variant.js.map +0 -1
  186. package/dist/esm/ab-experiment/utils/experiments.d.ts +0 -21
  187. package/dist/esm/ab-experiment/utils/experiments.js +0 -92
  188. package/dist/esm/ab-experiment/utils/experiments.js.map +0 -1
  189. package/dist/esm/analytics/attributes.d.ts +0 -10
  190. package/dist/esm/analytics/attributes.js +0 -29
  191. package/dist/esm/analytics/attributes.js.map +0 -1
  192. package/dist/esm/analytics/data-props.d.ts +0 -3
  193. package/dist/esm/analytics/data-props.js +0 -17
  194. package/dist/esm/analytics/data-props.js.map +0 -1
  195. package/dist/esm/analytics/index.d.ts +0 -2
  196. package/dist/esm/analytics/index.js +0 -3
  197. package/dist/esm/analytics/index.js.map +0 -1
  198. package/dist/esm/constants/analytics/index.d.ts +0 -8
  199. package/dist/esm/constants/analytics/index.js +0 -9
  200. package/dist/esm/constants/analytics/index.js.map +0 -1
  201. package/dist/esm/constants/country/country-code-map.d.ts +0 -9
  202. package/dist/esm/constants/country/country-code-map.js +0 -994
  203. package/dist/esm/constants/country/country-code-map.js.map +0 -1
  204. package/dist/esm/constants/country/country-region-map.d.ts +0 -12
  205. package/dist/esm/constants/country/country-region-map.js +0 -199
  206. package/dist/esm/constants/country/country-region-map.js.map +0 -1
  207. package/dist/esm/constants/country/index.d.ts +0 -5
  208. package/dist/esm/constants/country/index.js +0 -6
  209. package/dist/esm/constants/country/index.js.map +0 -1
  210. package/dist/esm/constants/country/iso-country-code.d.ts +0 -248
  211. package/dist/esm/constants/country/iso-country-code.js +0 -249
  212. package/dist/esm/constants/country/iso-country-code.js.map +0 -1
  213. package/dist/esm/constants/country/region.d.ts +0 -10
  214. package/dist/esm/constants/country/region.js +0 -11
  215. package/dist/esm/constants/country/region.js.map +0 -1
  216. package/dist/esm/constants/country/states.d.ts +0 -8
  217. package/dist/esm/constants/country/states.js +0 -100
  218. package/dist/esm/constants/country/states.js.map +0 -1
  219. package/dist/esm/constants/currency-symbols/index.d.ts +0 -175
  220. package/dist/esm/constants/currency-symbols/index.js +0 -176
  221. package/dist/esm/constants/currency-symbols/index.js.map +0 -1
  222. package/dist/esm/constants/date-time/index.d.ts +0 -18
  223. package/dist/esm/constants/date-time/index.js +0 -40
  224. package/dist/esm/constants/date-time/index.js.map +0 -1
  225. package/dist/esm/constants/date-time/international-timezones.d.ts +0 -7
  226. package/dist/esm/constants/date-time/international-timezones.js +0 -153
  227. package/dist/esm/constants/date-time/international-timezones.js.map +0 -1
  228. package/dist/esm/constants/index.d.ts +0 -5
  229. package/dist/esm/constants/index.js +0 -6
  230. package/dist/esm/constants/index.js.map +0 -1
  231. package/dist/esm/constants/instrumentation/index.d.ts +0 -5
  232. package/dist/esm/constants/instrumentation/index.js +0 -6
  233. package/dist/esm/constants/instrumentation/index.js.map +0 -1
  234. package/dist/esm/constants/teacher/index.js +0 -273
  235. package/dist/esm/constants/teacher/index.js.map +0 -1
  236. package/dist/esm/cookie/index.d.ts +0 -4
  237. package/dist/esm/cookie/index.js +0 -39
  238. package/dist/esm/cookie/index.js.map +0 -1
  239. package/dist/esm/country-code/index.d.ts +0 -8
  240. package/dist/esm/country-code/index.js +0 -19
  241. package/dist/esm/country-code/index.js.map +0 -1
  242. package/dist/esm/data/utm-source.json +0 -54
  243. package/dist/esm/date-time-helper/index.d.ts +0 -30
  244. package/dist/esm/date-time-helper/index.js +0 -87
  245. package/dist/esm/date-time-helper/index.js.map +0 -1
  246. package/dist/esm/e-cna/index.d.ts +0 -4
  247. package/dist/esm/e-cna/index.js +0 -18
  248. package/dist/esm/e-cna/index.js.map +0 -1
  249. package/dist/esm/growth-source/index.d.ts +0 -21
  250. package/dist/esm/growth-source/index.js +0 -194
  251. package/dist/esm/growth-source/index.js.map +0 -1
  252. package/dist/esm/growth-source/scripts/source-channel.d.ts +0 -1
  253. package/dist/esm/growth-source/scripts/source-channel.js +0 -44
  254. package/dist/esm/growth-source/scripts/source-channel.js.map +0 -1
  255. package/dist/esm/growth-source/types.d.ts +0 -75
  256. package/dist/esm/growth-source/types.js +0 -2
  257. package/dist/esm/growth-source/types.js.map +0 -1
  258. package/dist/esm/index.d.ts +0 -17
  259. package/dist/esm/index.js +0 -19
  260. package/dist/esm/index.js.map +0 -1
  261. package/dist/esm/last-landing-page/index.d.ts +0 -5
  262. package/dist/esm/last-landing-page/index.js +0 -31
  263. package/dist/esm/last-landing-page/index.js.map +0 -1
  264. package/dist/esm/local-storage/index.d.ts +0 -13
  265. package/dist/esm/local-storage/index.js +0 -162
  266. package/dist/esm/local-storage/index.js.map +0 -1
  267. package/dist/esm/object/index.d.ts +0 -2
  268. package/dist/esm/object/index.js +0 -19
  269. package/dist/esm/object/index.js.map +0 -1
  270. package/dist/esm/script/index.d.ts +0 -1
  271. package/dist/esm/script/index.js +0 -10
  272. package/dist/esm/script/index.js.map +0 -1
  273. package/dist/esm/url/index.d.ts +0 -3
  274. package/dist/esm/url/index.js +0 -6
  275. package/dist/esm/url/index.js.map +0 -1
  276. package/dist/esm/url-parser/index.d.ts +0 -3
  277. package/dist/esm/url-parser/index.js +0 -7
  278. package/dist/esm/url-parser/index.js.map +0 -1
  279. package/dist/esm/utils/env-mode.d.ts +0 -5
  280. package/dist/esm/utils/env-mode.js +0 -6
  281. package/dist/esm/utils/env-mode.js.map +0 -1
  282. package/dist/esm/utils/index.d.ts +0 -2
  283. package/dist/esm/utils/index.js +0 -3
  284. package/dist/esm/utils/index.js.map +0 -1
  285. package/dist/esm/utils/server.d.ts +0 -1
  286. package/dist/esm/utils/server.js +0 -2
  287. package/dist/esm/utils/server.js.map +0 -1
  288. package/dist/esm/validations/form-validations.d.ts +0 -12
  289. package/dist/esm/validations/form-validations.js +0 -43
  290. package/dist/esm/validations/form-validations.js.map +0 -1
  291. package/dist/esm/validations/index.d.ts +0 -1
  292. package/dist/esm/validations/index.js +0 -2
  293. package/dist/esm/validations/index.js.map +0 -1
  294. package/dist/esm/website-category/constants/index.d.ts +0 -116
  295. package/dist/esm/website-category/constants/index.js +0 -227
  296. package/dist/esm/website-category/constants/index.js.map +0 -1
  297. package/dist/esm/website-category/constants/instrumentation.d.ts +0 -178
  298. package/dist/esm/website-category/constants/instrumentation.js +0 -179
  299. package/dist/esm/website-category/constants/instrumentation.js.map +0 -1
  300. package/dist/esm/website-category/index.d.ts +0 -3
  301. package/dist/esm/website-category/index.js +0 -4
  302. package/dist/esm/website-category/index.js.map +0 -1
  303. package/dist/esm/website-category/utils/index.d.ts +0 -1
  304. package/dist/esm/website-category/utils/index.js +0 -6
  305. package/dist/esm/website-category/utils/index.js.map +0 -1
  306. package/dist/esm/website-category/utils/instrumentation.d.ts +0 -8
  307. package/dist/esm/website-category/utils/instrumentation.js +0 -63
  308. package/dist/esm/website-category/utils/instrumentation.js.map +0 -1
@@ -1,125 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getABExperimentCacheKey = exports.resetAllABExperiments = exports.resetABExperiment = exports.setABExperiment = exports.getABVariant = void 0;
4
- const cookie_1 = require("../../cookie");
5
- const url_parser_1 = require("../../url-parser");
6
- const constants_1 = require("../constants");
7
- const experiments_1 = require("./experiments");
8
- const EXPERIMENT_VERSION = '2.0.1';
9
- const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies, debugABCookieName, sourceCookies) => {
10
- const path = (0, url_parser_1.removeHrefLangFromPath)((0, url_parser_1.removeQueryStringFromPath)(url));
11
- const newAbVariants = {
12
- version: EXPERIMENT_VERSION,
13
- };
14
- let isExpModified = false;
15
- // remove experiments which are in REMOVED_EXPERIMENTS list
16
- Object.entries(currentABVariant).forEach(([key]) => {
17
- if (constants_1.REMOVED_EXPERIMENTS.includes(key)) {
18
- delete currentABVariant[key];
19
- isExpModified = true;
20
- }
21
- });
22
- const enabledABCookies = debugABCookieName
23
- ? (0, cookie_1.getCookie)(debugABCookieName, sourceCookies)
24
- : '';
25
- const enabledABKeys = enabledABCookies
26
- ? JSON.parse(decodeURIComponent(enabledABCookies))
27
- : {};
28
- experiments_1.EXPERIMENTS.forEach((experiment) => {
29
- // eslint-disable-next-line prefer-const
30
- let { name: experimentName, variants: getVariants, forceUpdate } = experiment;
31
- const variants = getVariants(path, countryCode, lastLandingPageCookies);
32
- const variantIDs = variants.map((element) => element.id);
33
- // Check and use if an AB experiment is manually enabled
34
- if (enabledABKeys[experimentName]) {
35
- newAbVariants[experimentName] = enabledABKeys[experimentName];
36
- isExpModified = true;
37
- return;
38
- }
39
- const isVariantPresent = variantIDs.includes(currentABVariant[experimentName]);
40
- // remove experimentName from currentABVariant if it is not present in variants.id
41
- if (!isVariantPresent) {
42
- delete currentABVariant[experimentName];
43
- isExpModified = true;
44
- }
45
- if (!currentABVariant[experimentName]) {
46
- let n = Math.random() * 100;
47
- let variant = variants[0];
48
- if (variants &&
49
- variants.length > 1 &&
50
- (typeof experiment.customFilter === 'undefined' ||
51
- experiment.customFilter(path, countryCode))) {
52
- variant =
53
- variants.find(v => {
54
- if (v.weight >= n)
55
- return true;
56
- n -= v.weight;
57
- return false;
58
- }) || variants[0];
59
- }
60
- newAbVariants[experimentName] = variant.id;
61
- isExpModified = true;
62
- }
63
- else {
64
- newAbVariants[experimentName] = currentABVariant[experimentName];
65
- }
66
- if (typeof forceUpdate === 'function') {
67
- const experimentToBeModified = forceUpdate(path);
68
- if (experimentToBeModified) {
69
- newAbVariants[experimentName] = experimentToBeModified;
70
- isExpModified = true;
71
- }
72
- }
73
- });
74
- return { isABExperimentsUpdated: isExpModified, abExperiment: newAbVariants };
75
- };
76
- exports.getABVariant = getABVariant;
77
- const setABExperiment = (debugABCookieName, experimentName, variant, timeInDays) => {
78
- if (!debugABCookieName || !experimentName || !variant) {
79
- return;
80
- }
81
- let results = {};
82
- const enabledABCookie = (0, cookie_1.getCookie)(debugABCookieName);
83
- if (enabledABCookie) {
84
- const enabledABKeys = JSON.parse(decodeURIComponent(enabledABCookie)) || {};
85
- results = { ...enabledABKeys };
86
- }
87
- results[experimentName] = variant;
88
- (0, cookie_1.createCookie)(debugABCookieName, JSON.stringify(results), timeInDays || 1);
89
- };
90
- exports.setABExperiment = setABExperiment;
91
- const resetABExperiment = (debugABCookieName, experimentName) => {
92
- if (!debugABCookieName || !experimentName) {
93
- return;
94
- }
95
- let results = {};
96
- const enabledABCookie = (0, cookie_1.getCookie)(debugABCookieName);
97
- if (enabledABCookie) {
98
- const enabledABKeys = JSON.parse(decodeURIComponent(enabledABCookie)) || {};
99
- results = { ...enabledABKeys };
100
- delete results[experimentName];
101
- }
102
- (0, cookie_1.createCookie)(debugABCookieName, JSON.stringify(results), 1);
103
- };
104
- exports.resetABExperiment = resetABExperiment;
105
- const resetAllABExperiments = (debugABCookieName) => {
106
- if (!debugABCookieName) {
107
- return;
108
- }
109
- (0, cookie_1.removeCookie)(debugABCookieName);
110
- };
111
- exports.resetAllABExperiments = resetAllABExperiments;
112
- const getABExperimentCacheKey = (abExperimentObj) => {
113
- // return key=value&key=value sorted by key
114
- const keys = Object.keys(abExperimentObj).sort();
115
- if (keys.length === 0)
116
- return '';
117
- const cacheKey = keys
118
- .map(key => {
119
- return `${key}=${abExperimentObj[key]}`;
120
- })
121
- .join('&');
122
- return cacheKey;
123
- };
124
- exports.getABExperimentCacheKey = getABExperimentCacheKey;
125
- //# sourceMappingURL=ab-variant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ab-variant.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/ab-variant.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- type NonEmptyArray<T> = [T, ...T[]];
2
- type LastLandingPageProps = {
3
- value: string;
4
- createdAt: string;
5
- };
6
- export declare const EXPERIMENTS: ({
7
- name: string;
8
- variants(path: string, countryCode: string, lastLandingPageCookies: LastLandingPageProps): NonEmptyArray<{
9
- id: string;
10
- weight: number;
11
- }>;
12
- forceUpdate: (path: string) => string | null;
13
- } | {
14
- name: string;
15
- variants(path: string, countryCode: string): {
16
- id: string;
17
- weight: number;
18
- }[];
19
- forceUpdate?: undefined;
20
- })[];
21
- export {};
@@ -1,95 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EXPERIMENTS = void 0;
4
- const country_1 = require("../../constants/country");
5
- const website_category_1 = require("../../website-category");
6
- const instrumentation_1 = require("../../website-category/utils/instrumentation");
7
- const index_1 = require("../constants/index");
8
- exports.EXPERIMENTS = [
9
- {
10
- name: index_1.EXPERIMENT_KEYS.ECNA_EXPERIMENTS_WITH_NO_INTRO,
11
- variants(path, countryCode, lastLandingPageCookies) {
12
- const { value: lastLandingPagePath = '' } = lastLandingPageCookies || {};
13
- const revenueChannel = (0, website_category_1.getSubRevenueChannel)(lastLandingPagePath || path);
14
- if ([country_1.ISO_COUNTRY_CODE.INDIA].includes(countryCode)) {
15
- switch (revenueChannel) {
16
- case 'Content':
17
- return [{ id: index_1.VARIANTS.VARIANT_AD, weight: 100 }];
18
- default:
19
- return [{ id: index_1.VARIANTS.VARIANT_AO, weight: 100 }];
20
- }
21
- }
22
- if ([country_1.ISO_COUNTRY_CODE['UNITED STATES'], country_1.ISO_COUNTRY_CODE.CANADA].includes(countryCode)) {
23
- switch (revenueChannel) {
24
- default:
25
- return [{ id: index_1.VARIANTS.VARIANT_AM, weight: 100 }];
26
- }
27
- }
28
- if (country_1.MIDDLE_EAST_COUNTRIES.includes(countryCode)) {
29
- return [{ id: index_1.VARIANTS.VARIANT_AR, weight: 100 }];
30
- }
31
- switch (revenueChannel) {
32
- default:
33
- return [{ id: index_1.VARIANTS.VARIANT_AM, weight: 100 }];
34
- }
35
- },
36
- forceUpdate: (path) => {
37
- const isTeacherProfilePage = (0, instrumentation_1.getIsTutorProfilePage)(path);
38
- if (isTeacherProfilePage) {
39
- return index_1.VARIANTS.VARIANT_AL;
40
- }
41
- return null;
42
- },
43
- },
44
- {
45
- name: index_1.EXPERIMENT_KEYS.SIGNUP_FLOW_EXPERIMENT,
46
- variants(path, countryCode) {
47
- const revenueChannel = (0, website_category_1.getSubRevenueChannel)(path);
48
- if (['Brand', 'Intent'].includes(revenueChannel) &&
49
- [country_1.ISO_COUNTRY_CODE['UNITED STATES'], country_1.ISO_COUNTRY_CODE.CANADA].includes(countryCode)) {
50
- return [{ id: index_1.VARIANTS.VARIANT_B, weight: 100 }];
51
- }
52
- return [{ id: index_1.VARIANTS.CONTROL_VARIANT, weight: 100 }];
53
- },
54
- },
55
- {
56
- name: index_1.EXPERIMENT_KEYS.OUR_REVIEWS_PAGE,
57
- variants(_path, countryCode) {
58
- if ([country_1.ISO_COUNTRY_CODE['UNITED STATES'], country_1.ISO_COUNTRY_CODE.CANADA].includes(countryCode)) {
59
- return [
60
- {
61
- id: index_1.VARIANTS.CONTROL_VARIANT,
62
- weight: 50,
63
- },
64
- { id: index_1.VARIANTS.VARIANT_B, weight: 50 },
65
- ];
66
- }
67
- return [{ id: index_1.VARIANTS.CONTROL_VARIANT, weight: 100 }];
68
- },
69
- },
70
- {
71
- name: index_1.EXPERIMENT_KEYS.MATH_TUITION_INDIA_REVAMP,
72
- variants(_path, countryCode) {
73
- if ([country_1.ISO_COUNTRY_CODE['UNITED STATES'], country_1.ISO_COUNTRY_CODE.CANADA].includes(countryCode)) {
74
- return [
75
- {
76
- id: index_1.VARIANTS.CONTROL_VARIANT,
77
- weight: 50,
78
- },
79
- { id: index_1.VARIANTS.VARIANT_B, weight: 50 },
80
- ];
81
- }
82
- return [{ id: index_1.VARIANTS.CONTROL_VARIANT, weight: 100 }];
83
- },
84
- },
85
- {
86
- name: index_1.EXPERIMENT_KEYS.TUTOR_HIRING_EXPERIMENT,
87
- variants() {
88
- return [
89
- { id: index_1.VARIANTS.CONTROL_VARIANT, weight: 80 },
90
- { id: index_1.VARIANTS.VARIANT_B, weight: 20 }, // Tutor Hiring Tool
91
- ];
92
- },
93
- },
94
- ];
95
- //# sourceMappingURL=experiments.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"experiments.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/experiments.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- export declare const getAttributes: (target: HTMLElement) => {
2
- CTA: string;
3
- parentScreen: string | null | undefined;
4
- entrySection: string | null | undefined;
5
- entryPoint: string | null | undefined;
6
- parentDomId: string | null | undefined;
7
- ctaType: string | null;
8
- formId: string | null | undefined;
9
- customTracking: string | null | undefined;
10
- };
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAttributes = void 0;
4
- const analytics_1 = require("../constants/analytics");
5
- const getClosestDataAttributes = (ele, attr) => ele.closest(`[${attr}]`)?.getAttribute(attr);
6
- const getClosestFormId = (ele) => ele.closest('form')?.getAttribute(analytics_1.DATA_VARIABLES.PARENT_ID);
7
- const getCtaAsLowerCase = (ele) => {
8
- if (typeof ele === 'string')
9
- return ele.trim().toLowerCase();
10
- return ele;
11
- };
12
- const getAttributes = (target) => {
13
- const CTA = getCtaAsLowerCase(target.textContent);
14
- const parentScreen = getClosestDataAttributes(target, analytics_1.DATA_VARIABLES.PARENT_SCREEN);
15
- const entrySection = getClosestDataAttributes(target, analytics_1.DATA_VARIABLES.ENTRY_SECTION);
16
- const entryPoint = getClosestDataAttributes(target, analytics_1.DATA_VARIABLES.ENTRY_POINT);
17
- const parentDomId = getClosestDataAttributes(target, analytics_1.DATA_VARIABLES.PARENT_ID);
18
- const customTracking = getClosestDataAttributes(target, analytics_1.DATA_VARIABLES.CUSTOM_TRACKING);
19
- const ctaType = target.getAttribute('type');
20
- const formId = getClosestFormId(target);
21
- return {
22
- CTA,
23
- parentScreen,
24
- entrySection,
25
- entryPoint,
26
- parentDomId,
27
- ctaType,
28
- formId,
29
- customTracking,
30
- };
31
- };
32
- exports.getAttributes = getAttributes;
33
- //# sourceMappingURL=attributes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../../src/analytics/attributes.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AAExD,MAAM,wBAAwB,GAAG,CAAC,GAAY,EAAE,IAAY,EAAE,EAAE,CAC9D,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;AAE/C,MAAM,gBAAgB,GAAG,CAAC,GAAY,EAAE,EAAE,CACxC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,0BAAc,CAAC,SAAS,CAAC,CAAC;AAE9D,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE7D,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,CAAC,MAAmB,EAAE,EAAE;IACnD,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAqB,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,EAAE,0BAAc,CAAC,aAAa,CAAC,CAAC;IACpF,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,EAAE,0BAAc,CAAC,aAAa,CAAC,CAAC;IACpF,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,EAAE,0BAAc,CAAC,WAAW,CAAC,CAAC;IAChF,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,EAAE,0BAAc,CAAC,SAAS,CAAC,CAAC;IAC/E,MAAM,cAAc,GAAG,wBAAwB,CAAC,MAAM,EAAE,0BAAc,CAAC,eAAe,CAAC,CAAC;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAExC,OAAO;QACL,GAAG;QACH,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,WAAW;QACX,OAAO;QACP,MAAM;QACN,cAAc;KACf,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,aAAa,iBAoBxB"}
@@ -1,3 +0,0 @@
1
- export declare const getDataProps: (entryPoint: string | undefined, entrySection: string | undefined, topic: string | undefined, isCustomTracking: boolean) => {
2
- [key: string]: string | boolean;
3
- };
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDataProps = void 0;
4
- const analytics_1 = require("../constants/analytics");
5
- const getDataProps = (entryPoint = '', entrySection = '', topic = '', isCustomTracking) => {
6
- const dataProps = {
7
- [analytics_1.DATA_VARIABLES.ENTRY_POINT]: entryPoint,
8
- [analytics_1.DATA_VARIABLES.ENTRY_SECTION]: entrySection,
9
- [analytics_1.DATA_VARIABLES.TOPIC]: topic,
10
- [analytics_1.DATA_VARIABLES.CUSTOM_TRACKING]: isCustomTracking,
11
- };
12
- Object.keys(dataProps)?.forEach(key => {
13
- if (!dataProps[key]) {
14
- delete dataProps[key];
15
- }
16
- });
17
- return dataProps;
18
- };
19
- exports.getDataProps = getDataProps;
20
- //# sourceMappingURL=data-props.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-props.js","sourceRoot":"","sources":["../../../src/analytics/data-props.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AAEjD,MAAM,YAAY,GAAG,CAC1B,UAAU,GAAG,EAAE,EACf,YAAY,GAAG,EAAE,EACjB,KAAK,GAAG,EAAE,EACV,gBAAyB,EACY,EAAE;IACvC,MAAM,SAAS,GAAG;QAChB,CAAC,0BAAc,CAAC,WAAW,CAAC,EAAE,UAAU;QACxC,CAAC,0BAAc,CAAC,aAAa,CAAC,EAAE,YAAY;QAC5C,CAAC,0BAAc,CAAC,KAAK,CAAC,EAAE,KAAK;QAC7B,CAAC,0BAAc,CAAC,eAAe,CAAC,EAAE,gBAAgB;KACnD,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;QACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACnB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;SACvB;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AApBW,QAAA,YAAY,gBAoBvB"}
@@ -1,2 +0,0 @@
1
- export * from './attributes';
2
- export * from './data-props';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./attributes"), exports);
18
- __exportStar(require("./data-props"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+CAA6B"}
@@ -1,8 +0,0 @@
1
- export declare const DATA_VARIABLES: {
2
- PARENT_SCREEN: string;
3
- ENTRY_POINT: string;
4
- ENTRY_SECTION: string;
5
- CUSTOM_TRACKING: string;
6
- TOPIC: string;
7
- PARENT_ID: string;
8
- };
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DATA_VARIABLES = void 0;
4
- exports.DATA_VARIABLES = {
5
- PARENT_SCREEN: 'data-parent-screen',
6
- ENTRY_POINT: 'data-entry-point',
7
- ENTRY_SECTION: 'data-entry-section',
8
- CUSTOM_TRACKING: 'data-custom-tracking',
9
- TOPIC: 'data-topic',
10
- PARENT_ID: 'id',
11
- };
12
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/constants/analytics/index.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG;IAC5B,aAAa,EAAE,oBAAoB;IACnC,WAAW,EAAE,kBAAkB;IAC/B,aAAa,EAAE,oBAAoB;IACnC,eAAe,EAAE,sBAAsB;IACvC,KAAK,EAAE,YAAY;IACnB,SAAS,EAAE,IAAI;CAChB,CAAC"}
@@ -1,9 +0,0 @@
1
- export declare const COUNTRY_CODE_MAP: {
2
- id: string;
3
- value: string;
4
- label: string;
5
- countryName: string;
6
- icon: string;
7
- url: string;
8
- geoIPCountryCode: string;
9
- }[];