vwo-fme-node-sdk 1.0.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 (385) hide show
  1. package/CONTRIBUTING.md +46 -0
  2. package/LICENSE +202 -0
  3. package/NOTICE +18 -0
  4. package/README.md +52 -0
  5. package/dist/VWO.d.ts +9 -0
  6. package/dist/VWO.js +100 -0
  7. package/dist/VWO.js.map +1 -0
  8. package/dist/VWOBuilder.d.ts +48 -0
  9. package/dist/VWOBuilder.js +173 -0
  10. package/dist/VWOBuilder.js.map +1 -0
  11. package/dist/VWOClient.d.ts +20 -0
  12. package/dist/VWOClient.js +249 -0
  13. package/dist/VWOClient.js.map +1 -0
  14. package/dist/api/GetFlag.d.ts +19 -0
  15. package/dist/api/GetFlag.js +394 -0
  16. package/dist/api/GetFlag.js.map +1 -0
  17. package/dist/api/GetVariable.d.ts +0 -0
  18. package/dist/api/GetVariable.js +1 -0
  19. package/dist/api/GetVariable.js.map +1 -0
  20. package/dist/api/GetVariables.d.ts +0 -0
  21. package/dist/api/GetVariables.js +1 -0
  22. package/dist/api/GetVariables.js.map +1 -0
  23. package/dist/api/SetAttribute.d.ts +7 -0
  24. package/dist/api/SetAttribute.js +62 -0
  25. package/dist/api/SetAttribute.js.map +1 -0
  26. package/dist/api/Track.js +76 -0
  27. package/dist/api/Track.js.map +1 -0
  28. package/dist/api/TrackEvent.d.ts +8 -0
  29. package/dist/api/TrackEvent.js +78 -0
  30. package/dist/api/TrackEvent.js.map +1 -0
  31. package/dist/constants/index.d.ts +24 -0
  32. package/dist/constants/index.js +31 -0
  33. package/dist/constants/index.js.map +1 -0
  34. package/dist/constants/url.d.ts +6 -0
  35. package/dist/constants/url.js +10 -0
  36. package/dist/constants/url.js.map +1 -0
  37. package/dist/decision-maker/index.js +75 -0
  38. package/dist/decision-maker/index.js.map +1 -0
  39. package/dist/decorators/StorageDecorator.d.ts +12 -0
  40. package/dist/decorators/StorageDecorator.js +119 -0
  41. package/dist/decorators/StorageDecorator.js.map +1 -0
  42. package/dist/enums/ApiEnum.d.ts +4 -0
  43. package/dist/enums/ApiEnum.js +9 -0
  44. package/dist/enums/ApiEnum.js.map +1 -0
  45. package/dist/enums/EventEnum.d.ts +4 -0
  46. package/dist/enums/EventEnum.js +9 -0
  47. package/dist/enums/EventEnum.js.map +1 -0
  48. package/dist/enums/HeadersEnum.d.ts +4 -0
  49. package/dist/enums/HeadersEnum.js +9 -0
  50. package/dist/enums/HeadersEnum.js.map +1 -0
  51. package/dist/enums/HooksEnum.d.ts +7 -0
  52. package/dist/enums/HooksEnum.js +8 -0
  53. package/dist/enums/HooksEnum.js.map +1 -0
  54. package/dist/enums/LogLevelEnum.d.ts +7 -0
  55. package/dist/enums/LogLevelEnum.js +12 -0
  56. package/dist/enums/LogLevelEnum.js.map +1 -0
  57. package/dist/enums/StatusEnum.d.ts +4 -0
  58. package/dist/enums/StorageEnum.d.ts +8 -0
  59. package/dist/enums/StorageEnum.js +13 -0
  60. package/dist/enums/StorageEnum.js.map +1 -0
  61. package/dist/enums/UrlEnum.d.ts +13 -0
  62. package/dist/enums/UrlEnum.js +18 -0
  63. package/dist/enums/UrlEnum.js.map +1 -0
  64. package/dist/enums/campaignTypeEnum.d.ts +5 -0
  65. package/dist/enums/campaignTypeEnum.js +10 -0
  66. package/dist/enums/campaignTypeEnum.js.map +1 -0
  67. package/dist/enums/logMessages/DbugLogMessageEnum.js +1 -0
  68. package/dist/enums/logMessages/DbugLogMessageEnum.js.map +1 -0
  69. package/dist/enums/logMessages/DebugLogMessageEnum.d.ts +3 -0
  70. package/dist/enums/logMessages/ErorLogMessageEnum.js +1 -0
  71. package/dist/enums/logMessages/ErorLogMessageEnum.js.map +1 -0
  72. package/dist/enums/logMessages/ErrorLogMessageEnum.d.ts +3 -0
  73. package/dist/enums/logMessages/debugLogMessageEnum.js +8 -0
  74. package/dist/enums/logMessages/debugLogMessageEnum.js.map +1 -0
  75. package/dist/enums/logMessages/errorLogMessageEnum.js +8 -0
  76. package/dist/enums/logMessages/errorLogMessageEnum.js.map +1 -0
  77. package/dist/enums/statusEnum.js +9 -0
  78. package/dist/enums/statusEnum.js.map +1 -0
  79. package/dist/index.d.ts +1 -0
  80. package/dist/index.js +7 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/logger/core/logManager.js +97 -0
  83. package/dist/logger/core/logManager.js.map +1 -0
  84. package/dist/logger/core/transportManager.js +60 -0
  85. package/dist/logger/core/transportManager.js.map +1 -0
  86. package/dist/logger/enums/logLevelEnum.js +12 -0
  87. package/dist/logger/enums/logLevelEnum.js.map +1 -0
  88. package/dist/logger/index.js +8 -0
  89. package/dist/logger/index.js.map +1 -0
  90. package/dist/logger/logMessageBuilder.js +43 -0
  91. package/dist/logger/logMessageBuilder.js.map +1 -0
  92. package/dist/logger/logger.js +10 -0
  93. package/dist/logger/logger.js.map +1 -0
  94. package/dist/logger/transports/consoleTransport.js +32 -0
  95. package/dist/logger/transports/consoleTransport.js.map +1 -0
  96. package/dist/models/CampaignModel.d.ts +32 -0
  97. package/dist/models/CampaignModel.js +149 -0
  98. package/dist/models/CampaignModel.js.map +1 -0
  99. package/dist/models/FeatureModel.d.ts +20 -0
  100. package/dist/models/FeatureModel.js +72 -0
  101. package/dist/models/FeatureModel.js.map +1 -0
  102. package/dist/models/ImpactCampaignModel.d.ts +7 -0
  103. package/dist/models/ImpactCampaignModel.js +21 -0
  104. package/dist/models/ImpactCampaignModel.js.map +1 -0
  105. package/dist/models/MetricModel.d.ts +12 -0
  106. package/dist/models/MetricModel.js +25 -0
  107. package/dist/models/MetricModel.js.map +1 -0
  108. package/dist/models/RuleModel.d.ts +11 -0
  109. package/dist/models/RuleModel.js +29 -0
  110. package/dist/models/RuleModel.js.map +1 -0
  111. package/dist/models/SettingsModel.d.ts +28 -0
  112. package/dist/models/SettingsModel.js +70 -0
  113. package/dist/models/SettingsModel.js.map +1 -0
  114. package/dist/models/VariableModel.d.ts +18 -0
  115. package/dist/models/VariableModel.js +38 -0
  116. package/dist/models/VariableModel.js.map +1 -0
  117. package/dist/models/VariationModel.d.ts +29 -0
  118. package/dist/models/VariationModel.js +80 -0
  119. package/dist/models/VariationModel.js.map +1 -0
  120. package/dist/models/schemas/SettingsSchemaValidation.d.ts +13 -0
  121. package/dist/models/schemas/SettingsSchemaValidation.js +70 -0
  122. package/dist/models/schemas/SettingsSchemaValidation.js.map +1 -0
  123. package/dist/modules/decision-maker/index.d.ts +38 -0
  124. package/dist/modules/decision-maker/index.js +67 -0
  125. package/dist/modules/decision-maker/index.js.map +1 -0
  126. package/dist/modules/logger/core/logManager.d.ts +40 -0
  127. package/dist/modules/logger/core/logManager.js +97 -0
  128. package/dist/modules/logger/core/logManager.js.map +1 -0
  129. package/dist/modules/logger/core/transportManager.d.ts +22 -0
  130. package/dist/modules/logger/core/transportManager.js +60 -0
  131. package/dist/modules/logger/core/transportManager.js.map +1 -0
  132. package/dist/modules/logger/enums/logLevelEnum.d.ts +7 -0
  133. package/dist/modules/logger/enums/logLevelEnum.js +12 -0
  134. package/dist/modules/logger/enums/logLevelEnum.js.map +1 -0
  135. package/dist/modules/logger/index.d.ts +2 -0
  136. package/dist/modules/logger/index.js +8 -0
  137. package/dist/modules/logger/index.js.map +1 -0
  138. package/dist/modules/logger/logMessageBuilder.d.ts +21 -0
  139. package/dist/modules/logger/logMessageBuilder.js +43 -0
  140. package/dist/modules/logger/logMessageBuilder.js.map +1 -0
  141. package/dist/modules/logger/logger.d.ts +7 -0
  142. package/dist/modules/logger/logger.js +10 -0
  143. package/dist/modules/logger/logger.js.map +1 -0
  144. package/dist/modules/logger/transports/consoleTransport.d.ts +12 -0
  145. package/dist/modules/logger/transports/consoleTransport.js +32 -0
  146. package/dist/modules/logger/transports/consoleTransport.js.map +1 -0
  147. package/dist/modules/networking/client/networkClient.d.ts +7 -0
  148. package/dist/modules/networking/client/networkClient.js +117 -0
  149. package/dist/modules/networking/client/networkClient.js.map +1 -0
  150. package/dist/modules/networking/client/networkClientInterface.d.ts +6 -0
  151. package/dist/modules/networking/client/networkClientInterface.js +3 -0
  152. package/dist/modules/networking/client/networkClientInterface.js.map +1 -0
  153. package/dist/modules/networking/handlers/requestHandler.d.ts +5 -0
  154. package/dist/modules/networking/handlers/requestHandler.js +29 -0
  155. package/dist/modules/networking/handlers/requestHandler.js.map +1 -0
  156. package/dist/modules/networking/index.d.ts +6 -0
  157. package/dist/modules/networking/index.js +14 -0
  158. package/dist/modules/networking/index.js.map +1 -0
  159. package/dist/modules/networking/manager/networkManager.d.ts +16 -0
  160. package/dist/modules/networking/manager/networkManager.js +72 -0
  161. package/dist/modules/networking/manager/networkManager.js.map +1 -0
  162. package/dist/modules/networking/models/globalRequestModel.d.ts +22 -0
  163. package/dist/modules/networking/models/globalRequestModel.js +51 -0
  164. package/dist/modules/networking/models/globalRequestModel.js.map +1 -0
  165. package/dist/modules/networking/models/requestModel.d.ts +32 -0
  166. package/dist/modules/networking/models/requestModel.js +128 -0
  167. package/dist/modules/networking/models/requestModel.js.map +1 -0
  168. package/dist/modules/networking/models/responseModel.d.ts +15 -0
  169. package/dist/modules/networking/models/responseModel.js +34 -0
  170. package/dist/modules/networking/models/responseModel.js.map +1 -0
  171. package/dist/modules/segmentor/core/segmentationManger.d.ts +10 -0
  172. package/dist/modules/segmentor/core/segmentationManger.js +68 -0
  173. package/dist/modules/segmentor/core/segmentationManger.js.map +1 -0
  174. package/dist/modules/segmentor/enums/segmentOperandRegexEnum.d.ts +10 -0
  175. package/dist/modules/segmentor/enums/segmentOperandRegexEnum.js +15 -0
  176. package/dist/modules/segmentor/enums/segmentOperandRegexEnum.js.map +1 -0
  177. package/dist/modules/segmentor/enums/segmentOperandValueEnum.d.ts +8 -0
  178. package/dist/modules/segmentor/enums/segmentOperandValueEnum.js +13 -0
  179. package/dist/modules/segmentor/enums/segmentOperandValueEnum.js.map +1 -0
  180. package/dist/modules/segmentor/enums/segmentOperatorValueEnum.d.ts +15 -0
  181. package/dist/modules/segmentor/enums/segmentOperatorValueEnum.js +20 -0
  182. package/dist/modules/segmentor/enums/segmentOperatorValueEnum.js.map +1 -0
  183. package/dist/modules/segmentor/evaluators/segmentEvaluator.d.ts +15 -0
  184. package/dist/modules/segmentor/evaluators/segmentEvaluator.js +379 -0
  185. package/dist/modules/segmentor/evaluators/segmentEvaluator.js.map +1 -0
  186. package/dist/modules/segmentor/evaluators/segmentOperandEvaluator.d.ts +12 -0
  187. package/dist/modules/segmentor/evaluators/segmentOperandEvaluator.js +248 -0
  188. package/dist/modules/segmentor/evaluators/segmentOperandEvaluator.js.map +1 -0
  189. package/dist/modules/segmentor/index.d.ts +3 -0
  190. package/dist/modules/segmentor/index.js +8 -0
  191. package/dist/modules/segmentor/index.js.map +1 -0
  192. package/dist/modules/segmentor/segmentation.d.ts +5 -0
  193. package/dist/modules/segmentor/segmentation.js +3 -0
  194. package/dist/modules/segmentor/segmentation.js.map +1 -0
  195. package/dist/modules/segmentor/utils/SegmentUtil.d.ts +2 -0
  196. package/dist/modules/segmentor/utils/SegmentUtil.js +26 -0
  197. package/dist/modules/segmentor/utils/SegmentUtil.js.map +1 -0
  198. package/dist/modules/storage/connector.d.ts +14 -0
  199. package/dist/modules/storage/connector.js +10 -0
  200. package/dist/modules/storage/connector.js.map +1 -0
  201. package/dist/modules/storage/connectors/index.d.ts +0 -0
  202. package/dist/modules/storage/connectors/index.js +3 -0
  203. package/dist/modules/storage/connectors/index.js.map +1 -0
  204. package/dist/modules/storage/connectors/memoryConnector.d.ts +26 -0
  205. package/dist/modules/storage/connectors/memoryConnector.js +103 -0
  206. package/dist/modules/storage/connectors/memoryConnector.js.map +1 -0
  207. package/dist/modules/storage/connectors/redisConnector.d.ts +0 -0
  208. package/dist/modules/storage/connectors/redisConnector.js +181 -0
  209. package/dist/modules/storage/connectors/redisConnector.js.map +1 -0
  210. package/dist/modules/storage/index.d.ts +1 -0
  211. package/dist/modules/storage/index.js +6 -0
  212. package/dist/modules/storage/index.js.map +1 -0
  213. package/dist/modules/storage/storage.d.ts +10 -0
  214. package/dist/modules/storage/storage.js +50 -0
  215. package/dist/modules/storage/storage.js.map +1 -0
  216. package/dist/networking/client/networkClient.js +117 -0
  217. package/dist/networking/client/networkClient.js.map +1 -0
  218. package/dist/networking/client/networkClientInterface.js +3 -0
  219. package/dist/networking/client/networkClientInterface.js.map +1 -0
  220. package/dist/networking/handlers/requestHandler.js +29 -0
  221. package/dist/networking/handlers/requestHandler.js.map +1 -0
  222. package/dist/networking/index.js +14 -0
  223. package/dist/networking/index.js.map +1 -0
  224. package/dist/networking/manager/networkManager.js +72 -0
  225. package/dist/networking/manager/networkManager.js.map +1 -0
  226. package/dist/networking/models/globalRequestModel.js +51 -0
  227. package/dist/networking/models/globalRequestModel.js.map +1 -0
  228. package/dist/networking/models/requestModel.js +107 -0
  229. package/dist/networking/models/requestModel.js.map +1 -0
  230. package/dist/networking/models/responseModel.js +34 -0
  231. package/dist/networking/models/responseModel.js.map +1 -0
  232. package/dist/segmentor/core/segmentationManger.js +25 -0
  233. package/dist/segmentor/core/segmentationManger.js.map +1 -0
  234. package/dist/segmentor/enums/segmentOperandRegexEnum.js +15 -0
  235. package/dist/segmentor/enums/segmentOperandRegexEnum.js.map +1 -0
  236. package/dist/segmentor/enums/segmentOperandValueEnum.js +13 -0
  237. package/dist/segmentor/enums/segmentOperandValueEnum.js.map +1 -0
  238. package/dist/segmentor/enums/segmentOperatorValueEnum.js +12 -0
  239. package/dist/segmentor/enums/segmentOperatorValueEnum.js.map +1 -0
  240. package/dist/segmentor/evaluators/segmentEvaluator.js +52 -0
  241. package/dist/segmentor/evaluators/segmentEvaluator.js.map +1 -0
  242. package/dist/segmentor/evaluators/segmentOperandEvaluator.js +158 -0
  243. package/dist/segmentor/evaluators/segmentOperandEvaluator.js.map +1 -0
  244. package/dist/segmentor/index.js +8 -0
  245. package/dist/segmentor/index.js.map +1 -0
  246. package/dist/segmentor/segmentation.js +3 -0
  247. package/dist/segmentor/segmentation.js.map +1 -0
  248. package/dist/segmentor/utils/SegmentUtil.js +27 -0
  249. package/dist/segmentor/utils/SegmentUtil.js.map +1 -0
  250. package/dist/services/CampaignDecisionService.d.ts +44 -0
  251. package/dist/services/CampaignDecisionService.js +175 -0
  252. package/dist/services/CampaignDecisionService.js.map +1 -0
  253. package/dist/services/HooksManager.d.ts +27 -0
  254. package/dist/services/HooksManager.js +40 -0
  255. package/dist/services/HooksManager.js.map +1 -0
  256. package/dist/services/SettingsManager.d.ts +21 -0
  257. package/dist/services/SettingsManager.js +168 -0
  258. package/dist/services/SettingsManager.js.map +1 -0
  259. package/dist/services/StorageService.d.ts +5 -0
  260. package/dist/services/StorageService.js +94 -0
  261. package/dist/services/StorageService.js.map +1 -0
  262. package/dist/services/UrlService.d.ts +13 -0
  263. package/dist/services/UrlService.js +37 -0
  264. package/dist/services/UrlService.js.map +1 -0
  265. package/dist/types/common.d.ts +2 -0
  266. package/dist/types/common.js +3 -0
  267. package/dist/types/common.js.map +1 -0
  268. package/dist/utils/CampaignUtil.d.ts +23 -0
  269. package/dist/utils/CampaignUtil.js +228 -0
  270. package/dist/utils/CampaignUtil.js.map +1 -0
  271. package/dist/utils/DataTypeUtil.d.ts +17 -0
  272. package/dist/utils/DataTypeUtil.js +86 -0
  273. package/dist/utils/DataTypeUtil.js.map +1 -0
  274. package/dist/utils/DecisionUtil.d.ts +4 -0
  275. package/dist/utils/DecisionUtil.js +197 -0
  276. package/dist/utils/DecisionUtil.js.map +1 -0
  277. package/dist/utils/FunctionUtil.d.ts +13 -0
  278. package/dist/utils/FunctionUtil.js +121 -0
  279. package/dist/utils/FunctionUtil.js.map +1 -0
  280. package/dist/utils/LogMessageUtil.d.ts +16 -0
  281. package/dist/utils/LogMessageUtil.js +53 -0
  282. package/dist/utils/LogMessageUtil.js.map +1 -0
  283. package/dist/utils/MegUtil.d.ts +7 -0
  284. package/dist/utils/MegUtil.js +413 -0
  285. package/dist/utils/MegUtil.js.map +1 -0
  286. package/dist/utils/NetworkUtil.d.ts +140 -0
  287. package/dist/utils/NetworkUtil.js +238 -0
  288. package/dist/utils/NetworkUtil.js.map +1 -0
  289. package/dist/utils/PromiseUtil.d.ts +1 -0
  290. package/dist/utils/PromiseUtil.js +13 -0
  291. package/dist/utils/PromiseUtil.js.map +1 -0
  292. package/dist/utils/SettingsUtil.d.ts +2 -0
  293. package/dist/utils/SettingsUtil.js +17 -0
  294. package/dist/utils/SettingsUtil.js.map +1 -0
  295. package/dist/utils/UuidUtil.d.ts +2 -0
  296. package/dist/utils/UuidUtil.js +30 -0
  297. package/dist/utils/UuidUtil.js.map +1 -0
  298. package/dist/utils/WebServiceUtil.d.ts +4 -0
  299. package/dist/utils/WebServiceUtil.js +93 -0
  300. package/dist/utils/WebServiceUtil.js.map +1 -0
  301. package/dist/utils/logMessageBuilder.d.ts +21 -0
  302. package/dist/utils/logMessageBuilder.js +43 -0
  303. package/dist/utils/logMessageBuilder.js.map +1 -0
  304. package/lib/VWO.ts +55 -0
  305. package/lib/VWOBuilder.ts +237 -0
  306. package/lib/VWOClient.ts +321 -0
  307. package/lib/api/GetFlag.ts +458 -0
  308. package/lib/api/GetVariable.ts +0 -0
  309. package/lib/api/GetVariables.ts +0 -0
  310. package/lib/api/SetAttribute.ts +33 -0
  311. package/lib/api/TrackEvent.ts +52 -0
  312. package/lib/constants/index.ts +35 -0
  313. package/lib/constants/url.ts +7 -0
  314. package/lib/decorators/StorageDecorator.ts +98 -0
  315. package/lib/enums/ApiEnum.ts +4 -0
  316. package/lib/enums/EventEnum.ts +4 -0
  317. package/lib/enums/HeadersEnum.ts +4 -0
  318. package/lib/enums/HooksEnum.ts +11 -0
  319. package/lib/enums/LogLevelEnum.ts +7 -0
  320. package/lib/enums/StatusEnum.ts +4 -0
  321. package/lib/enums/StorageEnum.ts +8 -0
  322. package/lib/enums/UrlEnum.ts +13 -0
  323. package/lib/enums/campaignTypeEnum.ts +5 -0
  324. package/lib/enums/logMessages/DebugLogMessageEnum.ts +3 -0
  325. package/lib/enums/logMessages/ErrorLogMessageEnum.ts +3 -0
  326. package/lib/index.ts +1 -0
  327. package/lib/models/CampaignModel.ts +176 -0
  328. package/lib/models/FeatureModel.ts +81 -0
  329. package/lib/models/ImpactCampaignModel.ts +20 -0
  330. package/lib/models/MetricModel.ts +31 -0
  331. package/lib/models/RuleModel.ts +35 -0
  332. package/lib/models/SettingsModel.ts +95 -0
  333. package/lib/models/VariableModel.ts +51 -0
  334. package/lib/models/VariationModel.ts +101 -0
  335. package/lib/models/schemas/SettingsSchemaValidation.ts +83 -0
  336. package/lib/modules/decision-maker/index.ts +65 -0
  337. package/lib/modules/logger/core/logManager.ts +113 -0
  338. package/lib/modules/logger/core/transportManager.ts +76 -0
  339. package/lib/modules/logger/enums/logLevelEnum.ts +7 -0
  340. package/lib/modules/logger/index.ts +2 -0
  341. package/lib/modules/logger/logMessageBuilder.ts +60 -0
  342. package/lib/modules/logger/logger.ts +7 -0
  343. package/lib/modules/logger/transports/consoleTransport.ts +37 -0
  344. package/lib/modules/networking/client/networkClient.ts +128 -0
  345. package/lib/modules/networking/client/networkClientInterface.ts +8 -0
  346. package/lib/modules/networking/handlers/requestHandler.ts +28 -0
  347. package/lib/modules/networking/index.ts +6 -0
  348. package/lib/modules/networking/manager/networkManager.ts +77 -0
  349. package/lib/modules/networking/models/globalRequestModel.ts +69 -0
  350. package/lib/modules/networking/models/requestModel.ts +164 -0
  351. package/lib/modules/networking/models/responseModel.ts +40 -0
  352. package/lib/modules/segmentor/core/segmentationManger.ts +22 -0
  353. package/lib/modules/segmentor/enums/segmentOperandRegexEnum.ts +10 -0
  354. package/lib/modules/segmentor/enums/segmentOperandValueEnum.ts +8 -0
  355. package/lib/modules/segmentor/enums/segmentOperatorValueEnum.ts +15 -0
  356. package/lib/modules/segmentor/evaluators/segmentEvaluator.ts +239 -0
  357. package/lib/modules/segmentor/evaluators/segmentOperandEvaluator.ts +199 -0
  358. package/lib/modules/segmentor/index.ts +3 -0
  359. package/lib/modules/segmentor/segmentation.ts +6 -0
  360. package/lib/modules/segmentor/utils/SegmentUtil.ts +23 -0
  361. package/lib/modules/storage/connector.ts +25 -0
  362. package/lib/modules/storage/connectors/index.ts +2 -0
  363. package/lib/modules/storage/connectors/memoryConnector.ts +115 -0
  364. package/lib/modules/storage/connectors/redisConnector.ts +180 -0
  365. package/lib/modules/storage/index.ts +1 -0
  366. package/lib/modules/storage/storage.ts +48 -0
  367. package/lib/services/CampaignDecisionService.ts +160 -0
  368. package/lib/services/HooksManager.ts +50 -0
  369. package/lib/services/SettingsManager.ts +167 -0
  370. package/lib/services/StorageService.ts +53 -0
  371. package/lib/services/UrlService.ts +50 -0
  372. package/lib/types/common.ts +13 -0
  373. package/lib/utils/CampaignUtil.ts +236 -0
  374. package/lib/utils/DataTypeUtil.ts +87 -0
  375. package/lib/utils/DecisionUtil.ts +180 -0
  376. package/lib/utils/FunctionUtil.ts +105 -0
  377. package/lib/utils/LogMessageUtil.ts +52 -0
  378. package/lib/utils/MegUtil.ts +408 -0
  379. package/lib/utils/NetworkUtil.ts +262 -0
  380. package/lib/utils/PromiseUtil.ts +10 -0
  381. package/lib/utils/SettingsUtil.ts +18 -0
  382. package/lib/utils/UuidUtil.ts +33 -0
  383. package/lib/utils/WebServiceUtil.ts +60 -0
  384. package/lib/utils/logMessageBuilder.ts +60 -0
  385. package/package.json +70 -0
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.NetworkUtil = void 0;
40
+ var UuidUtil_1 = require("./UuidUtil");
41
+ var FunctionUtil_1 = require("./FunctionUtil");
42
+ var constants_1 = require("../constants");
43
+ var UrlService_1 = require("../services/UrlService");
44
+ var UrlEnum_1 = require("../enums/UrlEnum");
45
+ var logger_1 = require("../modules/logger");
46
+ var networking_1 = require("../modules/networking");
47
+ var networking_2 = require("../modules/networking");
48
+ var DataTypeUtil_1 = require("./DataTypeUtil");
49
+ var HeadersEnum_1 = require("../enums/HeadersEnum");
50
+ var NetworkUtil = /** @class */ (function () {
51
+ function NetworkUtil() {
52
+ }
53
+ NetworkUtil.prototype.getBasePropertiesForBulk = function (accountId, userId) {
54
+ var path = {
55
+ sId: (0, FunctionUtil_1.getCurrentUnixTimestamp)(),
56
+ u: (0, UuidUtil_1.getUUID)(userId, accountId),
57
+ };
58
+ return path;
59
+ };
60
+ NetworkUtil.prototype.getSettingsPath = function (apikey, accountId) {
61
+ var path = {
62
+ i: "".concat(apikey),
63
+ r: Math.random(),
64
+ a: accountId,
65
+ };
66
+ return path;
67
+ };
68
+ NetworkUtil.prototype.getTrackEventPath = function (event, accountId, userId) {
69
+ var path = {
70
+ event_type: event,
71
+ account_id: accountId,
72
+ uId: userId,
73
+ u: (0, UuidUtil_1.getUUID)(userId, accountId),
74
+ sdk: constants_1.Constants.SDK_NAME,
75
+ 'sdk-v': constants_1.Constants.SDK_VERSION,
76
+ random: (0, FunctionUtil_1.getRandomNumber)(),
77
+ ap: constants_1.Constants.AP,
78
+ sId: (0, FunctionUtil_1.getCurrentUnixTimestamp)(),
79
+ ed: JSON.stringify({ p: 'server' }),
80
+ };
81
+ return path;
82
+ };
83
+ NetworkUtil.prototype.getEventBatchingQueryParams = function (accountId) {
84
+ var path = {
85
+ a: accountId,
86
+ sd: constants_1.Constants.SDK_NAME,
87
+ sv: constants_1.Constants.SDK_VERSION,
88
+ };
89
+ return path;
90
+ };
91
+ /**
92
+ * Builds generic properties for different tracking calls required by VWO servers.
93
+ * @param {Object} configObj
94
+ * @param {String} eventName
95
+ * @returns properties
96
+ */
97
+ NetworkUtil.prototype.getEventsBaseProperties = function (setting, eventName, visitorUserAgent, ipAddress) {
98
+ if (visitorUserAgent === void 0) { visitorUserAgent = ''; }
99
+ if (ipAddress === void 0) { ipAddress = ''; }
100
+ var sdkKey = setting.sdkKey;
101
+ var properties = Object.assign({
102
+ en: eventName,
103
+ a: setting.accountId,
104
+ env: sdkKey,
105
+ eTime: (0, FunctionUtil_1.getCurrentUnixTimestampInMillis)(),
106
+ random: (0, FunctionUtil_1.getRandomNumber)(),
107
+ p: 'FS',
108
+ visitor_ua: visitorUserAgent,
109
+ visitor_ip: ipAddress,
110
+ });
111
+ properties.url = constants_1.Constants.HTTPS_PROTOCOL + UrlService_1.default.getBaseUrl() + UrlEnum_1.UrlEnum.EVENTS;
112
+ return properties;
113
+ };
114
+ /**
115
+ * Builds generic payload required by all the different tracking calls.
116
+ * @param {Object} settings settings file
117
+ * @param {String} userId user id
118
+ * @param {String} eventName event name
119
+ * @returns properties
120
+ */
121
+ NetworkUtil.prototype.getEventBasePayload = function (settings, userId, eventName, visitorUserAgent, ipAddress) {
122
+ if (visitorUserAgent === void 0) { visitorUserAgent = ''; }
123
+ if (ipAddress === void 0) { ipAddress = ''; }
124
+ var uuid = (0, UuidUtil_1.getUUID)(userId, settings.accountId);
125
+ var sdkKey = settings.sdkKey;
126
+ var props = {
127
+ vwo_sdkName: constants_1.Constants.SDK_NAME,
128
+ vwo_sdkVersion: constants_1.Constants.SDK_VERSION,
129
+ vwo_envKey: sdkKey,
130
+ };
131
+ var properties = {
132
+ d: {
133
+ msgId: "".concat(uuid, "-").concat((0, FunctionUtil_1.getCurrentUnixTimestampInMillis)()),
134
+ visId: uuid,
135
+ sessionId: (0, FunctionUtil_1.getCurrentUnixTimestamp)(),
136
+ visitor_ua: visitorUserAgent,
137
+ visitor_ip: ipAddress,
138
+ event: {
139
+ props: props,
140
+ name: eventName,
141
+ time: (0, FunctionUtil_1.getCurrentUnixTimestampInMillis)(),
142
+ },
143
+ visitor: {
144
+ props: {
145
+ vwo_fs_environment: sdkKey,
146
+ },
147
+ },
148
+ },
149
+ };
150
+ return properties;
151
+ };
152
+ /**
153
+ * Builds payload to track the visitor.
154
+ * @param {Object} configObj
155
+ * @param {String} userId
156
+ * @param {String} eventName
157
+ * @param {String} campaignId
158
+ * @param {Number} variationId
159
+ * @returns track-user payload
160
+ */
161
+ NetworkUtil.prototype.getTrackUserPayloadData = function (settings, userId, eventName, campaignId, variationId, visitorUserAgent, ipAddress) {
162
+ if (visitorUserAgent === void 0) { visitorUserAgent = ''; }
163
+ if (ipAddress === void 0) { ipAddress = ''; }
164
+ var properties = this.getEventBasePayload(settings, userId, eventName, visitorUserAgent, ipAddress);
165
+ properties.d.event.props.id = campaignId;
166
+ properties.d.event.props.variation = variationId;
167
+ properties.d.event.props.isFirst = 1;
168
+ logger_1.LogManager.Instance.debug("IMPRESSION_FOR_EVENT_ARCH_TRACK_USER: Impression built for vwo_variationShown event for Account ID:".concat(settings.accountId, ", User ID:").concat(userId, ", and Campaign ID:").concat(campaignId));
169
+ return properties;
170
+ };
171
+ NetworkUtil.prototype.getTrackGoalPayloadData = function (settings, userId, eventName, eventProperties, visitorUserAgent, ipAddress) {
172
+ if (visitorUserAgent === void 0) { visitorUserAgent = ''; }
173
+ if (ipAddress === void 0) { ipAddress = ''; }
174
+ var properties = this.getEventBasePayload(settings, userId, eventName, visitorUserAgent, ipAddress);
175
+ properties.d.event.props.isCustomEvent = true;
176
+ properties.d.event.props.variation = 1; // temporary value
177
+ properties.d.event.props.id = 1; // temporary value
178
+ if (eventProperties && (0, DataTypeUtil_1.isObject)(eventProperties) && Object.keys(eventProperties).length > 0) {
179
+ for (var prop in eventProperties) {
180
+ properties.d.event.props[prop] = eventProperties[prop];
181
+ }
182
+ }
183
+ logger_1.LogManager.Instance.debug("IMPRESSION_FOR_EVENT_ARCH_TRACK_GOAL: Impression built for ".concat(eventName, " event for Account ID:").concat(settings.accountId, ", User ID:").concat(userId));
184
+ return properties;
185
+ };
186
+ NetworkUtil.prototype.getAttributePayloadData = function (settings, userId, eventName, attributeKey, attributeValue, visitorUserAgent, ipAddress) {
187
+ if (visitorUserAgent === void 0) { visitorUserAgent = ''; }
188
+ if (ipAddress === void 0) { ipAddress = ''; }
189
+ var properties = this.getEventBasePayload(settings, userId, eventName, visitorUserAgent, ipAddress);
190
+ properties.d.event.props.isCustomEvent = true;
191
+ properties.d.event.props[constants_1.Constants.VWO_FS_ENVIRONMENT] = settings.sdkKey;
192
+ properties.d.visitor.props[attributeKey] = attributeValue;
193
+ logger_1.LogManager.Instance.debug("IMPRESSION_FOR_EVENT_ARCH_SYNC_VISITOR_PROP: Impression built for ".concat(eventName, " event for Account ID:").concat(settings.accountId, ", User ID:").concat(userId));
194
+ return properties;
195
+ };
196
+ NetworkUtil.prototype.sendPostApiRequest = function (properties, payload) {
197
+ networking_1.NetworkManager.Instance.attachClient();
198
+ var headers = {};
199
+ var userAgent = payload.d.visitor_ua;
200
+ var ipAddress = payload.d.visitor_ip;
201
+ // Set headers
202
+ if (userAgent)
203
+ headers[HeadersEnum_1.HeadersEnum.USER_AGENT] = userAgent;
204
+ if (ipAddress)
205
+ headers[HeadersEnum_1.HeadersEnum.IP] = ipAddress;
206
+ var request = new networking_2.RequestModel(UrlService_1.default.getBaseUrl(), 'POST', UrlEnum_1.UrlEnum.EVENTS, properties, payload, headers, null, UrlService_1.default.getPort());
207
+ networking_1.NetworkManager.Instance.post(request).catch(function (err) {
208
+ console.log('error', err);
209
+ });
210
+ };
211
+ NetworkUtil.prototype.sendGetApiRequest = function (properties, endpoint) {
212
+ return __awaiter(this, void 0, void 0, function () {
213
+ var request, response, err_1;
214
+ return __generator(this, function (_a) {
215
+ switch (_a.label) {
216
+ case 0:
217
+ networking_1.NetworkManager.Instance.attachClient();
218
+ request = new networking_2.RequestModel(UrlService_1.default.getBaseUrl(), 'Get', endpoint, properties, null, null, null, UrlService_1.default.getPort());
219
+ _a.label = 1;
220
+ case 1:
221
+ _a.trys.push([1, 3, , 4]);
222
+ return [4 /*yield*/, networking_1.NetworkManager.Instance.get(request)];
223
+ case 2:
224
+ response = _a.sent();
225
+ return [2 /*return*/, response]; // Return the response model
226
+ case 3:
227
+ err_1 = _a.sent();
228
+ console.error('Error occurred while sending GET request:', err_1);
229
+ return [2 /*return*/, null];
230
+ case 4: return [2 /*return*/];
231
+ }
232
+ });
233
+ });
234
+ };
235
+ return NetworkUtil;
236
+ }());
237
+ exports.NetworkUtil = NetworkUtil;
238
+ //# sourceMappingURL=NetworkUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NetworkUtil.js","sourceRoot":"","sources":["../../lib/utils/NetworkUtil.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function Deferred(): void;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Deferred = void 0;
4
+ function Deferred() {
5
+ var _this = this;
6
+ this.promise = new Promise(function (resolve, reject) {
7
+ _this.resolve = resolve;
8
+ _this.reject = reject;
9
+ });
10
+ return this;
11
+ }
12
+ exports.Deferred = Deferred;
13
+ //# sourceMappingURL=PromiseUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromiseUtil.js","sourceRoot":"","sources":["../../lib/utils/PromiseUtil.ts"],"names":[],"mappings":";;;AAEA,SAAgB,QAAQ;IAAxB,iBAOC;IANC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,UAAC,OAAgB,EAAE,MAAe;QAC3D,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAPD,4BAOC"}
@@ -0,0 +1,2 @@
1
+ import { SettingsModel } from '../models/SettingsModel';
2
+ export declare function processSettings(settings: SettingsModel): SettingsModel;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processSettings = void 0;
4
+ var SettingsModel_1 = require("../models/SettingsModel");
5
+ function processSettings(settings) {
6
+ var parsedSettings = new SettingsModel_1.SettingsModel(settings);
7
+ var features = parsedSettings === null || parsedSettings === void 0 ? void 0 : parsedSettings.getFeatures();
8
+ // features.forEach((feature: FeatureModel) => {
9
+ // feature.getCampaigns().forEach((campaign: CampaignModel) => {
10
+ // campaign.setFeatureDetails(feature.getId(), feature.getKey());
11
+ // setVariationAllocation(campaign.getVariations(), feature.getVariables());
12
+ // });
13
+ // });
14
+ return parsedSettings;
15
+ }
16
+ exports.processSettings = processSettings;
17
+ //# sourceMappingURL=SettingsUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsUtil.js","sourceRoot":"","sources":["../../lib/utils/SettingsUtil.ts"],"names":[],"mappings":";;;AACA,yDAAwD;AAKxD,SAAgB,eAAe,CAAC,QAAuB;IACrD,IAAM,cAAc,GAAkB,IAAI,6BAAa,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAM,QAAQ,GAAwB,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,EAAE,CAAC;IACpE,gDAAgD;IAChD,kEAAkE;IAClE,qEAAqE;IACrE,gFAAgF;IAChF,QAAQ;IACR,MAAM;IAEN,OAAO,cAAc,CAAC;AACxB,CAAC;AAXD,0CAWC"}
@@ -0,0 +1,2 @@
1
+ export declare function getRandomUUID(apiKey: string): string;
2
+ export declare function getUUID(userId: string, accountId: string): string;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getUUID = exports.getRandomUUID = void 0;
4
+ var uuid_1 = require("uuid");
5
+ var uuid_2 = require("uuid");
6
+ // import { Constants } from '../constants';
7
+ var VWO_NAMESPACE = (0, uuid_2.v5)('https://vwo.com', uuid_2.v5.URL);
8
+ function getRandomUUID(apiKey) {
9
+ var namespace = (0, uuid_2.v5)(apiKey, uuid_2.v5.DNS);
10
+ var randomUUID = (0, uuid_2.v5)((0, uuid_1.v4)(), namespace);
11
+ return randomUUID;
12
+ }
13
+ exports.getRandomUUID = getRandomUUID;
14
+ function getUUID(userId, accountId) {
15
+ // type case userId to string
16
+ userId = String(userId);
17
+ accountId = String(accountId);
18
+ var userIdNamespace = generateUUID(accountId, VWO_NAMESPACE);
19
+ var uuidForUserIdAccountId = generateUUID(userId, userIdNamespace);
20
+ var desiredUuid = uuidForUserIdAccountId.replace(/-/gi, '').toUpperCase();
21
+ return desiredUuid;
22
+ }
23
+ exports.getUUID = getUUID;
24
+ function generateUUID(name, namespace) {
25
+ if (!name || !namespace) {
26
+ return;
27
+ }
28
+ return (0, uuid_2.v5)(name, namespace);
29
+ }
30
+ //# sourceMappingURL=UuidUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UuidUtil.js","sourceRoot":"","sources":["../../lib/utils/UuidUtil.ts"],"names":[],"mappings":";;;AAAA,6BAAoC;AACpC,6BAAoC;AAEpC,4CAA4C;AAE5C,IAAM,aAAa,GAAG,IAAA,SAAM,EAAC,iBAAiB,EAAE,SAAM,CAAC,GAAG,CAAC,CAAC;AAE5D,SAAgB,aAAa,CAAC,MAAc;IAC1C,IAAM,SAAS,GAAG,IAAA,SAAM,EAAC,MAAM,EAAE,SAAM,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAM,UAAU,GAAG,IAAA,SAAM,EAAC,IAAA,SAAM,GAAE,EAAE,SAAS,CAAC,CAAC;IAE/C,OAAO,UAAU,CAAC;AACpB,CAAC;AALD,sCAKC;AAED,SAAgB,OAAO,CAAC,MAAc,EAAE,SAAiB;IACvD,6BAA6B;IAC7B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACxB,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9B,IAAM,eAAe,GAAG,YAAY,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAM,sBAAsB,GAAG,YAAY,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAErE,IAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAE5E,OAAO,WAAW,CAAC;AACrB,CAAC;AAVD,0BAUC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,SAAiB;IACnD,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IAED,OAAO,IAAA,SAAM,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { dynamic } from '../types/common';
2
+ export declare function getFromWebService(queryParams: any, endpoint: any): Promise<any>;
3
+ export declare function getQueryParamForLocationPreSegment(ipAddress: string): Record<string, dynamic>;
4
+ export declare function getQueryParamForUaParser(userAgent: string): Record<string, dynamic>;
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.getQueryParamForUaParser = exports.getQueryParamForLocationPreSegment = exports.getFromWebService = void 0;
40
+ var UrlService_1 = require("../services/UrlService");
41
+ var networking_1 = require("../modules/networking");
42
+ var PromiseUtil_1 = require("../utils/PromiseUtil");
43
+ var logger_1 = require("../modules/logger");
44
+ var UrlEnum_1 = require("../enums/UrlEnum");
45
+ function getFromWebService(queryParams, endpoint) {
46
+ return __awaiter(this, void 0, void 0, function () {
47
+ var deferredObject, networkInstance, request;
48
+ return __generator(this, function (_a) {
49
+ deferredObject = new PromiseUtil_1.Deferred();
50
+ networkInstance = networking_1.NetworkManager.Instance;
51
+ if (UrlService_1.default.getBaseUrl() === UrlEnum_1.UrlEnum.BASE_URL) {
52
+ logger_1.LogManager.Instance.info('Invalid URL. Please provide a valid URL for vwo helper webService');
53
+ deferredObject.resolve(false);
54
+ return [2 /*return*/, deferredObject.promise];
55
+ }
56
+ try {
57
+ request = new networking_1.RequestModel(UrlService_1.default.getBaseUrl(), 'GET', endpoint, queryParams, null, null, null, UrlService_1.default.getPort());
58
+ networkInstance
59
+ .get(request)
60
+ .then(function (response) {
61
+ deferredObject.resolve(response.getData());
62
+ })
63
+ .catch(function (err) {
64
+ deferredObject.reject(err);
65
+ });
66
+ return [2 /*return*/, deferredObject.promise];
67
+ }
68
+ catch (err) {
69
+ console.error('Error occurred while sending GET request:', err);
70
+ deferredObject.resolve(false);
71
+ return [2 /*return*/, deferredObject.promise];
72
+ }
73
+ return [2 /*return*/];
74
+ });
75
+ });
76
+ }
77
+ exports.getFromWebService = getFromWebService;
78
+ function getQueryParamForLocationPreSegment(ipAddress) {
79
+ var path = {
80
+ ipAddress: "".concat(ipAddress),
81
+ };
82
+ return path;
83
+ }
84
+ exports.getQueryParamForLocationPreSegment = getQueryParamForLocationPreSegment;
85
+ function getQueryParamForUaParser(userAgent) {
86
+ userAgent = encodeURIComponent(userAgent);
87
+ var path = {
88
+ userAgent: "".concat(userAgent),
89
+ };
90
+ return path;
91
+ }
92
+ exports.getQueryParamForUaParser = getQueryParamForUaParser;
93
+ //# sourceMappingURL=WebServiceUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebServiceUtil.js","sourceRoot":"","sources":["../../lib/utils/WebServiceUtil.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAgD;AAEhD,oDAAoF;AAEpF,oDAAgD;AAChD,4CAA+C;AAC/C,4CAA2C;AAE3C,SAAsB,iBAAiB,CAAC,WAAgB,EAAE,QAAa;;;;YAE/D,cAAc,GAAG,IAAI,sBAAQ,EAAE,CAAC;YAChC,eAAe,GAAG,2BAAc,CAAC,QAAQ,CAAC;YAChD,IAAI,oBAAU,CAAC,UAAU,EAAE,KAAK,iBAAO,CAAC,QAAQ,EAAE,CAAC;gBACjD,mBAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBAC9F,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,sBAAO,cAAc,CAAC,OAAO,EAAC;YAChC,CAAC;YACD,IAAI,CAAC;gBACG,OAAO,GAAiB,IAAI,yBAAY,CAC5C,oBAAU,CAAC,UAAU,EAAE,EACvB,KAAK,EACL,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,oBAAU,CAAC,OAAO,EAAE,CACrB,CAAC;gBAEF,eAAe;qBACZ,GAAG,CAAC,OAAO,CAAC;qBACZ,IAAI,CAAC,UAAC,QAAuB;oBAC5B,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC7C,CAAC,CAAC;qBACD,KAAK,CAAC,UAAC,GAAkB;oBACxB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBAEL,sBAAO,cAAc,CAAC,OAAO,EAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;gBAChE,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,sBAAO,cAAc,CAAC,OAAO,EAAC;YAChC,CAAC;;;;CACF;AApCD,8CAoCC;AAED,SAAgB,kCAAkC,CAAC,SAAiB;IAClE,IAAM,IAAI,GAA4B;QACpC,SAAS,EAAE,UAAG,SAAS,CAAE;KAC1B,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AALD,gFAKC;AAED,SAAgB,wBAAwB,CAAC,SAAiB;IACxD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAM,IAAI,GAA4B;QACpC,SAAS,EAAE,UAAG,SAAS,CAAE;KAC1B,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AAND,4DAMC"}
@@ -0,0 +1,21 @@
1
+ import { dynamic } from '../types/common';
2
+ interface ILogMessageBuilder {
3
+ loggerConfig: Record<string, dynamic>;
4
+ transportConfig: Record<string, dynamic>;
5
+ prefix: string;
6
+ dateTimeFormat: dynamic;
7
+ formatMessage(level: string, message: string): string;
8
+ getFormattedLevel(level: string): string;
9
+ getFormattedDateTime(): string;
10
+ }
11
+ export declare class LogMessageBuilder implements ILogMessageBuilder {
12
+ loggerConfig: Record<string, dynamic>;
13
+ transportConfig: Record<string, dynamic>;
14
+ prefix: any;
15
+ dateTimeFormat: any;
16
+ constructor(loggerConfig: Record<string, dynamic>, transportConfig: Record<string, dynamic>);
17
+ formatMessage(level: string, message: string): string;
18
+ getFormattedLevel(level: string): string;
19
+ getFormattedDateTime(): string;
20
+ }
21
+ export {};
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LogMessageBuilder = void 0;
4
+ var LogLevelEnum_1 = require("../enums/LogLevelEnum");
5
+ var LogMessageBuilder = /** @class */ (function () {
6
+ function LogMessageBuilder(loggerConfig, transportConfig) {
7
+ this.loggerConfig = loggerConfig;
8
+ this.transportConfig = transportConfig;
9
+ this.prefix = this.transportConfig.prefix || this.loggerConfig.prefix || '';
10
+ this.dateTimeFormat = this.transportConfig.dateTimeFormat || this.loggerConfig.dateTimeFormat;
11
+ }
12
+ LogMessageBuilder.prototype.formatMessage = function (level, message) {
13
+ return "".concat(this.getFormattedLevel(level), " ").concat(this.prefix, " ").concat(this.getFormattedDateTime(), " ").concat(message);
14
+ };
15
+ LogMessageBuilder.prototype.getFormattedLevel = function (level) {
16
+ var _a;
17
+ var upperCaseLevel = level.toUpperCase();
18
+ var AnsiColorEnum = {
19
+ BOLD: '\x1b[1m',
20
+ CYAN: '\x1b[36m',
21
+ GREEN: '\x1b[32m',
22
+ LIGHTBLUE: '\x1b[94m',
23
+ RED: '\x1b[31m',
24
+ RESET: '\x1b[0m',
25
+ WHITE: '\x1b[30m',
26
+ YELLOW: '\x1b[33m',
27
+ };
28
+ var LogLevelColorInfoEnum = (_a = {},
29
+ _a[LogLevelEnum_1.LogLevelEnum.TRACE] = "".concat(AnsiColorEnum.BOLD).concat(AnsiColorEnum.WHITE).concat(upperCaseLevel).concat(AnsiColorEnum.RESET),
30
+ _a[LogLevelEnum_1.LogLevelEnum.DEBUG] = "".concat(AnsiColorEnum.BOLD).concat(AnsiColorEnum.LIGHTBLUE).concat(upperCaseLevel, " ").concat(AnsiColorEnum.RESET),
31
+ _a[LogLevelEnum_1.LogLevelEnum.INFO] = "".concat(AnsiColorEnum.BOLD).concat(AnsiColorEnum.CYAN).concat(upperCaseLevel, " ").concat(AnsiColorEnum.RESET),
32
+ _a[LogLevelEnum_1.LogLevelEnum.WARN] = "".concat(AnsiColorEnum.BOLD).concat(AnsiColorEnum.YELLOW).concat(upperCaseLevel, " ").concat(AnsiColorEnum.RESET),
33
+ _a[LogLevelEnum_1.LogLevelEnum.ERROR] = "".concat(AnsiColorEnum.BOLD).concat(AnsiColorEnum.RED).concat(upperCaseLevel, " ").concat(AnsiColorEnum.RESET),
34
+ _a);
35
+ return LogLevelColorInfoEnum[level];
36
+ };
37
+ LogMessageBuilder.prototype.getFormattedDateTime = function () {
38
+ return this.dateTimeFormat();
39
+ };
40
+ return LogMessageBuilder;
41
+ }());
42
+ exports.LogMessageBuilder = LogMessageBuilder;
43
+ //# sourceMappingURL=logMessageBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logMessageBuilder.js","sourceRoot":"","sources":["../../lib/utils/logMessageBuilder.ts"],"names":[],"mappings":";;;AAAA,sDAAqD;AAcrD;IAME,2BAAY,YAAqC,EAAE,eAAwC;QACzF,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,EAAE,CAAC;QAC5E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;IAChG,CAAC;IAED,yCAAa,GAAb,UAAc,KAAa,EAAE,OAAe;QAC1C,OAAO,UAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAI,IAAI,CAAC,MAAM,cAAI,IAAI,CAAC,oBAAoB,EAAE,cAAI,OAAO,CAAE,CAAC;IACrG,CAAC;IAED,6CAAiB,GAAjB,UAAkB,KAAa;;QAC7B,IAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAM,aAAa,GAAG;YACpB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,UAAU;YACrB,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,UAAU;SACnB,CAAC;QAEF,IAAM,qBAAqB;YACzB,GAAC,2BAAY,CAAC,KAAK,IAAG,UAAG,aAAa,CAAC,IAAI,SAAG,aAAa,CAAC,KAAK,SAAG,cAAc,SAAG,aAAa,CAAC,KAAK,CAAE;YAC1G,GAAC,2BAAY,CAAC,KAAK,IAAG,UAAG,aAAa,CAAC,IAAI,SAAG,aAAa,CAAC,SAAS,SAAG,cAAc,cAAI,aAAa,CAAC,KAAK,CAAE;YAC/G,GAAC,2BAAY,CAAC,IAAI,IAAG,UAAG,aAAa,CAAC,IAAI,SAAG,aAAa,CAAC,IAAI,SAAG,cAAc,eAAK,aAAa,CAAC,KAAK,CAAE;YAC1G,GAAC,2BAAY,CAAC,IAAI,IAAG,UAAG,aAAa,CAAC,IAAI,SAAG,aAAa,CAAC,MAAM,SAAG,cAAc,eAAK,aAAa,CAAC,KAAK,CAAE;YAC5G,GAAC,2BAAY,CAAC,KAAK,IAAG,UAAG,aAAa,CAAC,IAAI,SAAG,aAAa,CAAC,GAAG,SAAG,cAAc,cAAI,aAAa,CAAC,KAAK,CAAE;eAC1G,CAAC;QAEF,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,gDAAoB,GAApB;QACE,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IACH,wBAAC;AAAD,CAAC,AA7CD,IA6CC;AA7CY,8CAAiB"}
package/lib/VWO.ts ADDED
@@ -0,0 +1,55 @@
1
+ import { VWOBuilder } from './VWOBuilder';
2
+ import { isObject, isString } from './utils/DataTypeUtil';
3
+ import { dynamic } from './types/common';
4
+ import { SettingsModel } from './models/SettingsModel';
5
+
6
+ export class VWO {
7
+ private static vwoBuilder: VWOBuilder;
8
+ private static instance: dynamic;
9
+
10
+ constructor(options: Record<string, dynamic> = {}) {
11
+ return VWO.setInstance(options);
12
+ }
13
+
14
+ private static setInstance(options: Record<string, dynamic>) {
15
+ this.vwoBuilder = new VWOBuilder(options);
16
+ this.instance = this.vwoBuilder
17
+ .setSettingsManager()
18
+ .setStorage()
19
+ .setLogger()
20
+ .setNetworkManager()
21
+ .setSegmentation()
22
+ .initBatching()
23
+ .initPolling()
24
+ // .getSettings()
25
+ // .setAnalyticsCallback()
26
+
27
+ return this.vwoBuilder.getSettings().then((settings: SettingsModel) => {
28
+ return this.vwoBuilder.build(settings);
29
+ })
30
+
31
+ // return this.instance;
32
+ }
33
+
34
+ static get Instance(): dynamic {
35
+ return this.instance;
36
+ }
37
+ }
38
+
39
+ export async function init(options: Record<string, dynamic> = {}) {
40
+ if (!isObject(options)) {
41
+ throw new Error('Options should be of type object.');
42
+ }
43
+
44
+ if (!options.sdkKey || !isString(options.sdkKey)) {
45
+ throw new Error('Please provide the sdkKey in the options and should be a of type string');
46
+ }
47
+
48
+ if (!options.accountId) {
49
+ throw new Error('Please provide VWO account ID in the options and should be a of type string|number');
50
+ }
51
+
52
+ const instance = await new VWO(options);
53
+
54
+ return instance;
55
+ }