@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
package/README.md CHANGED
@@ -1 +1,334 @@
1
- ### Shared UI utils package
1
+ # @cuemath/web-utils v2.0.0
2
+
3
+ Shared web utilities package optimized for Lambda@Edge, CloudFront, and browser environments.
4
+
5
+ ## Features
6
+
7
+ - 🚀 **Lambda@Edge Ready** - Optimized bundles for AWS CloudFront edge computing
8
+ - 📦 **Tree-Shakeable** - Import only what you need with ESM
9
+ - ⚡ **Tiny Bundles** - CloudFront entry: 18KB gzipped (800KB limit)
10
+ - 🔧 **Dual Formats** - ESM (primary) + CJS (legacy) support
11
+ - 🎯 **TypeScript** - Full type definitions included
12
+ - 🌐 **Universal** - Works in Node.js, browsers, and edge runtimes
13
+
14
+ ## Installation
15
+
16
+ ```bash
17
+ yarn add @cuemath/web-utils
18
+ # or
19
+ npm install @cuemath/web-utils
20
+ ```
21
+
22
+ ## Entry Points
23
+
24
+ ### Main Entry (Universal)
25
+ ```typescript
26
+ import { formatDateTime, getCurrentTimestamp } from '@cuemath/web-utils';
27
+ ```
28
+
29
+ ### CloudFront/Lambda@Edge (Server-Optimized)
30
+ ```typescript
31
+ import {
32
+ parseCloudFrontCookies,
33
+ getABVariantFromCookies,
34
+ getABExperimentCacheKey
35
+ } from '@cuemath/web-utils/cloudfront';
36
+ ```
37
+
38
+ ### Browser (DOM APIs)
39
+ ```typescript
40
+ import {
41
+ getABVariant,
42
+ localStorageSet,
43
+ getAttributes
44
+ } from '@cuemath/web-utils/browser';
45
+ ```
46
+
47
+ ### Timezone Functions (Optional)
48
+ ```typescript
49
+ import {
50
+ dateByTimezone,
51
+ getTimezone
52
+ } from '@cuemath/web-utils/date-time-helper/timezone';
53
+ ```
54
+
55
+ ## CloudFront Lambda@Edge Usage
56
+
57
+ ### Origin Request Handler Example
58
+
59
+ ```typescript
60
+ import {
61
+ parseCloudFrontCookies,
62
+ getABVariantFromCookies,
63
+ getABExperimentCacheKey,
64
+ ISO_COUNTRY_CODE,
65
+ EXPERIMENT_KEYS,
66
+ VARIANTS,
67
+ AB_IDENTIFIER_KEY
68
+ } from '@cuemath/web-utils/cloudfront';
69
+
70
+ export const handler = async (event) => {
71
+ const request = event.Records[0].cf.request;
72
+ const headers = request.headers;
73
+
74
+ // Parse CloudFront cookies (handles multiple Cookie headers)
75
+ const cookies = parseCloudFrontCookies(headers.cookie || []);
76
+
77
+ // Get country from CloudFront-Viewer-Country header
78
+ const country = headers['cloudfront-viewer-country']?.[0]?.value || 'US';
79
+
80
+ // Parse current A/B variants from cookie
81
+ const currentVariants = cookies[AB_IDENTIFIER_KEY]
82
+ ? JSON.parse(decodeURIComponent(cookies[AB_IDENTIFIER_KEY]))
83
+ : {};
84
+
85
+ // Parse last landing page cookie
86
+ const lastLandingPage = cookies['lastLandingPage']
87
+ ? JSON.parse(cookies['lastLandingPage'])
88
+ : { value: '', createdAt: '' };
89
+
90
+ // Get A/B variant assignments (Lambda@Edge optimized)
91
+ const { isABExperimentsUpdated, abExperiment } = getABVariantFromCookies(
92
+ request.uri,
93
+ country,
94
+ currentVariants,
95
+ lastLandingPage,
96
+ cookies, // Pre-parsed cookies
97
+ 'debug_ab' // Debug cookie name
98
+ );
99
+
100
+ // Generate cache key for CloudFront
101
+ const cacheKey = getABExperimentCacheKey(abExperiment);
102
+
103
+ // Add cache key to custom header for CloudFront caching
104
+ request.headers['x-ab-experiments'] = [{
105
+ key: 'X-AB-Experiments',
106
+ value: cacheKey
107
+ }];
108
+
109
+ // Set cookie if experiments were updated
110
+ if (isABExperimentsUpdated) {
111
+ const cookieValue = encodeURIComponent(JSON.stringify(abExperiment));
112
+ request.headers['cookie'] = request.headers['cookie'] || [];
113
+ request.headers['cookie'].push({
114
+ key: 'Cookie',
115
+ value: `${AB_IDENTIFIER_KEY}=${cookieValue}`
116
+ });
117
+ }
118
+
119
+ return request;
120
+ };
121
+ ```
122
+
123
+ ### Viewer Response Handler (Set Cookies)
124
+
125
+ ```typescript
126
+ export const handler = async (event) => {
127
+ const response = event.Records[0].cf.response;
128
+ const request = event.Records[0].cf.request;
129
+
130
+ // Get A/B experiments from request header
131
+ const abHeader = request.headers['x-ab-experiments']?.[0]?.value;
132
+
133
+ if (abHeader) {
134
+ // Set cookie with A/B variants
135
+ response.headers['set-cookie'] = [{
136
+ key: 'Set-Cookie',
137
+ value: `${AB_IDENTIFIER_KEY}=${abHeader}; Path=/; Max-Age=31536000; Secure; SameSite=Lax`
138
+ }];
139
+ }
140
+
141
+ return response;
142
+ };
143
+ ```
144
+
145
+ ## Migration from Cloudflare Workers
146
+
147
+ ### Before (Cloudflare Workers)
148
+ ```typescript
149
+ import { getABVariant } from '@cuemath/web-utils';
150
+
151
+ const result = getABVariant(
152
+ request.url,
153
+ 'US',
154
+ currentVariants,
155
+ lastLanding,
156
+ 'debug_ab',
157
+ request.headers.get('Cookie') // String
158
+ );
159
+ ```
160
+
161
+ ### After (CloudFront Lambda@Edge)
162
+ ```typescript
163
+ import {
164
+ parseCloudFrontCookies,
165
+ getABVariantFromCookies
166
+ } from '@cuemath/web-utils/cloudfront';
167
+
168
+ // CloudFront provides cookies as header array
169
+ const cookies = parseCloudFrontCookies(
170
+ event.Records[0].cf.request.headers.cookie
171
+ );
172
+
173
+ const result = getABVariantFromCookies(
174
+ request.uri,
175
+ 'US',
176
+ currentVariants,
177
+ lastLanding,
178
+ cookies, // Object
179
+ 'debug_ab'
180
+ );
181
+ ```
182
+
183
+ **Key Differences:**
184
+ 1. CloudFront cookies are header arrays, not strings
185
+ 2. Use `parseCloudFrontCookies()` to convert to object
186
+ 3. Use `getABVariantFromCookies()` instead of `getABVariant()`
187
+ 4. CloudFront request URI instead of full URL
188
+ 5. Country from `cloudfront-viewer-country` header
189
+
190
+ ## Bundle Sizes
191
+
192
+ | Entry Point | Gzipped | Uncompressed | Lambda@Edge Limit |
193
+ |-------------|---------|--------------|-------------------|
194
+ | CloudFront | 18 KB | ~60 KB | 1 MB (1.8% used) |
195
+ | Browser | 22 KB | ~90 KB | N/A |
196
+ | Main | 24 KB | ~95 KB | N/A |
197
+ | Timezone | 4 KB | ~12 KB | N/A |
198
+
199
+ All entry points are **well within Lambda@Edge limits** for origin-request handlers!
200
+
201
+ ## Breaking Changes (v2.0.0)
202
+
203
+ ### 1. Node.js 18+ Required
204
+ ```json
205
+ {
206
+ "engines": {
207
+ "node": ">=18.0.0"
208
+ }
209
+ }
210
+ ```
211
+
212
+ ### 2. Timezone Functions Separated
213
+ ```typescript
214
+ // ❌ Old (v1.x)
215
+ import { dateByTimezone } from '@cuemath/web-utils';
216
+
217
+ // ✅ New (v2.x)
218
+ import { dateByTimezone } from '@cuemath/web-utils/date-time-helper/timezone';
219
+ ```
220
+
221
+ ### 3. New CloudFront Entry Point
222
+ ```typescript
223
+ // ✅ New in v2.0
224
+ import { parseCloudFrontCookies, getABVariantFromCookies } from '@cuemath/web-utils/cloudfront';
225
+ ```
226
+
227
+ ### 4. Export Paths Changed
228
+ ```typescript
229
+ // ❌ Old (v1.x)
230
+ import utils from '@cuemath/web-utils';
231
+
232
+ // ✅ New (v2.x) - Named imports only
233
+ import { formatDateTime } from '@cuemath/web-utils';
234
+ ```
235
+
236
+ ## API Reference
237
+
238
+ ### Cookie Utilities
239
+
240
+ #### `parseCookieString(cookieString: string): Record<string, string>`
241
+ Parse a cookie string into key-value object. Works with Cloudflare Workers and browser `document.cookie`.
242
+
243
+ #### `parseCloudFrontCookies(headers: Array<{key: string, value: string}>): Record<string, string>`
244
+ Parse CloudFront cookie headers (handles multiple Cookie headers). **First occurrence takes priority.**
245
+
246
+ #### `getCookie(name: string, cookie?: string): string`
247
+ Get a specific cookie value. Works in both browser and server contexts.
248
+
249
+ ### A/B Testing
250
+
251
+ #### `getABVariantFromCookies(...): { isABExperimentsUpdated: boolean, abExperiment: Record<string, string> }`
252
+ Lambda@Edge optimized A/B variant assignment. Accepts pre-parsed cookies.
253
+
254
+ **Parameters:**
255
+ - `url: string` - Request URL/path
256
+ - `countryCode: string` - ISO country code
257
+ - `currentABVariant: Record<string, string>` - Current assignments
258
+ - `lastLandingPageCookies: { value: string, createdAt: string }` - Landing page data
259
+ - `parsedCookies: Record<string, string>` - Pre-parsed cookie object
260
+ - `debugABCookieName: string` - Debug cookie name
261
+
262
+ #### `getABExperimentCacheKey(experiments: Record<string, string>): string`
263
+ Generate CloudFront cache key from A/B experiments. Returns sorted `key=value&key=value` string.
264
+
265
+ ### Date/Time Helpers (Core)
266
+
267
+ #### `formatDateTime(dateTime, format): string`
268
+ Format dates using dayjs format strings.
269
+
270
+ #### `getCurrentTimestamp(): number`
271
+ Get current Unix timestamp in seconds.
272
+
273
+ #### `convertTimeStampToSeconds(timestamp): number`
274
+ Normalize millisecond timestamps to seconds.
275
+
276
+ ### Date/Time Helpers (Timezone - Optional)
277
+
278
+ #### `dateByTimezone(timestamp, timezone, format): string`
279
+ Format timestamp with IANA timezone support.
280
+
281
+ #### `getTimezone(): string`
282
+ Get browser's IANA timezone identifier.
283
+
284
+ ## Performance Tips
285
+
286
+ ### 1. Import from Specific Entry Points
287
+ ```typescript
288
+ // ✅ Good - Only CloudFront bundle (18KB)
289
+ import { parseCloudFrontCookies } from '@cuemath/web-utils/cloudfront';
290
+
291
+ // ❌ Avoid - Pulls in entire package
292
+ import { parseCloudFrontCookies } from '@cuemath/web-utils';
293
+ ```
294
+
295
+ ### 2. Avoid Timezone Functions in Lambda@Edge
296
+ ```typescript
297
+ // ✅ Good - No timezone dependencies (saves ~7KB)
298
+ import { formatDateTime } from '@cuemath/web-utils/cloudfront';
299
+
300
+ // ❌ Avoid - Adds timezone data bundle
301
+ import { dateByTimezone } from '@cuemath/web-utils/date-time-helper/timezone';
302
+ ```
303
+
304
+ ### 3. Use Tree-Shaking
305
+ ```typescript
306
+ // ✅ Good - Only imports what you use
307
+ import { ISO_COUNTRY_CODE } from '@cuemath/web-utils/cloudfront';
308
+
309
+ // ❌ Avoid - Imports everything
310
+ import * as utils from '@cuemath/web-utils';
311
+ ```
312
+
313
+ ## Development
314
+
315
+ ```bash
316
+ # Install dependencies
317
+ yarn install
318
+
319
+ # Build all entry points
320
+ yarn build
321
+
322
+ # Watch mode
323
+ yarn build:watch
324
+
325
+ # Check bundle sizes
326
+ yarn size
327
+
328
+ # Analyze bundles
329
+ yarn build:analyze
330
+ ```
331
+
332
+ ## License
333
+
334
+ ISC
@@ -0,0 +1,15 @@
1
+ export { A as AB_IDENTIFIER_KEY, B as BRAND_PAGES, o as CURRENCY_SYMBOL_MAP, D as DateSlots, E as EXPERIMENT_KEYS, I as INTENT_PAGES, C as ISO_COUNTRY_CODE, R as REFERRAL_PAGES, n as REGION, S as SUPPLY_PAGES, V as VARIANTS, k as checkContentPage, J as checkValidation, H as convertSecondsToMiliseconds, w as convertTimeStampToSeconds, c as createCookie, a as createCookieWithMidnightExp, v as dateByTimestamp, t as formatDateTime, x as formatTimestamp, f as getABExperimentCacheKey, b as getABVariant, g as getCookie, u as getCurrentTimestamp, G as getDateAfterDays, F as getISOTimeString, q as getLastLandingPage, l as getSubRevenueChannel, z as getTimeDiff, K as isEmpty, m as isSEO, L as nestedMapsAreEqual, p as parseCookieString, r as removeCookie, h as removeHrefLangFromPath, i as removeQueryStringFromPath, j as removeTrailingSlashFromPath, d as resetABExperiment, e as resetAllABExperiments, s as setABExperiment, y as timeToX } from './cloudfront-DRTOCXPV.mjs';
2
+ export { I as APP_ENV, R as REFERRAL_PAGE_PATH, J as REVENUE_CHANNEL, e as checkLocalStorageSupport, p as clearSalesProcess, B as clearSignupForm, G as filterCountryCode, g as getAttributes, h as getDataProps, F as getDates, D as getSourceChannel, i as initSourceDetails, H as isServer, k as isSourcePresent, f as loadScript, a as localStorageGet, b as localStorageGetAll, c as localStorageRemove, d as localStorageRemoveAll, l as localStorageSet, E as parseURLParams, j as readSourceCookie, r as removeExpiredKeysOnMount, q as setFirstPage, m as setFlow, s as setFlowEntryPoint, v as setLandingPage, x as setLastLandingPage, t as setPlatformChannel, C as setProduct, y as setReferrer, n as setRevenueChannel, o as setSalesProcess, A as setSignupForm, w as setSignupPage, z as setSourceChannel, u as updateGuestId } from './data-props-RvZdA60G.mjs';
3
+ export { convertedTimezone, dateByTimezone, dateTimeByTimezone, getCurrentDatebyTimezone, getTimezone } from './date-time-helper/timezone.mjs';
4
+ import 'dayjs';
5
+
6
+ declare const DATA_VARIABLES: {
7
+ PARENT_SCREEN: string;
8
+ ENTRY_POINT: string;
9
+ ENTRY_SECTION: string;
10
+ CUSTOM_TRACKING: string;
11
+ TOPIC: string;
12
+ PARENT_ID: string;
13
+ };
14
+
15
+ export { DATA_VARIABLES };
@@ -0,0 +1,15 @@
1
+ export { A as AB_IDENTIFIER_KEY, B as BRAND_PAGES, o as CURRENCY_SYMBOL_MAP, D as DateSlots, E as EXPERIMENT_KEYS, I as INTENT_PAGES, C as ISO_COUNTRY_CODE, R as REFERRAL_PAGES, n as REGION, S as SUPPLY_PAGES, V as VARIANTS, k as checkContentPage, J as checkValidation, H as convertSecondsToMiliseconds, w as convertTimeStampToSeconds, c as createCookie, a as createCookieWithMidnightExp, v as dateByTimestamp, t as formatDateTime, x as formatTimestamp, f as getABExperimentCacheKey, b as getABVariant, g as getCookie, u as getCurrentTimestamp, G as getDateAfterDays, F as getISOTimeString, q as getLastLandingPage, l as getSubRevenueChannel, z as getTimeDiff, K as isEmpty, m as isSEO, L as nestedMapsAreEqual, p as parseCookieString, r as removeCookie, h as removeHrefLangFromPath, i as removeQueryStringFromPath, j as removeTrailingSlashFromPath, d as resetABExperiment, e as resetAllABExperiments, s as setABExperiment, y as timeToX } from './cloudfront-DRTOCXPV.js';
2
+ export { I as APP_ENV, R as REFERRAL_PAGE_PATH, J as REVENUE_CHANNEL, e as checkLocalStorageSupport, p as clearSalesProcess, B as clearSignupForm, G as filterCountryCode, g as getAttributes, h as getDataProps, F as getDates, D as getSourceChannel, i as initSourceDetails, H as isServer, k as isSourcePresent, f as loadScript, a as localStorageGet, b as localStorageGetAll, c as localStorageRemove, d as localStorageRemoveAll, l as localStorageSet, E as parseURLParams, j as readSourceCookie, r as removeExpiredKeysOnMount, q as setFirstPage, m as setFlow, s as setFlowEntryPoint, v as setLandingPage, x as setLastLandingPage, t as setPlatformChannel, C as setProduct, y as setReferrer, n as setRevenueChannel, o as setSalesProcess, A as setSignupForm, w as setSignupPage, z as setSourceChannel, u as updateGuestId } from './data-props-RvZdA60G.js';
3
+ export { convertedTimezone, dateByTimezone, dateTimeByTimezone, getCurrentDatebyTimezone, getTimezone } from './date-time-helper/timezone.js';
4
+ import 'dayjs';
5
+
6
+ declare const DATA_VARIABLES: {
7
+ PARENT_SCREEN: string;
8
+ ENTRY_POINT: string;
9
+ ENTRY_SECTION: string;
10
+ CUSTOM_TRACKING: string;
11
+ TOPIC: string;
12
+ PARENT_ID: string;
13
+ };
14
+
15
+ export { DATA_VARIABLES };
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkOBXSX4MO_js=require('./chunk-OBXSX4MO.js'),chunkSMWXEBQ2_js=require('./chunk-SMWXEBQ2.js'),chunk5X4UT2UI_js=require('./chunk-5X4UT2UI.js');Object.defineProperty(exports,"APP_ENV",{enumerable:true,get:function(){return chunkOBXSX4MO_js.s}});Object.defineProperty(exports,"DATA_VARIABLES",{enumerable:true,get:function(){return chunkOBXSX4MO_js.R}});Object.defineProperty(exports,"REFERRAL_PAGE_PATH",{enumerable:true,get:function(){return chunkOBXSX4MO_js.g}});Object.defineProperty(exports,"REVENUE_CHANNEL",{enumerable:true,get:function(){return chunkOBXSX4MO_js.h}});Object.defineProperty(exports,"checkLocalStorageSupport",{enumerable:true,get:function(){return chunkOBXSX4MO_js.j}});Object.defineProperty(exports,"clearSalesProcess",{enumerable:true,get:function(){return chunkOBXSX4MO_js.E}});Object.defineProperty(exports,"clearSignupForm",{enumerable:true,get:function(){return chunkOBXSX4MO_js.O}});Object.defineProperty(exports,"filterCountryCode",{enumerable:true,get:function(){return chunkOBXSX4MO_js.w}});Object.defineProperty(exports,"getAttributes",{enumerable:true,get:function(){return chunkOBXSX4MO_js.S}});Object.defineProperty(exports,"getDataProps",{enumerable:true,get:function(){return chunkOBXSX4MO_js.T}});Object.defineProperty(exports,"getDates",{enumerable:true,get:function(){return chunkOBXSX4MO_js.r}});Object.defineProperty(exports,"getSourceChannel",{enumerable:true,get:function(){return chunkOBXSX4MO_js.Q}});Object.defineProperty(exports,"initSourceDetails",{enumerable:true,get:function(){return chunkOBXSX4MO_js.z}});Object.defineProperty(exports,"isServer",{enumerable:true,get:function(){return chunkOBXSX4MO_js.t}});Object.defineProperty(exports,"isSourcePresent",{enumerable:true,get:function(){return chunkOBXSX4MO_js.y}});Object.defineProperty(exports,"loadScript",{enumerable:true,get:function(){return chunkOBXSX4MO_js.u}});Object.defineProperty(exports,"localStorageGet",{enumerable:true,get:function(){return chunkOBXSX4MO_js.m}});Object.defineProperty(exports,"localStorageGetAll",{enumerable:true,get:function(){return chunkOBXSX4MO_js.n}});Object.defineProperty(exports,"localStorageRemove",{enumerable:true,get:function(){return chunkOBXSX4MO_js.o}});Object.defineProperty(exports,"localStorageRemoveAll",{enumerable:true,get:function(){return chunkOBXSX4MO_js.p}});Object.defineProperty(exports,"localStorageSet",{enumerable:true,get:function(){return chunkOBXSX4MO_js.l}});Object.defineProperty(exports,"parseURLParams",{enumerable:true,get:function(){return chunkOBXSX4MO_js.v}});Object.defineProperty(exports,"readSourceCookie",{enumerable:true,get:function(){return chunkOBXSX4MO_js.x}});Object.defineProperty(exports,"removeExpiredKeysOnMount",{enumerable:true,get:function(){return chunkOBXSX4MO_js.q}});Object.defineProperty(exports,"setFirstPage",{enumerable:true,get:function(){return chunkOBXSX4MO_js.G}});Object.defineProperty(exports,"setFlow",{enumerable:true,get:function(){return chunkOBXSX4MO_js.B}});Object.defineProperty(exports,"setFlowEntryPoint",{enumerable:true,get:function(){return chunkOBXSX4MO_js.A}});Object.defineProperty(exports,"setLandingPage",{enumerable:true,get:function(){return chunkOBXSX4MO_js.I}});Object.defineProperty(exports,"setLastLandingPage",{enumerable:true,get:function(){return chunkOBXSX4MO_js.K}});Object.defineProperty(exports,"setPlatformChannel",{enumerable:true,get:function(){return chunkOBXSX4MO_js.H}});Object.defineProperty(exports,"setProduct",{enumerable:true,get:function(){return chunkOBXSX4MO_js.P}});Object.defineProperty(exports,"setReferrer",{enumerable:true,get:function(){return chunkOBXSX4MO_js.L}});Object.defineProperty(exports,"setRevenueChannel",{enumerable:true,get:function(){return chunkOBXSX4MO_js.C}});Object.defineProperty(exports,"setSalesProcess",{enumerable:true,get:function(){return chunkOBXSX4MO_js.D}});Object.defineProperty(exports,"setSignupForm",{enumerable:true,get:function(){return chunkOBXSX4MO_js.N}});Object.defineProperty(exports,"setSignupPage",{enumerable:true,get:function(){return chunkOBXSX4MO_js.J}});Object.defineProperty(exports,"setSourceChannel",{enumerable:true,get:function(){return chunkOBXSX4MO_js.M}});Object.defineProperty(exports,"updateGuestId",{enumerable:true,get:function(){return chunkOBXSX4MO_js.F}});Object.defineProperty(exports,"AB_IDENTIFIER_KEY",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.X}});Object.defineProperty(exports,"BRAND_PAGES",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.O}});Object.defineProperty(exports,"CURRENCY_SYMBOL_MAP",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.x}});Object.defineProperty(exports,"EXPERIMENT_KEYS",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.V}});Object.defineProperty(exports,"INTENT_PAGES",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.P}});Object.defineProperty(exports,"ISO_COUNTRY_CODE",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.g}});Object.defineProperty(exports,"REFERRAL_PAGES",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.R}});Object.defineProperty(exports,"REGION",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.t}});Object.defineProperty(exports,"SUPPLY_PAGES",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.Q}});Object.defineProperty(exports,"VARIANTS",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.W}});Object.defineProperty(exports,"checkContentPage",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.U}});Object.defineProperty(exports,"checkValidation",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.N}});Object.defineProperty(exports,"convertSecondsToMiliseconds",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.H}});Object.defineProperty(exports,"convertTimeStampToSeconds",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.B}});Object.defineProperty(exports,"createCookie",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.e}});Object.defineProperty(exports,"createCookieWithMidnightExp",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.f}});Object.defineProperty(exports,"dateByTimestamp",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.A}});Object.defineProperty(exports,"formatDateTime",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.y}});Object.defineProperty(exports,"formatTimestamp",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.C}});Object.defineProperty(exports,"getABExperimentCacheKey",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.ca}});Object.defineProperty(exports,"getABVariant",{enumerable:true,get:function(){return chunkSMWXEBQ2_js._}});Object.defineProperty(exports,"getCookie",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.c}});Object.defineProperty(exports,"getCurrentTimestamp",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.z}});Object.defineProperty(exports,"getDateAfterDays",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.G}});Object.defineProperty(exports,"getISOTimeString",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.F}});Object.defineProperty(exports,"getLastLandingPage",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.da}});Object.defineProperty(exports,"getSubRevenueChannel",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.T}});Object.defineProperty(exports,"getTimeDiff",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.E}});Object.defineProperty(exports,"isEmpty",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.I}});Object.defineProperty(exports,"isSEO",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.S}});Object.defineProperty(exports,"nestedMapsAreEqual",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.J}});Object.defineProperty(exports,"parseCookieString",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.a}});Object.defineProperty(exports,"removeCookie",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.d}});Object.defineProperty(exports,"removeHrefLangFromPath",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.L}});Object.defineProperty(exports,"removeQueryStringFromPath",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.K}});Object.defineProperty(exports,"removeTrailingSlashFromPath",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.M}});Object.defineProperty(exports,"resetABExperiment",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.aa}});Object.defineProperty(exports,"resetAllABExperiments",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.ba}});Object.defineProperty(exports,"setABExperiment",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.$}});Object.defineProperty(exports,"timeToX",{enumerable:true,get:function(){return chunkSMWXEBQ2_js.D}});Object.defineProperty(exports,"convertedTimezone",{enumerable:true,get:function(){return chunk5X4UT2UI_js.f}});Object.defineProperty(exports,"dateByTimezone",{enumerable:true,get:function(){return chunk5X4UT2UI_js.c}});Object.defineProperty(exports,"dateTimeByTimezone",{enumerable:true,get:function(){return chunk5X4UT2UI_js.b}});Object.defineProperty(exports,"getCurrentDatebyTimezone",{enumerable:true,get:function(){return chunk5X4UT2UI_js.e}});Object.defineProperty(exports,"getTimezone",{enumerable:true,get:function(){return chunk5X4UT2UI_js.d}});//# sourceMappingURL=browser.js.map
2
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"browser.js"}
@@ -0,0 +1,2 @@
1
+ export{s as APP_ENV,R as DATA_VARIABLES,g as REFERRAL_PAGE_PATH,h as REVENUE_CHANNEL,j as checkLocalStorageSupport,E as clearSalesProcess,O as clearSignupForm,w as filterCountryCode,S as getAttributes,T as getDataProps,r as getDates,Q as getSourceChannel,z as initSourceDetails,t as isServer,y as isSourcePresent,u as loadScript,m as localStorageGet,n as localStorageGetAll,o as localStorageRemove,p as localStorageRemoveAll,l as localStorageSet,v as parseURLParams,x as readSourceCookie,q as removeExpiredKeysOnMount,G as setFirstPage,B as setFlow,A as setFlowEntryPoint,I as setLandingPage,K as setLastLandingPage,H as setPlatformChannel,P as setProduct,L as setReferrer,C as setRevenueChannel,D as setSalesProcess,N as setSignupForm,J as setSignupPage,M as setSourceChannel,F as updateGuestId}from'./chunk-LUUB665J.mjs';export{X as AB_IDENTIFIER_KEY,O as BRAND_PAGES,x as CURRENCY_SYMBOL_MAP,V as EXPERIMENT_KEYS,P as INTENT_PAGES,g as ISO_COUNTRY_CODE,R as REFERRAL_PAGES,t as REGION,Q as SUPPLY_PAGES,W as VARIANTS,U as checkContentPage,N as checkValidation,H as convertSecondsToMiliseconds,B as convertTimeStampToSeconds,e as createCookie,f as createCookieWithMidnightExp,A as dateByTimestamp,y as formatDateTime,C as formatTimestamp,ca as getABExperimentCacheKey,_ as getABVariant,c as getCookie,z as getCurrentTimestamp,G as getDateAfterDays,F as getISOTimeString,da as getLastLandingPage,T as getSubRevenueChannel,E as getTimeDiff,I as isEmpty,S as isSEO,J as nestedMapsAreEqual,a as parseCookieString,d as removeCookie,L as removeHrefLangFromPath,K as removeQueryStringFromPath,M as removeTrailingSlashFromPath,aa as resetABExperiment,ba as resetAllABExperiments,$ as setABExperiment,D as timeToX}from'./chunk-CVZIO6BX.mjs';export{f as convertedTimezone,c as dateByTimezone,b as dateTimeByTimezone,e as getCurrentDatebyTimezone,d as getTimezone}from'./chunk-TG7DRTM7.mjs';//# sourceMappingURL=browser.mjs.map
2
+ //# sourceMappingURL=browser.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"browser.mjs"}
@@ -0,0 +1,3 @@
1
+ 'use strict';var G=require('dayjs');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var G__default=/*#__PURE__*/_interopDefault(G);/** @license MIT */
2
+ var t=[{id:"Pacific/Honolulu",value:"HST(GMT-10)",meta:"HST(GMT-10)"},{id:"America/Anchorage",value:"AST(GMT-9)",meta:"AST(GMT-9)"},{id:"America/Los_Angeles",value:"PST(GMT-8)",meta:"PST(GMT-8)"},{id:"America/Denver",value:"MST(GMT-7)",meta:"MST(GMT-7)"},{id:"America/Phoenix",value:"MST(GMT-7)",meta:"MST(GMT-7)"},{id:"America/Matamoros",value:"CST(GMT-6)",meta:"CST(GMT-6)"},{id:"America/New_York",value:"EST(GMT-5)",meta:"EST(GMT-5)"},{id:"America/Glace_Bay",value:"AST(GMT-4)",meta:"AST(GMT-4)"},{id:"America/St_Johns",value:"NST(GMT-3:30)",meta:"NST(GMT-3:30)"},{id:"America/Noronha",value:"FNT(GMT-2)",meta:"FNT(GMT-2)"},{id:"Asia/Calcutta",value:"IST(GMT+5:30)",meta:"IST(GMT+5:30)"},{id:"Asia/Kolkata",value:"IST(GMT+5:30)",meta:"IST(GMT+5:30)"},{id:"Asia/Dubai",value:"GST(GMT+4)",meta:"GST(GMT+4)"},{id:"Asia/Singapore",value:"SGT(GMT+8)",meta:"SGT(GMT+8)"},{id:"Pacific/Auckland",value:"NZST(GMT+12)",meta:"NZST(GMT+12)"},{id:"Pacific/Chatham",value:"CHAST(GMT+12:45)",meta:"CHAST(GMT+12:45)"},{id:"Australia/Adelaide",value:"ACST(GMT+9:30)",meta:"ACST(GMT+9:30)"},{id:"Australia/Perth",value:"AWST(GMT+8)",meta:"AWST(GMT+8)"},{id:"Australia/Sydney",value:"AEST(GMT+10)",meta:"AEST(GMT+10)"},{id:"Australia/Darwin",value:"ACST(GMT+9:30)",meta:"ACST(GMT+9:30)"},{id:"Australia/Broken_Hill",value:"ACST(GMT+9:30)",meta:"ACST(GMT+9:30)"},{id:"Australia/Melbourne",value:"AEST(GMT+10)",meta:"AEST(GMT+10)"},{id:"Australia/Brisbane",value:"AEST(GMT+10)",meta:"AEST(GMT+10)"},{id:"Australia/Hobart",value:"AEST(GMT+10)",meta:"AEST(GMT+10)"},{id:"Europe/London",value:"GMT(GMT+0)",meta:"GMT(GMT+0)"},{id:"Asia/Muscat",value:"GST(GMT+4)",meta:"GST(GMT+4)"},{id:"Asia/Kuwait",value:"AST(GMT+3)",meta:"AST(GMT+3)"},{id:"Asia/Bahrain",value:"AST(GMT+3)",meta:"AST(GMT+3)"},{id:"Asia/Qatar",value:"AST(GMT+3)",meta:"AST(GMT+3)"},{id:"Asia/Riyadh",value:"AST(GMT+3)",meta:"AST(GMT+3)"}].map(a=>({...a,key:a.id,label:a.meta}));function M(a,T){let e={};return T&&(e={timeZone:T}),new Date(a).toLocaleString("en-US",e)}function m(a,T,e){let i=M(a,T);return G__default.default(i).format(e||"mm/dd/yyyy")}function n(){return Intl==null?void 0:Intl.DateTimeFormat().resolvedOptions().timeZone}function u(a){let T={};return a&&(T={timeZone:a}),new Date().toLocaleString("en-US",T)}var l=a=>{var e;let T=(e=t)==null?void 0:e.find(i=>(i==null?void 0:i.id)===a);return (T==null?void 0:T.value)??(a==null?void 0:a.replace(/_/g," "))};exports.a=t;exports.b=M;exports.c=m;exports.d=n;exports.e=u;exports.f=l;//# sourceMappingURL=chunk-5X4UT2UI.js.map
3
+ //# sourceMappingURL=chunk-5X4UT2UI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/constants/date-time/international-timezones.ts","../src/date-time-helper/timezone.ts"],"names":["timezones","timezone","dateTimeByTimezone","timestamp","options","dateByTimezone","format","datetime","dayjs","getTimezone","getCurrentDatebyTimezone","convertedTimezone","selectedTimezone","_a","formattedTimezone","currentTimezone"],"mappings":";AAMO,IAAMA,EAAwB,CACnC,CACE,GAAI,kBAAA,CACJ,KAAA,CAAO,cACP,IAAA,CAAM,aACR,EACA,CACE,EAAA,CAAI,oBACJ,KAAA,CAAO,YAAA,CACP,KAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,sBACJ,KAAA,CAAO,YAAA,CACP,KAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,gBAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,GAAI,iBAAA,CACJ,KAAA,CAAO,aACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,GAAI,mBAAA,CACJ,KAAA,CAAO,aACP,IAAA,CAAM,YACR,EACA,CACE,EAAA,CAAI,mBACJ,KAAA,CAAO,YAAA,CACP,KAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,mBAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,kBAAA,CACJ,MAAO,eAAA,CACP,IAAA,CAAM,eACR,CAAA,CACA,CACE,GAAI,iBAAA,CACJ,KAAA,CAAO,aACP,IAAA,CAAM,YACR,EACA,CACE,EAAA,CAAI,gBACJ,KAAA,CAAO,eAAA,CACP,IAAA,CAAM,eACR,EACA,CACE,EAAA,CAAI,eACJ,KAAA,CAAO,eAAA,CACP,KAAM,eACR,CAAA,CACA,CACE,EAAA,CAAI,YAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,GAAI,gBAAA,CACJ,KAAA,CAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,GAAI,kBAAA,CACJ,KAAA,CAAO,eACP,IAAA,CAAM,cACR,EACA,CACE,EAAA,CAAI,kBACJ,KAAA,CAAO,kBAAA,CACP,KAAM,kBACR,CAAA,CACA,CACE,EAAA,CAAI,oBAAA,CACJ,KAAA,CAAO,gBAAA,CACP,KAAM,gBACR,CAAA,CACA,CACE,EAAA,CAAI,iBAAA,CACJ,MAAO,aAAA,CACP,IAAA,CAAM,aACR,CAAA,CACA,CACE,GAAI,kBAAA,CACJ,KAAA,CAAO,eACP,IAAA,CAAM,cACR,EACA,CACE,EAAA,CAAI,mBACJ,KAAA,CAAO,gBAAA,CACP,KAAM,gBACR,CAAA,CACA,CACE,EAAA,CAAI,uBAAA,CACJ,MAAO,gBAAA,CACP,IAAA,CAAM,gBACR,CAAA,CACA,CACE,GAAI,qBAAA,CACJ,KAAA,CAAO,eACP,IAAA,CAAM,cACR,EACA,CACE,EAAA,CAAI,oBAAA,CACJ,KAAA,CAAO,eACP,IAAA,CAAM,cACR,EACA,CACE,EAAA,CAAI,mBACJ,KAAA,CAAO,cAAA,CACP,KAAM,cACR,CAAA,CACA,CACE,EAAA,CAAI,eAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,aAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CAAA,CACA,CACE,GAAI,aAAA,CACJ,KAAA,CAAO,aACP,IAAA,CAAM,YACR,EACA,CACE,EAAA,CAAI,eACJ,KAAA,CAAO,YAAA,CACP,KAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,aACJ,KAAA,CAAO,YAAA,CACP,KAAM,YACR,CAAA,CACA,CACE,EAAA,CAAI,aAAA,CACJ,MAAO,YAAA,CACP,IAAA,CAAM,YACR,CACF,CAAA,CAAE,IAAIC,CAAAA,GAAa,CACjB,GAAGA,CAAAA,CACH,GAAA,CAAKA,CAAAA,CAAS,EAAA,CACd,MAAOA,CAAAA,CAAS,IAClB,EAAE,EChJK,SAASC,EAAmBC,CAAAA,CAAsBF,CAAAA,CAA2B,CAClF,IAAIG,CAAAA,CAAU,EAAC,CAEf,OAAIH,IACFG,CAAAA,CAAU,CACR,SAAUH,CACZ,CAAA,CAAA,CAGK,IAAI,IAAA,CAAKE,CAAS,CAAA,CAAE,cAAA,CAAe,QAASC,CAAO,CAC5D,CAcO,SAASC,CAAAA,CACdF,EACAF,CAAAA,CACAK,CAAAA,CACQ,CACR,IAAMC,CAAAA,CAAWL,EAAmBC,CAAAA,CAAWF,CAAQ,EAEvD,OAAOO,kBAAAA,CAAMD,CAAQ,CAAA,CAAE,OAAOD,CAAAA,EAAU,YAAY,CACtD,CAWO,SAASG,GAAsB,CACpC,OAAO,uBAAM,cAAA,EAAA,CAAiB,eAAA,EAAA,CAAkB,QAClD,CAYO,SAASC,EAAyBT,CAAAA,CAA0B,CACjE,IAAIG,CAAAA,CAAU,EAAC,CAEf,OAAIH,IACFG,CAAAA,CAAU,CACR,SAAUH,CACZ,CAAA,CAAA,CAGK,IAAI,IAAA,EAAK,CAAE,eAAe,OAAA,CAASG,CAAO,CACnD,CAaO,IAAMO,EAAqBC,CAAAA,EAAqC,CAjGvE,IAAAC,CAAAA,CAkGE,IAAMC,GAAoBD,CAAAA,CAAAb,CAAAA,GAAA,YAAAa,CAAAA,CAAW,IAAA,CACnCE,IAAmBA,CAAAA,EAAA,IAAA,CAAA,MAAA,CAAAA,EAAiB,EAAA,IAAOH,CAAAA,CAAAA,CAG7C,QAAOE,CAAAA,EAAA,IAAA,CAAA,MAAA,CAAAA,EAAmB,KAAA,IAASF,CAAAA,EAAA,YAAAA,CAAAA,CAAkB,OAAA,CAAQ,KAAM,GAAA,CAAA,CACrE","file":"chunk-5X4UT2UI.js","sourcesContent":["interface Timezone {\n id: string;\n value: string;\n meta: string;\n}\n\nexport const timezones: Timezone[] = [\n {\n id: 'Pacific/Honolulu',\n value: 'HST(GMT-10)',\n meta: 'HST(GMT-10)',\n },\n {\n id: 'America/Anchorage',\n value: 'AST(GMT-9)',\n meta: 'AST(GMT-9)',\n },\n {\n id: 'America/Los_Angeles',\n value: 'PST(GMT-8)',\n meta: 'PST(GMT-8)',\n },\n {\n id: 'America/Denver',\n value: 'MST(GMT-7)',\n meta: 'MST(GMT-7)',\n },\n {\n id: 'America/Phoenix',\n value: 'MST(GMT-7)',\n meta: 'MST(GMT-7)',\n },\n {\n id: 'America/Matamoros',\n value: 'CST(GMT-6)',\n meta: 'CST(GMT-6)',\n },\n {\n id: 'America/New_York',\n value: 'EST(GMT-5)',\n meta: 'EST(GMT-5)',\n },\n {\n id: 'America/Glace_Bay',\n value: 'AST(GMT-4)',\n meta: 'AST(GMT-4)',\n },\n {\n id: 'America/St_Johns',\n value: 'NST(GMT-3:30)',\n meta: 'NST(GMT-3:30)',\n },\n {\n id: 'America/Noronha',\n value: 'FNT(GMT-2)',\n meta: 'FNT(GMT-2)',\n },\n {\n id: 'Asia/Calcutta',\n value: 'IST(GMT+5:30)',\n meta: 'IST(GMT+5:30)',\n },\n {\n id: 'Asia/Kolkata',\n value: 'IST(GMT+5:30)',\n meta: 'IST(GMT+5:30)',\n },\n {\n id: 'Asia/Dubai',\n value: 'GST(GMT+4)',\n meta: 'GST(GMT+4)',\n },\n {\n id: 'Asia/Singapore',\n value: 'SGT(GMT+8)',\n meta: 'SGT(GMT+8)',\n },\n {\n id: 'Pacific/Auckland',\n value: 'NZST(GMT+12)',\n meta: 'NZST(GMT+12)',\n },\n {\n id: 'Pacific/Chatham',\n value: 'CHAST(GMT+12:45)',\n meta: 'CHAST(GMT+12:45)',\n },\n {\n id: 'Australia/Adelaide',\n value: 'ACST(GMT+9:30)',\n meta: 'ACST(GMT+9:30)',\n },\n {\n id: 'Australia/Perth',\n value: 'AWST(GMT+8)',\n meta: 'AWST(GMT+8)',\n },\n {\n id: 'Australia/Sydney',\n value: 'AEST(GMT+10)',\n meta: 'AEST(GMT+10)',\n },\n {\n id: 'Australia/Darwin',\n value: 'ACST(GMT+9:30)',\n meta: 'ACST(GMT+9:30)',\n },\n {\n id: 'Australia/Broken_Hill',\n value: 'ACST(GMT+9:30)',\n meta: 'ACST(GMT+9:30)',\n },\n {\n id: 'Australia/Melbourne',\n value: 'AEST(GMT+10)',\n meta: 'AEST(GMT+10)',\n },\n {\n id: 'Australia/Brisbane',\n value: 'AEST(GMT+10)',\n meta: 'AEST(GMT+10)',\n },\n {\n id: 'Australia/Hobart',\n value: 'AEST(GMT+10)',\n meta: 'AEST(GMT+10)',\n },\n {\n id: 'Europe/London',\n value: 'GMT(GMT+0)',\n meta: 'GMT(GMT+0)',\n },\n {\n id: 'Asia/Muscat',\n value: 'GST(GMT+4)',\n meta: 'GST(GMT+4)',\n },\n {\n id: 'Asia/Kuwait',\n value: 'AST(GMT+3)',\n meta: 'AST(GMT+3)',\n },\n {\n id: 'Asia/Bahrain',\n value: 'AST(GMT+3)',\n meta: 'AST(GMT+3)',\n },\n {\n id: 'Asia/Qatar',\n value: 'AST(GMT+3)',\n meta: 'AST(GMT+3)',\n },\n {\n id: 'Asia/Riyadh',\n value: 'AST(GMT+3)',\n meta: 'AST(GMT+3)',\n },\n].map(timezone => ({\n ...timezone,\n key: timezone.id,\n label: timezone.meta,\n}));\n","import dayjs from 'dayjs';\n\nimport { timezones } from '../constants/date-time/international-timezones';\n\ntype Timestamp = number;\n\n/**\n * Convert timestamp to localized date-time string with optional timezone.\n *\n * @param timestamp - Unix timestamp in seconds\n * @param timezone - IANA timezone identifier (e.g., 'America/New_York')\n * @returns Localized date-time string\n *\n * @example\n * dateTimeByTimezone(1640000000, 'America/New_York')\n * // \"12/20/2021, 9:13:20 AM\"\n */\nexport function dateTimeByTimezone(timestamp: Timestamp, timezone?: string): string {\n let options = {};\n\n if (timezone) {\n options = {\n timeZone: timezone,\n };\n }\n\n return new Date(timestamp).toLocaleString('en-US', options);\n}\n\n/**\n * Format timestamp with timezone support.\n *\n * @param timestamp - Unix timestamp in seconds\n * @param timezone - IANA timezone identifier\n * @param format - dayjs format string\n * @returns Formatted date string\n *\n * @example\n * dateByTimezone(1640000000, 'America/New_York', 'MM/DD/YYYY')\n * // \"12/20/2021\"\n */\nexport function dateByTimezone(\n timestamp: number,\n timezone: string,\n format: string,\n): string {\n const datetime = dateTimeByTimezone(timestamp, timezone);\n\n return dayjs(datetime).format(format || 'mm/dd/yyyy');\n}\n\n/**\n * Get current browser timezone.\n *\n * @returns IANA timezone identifier\n *\n * @example\n * getTimezone()\n * // \"America/Los_Angeles\"\n */\nexport function getTimezone(): string {\n return Intl?.DateTimeFormat().resolvedOptions().timeZone;\n}\n\n/**\n * Get current date-time in specified timezone.\n *\n * @param timezone - IANA timezone identifier\n * @returns Localized current date-time string\n *\n * @example\n * getCurrentDatebyTimezone('Asia/Kolkata')\n * // \"12/18/2025, 3:30:00 PM\"\n */\nexport function getCurrentDatebyTimezone(timezone: string): string {\n let options = {};\n\n if (timezone) {\n options = {\n timeZone: timezone,\n };\n }\n\n return new Date().toLocaleString('en-US', options);\n}\n\n/**\n * Convert internal timezone ID to display name.\n * Uses international-timezones constant for lookup.\n *\n * @param selectedTimezone - Internal timezone ID\n * @returns Human-readable timezone name\n *\n * @example\n * convertedTimezone('America/New_York')\n * // \"Eastern Time\"\n */\nexport const convertedTimezone = (selectedTimezone: string): string => {\n const formattedTimezone = timezones?.find(\n currentTimezone => currentTimezone?.id === selectedTimezone,\n );\n\n return formattedTimezone?.value ?? selectedTimezone?.replace(/_/g, ' ');\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import I from'dayjs';import x from'dayjs/plugin/relativeTime';/** @license MIT */
2
+ var O=a=>{let n={};if(!a)return n;let o=a.split("; ");for(let r=0;r<o.length;r+=1)if(o[r]){let[i,l]=o[r].split("=");i&&!n[i]&&(n[i]=l||"");}return n},te=a=>{let n={};if(!a||!Array.isArray(a))return n;for(let o of a)if(o.value){let r=o.value.split("; ");for(let i of r)if(i){let[l,A]=i.split("=");l&&!n[l]&&(n[l]=A||"");}}return n},P=(a,n="")=>{let o=typeof window>"u";if(o&&!n)return "";let r=o?n.split("; "):document.cookie.split("; ");for(let i=0;i<r.length;i+=1)if(r[i]){let[l,A]=r[i].split("=");if(l===a)return A}return ""};function v(a,n){let o=new Date;o.setTime(o.getTime()+-1440*60*1e3),document.cookie=`${a}=; expires=${o.toUTCString()}; path=/${n?"; domain=cuemath.com":""}`;}function M(a,n,o,r){let i="";if(o){let l=new Date;l.setTime(l.getTime()+o*24*60*60*1e3),i=`; expires=${l.toUTCString()}`;}document.cookie=`${a}=${encodeURIComponent(n)}${i}; path=/${r?"; domain=cuemath.com":""}`;}function oe(a,n){let o=new Date;o.setHours(24,0,0,0);let r=`; expires=${o}`;document.cookie=`${a}=${n}${r}; path=/`;}var u={AFGHANISTAN:"AF","ALAND ISLANDS":"AX",ALBANIA:"AL",ALGERIA:"DZ","AMERICAN SAMOA":"AS",ANDORRA:"AD",ANGOLA:"AO",ANGUILLA:"AI",ANTARCTICA:"AQ","ANTIGUA AND BARBUDA":"AG",ARGENTINA:"AR",ARMENIA:"AM",ARUBA:"AW",AUSTRALIA:"AU",AUSTRIA:"AT",AZERBAIJAN:"AZ",BAHAMAS:"BS",BAHRAIN:"BH",BANGLADESH:"BD",BARBADOS:"BB",BELARUS:"BY",BELGIUM:"BE",BELIZE:"BZ",BENIN:"BJ",BERMUDA:"BM",BHUTAN:"BT",BOLIVIA:"BO","BOSNIA AND HERZEGOVINA":"BA",BOTSWANA:"BW","BOUVET ISLAND":"BV",BRAZIL:"BR","BRITISH INDIAN OCEAN TERRITORY":"IO","BRUNEI DARUSSALAM":"BN",BULGARIA:"BG","BURKINA FASO":"BF",BURUNDI:"BI",CAMBODIA:"KH",CAMEROON:"CM",CANADA:"CA","CAPE VERDE":"CV","CAYMAN ISLANDS":"KY","CENTRAL AFRICAN REPUBLIC":"CF",CHAD:"TD",CHILE:"CL",CHINA:"CN","CHRISTMAS ISLAND":"CX","COCOS (KEELING) ISLANDS":"CC",COLOMBIA:"CO",COMOROS:"KM",CONGO:"CG","CONGO, DEMOCRATIC REPUBLIC":"CD","COOK ISLANDS":"CK","COSTA RICA":"CR",'COTE D"IVOIRE':"CI",CROATIA:"HR",CUBA:"CU",CYPRUS:"CY","CZECH REPUBLIC":"CZ",DENMARK:"DK",DJIBOUTI:"DJ",DOMINICA:"DM","DOMINICAN REPUBLIC":"DO",ECUADOR:"EC",EGYPT:"EG","EL SALVADOR":"SV","EQUATORIAL GUINEA":"GQ",ERITREA:"ER",ESTONIA:"EE",ETHIOPIA:"ET","FALKLAND ISLANDS (MALVINAS)":"FK","FAROE ISLANDS":"FO",FIJI:"FJ",FINLAND:"FI",FRANCE:"FR","FRENCH GUIANA":"GF","FRENCH POLYNESIA":"PF","FRENCH SOUTHERN TERRITORIES":"TF",GABON:"GA",GAMBIA:"GM",GEORGIA:"GE",GERMANY:"DE",GHANA:"GH",GIBRALTAR:"GI",GREECE:"GR",GREENLAND:"GL",GRENADA:"GD",GUADELOUPE:"GP",GUAM:"GU",GUATEMALA:"GT",GUERNSEY:"GG",GUINEA:"GN","GUINEA-BISSAU":"GW",GUYANA:"GY",HAITI:"HT","HEARD ISLAND & MCDONALD ISLANDS":"HM","HOLY SEE (VATICAN CITY STATE)":"VA",HONDURAS:"HN","HONG KONG":"HK",HUNGARY:"HU",ICELAND:"IS",INDIA:"IN",INDONESIA:"ID","IRAN, ISLAMIC REPUBLIC OF":"IR",IRAQ:"IQ",IRELAND:"IE","ISLE OF MAN":"IM",ISRAEL:"IL",ITALY:"IT",JAMAICA:"JM",JAPAN:"JP",JERSEY:"JE",JORDAN:"JO",KAZAKHSTAN:"KZ",KENYA:"KE",KIRIBATI:"KI",KOREA:"KR","NORTH KOREA":"KP",KUWAIT:"KW",KYRGYZSTAN:"KG",'LAO PEOPLE"S DEMOCRATIC REPUBLIC':"LA",LATVIA:"LV",LEBANON:"LB",LESOTHO:"LS",LIBERIA:"LR","LIBYAN ARAB JAMAHIRIYA":"LY",LIECHTENSTEIN:"LI",LITHUANIA:"LT",LUXEMBOURG:"LU",MACAO:"MO",MACEDONIA:"MK",MADAGASCAR:"MG",MALAWI:"MW",MALAYSIA:"MY",MALDIVES:"MV",MALI:"ML",MALTA:"MT","MARSHALL ISLANDS":"MH",MARTINIQUE:"MQ",MAURITANIA:"MR",MAURITIUS:"MU",MAYOTTE:"YT",MEXICO:"MX","MICRONESIA, FEDERATED STATES OF":"FM",MOLDOVA:"MD",MONACO:"MC",MONGOLIA:"MN",MONTENEGRO:"ME",MONTSERRAT:"MS",MOROCCO:"MA",MOZAMBIQUE:"MZ",MYANMAR:"MM",NAMIBIA:"NA",NAURU:"NR",NEPAL:"NP",NETHERLANDS:"NL","NETHERLANDS ANTILLES":"AN","NEW CALEDONIA":"NC","NEW ZEALAND":"NZ",NICARAGUA:"NI",NIGER:"NE",NIGERIA:"NG",NIUE:"NU","NORFOLK ISLAND":"NF","NORTHERN MARIANA ISLANDS":"MP",NORWAY:"NO",OMAN:"OM",PAKISTAN:"PK",PALAU:"PW","PALESTINIAN TERRITORY, OCCUPIED":"PS",PANAMA:"PA","PAPUA NEW GUINEA":"PG",PARAGUAY:"PY",PERU:"PE",PHILIPPINES:"PH",PITCAIRN:"PN",POLAND:"PL",PORTUGAL:"PT","PUERTO RICO":"PR",QATAR:"QA",REUNION:"RE",ROMANIA:"RO","RUSSIAN FEDERATION":"RU",RWANDA:"RW","SAINT BARTHELEMY":"BL","SAINT HELENA":"SH","SAINT KITTS AND NEVIS":"KN","SAINT LUCIA":"LC","SAINT MARTIN":"MF","SAINT PIERRE AND MIQUELON":"PM","SAINT VINCENT AND GRENADINES":"VC",SAMOA:"WS","SAN MARINO":"SM","SAO TOME AND PRINCIPE":"ST","SAUDI ARABIA":"SA",SENEGAL:"SN",SERBIA:"RS",SEYCHELLES:"SC","SIERRA LEONE":"SL",SINGAPORE:"SG",SLOVAKIA:"SK",SLOVENIA:"SI","SOLOMON ISLANDS":"SB",SOMALIA:"SO","SOUTH AFRICA":"ZA","SOUTH GEORGIA AND SANDWICH ISL.":"GS",SPAIN:"ES","SRI LANKA":"LK",SUDAN:"SD",SURINAME:"SR","SVALBARD AND JAN MAYEN":"SJ",SWAZILAND:"SZ",SWEDEN:"SE",SWITZERLAND:"CH","SYRIAN ARAB REPUBLIC":"SY",TAIWAN:"TW",TAJIKISTAN:"TJ",TANZANIA:"TZ",THAILAND:"TH","TIMOR-LESTE":"TL",TOGO:"TG",TOKELAU:"TK",TONGA:"TO","TRINIDAD AND TOBAGO":"TT",TUNISIA:"TN",TURKEY:"TR",TURKMENISTAN:"TM","TURKS AND CAICOS ISLANDS":"TC",TUVALU:"TV",UGANDA:"UG",UKRAINE:"UA","UNITED ARAB EMIRATES":"AE","UNITED KINGDOM":"GB","UNITED STATES":"US","UNITED STATES OUTLYING ISLANDS":"UM",URUGUAY:"UY",UZBEKISTAN:"UZ",VANUATU:"VU",VENEZUELA:"VE",VIETNAM:"VN","VIRGIN ISLANDS, BRITISH":"VG","VIRGIN ISLANDS, U.S.":"VI","WALLIS AND FUTUNA":"WF","WESTERN SAHARA":"EH",YEMEN:"YE",ZAMBIA:"ZM",ZIMBABWE:"ZW"};var ue=["AL","AD","AT","BY","BE","BA","BG","HR","CZ","DK","EE","FO","FI","FR","DE","GI","GR","GG","VA","HU","IS","IE","IT","JE","LV","LI","LT","LU","MK","MT","IM","MD","MC","NL","NO","PL","PT","RO","SM","CS","SK","SI","ES","SJ","SE","CH","UA","FX","ME","YU"],Y=["AM","AZ","BH","CY","GE","IR","IQ","IL","JO","KW","LB","OM","PS","QA","SA","SY","TR","AE","YE"],Ae=["AS","AU","CK","FJ","PF","GU","KI","MH","FM","NR","NC","NU","NF","MP","PW","PG","PN","SB","TK","TO","TV","VU","WF","WS","AQ","TF","HM"],se=["BN","KH","CX","CC","ID","LA","MY","MM","PH","SG","TH","VN","TP"],Ne=["AI","AG","AR","AW","BS","BB","BZ","BM","BO","BR","VG","CA","KY","CL","CO","CR","CU","DM","DO","EC","SV","FK","GF","GL","GD","GP","GT","GY","HT","HN","JM","MQ","MX","MS","AN","NI","PA","PY","PE","PR","KN","LC","PM","VC","SR","TT","TC","US","UY","VE","VI","UM"],de=[u.BANGLADESH,u.BHUTAN,u.INDIA,u.MALDIVES,u.NEPAL,u["SRI LANKA"],u["BRITISH INDIAN OCEAN TERRITORY"]],ge=[u["NEW ZEALAND"]],k=[u["UNITED KINGDOM"],u.AUSTRALIA,u["NEW ZEALAND"],u.SINGAPORE],w=[u.INDIA,u["UNITED STATES"],u.CANADA,...k,...Y],Ie=Object.values(u).filter(a=>!w.includes(a)),ce=["IN","US"],Ee=["IN"];var Ce={MIDDLE_EAST:"MEA",UNK:"UNK",EUROPE:"EUR",AUSTRALIA:"AUS",NEW_ZEALAND:"NEZ",SINGAPORE:"SGD",USA:"USA",INDIA:"IND"};var e="https://d138zd1ktt9iqe.cloudfront.net/static/website_2_0/images/country-flags",Re=[{id:"india",value:"91",label:"+91",countryName:"India",icon:`${e}/india.png`,url:`${e}/india.png`,geoIPCountryCode:"IN"},{id:"united-states-of-america",value:"1",label:"+1",countryName:"USA",icon:`${e}/united-states-of-america.png`,url:`${e}/united-states-of-america.png`,geoIPCountryCode:"US"},{id:"afghanistan",value:"93",label:"+93",countryName:"Afghanistan",icon:`${e}/afghanistan.png`,url:`${e}/afghanistan.png`,geoIPCountryCode:"AF"},{id:"albania",value:"355",label:"+355",countryName:"Albania",icon:`${e}/Albania.png`,url:`${e}/Albania.png`,geoIPCountryCode:"AL"},{id:"algeria",value:"213",label:"+213",countryName:"Algeria",icon:`${e}/Algeria.png`,url:`${e}/Algeria.png`,geoIPCountryCode:"DZ"},{id:"american-samoa",value:"685",label:"+685",countryName:"Samoa",icon:`${e}/american-samoa.png`,url:`${e}/american-samoa.png`,geoIPCountryCode:"AS"},{id:"anguilla",value:"1",label:"+1",countryName:"Anguilla",icon:`${e}/Anguilla.png`,url:`${e}/Anguilla.png`,geoIPCountryCode:"AI"},{id:"antigua-and-barbuda",value:"1",label:"+1",countryName:"Antigua and Barbuda",icon:`${e}/Antigua-and-Barbuda.png`,url:`${e}/Antigua-and-Barbuda.png`,geoIPCountryCode:"AG"},{id:"argentina",value:"54",label:"+54",countryName:"Argentina",icon:`${e}/argentina.png`,url:`${e}/argentina.png`,geoIPCountryCode:"AR"},{id:"armenia",value:"374",label:"+374",countryName:"Armenia",icon:`${e}/Armenia.png`,url:`${e}/Armenia.png`,geoIPCountryCode:"AM"},{id:"australia",value:"61",label:"+61",countryName:"Australia",icon:`${e}/australia.png`,url:`${e}/australia.png`,geoIPCountryCode:"AU"},{id:"austria",value:"43",label:"+43",countryName:"Austria",icon:`${e}/austria.png`,url:`${e}/austria.png`,geoIPCountryCode:"AT"},{id:"azerbaijan",value:"994",label:"+994",countryName:"Azerbaijan",icon:`${e}/Azerbaijan.png`,url:`${e}/Azerbaijan.png`,geoIPCountryCode:"AZ"},{id:"bahrain",value:"973",label:"+973",countryName:"Bahrain",icon:`${e}/bahrain.png`,url:`${e}/bahrain.png`,geoIPCountryCode:"BH"},{id:"bangladesh",value:"880",label:"+880",countryName:"Bangladesh",icon:`${e}/bangladesh.png`,url:`${e}/bangladesh.png`,geoIPCountryCode:"BD"},{id:"belarus",value:"375",label:"+375",countryName:"Belarus",icon:`${e}/Belarus.png`,url:`${e}/Belarus.png`,geoIPCountryCode:"BY"},{id:"belgium",value:"32",label:"+32",countryName:"Belgium",icon:`${e}/belgium.png`,url:`${e}/belgium.png`,geoIPCountryCode:"BE"},{id:"bermuda",value:"1441",label:"+1441",countryName:"Bermuda",icon:`${e}/bermuda.png`,url:`${e}/bermuda.png`,geoIPCountryCode:"BM"},{id:"bhutan",value:"975",label:"+975",countryName:"Bhutan",icon:`${e}/bhutan.png`,url:`${e}/bhutan.png`,geoIPCountryCode:"BT"},{id:"bosnia-and-herzegovina",value:"387",label:"+387",countryName:"Bosnia And Herzegovina",icon:`${e}/Bosnia-And-Herzegovina.png`,url:`${e}/Bosnia-And-Herzegovina.png`,geoIPCountryCode:"BA"},{id:"brazil",value:"55",label:"+55",countryName:"Brazil",icon:`${e}/brazil.png`,url:`${e}/brazil.png`,geoIPCountryCode:"BR"},{id:"bulgaria",value:"359",label:"+359",countryName:"Bulgaria",icon:`${e}/bulgaria.png`,url:`${e}/bulgaria.png`,geoIPCountryCode:"BG"},{id:"cambodia",value:"855",label:"+855",countryName:"Cambodia",icon:`${e}/cambodia.png`,url:`${e}/cambodia.png`,geoIPCountryCode:"KH"},{id:"cameroon",value:"237",label:"+237",countryName:"Cameroon",icon:`${e}/Cameroon.png`,url:`${e}/Cameroon.png`,geoIPCountryCode:"CM"},{id:"canada",value:"1",label:"+1",countryName:"Canada",icon:`${e}/canada.png`,url:`${e}/canada.png`,geoIPCountryCode:"CA"},{id:"chile",value:"56",label:"+56",countryName:"Chile",icon:`${e}/chile.png`,url:`${e}/chile.png`,geoIPCountryCode:"CL"},{id:"china",value:"86",label:"+86",countryName:"China",icon:`${e}/china.png`,url:`${e}/china.png`,geoIPCountryCode:"CN"},{id:"colombia",value:"57",label:"+57",countryName:"Colombia",icon:`${e}/colombia.png`,url:`${e}/colombia.png`,geoIPCountryCode:"CO"},{id:"congo",value:"243",label:"+243",countryName:"Congo",icon:`${e}/Congo.png`,url:`${e}/Congo.png`,geoIPCountryCode:"CD"},{id:"cuba",value:"53",label:"+53",countryName:"Cuba",icon:`${e}/cuba.png`,url:`${e}/cuba.png`,geoIPCountryCode:"CU"},{id:"czech-republic",value:"420",label:"+420",countryName:"Czech Republic",icon:`${e}/czech-republic.png`,url:`${e}/czech-republic.png`,geoIPCountryCode:"CZ"},{id:"denmark",value:"45",label:"+45",countryName:"Denmark",icon:`${e}/denmark.png`,url:`${e}/denmark.png`,geoIPCountryCode:"DK"},{id:"ecuador",value:"593",label:"+593",countryName:"Ecuador",icon:`${e}/Ecuador.png`,url:`${e}/Ecuador.png`,geoIPCountryCode:"EC"},{id:"egypt",value:"20",label:"+20",countryName:"Egypt",icon:`${e}/egypt.png`,url:`${e}/egypt.png`,geoIPCountryCode:"EG"},{id:"ethiopia",value:"251",label:"+251",countryName:"Ethiopia",icon:`${e}/ethiopia.png`,url:`${e}/ethiopia.png`,geoIPCountryCode:"ET"},{id:"finland",value:"358",label:"+358",countryName:"Finland",icon:`${e}/finland.png`,url:`${e}/finland.png`,geoIPCountryCode:"FI"},{id:"france",value:"33",label:"+33",countryName:"France",icon:`${e}/france.png`,url:`${e}/france.png`,geoIPCountryCode:"FR"},{id:"gambia",value:"220",label:"+220",countryName:"Gambia",icon:`${e}/Gambia.png`,url:`${e}/Gambia.png`,geoIPCountryCode:"GM"},{id:"germany",value:"49",label:"+49",countryName:"Germany",icon:`${e}/germany.png`,url:`${e}/germany.png`,geoIPCountryCode:"DE"},{id:"ghana",value:"233",label:"+233",countryName:"Ghana",icon:`${e}/ghana.png`,url:`${e}/ghana.png`,geoIPCountryCode:"GH"},{id:"hong-kong",value:"852",label:"+852",countryName:"Hong Kong",icon:`${e}/hong-kong.png`,url:`${e}/hong-kong.png`,geoIPCountryCode:"HK"},{id:"hungary",value:"36",label:"+36",countryName:"Hungary",icon:`${e}/hungary.png`,url:`${e}/hungary.png`,geoIPCountryCode:"HU"},{id:"iceland",value:"354",label:"+354",countryName:"Iceland",icon:`${e}/iceland.png`,url:`${e}/iceland.png`,geoIPCountryCode:"IS"},{id:"indonesia",value:"62",label:"+62",countryName:"Indonesia",icon:`${e}/indonesia.png`,url:`${e}/indonesia.png`,geoIPCountryCode:"ID"},{id:"iran",value:"98",label:"+98",countryName:"Iran",icon:`${e}/Iran.png`,url:`${e}/Iran.png`,geoIPCountryCode:"IR"},{id:"iraq",value:"964",label:"+964",countryName:"Iraq",icon:`${e}/iraq.png`,url:`${e}/iraq.png`,geoIPCountryCode:"IQ"},{id:"ireland",value:"353",label:"+353",countryName:"Ireland",icon:`${e}/ireland.png`,url:`${e}/ireland.png`,geoIPCountryCode:"IE"},{id:"israel",value:"972",label:"+972",countryName:"Israel",icon:`${e}/israel.png`,url:`${e}/israel.png`,geoIPCountryCode:"IL"},{id:"italy",value:"39",label:"+39",countryName:"Italy",icon:`${e}/italy.png`,url:`${e}/italy.png`,geoIPCountryCode:"IT"},{id:"jamaica",value:"876",label:"+876",countryName:"Jamaica",icon:`${e}/jamaica.png`,url:`${e}/jamaica.png`,geoIPCountryCode:"JM"},{id:"japan",value:"81",label:"+81",countryName:"Japan",icon:`${e}/japan.png`,url:`${e}/japan.png`,geoIPCountryCode:"JP"},{id:"jordan",value:"962",label:"+962",countryName:"Jordan",icon:`${e}/jordan.png`,url:`${e}/jordan.png`,geoIPCountryCode:"JO"},{id:"kazakhstan",value:"7",label:"+7",countryName:"Kazakhstan",icon:`${e}/Kazakhstan.png`,url:`${e}/Kazakhstan.png`,geoIPCountryCode:"KZ"},{id:"kenya",value:"254",label:"+254",countryName:"Kenya",icon:`${e}/kenya.png`,url:`${e}/kenya.png`,geoIPCountryCode:"KE"},{id:"kuwait",value:"965",label:"+965",countryName:"Kuwait",icon:`${e}/kuwait.png`,url:`${e}/kuwait.png`,geoIPCountryCode:"KW"},{id:"kyrgyzstan",value:"996",label:"+996",countryName:"Kyrgyzstan",icon:`${e}/Kyrgyzstan.png`,url:`${e}/Kyrgyzstan.png`,geoIPCountryCode:"KG"},{id:"lebanon",value:"961",label:"+961",countryName:"Lebanon",icon:`${e}/lebanon.png`,url:`${e}/lebanon.png`,geoIPCountryCode:"LB"},{id:"lesotho",value:"266",label:"+266",countryName:"Lesotho",icon:`${e}/Lesotho.png`,url:`${e}/Lesotho.png`,geoIPCountryCode:"LS"},{id:"liberia",value:"231",label:"+231",countryName:"Liberia",icon:`${e}/Liberia.png`,url:`${e}/Liberia.png`,geoIPCountryCode:"LR"},{id:"libya",value:"218",label:"+218",countryName:"Libya",icon:`${e}/Libya.png`,url:`${e}/Libya.png`,geoIPCountryCode:"LY"},{id:"lithuania",value:"370",label:"+370",countryName:"Lithuania",icon:`${e}/lithuania.png`,url:`${e}/lithuania.png`,geoIPCountryCode:"LT"},{id:"malawi",value:"265",label:"+265",countryName:"Malawi",icon:`${e}/Malawi.png`,url:`${e}/Malawi.png`,geoIPCountryCode:"MW"},{id:"malaysia",value:"60",label:"+60",countryName:"Malaysia",icon:`${e}/malaysia.png`,url:`${e}/malaysia.png`,geoIPCountryCode:"MY"},{id:"mali",value:"223",label:"+223",countryName:"Mali",icon:`${e}/Mali.png`,url:`${e}/Mali.png`,geoIPCountryCode:"ML"},{id:"mauritius",value:"230",label:"+230",countryName:"Mauritius",icon:`${e}/Mauritius.png`,url:`${e}/Mauritius.png`,geoIPCountryCode:"MU"},{id:"mexico",value:"52",label:"+52",countryName:"Mexico",icon:`${e}/mexico.png`,url:`${e}/mexico.png`,geoIPCountryCode:"MX"},{id:"mongolia",value:"976",label:"+976",countryName:"Mongolia",icon:`${e}/Mongolia.png`,url:`${e}/Mongolia.png`,geoIPCountryCode:"MN"},{id:"morocco",value:"212",label:"+212",countryName:"Morocco",icon:`${e}/morocco.png`,url:`${e}/morocco.png`,geoIPCountryCode:"MA"},{id:"myanmar",value:"95",label:"+95",countryName:"Myanmar",icon:`${e}/myanmar.png`,url:`${e}/myanmar.png`,geoIPCountryCode:"MM"},{id:"namibia",value:"264",label:"+264",countryName:"Namibia",icon:`${e}/Namibia.png`,url:`${e}/Namibia.png`,geoIPCountryCode:"NA"},{id:"nepal",value:"977",label:"+977",countryName:"Nepal",icon:`${e}/nepal.png`,url:`${e}/nepal.png`,geoIPCountryCode:"NP"},{id:"netherlands",value:"31",label:"+31",countryName:"Netherlands",icon:`${e}/netherlands.png`,url:`${e}/netherlands.png`,geoIPCountryCode:"NL"},{id:"new-zealand",value:"64",label:"+64",countryName:"New Zealand",icon:`${e}/new-zealand.png`,url:`${e}/new-zealand.png`,geoIPCountryCode:"NZ"},{id:"niger",value:"227",label:"+227",countryName:"Niger",icon:`${e}/Niger.png`,url:`${e}/Niger.png`,geoIPCountryCode:"NE"},{id:"nigeria",value:"234",label:"+234",countryName:"Nigeria",icon:`${e}/nigeria.png`,url:`${e}/nigeria.png`,geoIPCountryCode:"NG"},{id:"northern-marianas-islands",value:"1",label:"+1",countryName:"Northern Marianas Islands",icon:`${e}/northern-marianas-islands.png`,url:`${e}/northern-marianas-islands.png`,geoIPCountryCode:"MP"},{id:"norway",value:"47",label:"+47",countryName:"Norway",icon:`${e}/norway.png`,url:`${e}/norway.png`,geoIPCountryCode:"NO"},{id:"oman",value:"968",label:"+968",countryName:"Oman",icon:`${e}/oman.png`,url:`${e}/oman.png`,geoIPCountryCode:"OM"},{id:"papua-new-guinea",value:"675",label:"+675",countryName:"Papua New Guinea",icon:`${e}/Papua-New-Guinea.png`,url:`${e}/Papua-New-Guinea.png`,geoIPCountryCode:"PG"},{id:"philippines",value:"63",label:"+63",countryName:"Philippines",icon:`${e}/philippines.png`,url:`${e}/philippines.png`,geoIPCountryCode:"PH"},{id:"poland",value:"48",label:"+48",countryName:"Poland",icon:`${e}/poland.png`,url:`${e}/poland.png`,geoIPCountryCode:"PL"},{id:"portugal",value:"351",label:"+351",countryName:"Portugal",icon:`${e}/portugal.png`,url:`${e}/portugal.png`,geoIPCountryCode:"PT"},{id:"puerto-rico",value:"1",label:"+1",countryName:"Puerto Rico",icon:`${e}/puerto-rico.png`,url:`${e}/puerto-rico.png`,geoIPCountryCode:"PR"},{id:"qatar",value:"974",label:"+974",countryName:"Qatar",icon:`${e}/qatar.png`,url:`${e}/qatar.png`,geoIPCountryCode:"QA"},{id:"romania",value:"40",label:"+40",countryName:"Romania",icon:`${e}/romania.png`,url:`${e}/romania.png`,geoIPCountryCode:"RO"},{id:"rwanda",value:"250",label:"+250",countryName:"Rwanda",icon:`${e}/Rwanda.png`,url:`${e}/Rwanda.png`,geoIPCountryCode:"RW"},{id:"saudi-arabia",value:"966",label:"+966",countryName:"Saudi Arabia",icon:`${e}/saudi-arabia.png`,url:`${e}/saudi-arabia.png`,geoIPCountryCode:"SA"},{id:"senegal",value:"221",label:"+221",countryName:"Senegal",icon:`${e}/Senegal.png`,url:`${e}/Senegal.png`,geoIPCountryCode:"SN"},{id:"sierra-leone",value:"232",label:"+232",countryName:"Sierra Leone",icon:`${e}/Sierra-leone.png`,url:`${e}/Sierra-leone.png`,geoIPCountryCode:"SL"},{id:"singapore",value:"65",label:"+65",countryName:"Singapore",icon:`${e}/singapore.png`,url:`${e}/singapore.png`,geoIPCountryCode:"SG"},{id:"somalia",value:"252",label:"+252",countryName:"Somalia",icon:`${e}/Somalia.png`,url:`${e}/Somalia.png`,geoIPCountryCode:"SO"},{id:"south Korea",value:"82",label:"+82",countryName:"South Korea",icon:`${e}/south-korea.png`,url:`${e}/south-korea.png`,geoIPCountryCode:"KR"},{id:"south-africa",value:"27",label:"+27",countryName:"South Africa",icon:`${e}/south-africa.png`,url:`${e}/south-africa.png`,geoIPCountryCode:"ZA"},{id:"spain",value:"34",label:"+34",countryName:"Spain",icon:`${e}/spain.png`,url:`${e}/spain.png`,geoIPCountryCode:"ES"},{id:"sri-lanka",value:"94",label:"+94",countryName:"Sri Lanka",icon:`${e}/sri-lanka.png`,url:`${e}/sri-lanka.png`,geoIPCountryCode:"LK"},{id:"sweden",value:"46",label:"+46",countryName:"Sweden",icon:`${e}/sweden.png`,url:`${e}/sweden.png`,geoIPCountryCode:"SE"},{id:"switzerland",value:"41",label:"+41",countryName:"Switzerland",icon:`${e}/Switzerland.png`,url:`${e}/Switzerland.png`,geoIPCountryCode:"CH"},{id:"syria",value:"963",label:"+963",countryName:"Syria",icon:`${e}/Syria.png`,url:`${e}/Syria.png`,geoIPCountryCode:"SY"},{id:"tanzania",value:"255",label:"+255",countryName:"Tanzania",icon:`${e}/tanzania.png`,url:`${e}/tanzania.png`,geoIPCountryCode:"TZ"},{id:"thailand",value:"66",label:"+66",countryName:"Thailand",icon:`${e}/thailand.png`,url:`${e}/thailand.png`,geoIPCountryCode:"TH"},{id:"tunisia",value:"216",label:"+216",countryName:"Tunisia",icon:`${e}/Tunisia.png`,url:`${e}/Tunisia.png`,geoIPCountryCode:"TN"},{id:"turkey",value:"90",label:"+90",countryName:"Turkey",icon:`${e}/turkey.png`,url:`${e}/turkey.png`,geoIPCountryCode:"TR"},{id:"uganda",value:"256",label:"+256",countryName:"Uganda",icon:`${e}/Uganda.png`,url:`${e}/Uganda.png`,geoIPCountryCode:"UG"},{id:"ukraine",value:"380",label:"+380",countryName:"Ukraine",icon:`${e}/ukraine.png`,url:`${e}/ukraine.png`,geoIPCountryCode:"UA"},{id:"united-arab-emirates",value:"971",label:"+971",countryName:"United Arab Emirates",icon:`${e}/united-arab-emirates.png`,url:`${e}/united-arab-emirates.png`,geoIPCountryCode:"AE"},{id:"united-kingdom",value:"44",label:"+44",countryName:"United Kingdom",icon:`${e}/united-kingdom.png`,url:`${e}/united-kingdom.png`,geoIPCountryCode:"GB"},{id:"uzbekistan",value:"998",label:"+998",countryName:"Uzbekistan",icon:`${e}/uzbekistan.png`,url:`${e}/uzbekistan.png`,geoIPCountryCode:"UZ"},{id:"vietnam",value:"84",label:"+84",countryName:"Vietnam",icon:`${e}/vietnam.png`,url:`${e}/vietnam.png`,geoIPCountryCode:"VN"},{id:"yemen",value:"967",label:"+967",countryName:"Yemen",icon:`${e}/Yemen.png`,url:`${e}/Yemen.png`,geoIPCountryCode:"YE"},{id:"zambia",value:"260",label:"+260",countryName:"Zambia",icon:`${e}/zambia.png`,url:`${e}/zambia.png`,geoIPCountryCode:"ZM"}];var Se=[{value:"Andhra Pradesh",id:"Andhra Pradesh"},{value:"Andaman and Nicobar Islands",id:"Andaman and Nicobar Islands"},{value:"Arunachal Pradesh",id:"Arunachal Pradesh"},{value:"Assam",id:"Assam"},{value:"Bihar",id:"Bihar"},{value:"Chandigarh",id:"Chandigarh"},{value:"Chhattisgarh",id:"Chhattisgarh"},{value:"Dadar and Nagar Haveli",id:"Dadar and Nagar Haveli"},{value:"Daman and Diu",id:"Daman and Diu"},{value:"Delhi",id:"Delhi"},{value:"Lakshadweep",id:"Lakshadweep"},{value:"Puducherry",id:"Puducherry"},{value:"Goa",id:"Goa"},{value:"Gujarat",id:"Gujarat"},{value:"Haryana",id:"Haryana"},{value:"Himachal Pradesh",id:"Himachal Pradesh"},{value:"Jammu and Kashmir",id:"Jammu and Kashmir"},{value:"Jharkhand",id:"Jharkhand"},{value:"Karnataka",id:"Karnataka"},{value:"Kerala",id:"Kerala"},{value:"Madhya Pradesh",id:"Madhya Pradesh"},{value:"Maharashtra",id:"Maharashtra"},{value:"Manipur",id:"Manipur"},{value:"Meghalaya",id:"Meghalaya"},{value:"Mizoram",id:"Mizoram"},{value:"Nagaland",id:"Nagaland"},{value:"Odisha",id:"Odisha"},{value:"Punjab",id:"Punjab"},{value:"Rajasthan",id:"Rajasthan"},{value:"Sikkim",id:"Sikkim"},{value:"Tamil Nadu",id:"Tamil Nadu"},{value:"Telangana",id:"Telangana"},{value:"Tripura",id:"Tripura"},{value:"Uttar Pradesh",id:"Uttar Pradesh"},{value:"Uttarakhand",id:"Uttarakhand"},{value:"West Bengal",id:"West Bengal"}],Oe=[{id:"Alabama",value:"Alabama"},{id:"Alaska",value:"Alaska"},{id:"Arizona",value:"Arizona"},{id:"Arkansas",value:"Arkansas"},{id:"California",value:"California"},{id:"Colorado",value:"Colorado"},{id:"Connecticut",value:"Connecticut"},{id:"Delaware",value:"Delaware"},{id:"District of Columbia",value:"District of Columbia"},{id:"Florida",value:"Florida"},{id:"Georgia",value:"Georgia"},{id:"Hawaii",value:"Hawaii"},{id:"Idaho",value:"Idaho"},{id:"Illinois",value:"Illinois"},{id:"Indiana",value:"Indiana"},{id:"Iowa",value:"Iowa"},{id:"Kansas",value:"Kansas"},{id:"Kentucky",value:"Kentucky"},{id:"Louisiana",value:"Louisiana"},{id:"Maine",value:"Maine"},{id:"Maryland",value:"Maryland"},{id:"Massachusetts",value:"Massachusetts"},{id:"Michigan",value:"Michigan"},{id:"Minnesota",value:"Minnesota"},{id:"Mississippi",value:"Mississippi"},{id:"Missouri",value:"Missouri"},{id:"Montana",value:"Montana"},{id:"Nebraska",value:"Nebraska"},{id:"Nevada",value:"Nevada"},{id:"New Hampshire",value:"New Hampshire"},{id:"New Jersey",value:"New Jersey"},{id:"New Mexico",value:"New Mexico"},{id:"New York",value:"New York"},{id:"North Carolina",value:"North Carolina"},{id:"North Dakota",value:"North Dakota"},{id:"Ohio",value:"Ohio"},{id:"Oklahoma",value:"Oklahoma"},{id:"Oregon",value:"Oregon"},{id:"Pennsylvania",value:"Pennsylvania"},{id:"Rhode Island",value:"Rhode Island"},{id:"South Carolina",value:"South Carolina"},{id:"South Dakota",value:"South Dakota"},{id:"Tennessee",value:"Tennessee"},{id:"Texas",value:"Texas"},{id:"Utah",value:"Utah"},{id:"Vermont",value:"Vermont"},{id:"Virginia",value:"Virginia"},{id:"Washington",value:"Washington"},{id:"West Virginia",value:"West Virginia"},{id:"Wisconsin",value:"Wisconsin"},{id:"Wyoming",value:"Wyoming"},{id:"American Samoa",value:"American Samoa"},{id:"Guam",value:"Guam"},{id:"Northern Mariana Islands",value:"Northern Mariana Islands"},{id:"Puerto Rico",value:"Puerto Rico"},{id:"US Virgin Islands",value:"US Virgin Islands"},{id:"Armed Forces",value:"Armed Forces"},{id:"Armed Forces Europe",value:"Armed Forces Europe"},{id:"Armed Forces Pacific",value:"Armed Forces Pacific"}];var De={AED:"\u062F.\u0625",AFN:"\u060B",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u20BC",BAM:"KM",BBD:"Bds$",BDT:"\u09F3",BGN:"\u043B\u0432",BHD:".\u062F.\u0628",BIF:"FBu",BMD:"$",BND:"BN$",BOB:"$b",BRL:"R$",BSD:"B$",BTC:"\u0E3F",BTN:"Nu.",BWP:"P",BYR:"Br",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"CHF",CLP:"$",CNY:"\xA5",COP:"COL$",CRC:"\u20A1",CUC:"$",CUP:"\u20B1",CVE:"$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr",DOP:"RD$",DZD:"\u062F\u062C",EEK:"kr",EGP:"E\xA3",ERN:"Nfk",ETB:"Br",ETH:"\u039E",EUR:"\u20AC",FJD:"FJ$",FKP:"\xA3",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHC:"\u20B5",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"\u20B9",IQD:"\u0639.\u062F",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u043B\u0432",KHR:"\u17DB",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"$",KZT:"\u043B\u0432",LAK:"\u20AD",LBP:"\u0644.\u0644",LKR:"\u20A8",LRD:"L$",LSL:"M",LTC:"\u0141",LTL:"Lt",LVL:"Ls",LYD:"LD",MAD:"MAD",MDL:"lei",MGA:"Ar",MKD:"\u0434\u0435\u043D",MMK:"K",MNT:"\u20AE",MOP:"MOP$",MRO:"UM",MRU:"UM",MUR:"\u20A8",MVR:"Rf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MT",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"\u20A8",NZD:"NZ$",OMR:"\uFDFC",PAB:"B/.",PEN:"S/",PGK:"K",PHP:"\u20B1",PKR:"\u20A8",PLN:"z\u0142",PYG:"Gs",QAR:"\u0631.\u0642,",RMB:"\uFFE5",RON:"lei",RSD:"\u0414\u0438\u043D.",RUB:"\u20BD",RWF:"R\u20A3",SAR:"\uFDFC",SBD:"$",SCR:"\u20A8",SDG:"\u062C.\u0633.",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SOS:"Sh.so",SRD:"$",SSP:"\xA3",STD:"Db",STN:"Db",SVC:"\u20A1",SYP:"\xA3",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"T",TND:"\u062F.\u062A",TOP:"T$",TRL:"\u20A4",TRY:"\u20BA",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u043B\u0432",VEF:"Bs",VND:"\u20AB",VUV:"VT",WST:"WS$",XAF:"FCFA",XBT:"\u0243",XCD:"$",XOF:"CFA",XPF:"\u20A3",YER:"\uFDFC",ZAR:"R",ZWD:"Z$"};var W=(a,n)=>I(a).format(n);function Z(){return Date.now||(Date.now=()=>new Date().getTime()),Math.floor(Date.now()/1e3)}var Ge=(a,n)=>{let o=new Date(a).toLocaleString("en-US");return I(o).format(n||"mm/dd/yyyy")};function z(a){let n=a,o=Z();if(Number.isNaN(n)||Number.isNaN(o))return a;let r=String(n).length,i=String(o).length;return r>i?a/1e3:a}function He(a,n){let o=z(a);return I.unix(o).format(n)}function fe(a){return I.extend(x),I().to(a,true)}function Be(a,n){let o=I(a),r=I(n);return {days:o.diff(r,"days"),hour:o.diff(r,"hour"),minute:o.diff(r,"minute"),seconds:o.diff(r,"seconds"),distance:o.diff(r)}}function Ve(a){return new Date(a*1e3).toISOString().replace(/-|:|\.\d\d\d/g,"")}function Fe(a){return W(I().add(a,"day"),"D MMM, YYYY").toUpperCase()}var Ke=a=>a*1e3;function ke(a){return Object.keys(a).length===0}function we(a,n){if(a.size!==n.size)return false;for(let[o,r]of a)if(!n.has(o)||n.get(o)!==r)return false;return true}var c=a=>a==null?void 0:a.split("?")[0],m=a=>a==null?void 0:a.replace(/\/en-[a-z]{2}\//,"/"),We=a=>a==null?void 0:a.replace(/\/$/,"");var J=a=>typeof a<"u"?new RegExp(/^(("[\w-\s]+")|([\w+.]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i).test(a):false,$=(a,n)=>!!n[a],ze=(a,n,o)=>{let r=true,i={};return a.forEach(l=>{let A=l.id;if(Array.isArray(l)?l.forEach(s=>{let d=s.id;$(d,n)||(r=false,i[d]="This field is required");}):$(A,n)||(r=false,i[A]="This field is required"),A==="email"){let s=J(n==null?void 0:n.email);i[A]=s?"":`Please enter a valid ${A} id`,r=s;}}),o&&o(i),r};var t={HOMEPAGE:"/",WHY_CHOOSE_US:"/math-online-classes",ABOUT_US:"/about-us/",TUTORING_SERVICES:"/tutoring-services",HOME_TUTION:"/home-tuition",HOME_TUTOR:"/home-tutor",HOME_TUTORS:"/home-tutors/",HOME_TUTORING:"/home-tutoring",HYBRID_TEACHER_PROFILE:"/hybrid-teacher-profile/",MATH_TUITION:"/math-tuition-",CENTRES:"/centres/",MATHS_TUITION:"/maths-tuition/",ONLINE_TUITIONS:"/online-tuitions/",GRADE_MATH:"grade-math/",ONLINE_MATH_COURSES:"/online-math-courses/",TUITION_TUTORS:"/tuition-tutors",TEACH:"/teach/",TEACHER_PROFILE:"/teacher-profile/",NEAR_ME:"near-me/",CONTACT:"/contact/",PARENT_SIGNUP:"/parent/signup/",FREQUENTLY_ASKED_QUESTIONS:"/frequently-asked-questions/",HASH_HOMEPAGE:"/#",QUERY_HOMEPAGE:"/?",USA_HOMEPAGE:"/usa/",CURRICULUM:"/curriculum/",PRIVATE_TUTORS:"/private-tutors",ONLINE_MATH_TUTORS:"/online-math-tutors",MATHS_PROGRAM:"/maths-program/",ONLINE_MATH_COURSE:"/online-math-course/",TRIGONOMETRY_TUTORS:"/trigonometry-tutors/",GEOMETRY_TUTORS:"/geometry-tutors/",ALGEBRA_TUTORS:"/algebra-tutors/",AFTER_SCHOOL_TUTORING:"/after-school-tutoring/",MATHS_TEACHER:"/maths-teacher/",LIVE_ONLINE_CLASSES:"/live-online-classes",PARENT_STUDENT_SEO:"/parent-signup-seo",ABOUT:"/about/",LOGIN:"/login/",MATH_CLASS:"/maths/class-",MATH_CLASSES:"/math-classes",ONLINE_MATH:"/online-math-",HYBRID_TEACHER:"/hybrid-teacher",TUITION_TEACHER:"tuition-teacher",GRADE:/^(?!.*(?:worksheet|math-puzzle|chapter|program|learn|question|ncert-solution)).*grade-/g,MATHS:/^(?!.*(?:worksheet|formula|learn)).*\/maths/g,GRADES:/^\/grades\/$/,LEARN_MATH_ONLINE:"learn-math-online-",UPGRADE:"/upgrade/",WORK_FROM_HOME:"work-from-home",TEACHER_JOBS:"teacher-jobs",TEACHERS_JOBS:"teachers-jobs",PART_TIME_JOBS:"part-time-jobs",ONLINE_TUTORING_JOBS:"/online-tutoring-jobs/",TEACHER_SIGNUP:"/teacher/signup",TEACHER:"/teacher/",GIFT:"/gift/",GIFT_INVITE:"/gift-invite/",COURSE_OLYMPIAD:"/course/olympiad/",PHILOSOPHY:"/philosophy",PRICING:"/pricing",MATHS_YEAR:"/maths/year-",POD_LEARNING:"/pod-learning/",MATHS_CLASSROOM:"/maths-classroom",MATHLETE_STUDENT_DETAILS:"/mathlete/student-details/",FEE:/^(?!.*(?:ncert-solution)).*-fee-/g,TRIAL_UPGRADE:"/trial-upgrade",WHY_CUEMATH:"/why-Cuemath",PLUS_TEACHER_PROFILE:"/plus-teacher-profile",CLASS_TUITION:/^(?=.*\/class-)(?=.*tuition).*$/,MATH_ADVENTURE:"/math-adventure"},y=[t.HOMEPAGE,t.ABOUT_US,t.CONTACT,t.HASH_HOMEPAGE,t.QUERY_HOMEPAGE,t.FREQUENTLY_ASKED_QUESTIONS,t.USA_HOMEPAGE,t.ABOUT,t.LOGIN,t.PARENT_SIGNUP],L=[t.AFTER_SCHOOL_TUTORING,t.ALGEBRA_TUTORS,t.CENTRES,t.COURSE_OLYMPIAD,t.CURRICULUM,t.FEE,t.GEOMETRY_TUTORS,t.GRADE_MATH,t.GRADE,t.GRADES,t.HOME_TUTION,t.HOME_TUTOR,t.HOME_TUTORING,t.HOME_TUTORS,t.HYBRID_TEACHER_PROFILE,t.HYBRID_TEACHER,t.LEARN_MATH_ONLINE,t.LIVE_ONLINE_CLASSES,t.MATH_CLASS,t.MATH_CLASSES,t.MATHS_CLASSROOM,t.MATH_TUITION,t.MATHLETE_STUDENT_DETAILS,t.MATHS,t.MATHS_PROGRAM,t.MATHS_TEACHER,t.MATHS_TUITION,t.MATHS_YEAR,t.NEAR_ME,t.ONLINE_MATH_COURSE,t.ONLINE_MATH_COURSES,t.ONLINE_MATH_TUTORS,t.ONLINE_MATH,t.ONLINE_TUITIONS,t.PARENT_STUDENT_SEO,t.PHILOSOPHY,t.PRICING,t.PRIVATE_TUTORS,t.POD_LEARNING,t.TEACH,t.TEACHER_PROFILE,t.TRIGONOMETRY_TUTORS,t.TUITION_TEACHER,t.TUITION_TUTORS,t.TUTORING_SERVICES,t.UPGRADE,t.WHY_CHOOSE_US,t.TRIAL_UPGRADE,t.WHY_CUEMATH,t.PLUS_TEACHER_PROFILE,t.CLASS_TUITION,"/learn/problem-solving-skills/","/learn/cuemath-vs-kumon/","/learn/cuemath-vs-kumon-vs-mathnasium/","/learn/math-enrichment/","/learn/how-much-do-tutors-charge/","/learn/how-to-shape-your-childs-future/","/learn/curiosity-mathematicians-greatest-tool/","/learn/parents-mindset-math-confidence/","/learn/thinking-like-a-mathematician/"],h=[t.WORK_FROM_HOME,t.MATHS_TEACHER,t.TEACHERS_JOBS,t.TEACHER_JOBS,t.PART_TIME_JOBS,t.ONLINE_TUTORING_JOBS,t.TEACHER_SIGNUP],U=[t.GIFT,t.GIFT_INVITE,t.MATH_ADVENTURE,t.TEACHER];var G={numbers:{title:"Numbers",route:"/numbers/"},algebra:{title:"Algebra",route:"/algebra"},geometry:{title:"Geometry",route:"/geometry/"},data:{title:"Data",route:"/data/"},measurement:{title:"Measurement",route:"/measurement/"},"commercial-math":{title:"Commercial Math",route:"/commercial-math/"},trigonometry:{title:"Trigonometry",route:"/trigonometry/"},calculus:{title:"Calculus",route:"/calculus/"},learn:{title:"Learn",route:"/learn/"},learning:{title:"Learning",route:"/learning/"},"multiplication-tables":{title:"Multiplication Tables",route:"/multiplication-tables/"},calculators:{title:"Calculators",route:"/calculators/"},"math-formulas":{title:"Math Formulas",route:"/math-formulas/"},"ncert-solutions":{title:"NCERT Solutions",route:"/ncert-solutions/"},"math-olympiad":{title:"Math Olympiad",route:"/math-olympiad/"},questions:{title:"Math Questions",route:"/questions/"},worksheets:{title:"Math Worksheets",route:"/worksheets/"},worksheet:{title:"Math Worksheet",route:"worksheet"},"math-puzzles":{title:"Math Puzzles",route:"/math-puzzle"},"math-games":{title:"Math Games",route:"/math-games/"},"math-gym":{title:"Math Gym",route:"/math-gym/"},formula:{title:"Math formula",route:"-formula"},multiplication:{title:"Multiplication",route:"/multiplication/"},teach:{title:"Teach",route:"/teach/"},ncert:{title:"NCERT",route:"/ncert"},ncert2:{title:"NCERT",route:"/NCERT"},"stories-for-kids":{title:"Stories for Kids",route:"/stories-for-kids"},pdf:{title:"Pdf",route:"pdf"},download:{title:"Download",route:"download"},"cuemath-olympiad":{title:"Cuemath Olympiad",route:"cuemath-olympiad"},Maths:{title:"Maths",route:"/maths/"},Grades:{title:"Grades",route:"/grades/"},Concept:{title:"Concept",route:"concept"},Properties:{title:"Properties",route:"properties"},"Complex-numbers":{title:"Complex numbers",route:"complex-numbers"},hcl:{title:"Hcl",route:"/hcl/"},blog:{title:"Blog",route:"/blog/"},chapter:{title:"Chapter",route:"/chapter/"},program:{title:"Program",route:"/program/"},"how to":{title:"How to",route:"/how-to"},"how do":{title:"How do",route:"/how-do"},jee:{title:"How do",route:"/jee"},write:{title:"Write",route:"/write-"},example:{title:"Example of",route:"/example-of-"}};var j=a=>{let n=c(a),o=(n==null?void 0:n.split("/").filter(r=>r)[1])||"";return o==="#"?"":o},H=a=>{let n=Object.values(G),o="",r=j(a);return {isSEOPage:!!n.filter(({title:l,route:A})=>{let s=a.includes(A);return s&&(o=l),s})[0],currentPageName:o,topic:r}},Q=a=>a instanceof RegExp;function R(a=""){let n=m(c(a));if(y.includes(n))return "Brand";if(L.some(r=>Q(r)?r.test(n):n.includes(r)))return "Intent";if(h.some(r=>n.includes(r)))return "Supply";if(U.some(r=>n.includes(r)))return "Referral";let{isSEOPage:o=false}=H(n);return o?"Content":"Others"}function f(a=""){return !!m(c(a)).includes(t.TEACHER)}var X=a=>R(a)!=="Content";var E={ECNA:"ecnaV4",DOWNLOAD_JOURNEY:"downloadJourney",ECNA_EXPERIMENTS_WITH_NO_INTRO:"ecnaNoIntro",ECNA_ADVANCED_COURSE:"ecnaAdvancedCourse",SHOW_CHAT_BOT:"showChatBot",ENABLE_CLOUDFLARE_CACHING:"enableCloudflareCaching",WEBSITE_REVAMP:"websiteRevamp",CONTENT_PAGE_BANNER:"contentPageBanner",SUBJECT_FOLD:"subjectFold",HOME_PAGE_CONTENT:"homePageContent",PRODUCT_LED_ADMISSIONS:"productLedAdmissions",SIGNUP_FORM_EXPERIMENT:"signupFormExperiment"},N={CONTROL_VARIANT:"a",VARIANT_B:"b",VARIANT_C:"c",VARIANT_D:"d",VARIANT_E:"e",VARIANT_F:"f",VARIANT_G:"g",VARIANT_H:"h",VARIANT_I:"i",VARIANT_J:"j",VARIANT_K:"k",VARIANT_L:"l",VARIANT_M:"m",VARIANT_N:"n",VARIANT_P:"p",VARIANT_Q:"q",VARIANT_R:"r",VARIANT_S:"s",VARIANT_T:"t",VARIANT_W:"w",VARIANT_X:"x",VARIANT_V:"v",VARIANT_U:"u",VARIANT_Y:"y",VARIANT_Z:"z",VARIANT_AA:"aa",VARIANT_AB:"ab",VARIANT_AC:"ac",VARIANT_AD:"ad",VARIANT_AE:"ae",VARIANT_AF:"af",VARIANT_AG:"ag",VARIANT_AH:"ah",VARIANT_AI:"ai",VARIANT_AJ:"aj",VARIANT_AK:"ak",VARIANT_AL:"al",VARIANT_AM:"am",VARIANT_AN:"an",VARIANT_AO:"ao",VARIANT_AP:"ap",VARIANT_AQ:"aq"},B=["cuemathPlusV2"],ua="__ab_experiment__",Aa="last_landing_page";var V=[{name:E.ECNA_EXPERIMENTS_WITH_NO_INTRO,variants(a,n,o){let{value:r=""}=o||{},i=R(r||a);return [u.INDIA].includes(n)?i==="Content"?[{id:N.VARIANT_AD,weight:100}]:[{id:N.VARIANT_AO,weight:100}]:[u["UNITED STATES"],u.CANADA].includes(n)?[{id:N.VARIANT_AM,weight:100}]:[{id:N.VARIANT_AM,weight:100}]},forceUpdate:a=>f(a)?N.VARIANT_AL:null},{name:E.SHOW_CHAT_BOT,variants(a,n){let o=R(a);return ["Content","Referral"].includes(o)?[{id:N.CONTROL_VARIANT,weight:100}]:[u["UNITED STATES"],u.CANADA].includes(n)?[{id:N.VARIANT_C,weight:100}]:[{id:N.CONTROL_VARIANT,weight:100}]}},{name:E.HOME_PAGE_CONTENT,variants(){return [{id:N.VARIANT_C,weight:50},{id:N.VARIANT_D,weight:50}]}},{name:E.WEBSITE_REVAMP,variants(){return [{id:N.VARIANT_C,weight:50},{id:N.VARIANT_B,weight:50}]}},{name:E.CONTENT_PAGE_BANNER,variants(){return [{id:N.CONTROL_VARIANT,weight:100}]}},{name:E.SIGNUP_FORM_EXPERIMENT,variants(a){let n=R(a);return ["Brand","Intent"].includes(n)?[{id:N.CONTROL_VARIANT,weight:70},{id:N.VARIANT_B,weight:30}]:[{id:N.CONTROL_VARIANT,weight:100}]}},{name:E.ENABLE_CLOUDFLARE_CACHING,variants(){return [{id:N.CONTROL_VARIANT,weight:100}]}}];var q="2.0.1",ee=(a,n,o,r,i,l)=>{let A=m(c(a)),s={version:q},d=false;Object.entries(r).forEach(([T])=>{B.includes(T)&&(delete r[T],d=true);});let S=l||{};return V.forEach(T=>{let{name:g,variants:F,forceUpdate:_}=T,p=F(A,n,i),K=p.map(C=>C.id);if(S[g]){s[g]=S[g],d=true;return}if(K.includes(r[g])||(delete r[g],d=true),r[g])s[g]=r[g];else {let C=Math.random()*100,D=p[0];p&&p.length>1&&(typeof T.customFilter>"u"||T.customFilter(A,n))&&(D=p.find(b=>b.weight>=C?true:(C-=b.weight,false))||p[0]),s[g]=D.id,d=true;}if(typeof _=="function"){let C=_(A);C&&(s[g]=C,d=true);}}),{isABExperimentsUpdated:d,abExperiment:s}},Ra=(a,n,o,r,i,l)=>{let A=l?O(l):O(typeof document<"u"?document.cookie:""),s=i&&A[i]?A[i]:"",d=s?JSON.parse(decodeURIComponent(s)):{};return ee(a,n,A,o,r,d)},pa=(a,n,o,r)=>{if(!a||!n||!o)return;let i={},l=P(a);l&&(i={...JSON.parse(decodeURIComponent(l))||{}}),i[n]=o,M(a,JSON.stringify(i),r||1);},Sa=(a,n)=>{if(!a||!n)return;let o={},r=P(a);r&&(o={...JSON.parse(decodeURIComponent(r))||{}},delete o[n]),M(a,JSON.stringify(o),1);},Oa=a=>{a&&v(a);},Pa=a=>{let n=Object.keys(a).sort();return n.length===0?"":n.map(r=>`${r}=${a[r]}`).join("&")};var ae=1440*60*1e3,La=(a,n)=>{let o=false,r={value:m(c(a)),createdAt:new Date},i=n?JSON.parse(decodeURIComponent(n)):void 0,{createdAt:l="",value:A=""}=i||{};if(!n||!A)o=true,i=r;else {let s=new Date,d=l&&new Date(l).getTime()||0;s.getTime()-d>=ae&&(o=true,i=r);}return {isLastLandingPageUpdated:o,lastLandingPage:i}};
3
+ export{pa as $,Ge as A,z as B,He as C,fe as D,Be as E,Ve as F,Fe as G,Ke as H,ke as I,we as J,c as K,m as L,We as M,ze as N,y as O,L as P,h as Q,U as R,H as S,R as T,X as U,E as V,N as W,ua as X,Aa as Y,ee as Z,Ra as _,O as a,Sa as aa,te as b,Oa as ba,P as c,Pa as ca,v as d,La as da,M as e,oe as f,u as g,ue as h,Y as i,Ae as j,se as k,Ne as l,de as m,ge as n,k as o,w as p,Ie as q,ce as r,Ee as s,Ce as t,Re as u,Se as v,Oe as w,De as x,W as y,Z as z};//# sourceMappingURL=chunk-CVZIO6BX.mjs.map
4
+ //# sourceMappingURL=chunk-CVZIO6BX.mjs.map