@splitsoftware/splitio-commons 1.0.1-rc.5 → 1.2.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 (561) hide show
  1. package/CHANGES.txt +13 -3
  2. package/LICENSE +1 -1
  3. package/README.md +1 -1
  4. package/cjs/evaluator/Engine.js +6 -5
  5. package/cjs/evaluator/combiners/and.js +4 -4
  6. package/cjs/evaluator/combiners/ifelseif.js +4 -3
  7. package/cjs/evaluator/condition/index.js +4 -3
  8. package/cjs/evaluator/index.js +7 -7
  9. package/cjs/evaluator/matchers/all.js +2 -1
  10. package/cjs/evaluator/matchers/between.js +2 -1
  11. package/cjs/evaluator/matchers/boolean.js +2 -1
  12. package/cjs/evaluator/matchers/cont_all.js +3 -2
  13. package/cjs/evaluator/matchers/cont_any.js +3 -2
  14. package/cjs/evaluator/matchers/cont_str.js +2 -1
  15. package/cjs/evaluator/matchers/dependency.js +4 -4
  16. package/cjs/evaluator/matchers/eq.js +2 -1
  17. package/cjs/evaluator/matchers/eq_set.js +2 -1
  18. package/cjs/evaluator/matchers/ew.js +2 -1
  19. package/cjs/evaluator/matchers/gte.js +2 -1
  20. package/cjs/evaluator/matchers/index.js +36 -36
  21. package/cjs/evaluator/matchers/lte.js +2 -1
  22. package/cjs/evaluator/matchers/part_of.js +3 -2
  23. package/cjs/evaluator/matchers/segment.js +5 -5
  24. package/cjs/evaluator/matchers/string.js +2 -1
  25. package/cjs/evaluator/matchers/sw.js +2 -1
  26. package/cjs/evaluator/matchers/whitelist.js +2 -1
  27. package/cjs/evaluator/matchersTransform/index.js +12 -12
  28. package/cjs/evaluator/matchersTransform/segment.js +3 -2
  29. package/cjs/evaluator/matchersTransform/set.js +3 -2
  30. package/cjs/evaluator/matchersTransform/unaryNumeric.js +3 -2
  31. package/cjs/evaluator/matchersTransform/whitelist.js +3 -2
  32. package/cjs/evaluator/parser/index.js +16 -16
  33. package/cjs/evaluator/treatments/index.js +2 -1
  34. package/cjs/evaluator/value/index.js +5 -5
  35. package/cjs/evaluator/value/sanitize.js +2 -1
  36. package/cjs/integrations/browser.js +4 -4
  37. package/cjs/integrations/ga/GaToSplit.js +3 -4
  38. package/cjs/integrations/pluggable.js +3 -2
  39. package/cjs/listeners/browser.js +4 -4
  40. package/cjs/listeners/node.js +4 -4
  41. package/cjs/logger/index.js +2 -3
  42. package/cjs/logger/messages/info.js +1 -1
  43. package/cjs/logger/messages/warn.js +2 -2
  44. package/cjs/readiness/readinessManager.js +3 -4
  45. package/cjs/readiness/sdkReadinessManager.js +7 -7
  46. package/cjs/sdkClient/client.js +5 -5
  47. package/cjs/sdkClient/clientAttributesDecoration.js +108 -0
  48. package/cjs/sdkClient/clientCS.js +12 -10
  49. package/cjs/sdkClient/clientInputValidation.js +5 -5
  50. package/cjs/sdkClient/sdkClient.js +5 -6
  51. package/cjs/sdkClient/sdkClientMethodCS.js +4 -5
  52. package/cjs/sdkClient/sdkClientMethodCSWithTT.js +4 -5
  53. package/cjs/sdkFactory/index.js +9 -10
  54. package/cjs/sdkManager/index.js +6 -7
  55. package/cjs/services/splitApi.js +2 -3
  56. package/cjs/services/splitHttpClient.js +3 -4
  57. package/cjs/storages/AbstractSegmentsCacheSync.js +2 -1
  58. package/cjs/storages/AbstractSplitsCacheAsync.js +2 -1
  59. package/cjs/storages/AbstractSplitsCacheSync.js +2 -2
  60. package/cjs/storages/KeyBuilder.js +2 -2
  61. package/cjs/storages/KeyBuilderCS.js +4 -3
  62. package/cjs/storages/KeyBuilderSS.js +4 -3
  63. package/cjs/storages/findLatencyIndex.js +2 -1
  64. package/cjs/storages/inLocalStorage/MySegmentsCacheInLocal.js +4 -3
  65. package/cjs/storages/inLocalStorage/SplitsCacheInLocal.js +4 -3
  66. package/cjs/storages/inLocalStorage/index.js +20 -21
  67. package/cjs/storages/inMemory/AttributesCacheInMemory.js +70 -0
  68. package/cjs/storages/inMemory/CountsCacheInMemory.js +2 -1
  69. package/cjs/storages/inMemory/EventsCacheInMemory.js +2 -1
  70. package/cjs/storages/inMemory/ImpressionCountsCacheInMemory.js +2 -1
  71. package/cjs/storages/inMemory/ImpressionsCacheInMemory.js +2 -1
  72. package/cjs/storages/inMemory/InMemoryStorage.js +10 -11
  73. package/cjs/storages/inMemory/InMemoryStorageCS.js +12 -13
  74. package/cjs/storages/inMemory/LatenciesCacheInMemory.js +4 -4
  75. package/cjs/storages/inMemory/MySegmentsCacheInMemory.js +4 -3
  76. package/cjs/storages/inMemory/SegmentsCacheInMemory.js +4 -3
  77. package/cjs/storages/inMemory/SplitsCacheInMemory.js +4 -3
  78. package/cjs/storages/inRedis/CountsCacheInRedis.js +2 -1
  79. package/cjs/storages/inRedis/EventsCacheInRedis.js +2 -1
  80. package/cjs/storages/inRedis/ImpressionsCacheInRedis.js +2 -1
  81. package/cjs/storages/inRedis/LatenciesCacheInRedis.js +4 -4
  82. package/cjs/storages/inRedis/RedisAdapter.js +6 -5
  83. package/cjs/storages/inRedis/SegmentsCacheInRedis.js +2 -1
  84. package/cjs/storages/inRedis/SplitsCacheInRedis.js +4 -3
  85. package/cjs/storages/inRedis/index.js +16 -17
  86. package/cjs/storages/pluggable/SplitsCachePluggable.js +2 -2
  87. package/cjs/storages/pluggable/index.js +8 -8
  88. package/cjs/sync/offline/splitsParser/parseCondition.js +2 -1
  89. package/cjs/sync/offline/splitsParser/splitsParserFromFile.js +3 -3
  90. package/cjs/sync/offline/splitsParser/splitsParserFromSettings.js +2 -3
  91. package/cjs/sync/offline/syncManagerOffline.js +3 -4
  92. package/cjs/sync/offline/syncTasks/fromObjectSyncTask.js +4 -5
  93. package/cjs/sync/polling/fetchers/mySegmentsFetcher.js +2 -1
  94. package/cjs/sync/polling/fetchers/segmentChangesFetcher.js +2 -1
  95. package/cjs/sync/polling/fetchers/splitChangesFetcher.js +2 -1
  96. package/cjs/sync/polling/pollingManagerCS.js +6 -6
  97. package/cjs/sync/polling/pollingManagerSS.js +8 -8
  98. package/cjs/sync/polling/syncTasks/mySegmentsSyncTask.js +5 -5
  99. package/cjs/sync/polling/syncTasks/segmentsSyncTask.js +5 -5
  100. package/cjs/sync/polling/syncTasks/splitsSyncTask.js +5 -5
  101. package/cjs/sync/polling/updaters/mySegmentsUpdater.js +2 -3
  102. package/cjs/sync/polling/updaters/segmentChangesUpdater.js +2 -3
  103. package/cjs/sync/polling/updaters/splitChangesUpdater.js +8 -6
  104. package/cjs/sync/streaming/AuthClient/index.js +2 -3
  105. package/cjs/sync/streaming/SSEClient/index.js +2 -1
  106. package/cjs/sync/streaming/SSEHandler/NotificationKeeper.js +2 -1
  107. package/cjs/sync/streaming/SSEHandler/index.js +4 -4
  108. package/cjs/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.js +4 -4
  109. package/cjs/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.js +4 -4
  110. package/cjs/sync/streaming/UpdateWorkers/SplitsUpdateWorker.js +4 -4
  111. package/cjs/sync/streaming/pushManager.js +18 -17
  112. package/cjs/sync/submitters/submitterSyncTask.js +2 -3
  113. package/cjs/sync/syncTask.js +2 -1
  114. package/cjs/trackers/eventTracker.js +7 -7
  115. package/cjs/trackers/impressionObserver/ImpressionObserver.js +4 -4
  116. package/cjs/trackers/impressionObserver/impressionObserverCS.js +2 -3
  117. package/cjs/trackers/impressionObserver/impressionObserverSS.js +2 -3
  118. package/cjs/trackers/impressionsTracker.js +6 -6
  119. package/cjs/utils/Backoff.js +2 -1
  120. package/cjs/utils/LRUCache/index.js +2 -1
  121. package/cjs/utils/MinEventEmitter.js +2 -1
  122. package/cjs/utils/inputValidation/attribute.js +20 -0
  123. package/cjs/utils/inputValidation/attributes.js +13 -1
  124. package/cjs/utils/inputValidation/trafficTypeExistance.js +2 -3
  125. package/cjs/utils/lang/binarySearch.js +2 -1
  126. package/cjs/utils/lang/objectAssign.js +85 -0
  127. package/cjs/utils/promise/thenable.js +5 -1
  128. package/cjs/utils/promise/timeout.js +2 -1
  129. package/cjs/utils/promise/wrapper.js +2 -1
  130. package/cjs/utils/settingsValidation/impressionsMode.js +2 -1
  131. package/cjs/utils/settingsValidation/index.js +5 -6
  132. package/cjs/utils/settingsValidation/mode.js +2 -1
  133. package/cjs/utils/timeTracker/index.js +7 -8
  134. package/cjs/utils/timeTracker/now/browser.js +2 -2
  135. package/cjs/utils/timeTracker/now/node.js +2 -1
  136. package/cjs/utils/timeTracker/timer.js +3 -2
  137. package/esm/evaluator/Engine.js +3 -3
  138. package/esm/evaluator/combiners/and.js +2 -2
  139. package/esm/evaluator/combiners/ifelseif.js +2 -2
  140. package/esm/evaluator/condition/index.js +2 -2
  141. package/esm/evaluator/index.js +2 -2
  142. package/esm/evaluator/matchers/all.js +1 -1
  143. package/esm/evaluator/matchers/between.js +1 -1
  144. package/esm/evaluator/matchers/boolean.js +1 -1
  145. package/esm/evaluator/matchers/cont_all.js +1 -1
  146. package/esm/evaluator/matchers/cont_any.js +1 -1
  147. package/esm/evaluator/matchers/cont_str.js +1 -1
  148. package/esm/evaluator/matchers/dependency.js +2 -2
  149. package/esm/evaluator/matchers/eq.js +1 -1
  150. package/esm/evaluator/matchers/eq_set.js +1 -1
  151. package/esm/evaluator/matchers/ew.js +1 -1
  152. package/esm/evaluator/matchers/gte.js +1 -1
  153. package/esm/evaluator/matchers/index.js +35 -35
  154. package/esm/evaluator/matchers/lte.js +1 -1
  155. package/esm/evaluator/matchers/part_of.js +1 -1
  156. package/esm/evaluator/matchers/segment.js +2 -2
  157. package/esm/evaluator/matchers/string.js +1 -1
  158. package/esm/evaluator/matchers/sw.js +1 -1
  159. package/esm/evaluator/matchers/whitelist.js +1 -1
  160. package/esm/evaluator/matchersTransform/index.js +5 -5
  161. package/esm/evaluator/matchersTransform/segment.js +1 -1
  162. package/esm/evaluator/matchersTransform/set.js +1 -1
  163. package/esm/evaluator/matchersTransform/unaryNumeric.js +1 -1
  164. package/esm/evaluator/matchersTransform/whitelist.js +1 -1
  165. package/esm/evaluator/parser/index.js +11 -11
  166. package/esm/evaluator/treatments/index.js +1 -1
  167. package/esm/evaluator/value/index.js +3 -3
  168. package/esm/evaluator/value/sanitize.js +1 -1
  169. package/esm/integrations/browser.js +2 -2
  170. package/esm/integrations/ga/GaToSplit.js +1 -1
  171. package/esm/integrations/pluggable.js +1 -1
  172. package/esm/listeners/browser.js +2 -2
  173. package/esm/listeners/node.js +2 -2
  174. package/esm/logger/index.js +1 -1
  175. package/esm/logger/messages/info.js +1 -1
  176. package/esm/logger/messages/warn.js +2 -2
  177. package/esm/readiness/readinessManager.js +1 -1
  178. package/esm/readiness/sdkReadinessManager.js +3 -3
  179. package/esm/sdkClient/client.js +2 -2
  180. package/esm/sdkClient/clientAttributesDecoration.js +104 -0
  181. package/esm/sdkClient/clientCS.js +10 -8
  182. package/esm/sdkClient/clientInputValidation.js +2 -2
  183. package/esm/sdkClient/sdkClient.js +3 -3
  184. package/esm/sdkClient/sdkClientMethodCS.js +4 -4
  185. package/esm/sdkClient/sdkClientMethodCSWithTT.js +4 -4
  186. package/esm/sdkFactory/index.js +6 -6
  187. package/esm/sdkManager/index.js +2 -2
  188. package/esm/services/splitApi.js +1 -1
  189. package/esm/services/splitHttpClient.js +1 -1
  190. package/esm/storages/AbstractSegmentsCacheSync.js +1 -1
  191. package/esm/storages/AbstractSplitsCacheAsync.js +1 -1
  192. package/esm/storages/AbstractSplitsCacheSync.js +1 -1
  193. package/esm/storages/KeyBuilder.js +1 -1
  194. package/esm/storages/KeyBuilderCS.js +2 -2
  195. package/esm/storages/KeyBuilderSS.js +2 -2
  196. package/esm/storages/findLatencyIndex.js +1 -1
  197. package/esm/storages/inLocalStorage/MySegmentsCacheInLocal.js +2 -2
  198. package/esm/storages/inLocalStorage/SplitsCacheInLocal.js +2 -2
  199. package/esm/storages/inLocalStorage/index.js +8 -8
  200. package/esm/storages/inMemory/AttributesCacheInMemory.js +67 -0
  201. package/esm/storages/inMemory/CountsCacheInMemory.js +1 -1
  202. package/esm/storages/inMemory/EventsCacheInMemory.js +1 -1
  203. package/esm/storages/inMemory/ImpressionCountsCacheInMemory.js +1 -1
  204. package/esm/storages/inMemory/ImpressionsCacheInMemory.js +1 -1
  205. package/esm/storages/inMemory/InMemoryStorage.js +5 -5
  206. package/esm/storages/inMemory/InMemoryStorageCS.js +5 -5
  207. package/esm/storages/inMemory/LatenciesCacheInMemory.js +2 -2
  208. package/esm/storages/inMemory/MySegmentsCacheInMemory.js +2 -2
  209. package/esm/storages/inMemory/SegmentsCacheInMemory.js +2 -2
  210. package/esm/storages/inMemory/SplitsCacheInMemory.js +2 -2
  211. package/esm/storages/inRedis/CountsCacheInRedis.js +1 -1
  212. package/esm/storages/inRedis/EventsCacheInRedis.js +1 -1
  213. package/esm/storages/inRedis/ImpressionsCacheInRedis.js +1 -1
  214. package/esm/storages/inRedis/LatenciesCacheInRedis.js +2 -2
  215. package/esm/storages/inRedis/RedisAdapter.js +3 -3
  216. package/esm/storages/inRedis/SegmentsCacheInRedis.js +1 -1
  217. package/esm/storages/inRedis/SplitsCacheInRedis.js +2 -2
  218. package/esm/storages/inRedis/index.js +8 -8
  219. package/esm/storages/pluggable/SplitsCachePluggable.js +1 -1
  220. package/esm/storages/pluggable/index.js +4 -4
  221. package/esm/sync/offline/splitsParser/parseCondition.js +1 -1
  222. package/esm/sync/offline/splitsParser/splitsParserFromFile.js +1 -1
  223. package/esm/sync/offline/splitsParser/splitsParserFromSettings.js +1 -1
  224. package/esm/sync/offline/syncManagerOffline.js +2 -2
  225. package/esm/sync/offline/syncTasks/fromObjectSyncTask.js +2 -2
  226. package/esm/sync/polling/fetchers/mySegmentsFetcher.js +1 -1
  227. package/esm/sync/polling/fetchers/segmentChangesFetcher.js +1 -1
  228. package/esm/sync/polling/fetchers/splitChangesFetcher.js +1 -1
  229. package/esm/sync/polling/pollingManagerCS.js +3 -3
  230. package/esm/sync/polling/pollingManagerSS.js +4 -4
  231. package/esm/sync/polling/syncTasks/mySegmentsSyncTask.js +3 -3
  232. package/esm/sync/polling/syncTasks/segmentsSyncTask.js +3 -3
  233. package/esm/sync/polling/syncTasks/splitsSyncTask.js +3 -3
  234. package/esm/sync/polling/updaters/mySegmentsUpdater.js +1 -1
  235. package/esm/sync/polling/updaters/segmentChangesUpdater.js +1 -1
  236. package/esm/sync/polling/updaters/splitChangesUpdater.js +7 -4
  237. package/esm/sync/streaming/AuthClient/index.js +1 -1
  238. package/esm/sync/streaming/SSEClient/index.js +1 -1
  239. package/esm/sync/streaming/SSEHandler/NotificationKeeper.js +1 -1
  240. package/esm/sync/streaming/SSEHandler/index.js +2 -2
  241. package/esm/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.js +2 -2
  242. package/esm/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.js +2 -2
  243. package/esm/sync/streaming/UpdateWorkers/SplitsUpdateWorker.js +2 -2
  244. package/esm/sync/streaming/pushManager.js +10 -9
  245. package/esm/sync/submitters/submitterSyncTask.js +1 -1
  246. package/esm/sync/syncTask.js +1 -1
  247. package/esm/trackers/eventTracker.js +3 -3
  248. package/esm/trackers/impressionObserver/ImpressionObserver.js +2 -2
  249. package/esm/trackers/impressionObserver/impressionObserverCS.js +1 -1
  250. package/esm/trackers/impressionObserver/impressionObserverSS.js +1 -1
  251. package/esm/trackers/impressionsTracker.js +3 -3
  252. package/esm/utils/Backoff.js +1 -1
  253. package/esm/utils/LRUCache/index.js +1 -1
  254. package/esm/utils/MinEventEmitter.js +1 -1
  255. package/esm/utils/inputValidation/attribute.js +16 -0
  256. package/esm/utils/inputValidation/attributes.js +11 -0
  257. package/esm/utils/inputValidation/trafficTypeExistance.js +1 -1
  258. package/esm/utils/lang/binarySearch.js +1 -1
  259. package/esm/utils/lang/objectAssign.js +82 -0
  260. package/esm/utils/promise/thenable.js +3 -1
  261. package/esm/utils/promise/timeout.js +1 -1
  262. package/esm/utils/promise/wrapper.js +1 -1
  263. package/esm/utils/settingsValidation/impressionsMode.js +1 -1
  264. package/esm/utils/settingsValidation/index.js +3 -3
  265. package/esm/utils/settingsValidation/mode.js +1 -1
  266. package/esm/utils/timeTracker/index.js +4 -5
  267. package/esm/utils/timeTracker/now/browser.js +1 -2
  268. package/esm/utils/timeTracker/now/node.js +1 -1
  269. package/esm/utils/timeTracker/timer.js +1 -1
  270. package/package.json +2 -3
  271. package/src/evaluator/Engine.ts +3 -3
  272. package/src/evaluator/combiners/and.ts +2 -2
  273. package/src/evaluator/combiners/ifelseif.ts +2 -2
  274. package/src/evaluator/condition/index.ts +2 -2
  275. package/src/evaluator/index.ts +2 -2
  276. package/src/evaluator/matchers/all.ts +1 -1
  277. package/src/evaluator/matchers/between.ts +1 -1
  278. package/src/evaluator/matchers/boolean.ts +1 -1
  279. package/src/evaluator/matchers/cont_all.ts +1 -1
  280. package/src/evaluator/matchers/cont_any.ts +1 -1
  281. package/src/evaluator/matchers/cont_str.ts +1 -1
  282. package/src/evaluator/matchers/dependency.ts +2 -2
  283. package/src/evaluator/matchers/eq.ts +1 -1
  284. package/src/evaluator/matchers/eq_set.ts +1 -1
  285. package/src/evaluator/matchers/ew.ts +1 -1
  286. package/src/evaluator/matchers/gte.ts +1 -1
  287. package/src/evaluator/matchers/index.ts +35 -35
  288. package/src/evaluator/matchers/lte.ts +1 -1
  289. package/src/evaluator/matchers/part_of.ts +1 -1
  290. package/src/evaluator/matchers/segment.ts +2 -2
  291. package/src/evaluator/matchers/string.ts +1 -1
  292. package/src/evaluator/matchers/sw.ts +1 -1
  293. package/src/evaluator/matchers/whitelist.ts +1 -1
  294. package/src/evaluator/matchersTransform/index.ts +5 -5
  295. package/src/evaluator/matchersTransform/segment.ts +1 -1
  296. package/src/evaluator/matchersTransform/set.ts +1 -1
  297. package/src/evaluator/matchersTransform/unaryNumeric.ts +1 -1
  298. package/src/evaluator/matchersTransform/whitelist.ts +1 -1
  299. package/src/evaluator/parser/index.ts +12 -12
  300. package/src/evaluator/treatments/index.ts +1 -1
  301. package/src/evaluator/value/index.ts +3 -3
  302. package/src/evaluator/value/sanitize.ts +1 -1
  303. package/src/integrations/browser.ts +2 -2
  304. package/src/integrations/ga/GaToSplit.ts +1 -1
  305. package/src/integrations/pluggable.ts +1 -1
  306. package/src/listeners/browser.ts +2 -2
  307. package/src/listeners/node.ts +2 -2
  308. package/src/logger/index.ts +1 -1
  309. package/src/logger/messages/info.ts +1 -1
  310. package/src/logger/messages/warn.ts +2 -2
  311. package/src/readiness/readinessManager.ts +2 -2
  312. package/src/readiness/sdkReadinessManager.ts +3 -3
  313. package/src/sdkClient/client.ts +2 -2
  314. package/src/sdkClient/clientAttributesDecoration.ts +122 -0
  315. package/src/sdkClient/clientCS.ts +13 -8
  316. package/src/sdkClient/clientInputValidation.ts +2 -2
  317. package/src/sdkClient/sdkClient.ts +3 -3
  318. package/src/sdkClient/sdkClientMethodCS.ts +4 -2
  319. package/src/sdkClient/sdkClientMethodCSWithTT.ts +4 -2
  320. package/src/sdkFactory/index.ts +6 -6
  321. package/src/sdkManager/index.ts +2 -2
  322. package/src/services/splitApi.ts +1 -1
  323. package/src/services/splitHttpClient.ts +1 -1
  324. package/src/storages/AbstractSegmentsCacheSync.ts +1 -1
  325. package/src/storages/AbstractSplitsCacheAsync.ts +1 -1
  326. package/src/storages/AbstractSplitsCacheSync.ts +1 -1
  327. package/src/storages/KeyBuilder.ts +1 -1
  328. package/src/storages/KeyBuilderCS.ts +2 -2
  329. package/src/storages/KeyBuilderSS.ts +2 -2
  330. package/src/storages/findLatencyIndex.ts +1 -1
  331. package/src/storages/inLocalStorage/MySegmentsCacheInLocal.ts +3 -3
  332. package/src/storages/inLocalStorage/SplitsCacheInLocal.ts +3 -3
  333. package/src/storages/inLocalStorage/index.ts +8 -8
  334. package/src/storages/inMemory/AttributesCacheInMemory.ts +73 -0
  335. package/src/storages/inMemory/CountsCacheInMemory.ts +1 -1
  336. package/src/storages/inMemory/EventsCacheInMemory.ts +1 -1
  337. package/src/storages/inMemory/ImpressionCountsCacheInMemory.ts +1 -1
  338. package/src/storages/inMemory/ImpressionsCacheInMemory.ts +1 -1
  339. package/src/storages/inMemory/InMemoryStorage.ts +5 -5
  340. package/src/storages/inMemory/InMemoryStorageCS.ts +5 -5
  341. package/src/storages/inMemory/LatenciesCacheInMemory.ts +2 -2
  342. package/src/storages/inMemory/MySegmentsCacheInMemory.ts +2 -2
  343. package/src/storages/inMemory/SegmentsCacheInMemory.ts +2 -2
  344. package/src/storages/inMemory/SplitsCacheInMemory.ts +2 -2
  345. package/src/storages/inRedis/CountsCacheInRedis.ts +2 -2
  346. package/src/storages/inRedis/EventsCacheInRedis.ts +1 -1
  347. package/src/storages/inRedis/ImpressionsCacheInRedis.ts +1 -1
  348. package/src/storages/inRedis/LatenciesCacheInRedis.ts +3 -3
  349. package/src/storages/inRedis/RedisAdapter.ts +3 -3
  350. package/src/storages/inRedis/SegmentsCacheInRedis.ts +2 -2
  351. package/src/storages/inRedis/SplitsCacheInRedis.ts +3 -3
  352. package/src/storages/inRedis/index.ts +8 -8
  353. package/src/storages/pluggable/SegmentsCachePluggable.ts +1 -1
  354. package/src/storages/pluggable/SplitsCachePluggable.ts +2 -2
  355. package/src/storages/pluggable/index.ts +4 -4
  356. package/src/storages/types.ts +2 -2
  357. package/src/sync/offline/splitsParser/parseCondition.ts +1 -1
  358. package/src/sync/offline/splitsParser/splitsParserFromFile.ts +1 -1
  359. package/src/sync/offline/splitsParser/splitsParserFromSettings.ts +1 -1
  360. package/src/sync/offline/syncManagerOffline.ts +2 -2
  361. package/src/sync/offline/syncTasks/fromObjectSyncTask.ts +2 -2
  362. package/src/sync/polling/fetchers/mySegmentsFetcher.ts +1 -1
  363. package/src/sync/polling/fetchers/segmentChangesFetcher.ts +1 -1
  364. package/src/sync/polling/fetchers/splitChangesFetcher.ts +1 -1
  365. package/src/sync/polling/pollingManagerCS.ts +3 -3
  366. package/src/sync/polling/pollingManagerSS.ts +4 -4
  367. package/src/sync/polling/syncTasks/mySegmentsSyncTask.ts +3 -3
  368. package/src/sync/polling/syncTasks/segmentsSyncTask.ts +3 -3
  369. package/src/sync/polling/syncTasks/splitsSyncTask.ts +3 -3
  370. package/src/sync/polling/updaters/mySegmentsUpdater.ts +1 -1
  371. package/src/sync/polling/updaters/segmentChangesUpdater.ts +1 -1
  372. package/src/sync/polling/updaters/splitChangesUpdater.ts +6 -3
  373. package/src/sync/streaming/AuthClient/index.ts +1 -1
  374. package/src/sync/streaming/SSEClient/index.ts +1 -1
  375. package/src/sync/streaming/SSEHandler/NotificationKeeper.ts +1 -1
  376. package/src/sync/streaming/SSEHandler/index.ts +2 -2
  377. package/src/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.ts +2 -2
  378. package/src/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.ts +2 -2
  379. package/src/sync/streaming/UpdateWorkers/SplitsUpdateWorker.ts +2 -2
  380. package/src/sync/streaming/UpdateWorkers/types.ts +1 -1
  381. package/src/sync/streaming/pushManager.ts +10 -9
  382. package/src/sync/submitters/submitterSyncTask.ts +1 -1
  383. package/src/sync/syncTask.ts +1 -1
  384. package/src/trackers/eventTracker.ts +3 -3
  385. package/src/trackers/impressionObserver/ImpressionObserver.ts +2 -2
  386. package/src/trackers/impressionObserver/impressionObserverCS.ts +1 -1
  387. package/src/trackers/impressionObserver/impressionObserverSS.ts +1 -1
  388. package/src/trackers/impressionsTracker.ts +3 -3
  389. package/src/types.ts +39 -0
  390. package/src/utils/Backoff.ts +1 -1
  391. package/src/utils/LRUCache/index.ts +1 -1
  392. package/src/utils/MinEventEmitter.ts +1 -1
  393. package/src/utils/inputValidation/attribute.ts +21 -0
  394. package/src/utils/inputValidation/attributes.ts +14 -0
  395. package/src/utils/inputValidation/trafficTypeExistance.ts +1 -1
  396. package/src/utils/lang/binarySearch.ts +1 -1
  397. package/src/utils/lang/objectAssign.ts +104 -0
  398. package/src/utils/promise/thenable.ts +3 -1
  399. package/src/utils/promise/timeout.ts +1 -1
  400. package/src/utils/promise/wrapper.ts +1 -1
  401. package/src/utils/settingsValidation/impressionsMode.ts +1 -1
  402. package/src/utils/settingsValidation/index.ts +3 -3
  403. package/src/utils/settingsValidation/mode.ts +1 -1
  404. package/src/utils/timeTracker/index.ts +4 -6
  405. package/src/utils/timeTracker/now/browser.ts +1 -3
  406. package/src/utils/timeTracker/now/node.ts +1 -1
  407. package/src/utils/timeTracker/timer.ts +1 -1
  408. package/types/evaluator/Engine.d.ts +1 -1
  409. package/types/evaluator/combiners/and.d.ts +1 -1
  410. package/types/evaluator/combiners/ifelseif.d.ts +1 -1
  411. package/types/evaluator/condition/index.d.ts +1 -1
  412. package/types/evaluator/matchers/all.d.ts +1 -1
  413. package/types/evaluator/matchers/between.d.ts +1 -1
  414. package/types/evaluator/matchers/boolean.d.ts +1 -1
  415. package/types/evaluator/matchers/cont_all.d.ts +1 -1
  416. package/types/evaluator/matchers/cont_any.d.ts +1 -1
  417. package/types/evaluator/matchers/cont_str.d.ts +1 -1
  418. package/types/evaluator/matchers/dependency.d.ts +1 -1
  419. package/types/evaluator/matchers/eq.d.ts +1 -1
  420. package/types/evaluator/matchers/eq_set.d.ts +1 -1
  421. package/types/evaluator/matchers/ew.d.ts +1 -1
  422. package/types/evaluator/matchers/gte.d.ts +1 -1
  423. package/types/evaluator/matchers/index.d.ts +1 -1
  424. package/types/evaluator/matchers/lte.d.ts +1 -1
  425. package/types/evaluator/matchers/part_of.d.ts +1 -1
  426. package/types/evaluator/matchers/segment.d.ts +1 -1
  427. package/types/evaluator/matchers/string.d.ts +1 -1
  428. package/types/evaluator/matchers/sw.d.ts +1 -1
  429. package/types/evaluator/matchers/whitelist.d.ts +1 -1
  430. package/types/evaluator/matchersTransform/index.d.ts +1 -1
  431. package/types/evaluator/matchersTransform/segment.d.ts +1 -1
  432. package/types/evaluator/matchersTransform/set.d.ts +1 -1
  433. package/types/evaluator/matchersTransform/unaryNumeric.d.ts +1 -1
  434. package/types/evaluator/matchersTransform/whitelist.d.ts +1 -1
  435. package/types/evaluator/parser/index.d.ts +1 -1
  436. package/types/evaluator/treatments/index.d.ts +1 -1
  437. package/types/evaluator/value/index.d.ts +1 -1
  438. package/types/evaluator/value/sanitize.d.ts +1 -1
  439. package/types/integrations/browser.d.ts +1 -1
  440. package/types/integrations/pluggable.d.ts +1 -1
  441. package/types/listeners/browser.d.ts +1 -1
  442. package/types/listeners/node.d.ts +1 -1
  443. package/types/logger/browser/{debugLogger.d.ts → DebugLogger.d.ts} +0 -0
  444. package/types/logger/browser/{errorLogger.d.ts → ErrorLogger.d.ts} +0 -0
  445. package/types/logger/browser/{infoLogger.d.ts → InfoLogger.d.ts} +0 -0
  446. package/types/logger/browser/{warnLogger.d.ts → WarnLogger.d.ts} +0 -0
  447. package/types/readiness/sdkReadinessManager.d.ts +1 -1
  448. package/types/sdkClient/client.d.ts +1 -1
  449. package/types/sdkClient/clientAttributesDecoration.d.ts +51 -0
  450. package/types/sdkClient/clientCS.d.ts +2 -1
  451. package/types/sdkClient/clientInputValidation.d.ts +1 -1
  452. package/types/storages/AbstractSegmentsCacheSync.d.ts +1 -1
  453. package/types/storages/AbstractSplitsCacheAsync.d.ts +1 -1
  454. package/types/storages/AbstractSplitsCacheSync.d.ts +1 -1
  455. package/types/storages/KeyBuilder.d.ts +1 -1
  456. package/types/storages/KeyBuilderCS.d.ts +2 -2
  457. package/types/storages/KeyBuilderSS.d.ts +2 -2
  458. package/types/storages/findLatencyIndex.d.ts +1 -1
  459. package/types/storages/inLocalStorage/MySegmentsCacheInLocal.d.ts +3 -3
  460. package/types/storages/inLocalStorage/SplitsCacheInLocal.d.ts +3 -3
  461. package/types/storages/inMemory/AttributesCacheInMemory.d.ts +43 -0
  462. package/types/storages/inMemory/CountsCacheInMemory.d.ts +1 -1
  463. package/types/storages/inMemory/EventsCacheInMemory.d.ts +1 -1
  464. package/types/storages/inMemory/ImpressionCountsCacheInMemory.d.ts +1 -1
  465. package/types/storages/inMemory/ImpressionsCacheInMemory.d.ts +1 -1
  466. package/types/storages/inMemory/LatenciesCacheInMemory.d.ts +1 -1
  467. package/types/storages/inMemory/MySegmentsCacheInMemory.d.ts +2 -2
  468. package/types/storages/inMemory/SegmentsCacheInMemory.d.ts +2 -2
  469. package/types/storages/inMemory/SplitsCacheInMemory.d.ts +2 -2
  470. package/types/storages/inRedis/CountsCacheInRedis.d.ts +2 -2
  471. package/types/storages/inRedis/EventsCacheInRedis.d.ts +1 -1
  472. package/types/storages/inRedis/ImpressionsCacheInRedis.d.ts +1 -1
  473. package/types/storages/inRedis/LatenciesCacheInRedis.d.ts +2 -2
  474. package/types/storages/inRedis/RedisAdapter.d.ts +1 -1
  475. package/types/storages/inRedis/SegmentsCacheInRedis.d.ts +2 -2
  476. package/types/storages/inRedis/SplitsCacheInRedis.d.ts +3 -3
  477. package/types/storages/pluggable/SegmentsCachePluggable.d.ts +1 -1
  478. package/types/storages/pluggable/SplitsCachePluggable.d.ts +2 -2
  479. package/types/storages/types.d.ts +2 -2
  480. package/types/sync/offline/splitsParser/parseCondition.d.ts +1 -1
  481. package/types/sync/offline/syncTasks/fromObjectSyncTask.d.ts +1 -1
  482. package/types/sync/polling/fetchers/mySegmentsFetcher.d.ts +1 -1
  483. package/types/sync/polling/fetchers/segmentChangesFetcher.d.ts +1 -1
  484. package/types/sync/polling/fetchers/splitChangesFetcher.d.ts +1 -1
  485. package/types/sync/polling/pollingManagerCS.d.ts +1 -1
  486. package/types/sync/polling/pollingManagerSS.d.ts +1 -1
  487. package/types/sync/polling/syncTasks/mySegmentsSyncTask.d.ts +1 -1
  488. package/types/sync/polling/syncTasks/segmentsSyncTask.d.ts +1 -1
  489. package/types/sync/polling/syncTasks/splitsSyncTask.d.ts +1 -1
  490. package/types/sync/streaming/SSEClient/index.d.ts +1 -1
  491. package/types/sync/streaming/SSEHandler/NotificationKeeper.d.ts +1 -1
  492. package/types/sync/streaming/SSEHandler/index.d.ts +1 -1
  493. package/types/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.d.ts +2 -2
  494. package/types/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.d.ts +2 -2
  495. package/types/sync/streaming/UpdateWorkers/SplitsUpdateWorker.d.ts +2 -2
  496. package/types/sync/streaming/UpdateWorkers/types.d.ts +1 -1
  497. package/types/sync/streaming/pushManager.d.ts +1 -1
  498. package/types/sync/syncTask.d.ts +1 -1
  499. package/types/trackers/eventTracker.d.ts +1 -1
  500. package/types/trackers/impressionObserver/ImpressionObserver.d.ts +1 -1
  501. package/types/trackers/impressionObserver/impressionObserverCS.d.ts +1 -1
  502. package/types/trackers/impressionObserver/impressionObserverSS.d.ts +1 -1
  503. package/types/trackers/impressionsTracker.d.ts +1 -1
  504. package/types/types.d.ts +39 -0
  505. package/types/utils/Backoff.d.ts +1 -1
  506. package/types/utils/LRUCache/index.d.ts +1 -1
  507. package/types/utils/MinEventEmitter.d.ts +1 -1
  508. package/types/utils/inputValidation/attribute.d.ts +2 -0
  509. package/types/utils/inputValidation/attributes.d.ts +1 -0
  510. package/types/utils/lang/binarySearch.d.ts +1 -1
  511. package/types/utils/lang/objectAssign.d.ts +3 -0
  512. package/types/utils/promise/thenable.d.ts +1 -2
  513. package/types/utils/promise/timeout.d.ts +1 -1
  514. package/types/utils/promise/wrapper.d.ts +1 -1
  515. package/types/utils/settingsValidation/impressionsMode.d.ts +1 -1
  516. package/types/utils/settingsValidation/mode.d.ts +1 -1
  517. package/types/utils/timeTracker/index.d.ts +2 -2
  518. package/types/utils/timeTracker/now/browser.d.ts +1 -2
  519. package/types/utils/timeTracker/now/node.d.ts +1 -1
  520. package/types/utils/timeTracker/timer.d.ts +1 -1
  521. package/src/logger/.DS_Store +0 -0
  522. package/types/integrations/ga/GaToSplitPlugin.d.ts +0 -3
  523. package/types/integrations/ga/SplitToGaPlugin.d.ts +0 -4
  524. package/types/logger/codes.d.ts +0 -2
  525. package/types/logger/codesConstants.d.ts +0 -117
  526. package/types/logger/codesConstantsBrowser.d.ts +0 -2
  527. package/types/logger/codesConstantsNode.d.ts +0 -14
  528. package/types/logger/codesDebug.d.ts +0 -1
  529. package/types/logger/codesDebugBrowser.d.ts +0 -1
  530. package/types/logger/codesDebugNode.d.ts +0 -1
  531. package/types/logger/codesError.d.ts +0 -1
  532. package/types/logger/codesErrorNode.d.ts +0 -1
  533. package/types/logger/codesInfo.d.ts +0 -1
  534. package/types/logger/codesWarn.d.ts +0 -1
  535. package/types/logger/codesWarnNode.d.ts +0 -1
  536. package/types/logger/debugLogger.d.ts +0 -2
  537. package/types/logger/errorLogger.d.ts +0 -2
  538. package/types/logger/infoLogger.d.ts +0 -2
  539. package/types/logger/messages/debugBrowser.d.ts +0 -1
  540. package/types/logger/messages/debugNode.d.ts +0 -1
  541. package/types/logger/messages/errorNode.d.ts +0 -1
  542. package/types/logger/messages/warnNode.d.ts +0 -1
  543. package/types/logger/noopLogger.d.ts +0 -2
  544. package/types/logger/warnLogger.d.ts +0 -2
  545. package/types/sdkManager/sdkManagerMethod.d.ts +0 -6
  546. package/types/storages/getRegisteredSegments.d.ts +0 -10
  547. package/types/sync/polling/syncTasks/splitsSyncTask.copy.d.ts +0 -35
  548. package/types/sync/polling/syncTasks/splitsSyncTask.morelikeoriginal.d.ts +0 -35
  549. package/types/sync/streaming/AuthClient/indexV1.d.ts +0 -12
  550. package/types/sync/streaming/AuthClient/indexV2.d.ts +0 -8
  551. package/types/sync/streaming/pushManagerCS.d.ts +0 -12
  552. package/types/sync/streaming/pushManagerNoUsers.d.ts +0 -13
  553. package/types/sync/streaming/pushManagerSS.d.ts +0 -11
  554. package/types/sync/syncManagerFromFile.d.ts +0 -2
  555. package/types/sync/syncManagerFromObject.d.ts +0 -2
  556. package/types/sync/syncManagerOffline.d.ts +0 -9
  557. package/types/utils/lang/errors.d.ts +0 -10
  558. package/types/utils/murmur3/commons.d.ts +0 -12
  559. package/types/utils/settingsValidation/buildMetadata.d.ts +0 -3
  560. package/types/utils/settingsValidation/localhost/index.d.ts +0 -9
  561. package/types/utils/settingsValidation/logger.d.ts +0 -11
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InMemoryStorageCSFactory = void 0;
4
- var tslib_1 = require("tslib");
5
- var SplitsCacheInMemory_1 = tslib_1.__importDefault(require("./SplitsCacheInMemory"));
6
- var MySegmentsCacheInMemory_1 = tslib_1.__importDefault(require("./MySegmentsCacheInMemory"));
7
- var ImpressionsCacheInMemory_1 = tslib_1.__importDefault(require("./ImpressionsCacheInMemory"));
8
- var EventsCacheInMemory_1 = tslib_1.__importDefault(require("./EventsCacheInMemory"));
9
- var ImpressionCountsCacheInMemory_1 = tslib_1.__importDefault(require("./ImpressionCountsCacheInMemory"));
4
+ var SplitsCacheInMemory_1 = require("./SplitsCacheInMemory");
5
+ var MySegmentsCacheInMemory_1 = require("./MySegmentsCacheInMemory");
6
+ var ImpressionsCacheInMemory_1 = require("./ImpressionsCacheInMemory");
7
+ var EventsCacheInMemory_1 = require("./EventsCacheInMemory");
8
+ var ImpressionCountsCacheInMemory_1 = require("./ImpressionCountsCacheInMemory");
10
9
  var constants_1 = require("../../utils/constants");
11
10
  /**
12
11
  * InMemory storage factory for standalone client-side SplitFactory
@@ -15,11 +14,11 @@ var constants_1 = require("../../utils/constants");
15
14
  */
16
15
  function InMemoryStorageCSFactory(params) {
17
16
  return {
18
- splits: new SplitsCacheInMemory_1.default(),
19
- segments: new MySegmentsCacheInMemory_1.default(),
20
- impressions: new ImpressionsCacheInMemory_1.default(),
21
- impressionCounts: params.optimize ? new ImpressionCountsCacheInMemory_1.default() : undefined,
22
- events: new EventsCacheInMemory_1.default(params.eventsQueueSize),
17
+ splits: new SplitsCacheInMemory_1.SplitsCacheInMemory(),
18
+ segments: new MySegmentsCacheInMemory_1.MySegmentsCacheInMemory(),
19
+ impressions: new ImpressionsCacheInMemory_1.ImpressionsCacheInMemory(),
20
+ impressionCounts: params.optimize ? new ImpressionCountsCacheInMemory_1.ImpressionCountsCacheInMemory() : undefined,
21
+ events: new EventsCacheInMemory_1.EventsCacheInMemory(params.eventsQueueSize),
23
22
  // When using MEMORY we should clean all the caches to leave them empty
24
23
  destroy: function () {
25
24
  this.splits.clear();
@@ -32,13 +31,13 @@ function InMemoryStorageCSFactory(params) {
32
31
  shared: function () {
33
32
  return {
34
33
  splits: this.splits,
35
- segments: new MySegmentsCacheInMemory_1.default(),
34
+ segments: new MySegmentsCacheInMemory_1.MySegmentsCacheInMemory(),
36
35
  impressions: this.impressions,
37
36
  impressionCounts: this.impressionCounts,
38
37
  events: this.events,
39
38
  // Set a new splits cache to clean it for the client without affecting other clients
40
39
  destroy: function () {
41
- this.splits = new SplitsCacheInMemory_1.default();
40
+ this.splits = new SplitsCacheInMemory_1.SplitsCacheInMemory();
42
41
  this.segments.clear();
43
42
  }
44
43
  };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var findLatencyIndex_1 = tslib_1.__importDefault(require("../findLatencyIndex"));
3
+ exports.LatenciesCacheInMemory = void 0;
4
+ var findLatencyIndex_1 = require("../findLatencyIndex");
5
5
  var LatenciesCacheInMemory = /** @class */ (function () {
6
6
  function LatenciesCacheInMemory() {
7
7
  this.counters = {};
@@ -17,7 +17,7 @@ var LatenciesCacheInMemory = /** @class */ (function () {
17
17
  ];
18
18
  }
19
19
  // +1 based on the latency number
20
- this.counters[metricName][findLatencyIndex_1.default(latency)]++;
20
+ this.counters[metricName][findLatencyIndex_1.findLatencyIndex(latency)]++;
21
21
  return true;
22
22
  };
23
23
  /**
@@ -40,4 +40,4 @@ var LatenciesCacheInMemory = /** @class */ (function () {
40
40
  };
41
41
  return LatenciesCacheInMemory;
42
42
  }());
43
- exports.default = LatenciesCacheInMemory;
43
+ exports.LatenciesCacheInMemory = LatenciesCacheInMemory;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MySegmentsCacheInMemory = void 0;
3
4
  var tslib_1 = require("tslib");
4
- var AbstractSegmentsCacheSync_1 = tslib_1.__importDefault(require("../AbstractSegmentsCacheSync"));
5
+ var AbstractSegmentsCacheSync_1 = require("../AbstractSegmentsCacheSync");
5
6
  /**
6
7
  * Default MySegmentsCacheInMemory implementation that stores MySegments in memory.
7
8
  * Supported by all JS runtimes.
@@ -66,5 +67,5 @@ var MySegmentsCacheInMemory = /** @class */ (function (_super) {
66
67
  return isDiff;
67
68
  };
68
69
  return MySegmentsCacheInMemory;
69
- }(AbstractSegmentsCacheSync_1.default));
70
- exports.default = MySegmentsCacheInMemory;
70
+ }(AbstractSegmentsCacheSync_1.AbstractSegmentsCacheSync));
71
+ exports.MySegmentsCacheInMemory = MySegmentsCacheInMemory;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SegmentsCacheInMemory = void 0;
3
4
  var tslib_1 = require("tslib");
4
- var AbstractSegmentsCacheSync_1 = tslib_1.__importDefault(require("../AbstractSegmentsCacheSync"));
5
+ var AbstractSegmentsCacheSync_1 = require("../AbstractSegmentsCacheSync");
5
6
  var sets_1 = require("../../utils/lang/sets");
6
7
  var lang_1 = require("../../utils/lang");
7
8
  /**
@@ -65,5 +66,5 @@ var SegmentsCacheInMemory = /** @class */ (function (_super) {
65
66
  return lang_1.isIntegerNumber(value) ? value : -1;
66
67
  };
67
68
  return SegmentsCacheInMemory;
68
- }(AbstractSegmentsCacheSync_1.default));
69
- exports.default = SegmentsCacheInMemory;
69
+ }(AbstractSegmentsCacheSync_1.AbstractSegmentsCacheSync));
70
+ exports.SegmentsCacheInMemory = SegmentsCacheInMemory;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SplitsCacheInMemory = void 0;
3
4
  var tslib_1 = require("tslib");
4
- var AbstractSplitsCacheSync_1 = tslib_1.__importStar(require("../AbstractSplitsCacheSync"));
5
+ var AbstractSplitsCacheSync_1 = require("../AbstractSplitsCacheSync");
5
6
  var lang_1 = require("../../utils/lang");
6
7
  /**
7
8
  * Default ISplitsCacheSync implementation that stores split definitions in memory.
@@ -98,5 +99,5 @@ var SplitsCacheInMemory = /** @class */ (function (_super) {
98
99
  return this.getChangeNumber() === -1 || this.splitsWithSegmentsCount > 0;
99
100
  };
100
101
  return SplitsCacheInMemory;
101
- }(AbstractSplitsCacheSync_1.default));
102
- exports.default = SplitsCacheInMemory;
102
+ }(AbstractSplitsCacheSync_1.AbstractSplitsCacheSync));
103
+ exports.SplitsCacheInMemory = SplitsCacheInMemory;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CountsCacheInRedis = void 0;
3
4
  var CountsCacheInRedis = /** @class */ (function () {
4
5
  function CountsCacheInRedis(keys, redis) {
5
6
  this.keys = keys;
@@ -12,4 +13,4 @@ var CountsCacheInRedis = /** @class */ (function () {
12
13
  };
13
14
  return CountsCacheInRedis;
14
15
  }());
15
- exports.default = CountsCacheInRedis;
16
+ exports.CountsCacheInRedis = CountsCacheInRedis;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventsCacheInRedis = void 0;
3
4
  var constants_1 = require("./constants");
4
5
  var EventsCacheInRedis = /** @class */ (function () {
5
6
  function EventsCacheInRedis(log, key, redis, metadata) {
@@ -56,4 +57,4 @@ var EventsCacheInRedis = /** @class */ (function () {
56
57
  };
57
58
  return EventsCacheInRedis;
58
59
  }());
59
- exports.default = EventsCacheInRedis;
60
+ exports.EventsCacheInRedis = EventsCacheInRedis;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImpressionsCacheInRedis = void 0;
3
4
  var IMPRESSIONS_TTL_REFRESH = 3600; // 1 hr
4
5
  var ImpressionsCacheInRedis = /** @class */ (function () {
5
6
  function ImpressionsCacheInRedis(log, key, redis, metadata) {
@@ -58,4 +59,4 @@ var ImpressionsCacheInRedis = /** @class */ (function () {
58
59
  };
59
60
  return ImpressionsCacheInRedis;
60
61
  }());
61
- exports.default = ImpressionsCacheInRedis;
62
+ exports.ImpressionsCacheInRedis = ImpressionsCacheInRedis;
@@ -1,18 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var findLatencyIndex_1 = tslib_1.__importDefault(require("../findLatencyIndex"));
3
+ exports.LatenciesCacheInRedis = void 0;
4
+ var findLatencyIndex_1 = require("../findLatencyIndex");
5
5
  var LatenciesCacheInRedis = /** @class */ (function () {
6
6
  function LatenciesCacheInRedis(keys, redis) {
7
7
  this.keys = keys;
8
8
  this.redis = redis;
9
9
  }
10
10
  LatenciesCacheInRedis.prototype.track = function (metricName, latency) {
11
- var bucketNumber = findLatencyIndex_1.default(latency);
11
+ var bucketNumber = findLatencyIndex_1.findLatencyIndex(latency);
12
12
  return this.redis.incr(this.keys.buildLatencyKey(metricName, bucketNumber)).catch(function () {
13
13
  // noop, for telemetry metrics there's no need to throw.
14
14
  }).then(function () { return true; });
15
15
  };
16
16
  return LatenciesCacheInRedis;
17
17
  }());
18
- exports.default = LatenciesCacheInRedis;
18
+ exports.LatenciesCacheInRedis = LatenciesCacheInRedis;
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RedisAdapter = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  var ioredis_1 = tslib_1.__importDefault(require("ioredis"));
5
6
  var lang_1 = require("../../utils/lang");
6
7
  var sets_1 = require("../../utils/lang/sets");
7
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
8
- var timeout_1 = tslib_1.__importDefault(require("../../utils/promise/timeout"));
8
+ var thenable_1 = require("../../utils/promise/thenable");
9
+ var timeout_1 = require("../../utils/promise/timeout");
9
10
  var LOG_PREFIX = 'storage:redis-adapter: ';
10
11
  // If we ever decide to fully wrap every method, there's a Commander.getBuiltinCommands from ioredis.
11
12
  var METHODS_TO_PROMISE_WRAP = ['set', 'exec', 'del', 'get', 'keys', 'sadd', 'srem', 'sismember', 'smembers', 'incr', 'rpush', 'pipeline', 'expire', 'mget', 'lrange', 'ltrim'];
@@ -65,7 +66,7 @@ var RedisAdapter = /** @class */ (function (_super) {
65
66
  instance.log.debug(LOG_PREFIX + ("Executing " + method + "."));
66
67
  // Return original method
67
68
  var result = originalMethod.apply(instance, params);
68
- if (thenable_1.default(result)) {
69
+ if (thenable_1.thenable(result)) {
69
70
  // For handling pending commands on disconnect, add to the set and remove once finished.
70
71
  // On sync commands there's no need, only thenables.
71
72
  instance._runningCommands.add(result);
@@ -74,7 +75,7 @@ var RedisAdapter = /** @class */ (function (_super) {
74
75
  };
75
76
  // Both success and error remove from queue.
76
77
  result.then(cleanUpRunningCommandsCb, cleanUpRunningCommandsCb);
77
- return timeout_1.default(instance._options.operationTimeout, result).catch(function (err) {
78
+ return timeout_1.timeout(instance._options.operationTimeout, result).catch(function (err) {
78
79
  instance.log.error(LOG_PREFIX + (method + " operation threw an error or exceeded configured timeout of " + instance._options.operationTimeout + "ms. Message: " + err));
79
80
  // Handling is not the adapter responsibility.
80
81
  throw err;
@@ -159,4 +160,4 @@ var RedisAdapter = /** @class */ (function (_super) {
159
160
  };
160
161
  return RedisAdapter;
161
162
  }(ioredis_1.default));
162
- exports.default = RedisAdapter;
163
+ exports.RedisAdapter = RedisAdapter;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SegmentsCacheInRedis = void 0;
3
4
  var lang_1 = require("../../utils/lang");
4
5
  var constants_1 = require("../inLocalStorage/constants");
5
6
  var SegmentsCacheInRedis = /** @class */ (function () {
@@ -59,4 +60,4 @@ var SegmentsCacheInRedis = /** @class */ (function () {
59
60
  };
60
61
  return SegmentsCacheInRedis;
61
62
  }());
62
- exports.default = SegmentsCacheInRedis;
63
+ exports.SegmentsCacheInRedis = SegmentsCacheInRedis;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SplitsCacheInRedis = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  var lang_1 = require("../../utils/lang");
5
6
  var constants_1 = require("./constants");
6
- var AbstractSplitsCacheAsync_1 = tslib_1.__importDefault(require("../AbstractSplitsCacheAsync"));
7
+ var AbstractSplitsCacheAsync_1 = require("../AbstractSplitsCacheAsync");
7
8
  /**
8
9
  * Discard errors for an answer of multiple operations.
9
10
  */
@@ -227,5 +228,5 @@ var SplitsCacheInRedis = /** @class */ (function (_super) {
227
228
  });
228
229
  };
229
230
  return SplitsCacheInRedis;
230
- }(AbstractSplitsCacheAsync_1.default));
231
- exports.default = SplitsCacheInRedis;
231
+ }(AbstractSplitsCacheAsync_1.AbstractSplitsCacheAsync));
232
+ exports.SplitsCacheInRedis = SplitsCacheInRedis;
@@ -1,16 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InRedisStorage = void 0;
4
- var tslib_1 = require("tslib");
5
- var RedisAdapter_1 = tslib_1.__importDefault(require("./RedisAdapter"));
4
+ var RedisAdapter_1 = require("./RedisAdapter");
6
5
  var KeyBuilder_1 = require("../KeyBuilder");
7
- var KeyBuilderSS_1 = tslib_1.__importDefault(require("../KeyBuilderSS"));
8
- var SplitsCacheInRedis_1 = tslib_1.__importDefault(require("./SplitsCacheInRedis"));
9
- var SegmentsCacheInRedis_1 = tslib_1.__importDefault(require("./SegmentsCacheInRedis"));
10
- var ImpressionsCacheInRedis_1 = tslib_1.__importDefault(require("./ImpressionsCacheInRedis"));
11
- var EventsCacheInRedis_1 = tslib_1.__importDefault(require("./EventsCacheInRedis"));
12
- var LatenciesCacheInRedis_1 = tslib_1.__importDefault(require("./LatenciesCacheInRedis"));
13
- var CountsCacheInRedis_1 = tslib_1.__importDefault(require("./CountsCacheInRedis"));
6
+ var KeyBuilderSS_1 = require("../KeyBuilderSS");
7
+ var SplitsCacheInRedis_1 = require("./SplitsCacheInRedis");
8
+ var SegmentsCacheInRedis_1 = require("./SegmentsCacheInRedis");
9
+ var ImpressionsCacheInRedis_1 = require("./ImpressionsCacheInRedis");
10
+ var EventsCacheInRedis_1 = require("./EventsCacheInRedis");
11
+ var LatenciesCacheInRedis_1 = require("./LatenciesCacheInRedis");
12
+ var CountsCacheInRedis_1 = require("./CountsCacheInRedis");
14
13
  var constants_1 = require("../../utils/constants");
15
14
  /**
16
15
  * InRedis storage factory for consumer server-side SplitFactory, that uses `Ioredis` Redis client for Node.
@@ -21,19 +20,19 @@ function InRedisStorage(options) {
21
20
  var prefix = KeyBuilder_1.validatePrefix(options.prefix);
22
21
  function InRedisStorageFactory(_a) {
23
22
  var log = _a.log, metadata = _a.metadata, onReadyCb = _a.onReadyCb;
24
- var keys = new KeyBuilderSS_1.default(prefix, metadata);
25
- var redisClient = new RedisAdapter_1.default(log, options.options || {});
23
+ var keys = new KeyBuilderSS_1.KeyBuilderSS(prefix, metadata);
24
+ var redisClient = new RedisAdapter_1.RedisAdapter(log, options.options || {});
26
25
  // subscription to Redis connect event in order to emit SDK_READY event on consumer mode
27
26
  redisClient.on('connect', function () {
28
27
  onReadyCb();
29
28
  });
30
29
  return {
31
- splits: new SplitsCacheInRedis_1.default(log, keys, redisClient),
32
- segments: new SegmentsCacheInRedis_1.default(log, keys, redisClient),
33
- impressions: new ImpressionsCacheInRedis_1.default(log, keys.buildImpressionsKey(), redisClient, metadata),
34
- events: new EventsCacheInRedis_1.default(log, keys.buildEventsKey(), redisClient, metadata),
35
- latencies: new LatenciesCacheInRedis_1.default(keys, redisClient),
36
- counts: new CountsCacheInRedis_1.default(keys, redisClient),
30
+ splits: new SplitsCacheInRedis_1.SplitsCacheInRedis(log, keys, redisClient),
31
+ segments: new SegmentsCacheInRedis_1.SegmentsCacheInRedis(log, keys, redisClient),
32
+ impressions: new ImpressionsCacheInRedis_1.ImpressionsCacheInRedis(log, keys.buildImpressionsKey(), redisClient, metadata),
33
+ events: new EventsCacheInRedis_1.EventsCacheInRedis(log, keys.buildEventsKey(), redisClient, metadata),
34
+ latencies: new LatenciesCacheInRedis_1.LatenciesCacheInRedis(keys, redisClient),
35
+ counts: new CountsCacheInRedis_1.CountsCacheInRedis(keys, redisClient),
37
36
  // When using REDIS we should:
38
37
  // 1- Disconnect from the storage
39
38
  destroy: function () {
@@ -4,7 +4,7 @@ exports.SplitsCachePluggable = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var lang_1 = require("../../utils/lang");
6
6
  var constants_1 = require("./constants");
7
- var AbstractSplitsCacheAsync_1 = tslib_1.__importDefault(require("../AbstractSplitsCacheAsync"));
7
+ var AbstractSplitsCacheAsync_1 = require("../AbstractSplitsCacheAsync");
8
8
  /**
9
9
  * ISplitsCacheAsync implementation for pluggable storages.
10
10
  */
@@ -193,5 +193,5 @@ var SplitsCachePluggable = /** @class */ (function (_super) {
193
193
  return Promise.resolve(true);
194
194
  };
195
195
  return SplitsCachePluggable;
196
- }(AbstractSplitsCacheAsync_1.default));
196
+ }(AbstractSplitsCacheAsync_1.AbstractSplitsCacheAsync));
197
197
  exports.SplitsCachePluggable = SplitsCachePluggable;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PluggableStorage = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var KeyBuilderSS_1 = tslib_1.__importDefault(require("../KeyBuilderSS"));
5
+ var KeyBuilderSS_1 = require("../KeyBuilderSS");
6
6
  var SplitsCachePluggable_1 = require("./SplitsCachePluggable");
7
7
  var SegmentsCachePluggable_1 = require("./SegmentsCachePluggable");
8
8
  var ImpressionsCachePluggable_1 = require("./ImpressionsCachePluggable");
@@ -11,9 +11,9 @@ var wrapperAdapter_1 = require("./wrapperAdapter");
11
11
  var lang_1 = require("../../utils/lang");
12
12
  var KeyBuilder_1 = require("../KeyBuilder");
13
13
  var constants_1 = require("../../utils/constants");
14
- var ImpressionsCacheInMemory_1 = tslib_1.__importDefault(require("../inMemory/ImpressionsCacheInMemory"));
15
- var EventsCacheInMemory_1 = tslib_1.__importDefault(require("../inMemory/EventsCacheInMemory"));
16
- var ImpressionCountsCacheInMemory_1 = tslib_1.__importDefault(require("../inMemory/ImpressionCountsCacheInMemory"));
14
+ var ImpressionsCacheInMemory_1 = require("../inMemory/ImpressionsCacheInMemory");
15
+ var EventsCacheInMemory_1 = require("../inMemory/EventsCacheInMemory");
16
+ var ImpressionCountsCacheInMemory_1 = require("../inMemory/ImpressionCountsCacheInMemory");
17
17
  var NO_VALID_WRAPPER = 'Expecting pluggable storage `wrapper` in options, but no valid wrapper instance was provided.';
18
18
  var NO_VALID_WRAPPER_INTERFACE = 'The provided wrapper instance doesn’t follow the expected interface. Check our docs.';
19
19
  /**
@@ -55,7 +55,7 @@ function PluggableStorage(options) {
55
55
  var prefix = KeyBuilder_1.validatePrefix(options.prefix);
56
56
  function PluggableStorageFactory(_a) {
57
57
  var log = _a.log, metadata = _a.metadata, onReadyCb = _a.onReadyCb, mode = _a.mode, eventsQueueSize = _a.eventsQueueSize, optimize = _a.optimize;
58
- var keys = new KeyBuilderSS_1.default(prefix, metadata);
58
+ var keys = new KeyBuilderSS_1.KeyBuilderSS(prefix, metadata);
59
59
  var wrapper = wrapperAdapter_1.wrapperAdapter(log, options.wrapper);
60
60
  var isPartialConsumer = mode === constants_1.CONSUMER_PARTIAL_MODE;
61
61
  // Connects to wrapper and emits SDK_READY event on main client
@@ -63,9 +63,9 @@ function PluggableStorage(options) {
63
63
  return {
64
64
  splits: new SplitsCachePluggable_1.SplitsCachePluggable(log, keys, wrapper),
65
65
  segments: new SegmentsCachePluggable_1.SegmentsCachePluggable(log, keys, wrapper),
66
- impressions: isPartialConsumer ? new ImpressionsCacheInMemory_1.default() : new ImpressionsCachePluggable_1.ImpressionsCachePluggable(log, keys.buildImpressionsKey(), wrapper, metadata),
67
- impressionCounts: optimize ? new ImpressionCountsCacheInMemory_1.default() : undefined,
68
- events: isPartialConsumer ? promisifyEventsTrack(new EventsCacheInMemory_1.default(eventsQueueSize)) : new EventsCachePluggable_1.EventsCachePluggable(log, keys.buildEventsKey(), wrapper, metadata),
66
+ impressions: isPartialConsumer ? new ImpressionsCacheInMemory_1.ImpressionsCacheInMemory() : new ImpressionsCachePluggable_1.ImpressionsCachePluggable(log, keys.buildImpressionsKey(), wrapper, metadata),
67
+ impressionCounts: optimize ? new ImpressionCountsCacheInMemory_1.ImpressionCountsCacheInMemory() : undefined,
68
+ events: isPartialConsumer ? promisifyEventsTrack(new EventsCacheInMemory_1.EventsCacheInMemory(eventsQueueSize)) : new EventsCachePluggable_1.EventsCachePluggable(log, keys.buildEventsKey(), wrapper, metadata),
69
69
  // @TODO add telemetry cache when required
70
70
  // Disconnect the underlying storage
71
71
  destroy: function () {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseCondition = void 0;
3
4
  var lang_1 = require("../../../utils/lang");
4
5
  function parseCondition(data) {
5
6
  var treatment = data.treatment;
@@ -51,4 +52,4 @@ function parseCondition(data) {
51
52
  };
52
53
  }
53
54
  }
54
- exports.default = parseCondition;
55
+ exports.parseCondition = parseCondition;
@@ -9,7 +9,7 @@ var path_1 = tslib_1.__importDefault(require("path"));
9
9
  // @ts-ignore
10
10
  var js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
11
11
  var lang_1 = require("../../../utils/lang");
12
- var parseCondition_1 = tslib_1.__importDefault(require("./parseCondition"));
12
+ var parseCondition_1 = require("./parseCondition");
13
13
  var logPrefix = 'sync:offline:splits-fetcher: ';
14
14
  var DEFAULT_FILENAME = '.split';
15
15
  function configFilesPath(configFilePath) {
@@ -84,7 +84,7 @@ function splitsParserFromFileFactory() {
84
84
  }
85
85
  else {
86
86
  var splitName = tuple[SPLIT_POSITION];
87
- var condition = parseCondition_1.default({ treatment: tuple[TREATMENT_POSITION] });
87
+ var condition = parseCondition_1.parseCondition({ treatment: tuple[TREATMENT_POSITION] });
88
88
  accum[splitName] = { conditions: [condition], configurations: {}, trafficTypeName: 'localhost' };
89
89
  }
90
90
  }
@@ -123,7 +123,7 @@ function splitsParserFromFileFactory() {
123
123
  if (mockData.config)
124
124
  accum[splitName].configurations[mockData.treatment] = mockData.config;
125
125
  // Parse the condition from the entry.
126
- var condition = parseCondition_1.default(mockData);
126
+ var condition = parseCondition_1.parseCondition(mockData);
127
127
  accum[splitName].conditions[condition.conditionType === 'ROLLOUT' ? 'push' : 'unshift'](condition);
128
128
  // Also keep track of the treatments, will be useful for manager functionality.
129
129
  accum[splitName].treatments.push(mockData.treatment);
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.splitsParserFromSettingsFactory = void 0;
4
- var tslib_1 = require("tslib");
5
4
  var lang_1 = require("../../../utils/lang");
6
- var parseCondition_1 = tslib_1.__importDefault(require("./parseCondition"));
5
+ var parseCondition_1 = require("./parseCondition");
7
6
  function hasTreatmentChanged(prev, curr) {
8
7
  if (typeof prev !== typeof curr)
9
8
  return true;
@@ -53,7 +52,7 @@ function splitsParserFromSettingsFactory() {
53
52
  configurations[treatment] = config;
54
53
  splitObjects[splitName] = {
55
54
  trafficTypeName: 'localhost',
56
- conditions: [parseCondition_1.default({ treatment: treatment })],
55
+ conditions: [parseCondition_1.parseCondition({ treatment: treatment })],
57
56
  configurations: configurations
58
57
  };
59
58
  });
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.syncManagerOfflineFactory = void 0;
4
- var tslib_1 = require("tslib");
5
- var fromObjectSyncTask_1 = tslib_1.__importDefault(require("./syncTasks/fromObjectSyncTask"));
6
- var object_assign_1 = tslib_1.__importDefault(require("object-assign"));
4
+ var fromObjectSyncTask_1 = require("./syncTasks/fromObjectSyncTask");
5
+ var objectAssign_1 = require("../../utils/lang/objectAssign");
7
6
  var constants_1 = require("../../readiness/constants");
8
7
  function flush() {
9
8
  return Promise.resolve();
@@ -20,7 +19,7 @@ function syncManagerOfflineFactory(splitsParserFactory) {
20
19
  */
21
20
  return function (_a) {
22
21
  var settings = _a.settings, readiness = _a.readiness, storage = _a.storage;
23
- return object_assign_1.default(fromObjectSyncTask_1.default(splitsParserFactory(), storage, readiness, settings), {
22
+ return objectAssign_1.objectAssign(fromObjectSyncTask_1.fromObjectSyncTaskFactory(splitsParserFactory(), storage, readiness, settings), {
24
23
  // fake flush, that resolves immediately
25
24
  flush: flush,
26
25
  // [Only used for client-side]
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fromObjectUpdaterFactory = void 0;
4
- var tslib_1 = require("tslib");
3
+ exports.fromObjectSyncTaskFactory = exports.fromObjectUpdaterFactory = void 0;
5
4
  var lang_1 = require("../../../utils/lang");
6
- var syncTask_1 = tslib_1.__importDefault(require("../../syncTask"));
5
+ var syncTask_1 = require("../../syncTask");
7
6
  var constants_1 = require("../../../utils/constants");
8
7
  var constants_2 = require("../../../readiness/constants");
9
8
  var constants_3 = require("../../../logger/constants");
@@ -69,6 +68,6 @@ exports.fromObjectUpdaterFactory = fromObjectUpdaterFactory;
69
68
  * PollingManager in Offline mode
70
69
  */
71
70
  function fromObjectSyncTaskFactory(splitsParser, storage, readiness, settings) {
72
- return syncTask_1.default(settings.log, fromObjectUpdaterFactory(splitsParser, storage, readiness, settings), settings.scheduler.offlineRefreshRate, 'offlineUpdater');
71
+ return syncTask_1.syncTaskFactory(settings.log, fromObjectUpdaterFactory(splitsParser, storage, readiness, settings), settings.scheduler.offlineRefreshRate, 'offlineUpdater');
73
72
  }
74
- exports.default = fromObjectSyncTaskFactory;
73
+ exports.fromObjectSyncTaskFactory = fromObjectSyncTaskFactory;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mySegmentsFetcherFactory = void 0;
3
4
  /**
4
5
  * Factory of MySegments fetcher.
5
6
  * MySegments fetcher is a wrapper around `mySegments` API service that parses the response and handle errors.
@@ -17,4 +18,4 @@ function mySegmentsFetcherFactory(fetchMySegments, userMatchingKey) {
17
18
  .then(function (json) { return json.mySegments.map(function (segment) { return segment.name; }); });
18
19
  };
19
20
  }
20
- exports.default = mySegmentsFetcherFactory;
21
+ exports.mySegmentsFetcherFactory = mySegmentsFetcherFactory;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.segmentChangesFetcherFactory = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  function greedyFetch(fetchSegmentChanges, since, segmentName, noCache) {
5
6
  return fetchSegmentChanges(since, segmentName, noCache)
@@ -30,4 +31,4 @@ function segmentChangesFetcherFactory(fetchSegmentChanges) {
30
31
  return segmentsPromise;
31
32
  };
32
33
  }
33
- exports.default = segmentChangesFetcherFactory;
34
+ exports.segmentChangesFetcherFactory = segmentChangesFetcherFactory;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.splitChangesFetcherFactory = void 0;
3
4
  /**
4
5
  * Factory of SplitChanges fetcher.
5
6
  * SplitChanges fetcher is a wrapper around `splitChanges` API service that parses the response and handle errors.
@@ -14,4 +15,4 @@ function splitChangesFetcherFactory(fetchSplitChanges) {
14
15
  return splitsPromise.then(function (resp) { return resp.json(); });
15
16
  };
16
17
  }
17
- exports.default = splitChangesFetcherFactory;
18
+ exports.splitChangesFetcherFactory = splitChangesFetcherFactory;
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
3
+ exports.pollingManagerCSFactory = void 0;
4
4
  var lang_1 = require("../../utils/lang");
5
- var mySegmentsSyncTask_1 = tslib_1.__importDefault(require("./syncTasks/mySegmentsSyncTask"));
6
- var splitsSyncTask_1 = tslib_1.__importDefault(require("./syncTasks/splitsSyncTask"));
5
+ var mySegmentsSyncTask_1 = require("./syncTasks/mySegmentsSyncTask");
6
+ var splitsSyncTask_1 = require("./syncTasks/splitsSyncTask");
7
7
  var key_1 = require("../../utils/key");
8
8
  var constants_1 = require("../../readiness/constants");
9
9
  var constants_2 = require("../../logger/constants");
@@ -13,7 +13,7 @@ var constants_2 = require("../../logger/constants");
13
13
  */
14
14
  function pollingManagerCSFactory(splitApi, storage, readiness, settings) {
15
15
  var log = settings.log;
16
- var splitsSyncTask = splitsSyncTask_1.default(splitApi.fetchSplitChanges, storage, readiness, settings);
16
+ var splitsSyncTask = splitsSyncTask_1.splitsSyncTaskFactory(splitApi.fetchSplitChanges, storage, readiness, settings);
17
17
  // Map of matching keys to their corresponding MySegmentsSyncTask.
18
18
  var mySegmentsSyncTasks = {};
19
19
  var matchingKey = key_1.getMatching(settings.core.key);
@@ -45,7 +45,7 @@ function pollingManagerCSFactory(splitApi, storage, readiness, settings) {
45
45
  }
46
46
  });
47
47
  function add(matchingKey, readiness, storage) {
48
- var mySegmentsSyncTask = mySegmentsSyncTask_1.default(splitApi.fetchMySegments, storage, readiness, settings, matchingKey);
48
+ var mySegmentsSyncTask = mySegmentsSyncTask_1.mySegmentsSyncTaskFactory(splitApi.fetchMySegments, storage, readiness, settings, matchingKey);
49
49
  // smart ready
50
50
  function smartReady() {
51
51
  if (!readiness.isReady() && !storage.splits.usesSegments())
@@ -95,4 +95,4 @@ function pollingManagerCSFactory(splitApi, storage, readiness, settings) {
95
95
  }
96
96
  };
97
97
  }
98
- exports.default = pollingManagerCSFactory;
98
+ exports.pollingManagerCSFactory = pollingManagerCSFactory;
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var splitsSyncTask_1 = tslib_1.__importDefault(require("./syncTasks/splitsSyncTask"));
5
- var segmentsSyncTask_1 = tslib_1.__importDefault(require("./syncTasks/segmentsSyncTask"));
6
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
3
+ exports.pollingManagerSSFactory = void 0;
4
+ var splitsSyncTask_1 = require("./syncTasks/splitsSyncTask");
5
+ var segmentsSyncTask_1 = require("./syncTasks/segmentsSyncTask");
6
+ var thenable_1 = require("../../utils/promise/thenable");
7
7
  var constants_1 = require("../../logger/constants");
8
8
  /**
9
9
  * Expose start / stop mechanism for pulling data from services.
10
10
  */
11
11
  function pollingManagerSSFactory(splitApi, storage, readiness, settings) {
12
12
  var log = settings.log;
13
- var splitsSyncTask = splitsSyncTask_1.default(splitApi.fetchSplitChanges, storage, readiness, settings);
14
- var segmentsSyncTask = segmentsSyncTask_1.default(splitApi.fetchSegmentChanges, storage, readiness, settings);
13
+ var splitsSyncTask = splitsSyncTask_1.splitsSyncTaskFactory(splitApi.fetchSplitChanges, storage, readiness, settings);
14
+ var segmentsSyncTask = segmentsSyncTask_1.segmentsSyncTaskFactory(splitApi.fetchSegmentChanges, storage, readiness, settings);
15
15
  return {
16
16
  splitsSyncTask: splitsSyncTask,
17
17
  segmentsSyncTask: segmentsSyncTask,
@@ -21,7 +21,7 @@ function pollingManagerSSFactory(splitApi, storage, readiness, settings) {
21
21
  log.debug(constants_1.LOG_PREFIX_SYNC_POLLING + ("Splits will be refreshed each " + settings.scheduler.featuresRefreshRate + " millis"));
22
22
  log.debug(constants_1.LOG_PREFIX_SYNC_POLLING + ("Segments will be refreshed each " + settings.scheduler.segmentsRefreshRate + " millis"));
23
23
  var startingUp = splitsSyncTask.start();
24
- if (thenable_1.default(startingUp)) {
24
+ if (thenable_1.thenable(startingUp)) {
25
25
  startingUp.then(function () {
26
26
  segmentsSyncTask.start();
27
27
  });
@@ -45,4 +45,4 @@ function pollingManagerSSFactory(splitApi, storage, readiness, settings) {
45
45
  }
46
46
  };
47
47
  }
48
- exports.default = pollingManagerSSFactory;
48
+ exports.pollingManagerSSFactory = pollingManagerSSFactory;