@splitsoftware/splitio-commons 1.0.1-rc.2 → 1.0.1-rc.6

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 (510) hide show
  1. package/cjs/evaluator/Engine.js +6 -5
  2. package/cjs/evaluator/combiners/and.js +4 -4
  3. package/cjs/evaluator/combiners/ifelseif.js +4 -3
  4. package/cjs/evaluator/condition/index.js +4 -3
  5. package/cjs/evaluator/index.js +10 -11
  6. package/cjs/evaluator/matchers/all.js +2 -1
  7. package/cjs/evaluator/matchers/between.js +2 -1
  8. package/cjs/evaluator/matchers/boolean.js +2 -1
  9. package/cjs/evaluator/matchers/cont_all.js +3 -2
  10. package/cjs/evaluator/matchers/cont_any.js +3 -2
  11. package/cjs/evaluator/matchers/cont_str.js +2 -1
  12. package/cjs/evaluator/matchers/dependency.js +4 -4
  13. package/cjs/evaluator/matchers/eq.js +2 -1
  14. package/cjs/evaluator/matchers/eq_set.js +2 -1
  15. package/cjs/evaluator/matchers/ew.js +2 -1
  16. package/cjs/evaluator/matchers/gte.js +2 -1
  17. package/cjs/evaluator/matchers/index.js +36 -36
  18. package/cjs/evaluator/matchers/lte.js +2 -1
  19. package/cjs/evaluator/matchers/part_of.js +3 -2
  20. package/cjs/evaluator/matchers/segment.js +5 -5
  21. package/cjs/evaluator/matchers/string.js +2 -1
  22. package/cjs/evaluator/matchers/sw.js +2 -1
  23. package/cjs/evaluator/matchers/whitelist.js +2 -1
  24. package/cjs/evaluator/matchersTransform/index.js +12 -12
  25. package/cjs/evaluator/matchersTransform/segment.js +3 -2
  26. package/cjs/evaluator/matchersTransform/set.js +3 -2
  27. package/cjs/evaluator/matchersTransform/unaryNumeric.js +3 -2
  28. package/cjs/evaluator/matchersTransform/whitelist.js +3 -2
  29. package/cjs/evaluator/parser/index.js +16 -16
  30. package/cjs/evaluator/treatments/index.js +2 -1
  31. package/cjs/evaluator/value/index.js +5 -5
  32. package/cjs/evaluator/value/sanitize.js +2 -1
  33. package/cjs/integrations/browser.js +4 -4
  34. package/cjs/integrations/ga/GaToSplit.js +3 -4
  35. package/cjs/integrations/pluggable.js +3 -2
  36. package/cjs/listeners/browser.js +4 -4
  37. package/cjs/listeners/node.js +4 -4
  38. package/cjs/logger/index.js +2 -3
  39. package/cjs/logger/messages/warn.js +2 -2
  40. package/cjs/readiness/readinessManager.js +3 -4
  41. package/cjs/readiness/sdkReadinessManager.js +7 -7
  42. package/cjs/sdkClient/client.js +5 -5
  43. package/cjs/sdkClient/clientCS.js +4 -4
  44. package/cjs/sdkClient/clientInputValidation.js +5 -5
  45. package/cjs/sdkClient/sdkClient.js +5 -6
  46. package/cjs/sdkClient/sdkClientMethodCS.js +4 -5
  47. package/cjs/sdkClient/sdkClientMethodCSWithTT.js +4 -5
  48. package/cjs/sdkFactory/index.js +7 -8
  49. package/cjs/sdkManager/index.js +6 -7
  50. package/cjs/services/splitApi.js +2 -3
  51. package/cjs/services/splitHttpClient.js +3 -4
  52. package/cjs/storages/AbstractSegmentsCacheSync.js +2 -1
  53. package/cjs/storages/AbstractSplitsCacheAsync.js +2 -1
  54. package/cjs/storages/AbstractSplitsCacheSync.js +2 -2
  55. package/cjs/storages/KeyBuilder.js +2 -2
  56. package/cjs/storages/KeyBuilderCS.js +4 -3
  57. package/cjs/storages/KeyBuilderSS.js +4 -3
  58. package/cjs/storages/findLatencyIndex.js +2 -1
  59. package/cjs/storages/inLocalStorage/MySegmentsCacheInLocal.js +4 -3
  60. package/cjs/storages/inLocalStorage/SplitsCacheInLocal.js +4 -3
  61. package/cjs/storages/inLocalStorage/index.js +20 -21
  62. package/cjs/storages/inMemory/CountsCacheInMemory.js +2 -1
  63. package/cjs/storages/inMemory/EventsCacheInMemory.js +2 -1
  64. package/cjs/storages/inMemory/ImpressionCountsCacheInMemory.js +2 -1
  65. package/cjs/storages/inMemory/ImpressionsCacheInMemory.js +2 -1
  66. package/cjs/storages/inMemory/InMemoryStorage.js +10 -11
  67. package/cjs/storages/inMemory/InMemoryStorageCS.js +12 -13
  68. package/cjs/storages/inMemory/LatenciesCacheInMemory.js +4 -4
  69. package/cjs/storages/inMemory/MySegmentsCacheInMemory.js +4 -3
  70. package/cjs/storages/inMemory/SegmentsCacheInMemory.js +4 -3
  71. package/cjs/storages/inMemory/SplitsCacheInMemory.js +4 -3
  72. package/cjs/storages/inRedis/CountsCacheInRedis.js +2 -1
  73. package/cjs/storages/inRedis/EventsCacheInRedis.js +2 -1
  74. package/cjs/storages/inRedis/ImpressionsCacheInRedis.js +2 -1
  75. package/cjs/storages/inRedis/LatenciesCacheInRedis.js +4 -4
  76. package/cjs/storages/inRedis/RedisAdapter.js +6 -5
  77. package/cjs/storages/inRedis/SegmentsCacheInRedis.js +2 -1
  78. package/cjs/storages/inRedis/SplitsCacheInRedis.js +4 -3
  79. package/cjs/storages/inRedis/index.js +16 -17
  80. package/cjs/storages/pluggable/SplitsCachePluggable.js +2 -2
  81. package/cjs/storages/pluggable/constants.js +1 -1
  82. package/cjs/storages/pluggable/index.js +8 -8
  83. package/cjs/sync/offline/splitsParser/parseCondition.js +2 -1
  84. package/cjs/sync/offline/splitsParser/splitsParserFromFile.js +3 -3
  85. package/cjs/sync/offline/splitsParser/splitsParserFromSettings.js +2 -3
  86. package/cjs/sync/offline/syncManagerOffline.js +3 -4
  87. package/cjs/sync/offline/syncTasks/fromObjectSyncTask.js +4 -5
  88. package/cjs/sync/polling/fetchers/mySegmentsFetcher.js +2 -1
  89. package/cjs/sync/polling/fetchers/segmentChangesFetcher.js +2 -1
  90. package/cjs/sync/polling/fetchers/splitChangesFetcher.js +2 -1
  91. package/cjs/sync/polling/pollingManagerCS.js +6 -6
  92. package/cjs/sync/polling/pollingManagerSS.js +8 -8
  93. package/cjs/sync/polling/syncTasks/mySegmentsSyncTask.js +5 -5
  94. package/cjs/sync/polling/syncTasks/segmentsSyncTask.js +5 -5
  95. package/cjs/sync/polling/syncTasks/splitsSyncTask.js +5 -5
  96. package/cjs/sync/polling/updaters/mySegmentsUpdater.js +2 -3
  97. package/cjs/sync/polling/updaters/segmentChangesUpdater.js +2 -3
  98. package/cjs/sync/polling/updaters/splitChangesUpdater.js +2 -3
  99. package/cjs/sync/streaming/AuthClient/index.js +2 -3
  100. package/cjs/sync/streaming/SSEClient/index.js +2 -2
  101. package/cjs/sync/streaming/SSEHandler/NotificationKeeper.js +2 -1
  102. package/cjs/sync/streaming/SSEHandler/index.js +4 -4
  103. package/cjs/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.js +4 -4
  104. package/cjs/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.js +4 -4
  105. package/cjs/sync/streaming/UpdateWorkers/SplitsUpdateWorker.js +4 -4
  106. package/cjs/sync/streaming/pushManager.js +16 -16
  107. package/cjs/sync/submitters/submitterSyncTask.js +2 -3
  108. package/cjs/sync/syncTask.js +2 -1
  109. package/cjs/trackers/eventTracker.js +7 -7
  110. package/cjs/trackers/impressionObserver/ImpressionObserver.js +4 -4
  111. package/cjs/trackers/impressionObserver/impressionObserverCS.js +2 -3
  112. package/cjs/trackers/impressionObserver/impressionObserverSS.js +2 -3
  113. package/cjs/trackers/impressionsTracker.js +6 -6
  114. package/cjs/utils/Backoff.js +2 -1
  115. package/cjs/utils/LRUCache/index.js +2 -1
  116. package/cjs/utils/MinEventEmitter.js +7 -6
  117. package/cjs/utils/MinEvents.js +13 -15
  118. package/cjs/utils/env/isNode.js +4 -1
  119. package/cjs/utils/inputValidation/trafficTypeExistance.js +2 -3
  120. package/cjs/utils/lang/binarySearch.js +2 -1
  121. package/cjs/utils/lang/objectAssign.js +85 -0
  122. package/cjs/utils/promise/thenable.js +5 -1
  123. package/cjs/utils/promise/timeout.js +2 -1
  124. package/cjs/utils/promise/wrapper.js +2 -1
  125. package/cjs/utils/settingsValidation/impressionsMode.js +2 -1
  126. package/cjs/utils/settingsValidation/index.js +4 -5
  127. package/cjs/utils/settingsValidation/mode.js +2 -1
  128. package/cjs/utils/timeTracker/index.js +7 -8
  129. package/cjs/utils/timeTracker/now/browser.js +2 -2
  130. package/cjs/utils/timeTracker/now/node.js +2 -1
  131. package/cjs/utils/timeTracker/timer.js +3 -2
  132. package/esm/evaluator/Engine.js +3 -3
  133. package/esm/evaluator/combiners/and.js +2 -2
  134. package/esm/evaluator/combiners/ifelseif.js +2 -2
  135. package/esm/evaluator/condition/index.js +2 -2
  136. package/esm/evaluator/index.js +5 -6
  137. package/esm/evaluator/matchers/all.js +1 -1
  138. package/esm/evaluator/matchers/between.js +1 -1
  139. package/esm/evaluator/matchers/boolean.js +1 -1
  140. package/esm/evaluator/matchers/cont_all.js +1 -1
  141. package/esm/evaluator/matchers/cont_any.js +1 -1
  142. package/esm/evaluator/matchers/cont_str.js +1 -1
  143. package/esm/evaluator/matchers/dependency.js +2 -2
  144. package/esm/evaluator/matchers/eq.js +1 -1
  145. package/esm/evaluator/matchers/eq_set.js +1 -1
  146. package/esm/evaluator/matchers/ew.js +1 -1
  147. package/esm/evaluator/matchers/gte.js +1 -1
  148. package/esm/evaluator/matchers/index.js +35 -35
  149. package/esm/evaluator/matchers/lte.js +1 -1
  150. package/esm/evaluator/matchers/part_of.js +1 -1
  151. package/esm/evaluator/matchers/segment.js +2 -2
  152. package/esm/evaluator/matchers/string.js +1 -1
  153. package/esm/evaluator/matchers/sw.js +1 -1
  154. package/esm/evaluator/matchers/whitelist.js +1 -1
  155. package/esm/evaluator/matchersTransform/index.js +5 -5
  156. package/esm/evaluator/matchersTransform/segment.js +1 -1
  157. package/esm/evaluator/matchersTransform/set.js +1 -1
  158. package/esm/evaluator/matchersTransform/unaryNumeric.js +1 -1
  159. package/esm/evaluator/matchersTransform/whitelist.js +1 -1
  160. package/esm/evaluator/parser/index.js +11 -11
  161. package/esm/evaluator/treatments/index.js +1 -1
  162. package/esm/evaluator/value/index.js +3 -3
  163. package/esm/evaluator/value/sanitize.js +1 -1
  164. package/esm/integrations/browser.js +2 -2
  165. package/esm/integrations/ga/GaToSplit.js +1 -1
  166. package/esm/integrations/pluggable.js +1 -1
  167. package/esm/listeners/browser.js +2 -2
  168. package/esm/listeners/node.js +2 -2
  169. package/esm/logger/index.js +1 -1
  170. package/esm/logger/messages/warn.js +2 -2
  171. package/esm/readiness/readinessManager.js +1 -1
  172. package/esm/readiness/sdkReadinessManager.js +3 -3
  173. package/esm/sdkClient/client.js +2 -2
  174. package/esm/sdkClient/clientCS.js +2 -2
  175. package/esm/sdkClient/clientInputValidation.js +2 -2
  176. package/esm/sdkClient/sdkClient.js +3 -3
  177. package/esm/sdkClient/sdkClientMethodCS.js +2 -2
  178. package/esm/sdkClient/sdkClientMethodCSWithTT.js +2 -2
  179. package/esm/sdkFactory/index.js +4 -4
  180. package/esm/sdkManager/index.js +2 -2
  181. package/esm/services/splitApi.js +1 -1
  182. package/esm/services/splitHttpClient.js +1 -1
  183. package/esm/storages/AbstractSegmentsCacheSync.js +1 -1
  184. package/esm/storages/AbstractSplitsCacheAsync.js +1 -1
  185. package/esm/storages/AbstractSplitsCacheSync.js +1 -1
  186. package/esm/storages/KeyBuilder.js +1 -1
  187. package/esm/storages/KeyBuilderCS.js +2 -2
  188. package/esm/storages/KeyBuilderSS.js +2 -2
  189. package/esm/storages/findLatencyIndex.js +1 -1
  190. package/esm/storages/inLocalStorage/MySegmentsCacheInLocal.js +2 -2
  191. package/esm/storages/inLocalStorage/SplitsCacheInLocal.js +2 -2
  192. package/esm/storages/inLocalStorage/index.js +8 -8
  193. package/esm/storages/inMemory/CountsCacheInMemory.js +1 -1
  194. package/esm/storages/inMemory/EventsCacheInMemory.js +1 -1
  195. package/esm/storages/inMemory/ImpressionCountsCacheInMemory.js +1 -1
  196. package/esm/storages/inMemory/ImpressionsCacheInMemory.js +1 -1
  197. package/esm/storages/inMemory/InMemoryStorage.js +5 -5
  198. package/esm/storages/inMemory/InMemoryStorageCS.js +5 -5
  199. package/esm/storages/inMemory/LatenciesCacheInMemory.js +2 -2
  200. package/esm/storages/inMemory/MySegmentsCacheInMemory.js +2 -2
  201. package/esm/storages/inMemory/SegmentsCacheInMemory.js +2 -2
  202. package/esm/storages/inMemory/SplitsCacheInMemory.js +2 -2
  203. package/esm/storages/inRedis/CountsCacheInRedis.js +1 -1
  204. package/esm/storages/inRedis/EventsCacheInRedis.js +1 -1
  205. package/esm/storages/inRedis/ImpressionsCacheInRedis.js +1 -1
  206. package/esm/storages/inRedis/LatenciesCacheInRedis.js +2 -2
  207. package/esm/storages/inRedis/RedisAdapter.js +3 -3
  208. package/esm/storages/inRedis/SegmentsCacheInRedis.js +1 -1
  209. package/esm/storages/inRedis/SplitsCacheInRedis.js +2 -2
  210. package/esm/storages/inRedis/index.js +8 -8
  211. package/esm/storages/pluggable/SplitsCachePluggable.js +1 -1
  212. package/esm/storages/pluggable/constants.js +1 -1
  213. package/esm/storages/pluggable/index.js +4 -4
  214. package/esm/sync/offline/splitsParser/parseCondition.js +1 -1
  215. package/esm/sync/offline/splitsParser/splitsParserFromFile.js +1 -1
  216. package/esm/sync/offline/splitsParser/splitsParserFromSettings.js +1 -1
  217. package/esm/sync/offline/syncManagerOffline.js +2 -2
  218. package/esm/sync/offline/syncTasks/fromObjectSyncTask.js +2 -2
  219. package/esm/sync/polling/fetchers/mySegmentsFetcher.js +1 -1
  220. package/esm/sync/polling/fetchers/segmentChangesFetcher.js +1 -1
  221. package/esm/sync/polling/fetchers/splitChangesFetcher.js +1 -1
  222. package/esm/sync/polling/pollingManagerCS.js +3 -3
  223. package/esm/sync/polling/pollingManagerSS.js +4 -4
  224. package/esm/sync/polling/syncTasks/mySegmentsSyncTask.js +3 -3
  225. package/esm/sync/polling/syncTasks/segmentsSyncTask.js +3 -3
  226. package/esm/sync/polling/syncTasks/splitsSyncTask.js +3 -3
  227. package/esm/sync/polling/updaters/mySegmentsUpdater.js +1 -1
  228. package/esm/sync/polling/updaters/segmentChangesUpdater.js +1 -1
  229. package/esm/sync/polling/updaters/splitChangesUpdater.js +1 -1
  230. package/esm/sync/streaming/AuthClient/index.js +1 -1
  231. package/esm/sync/streaming/SSEClient/index.js +1 -2
  232. package/esm/sync/streaming/SSEHandler/NotificationKeeper.js +1 -1
  233. package/esm/sync/streaming/SSEHandler/index.js +2 -2
  234. package/esm/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.js +2 -2
  235. package/esm/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.js +2 -2
  236. package/esm/sync/streaming/UpdateWorkers/SplitsUpdateWorker.js +2 -2
  237. package/esm/sync/streaming/pushManager.js +8 -8
  238. package/esm/sync/submitters/submitterSyncTask.js +1 -1
  239. package/esm/sync/syncTask.js +1 -1
  240. package/esm/trackers/eventTracker.js +3 -3
  241. package/esm/trackers/impressionObserver/ImpressionObserver.js +2 -2
  242. package/esm/trackers/impressionObserver/impressionObserverCS.js +1 -1
  243. package/esm/trackers/impressionObserver/impressionObserverSS.js +1 -1
  244. package/esm/trackers/impressionsTracker.js +3 -3
  245. package/esm/utils/Backoff.js +1 -1
  246. package/esm/utils/LRUCache/index.js +1 -1
  247. package/esm/utils/MinEventEmitter.js +6 -6
  248. package/esm/utils/MinEvents.js +2 -5
  249. package/esm/utils/env/isNode.js +4 -1
  250. package/esm/utils/inputValidation/trafficTypeExistance.js +1 -1
  251. package/esm/utils/lang/binarySearch.js +1 -1
  252. package/esm/utils/lang/objectAssign.js +82 -0
  253. package/esm/utils/promise/thenable.js +3 -1
  254. package/esm/utils/promise/timeout.js +1 -1
  255. package/esm/utils/promise/wrapper.js +1 -1
  256. package/esm/utils/settingsValidation/impressionsMode.js +1 -1
  257. package/esm/utils/settingsValidation/index.js +2 -2
  258. package/esm/utils/settingsValidation/mode.js +1 -1
  259. package/esm/utils/timeTracker/index.js +4 -5
  260. package/esm/utils/timeTracker/now/browser.js +1 -2
  261. package/esm/utils/timeTracker/now/node.js +1 -1
  262. package/esm/utils/timeTracker/timer.js +1 -1
  263. package/package.json +4 -6
  264. package/src/evaluator/Engine.ts +3 -3
  265. package/src/evaluator/combiners/and.ts +2 -2
  266. package/src/evaluator/combiners/ifelseif.ts +2 -2
  267. package/src/evaluator/condition/index.ts +2 -2
  268. package/src/evaluator/index.ts +5 -6
  269. package/src/evaluator/matchers/all.ts +1 -1
  270. package/src/evaluator/matchers/between.ts +1 -1
  271. package/src/evaluator/matchers/boolean.ts +1 -1
  272. package/src/evaluator/matchers/cont_all.ts +1 -1
  273. package/src/evaluator/matchers/cont_any.ts +1 -1
  274. package/src/evaluator/matchers/cont_str.ts +1 -1
  275. package/src/evaluator/matchers/dependency.ts +2 -2
  276. package/src/evaluator/matchers/eq.ts +1 -1
  277. package/src/evaluator/matchers/eq_set.ts +1 -1
  278. package/src/evaluator/matchers/ew.ts +1 -1
  279. package/src/evaluator/matchers/gte.ts +1 -1
  280. package/src/evaluator/matchers/index.ts +35 -35
  281. package/src/evaluator/matchers/lte.ts +1 -1
  282. package/src/evaluator/matchers/part_of.ts +1 -1
  283. package/src/evaluator/matchers/segment.ts +2 -2
  284. package/src/evaluator/matchers/string.ts +1 -1
  285. package/src/evaluator/matchers/sw.ts +1 -1
  286. package/src/evaluator/matchers/whitelist.ts +1 -1
  287. package/src/evaluator/matchersTransform/index.ts +5 -5
  288. package/src/evaluator/matchersTransform/segment.ts +1 -1
  289. package/src/evaluator/matchersTransform/set.ts +1 -1
  290. package/src/evaluator/matchersTransform/unaryNumeric.ts +1 -1
  291. package/src/evaluator/matchersTransform/whitelist.ts +1 -1
  292. package/src/evaluator/parser/index.ts +12 -12
  293. package/src/evaluator/treatments/index.ts +1 -1
  294. package/src/evaluator/value/index.ts +3 -3
  295. package/src/evaluator/value/sanitize.ts +1 -1
  296. package/src/integrations/browser.ts +2 -2
  297. package/src/integrations/ga/GaToSplit.ts +1 -1
  298. package/src/integrations/pluggable.ts +1 -1
  299. package/src/listeners/browser.ts +2 -2
  300. package/src/listeners/node.ts +2 -2
  301. package/src/logger/index.ts +1 -1
  302. package/src/logger/messages/warn.ts +2 -2
  303. package/src/readiness/readinessManager.ts +2 -2
  304. package/src/readiness/sdkReadinessManager.ts +3 -3
  305. package/src/sdkClient/client.ts +2 -2
  306. package/src/sdkClient/clientCS.ts +2 -2
  307. package/src/sdkClient/clientInputValidation.ts +2 -2
  308. package/src/sdkClient/sdkClient.ts +3 -3
  309. package/src/sdkClient/sdkClientMethodCS.ts +2 -2
  310. package/src/sdkClient/sdkClientMethodCSWithTT.ts +2 -2
  311. package/src/sdkFactory/index.ts +4 -4
  312. package/src/sdkFactory/types.ts +2 -2
  313. package/src/sdkManager/index.ts +2 -2
  314. package/src/services/splitApi.ts +1 -1
  315. package/src/services/splitHttpClient.ts +1 -1
  316. package/src/services/types.ts +16 -2
  317. package/src/storages/AbstractSegmentsCacheSync.ts +1 -1
  318. package/src/storages/AbstractSplitsCacheAsync.ts +1 -1
  319. package/src/storages/AbstractSplitsCacheSync.ts +1 -1
  320. package/src/storages/KeyBuilder.ts +1 -1
  321. package/src/storages/KeyBuilderCS.ts +2 -2
  322. package/src/storages/KeyBuilderSS.ts +2 -2
  323. package/src/storages/findLatencyIndex.ts +1 -1
  324. package/src/storages/inLocalStorage/MySegmentsCacheInLocal.ts +3 -3
  325. package/src/storages/inLocalStorage/SplitsCacheInLocal.ts +3 -3
  326. package/src/storages/inLocalStorage/index.ts +8 -8
  327. package/src/storages/inMemory/CountsCacheInMemory.ts +1 -1
  328. package/src/storages/inMemory/EventsCacheInMemory.ts +1 -1
  329. package/src/storages/inMemory/ImpressionCountsCacheInMemory.ts +1 -1
  330. package/src/storages/inMemory/ImpressionsCacheInMemory.ts +1 -1
  331. package/src/storages/inMemory/InMemoryStorage.ts +5 -5
  332. package/src/storages/inMemory/InMemoryStorageCS.ts +5 -5
  333. package/src/storages/inMemory/LatenciesCacheInMemory.ts +2 -2
  334. package/src/storages/inMemory/MySegmentsCacheInMemory.ts +2 -2
  335. package/src/storages/inMemory/SegmentsCacheInMemory.ts +2 -2
  336. package/src/storages/inMemory/SplitsCacheInMemory.ts +2 -2
  337. package/src/storages/inRedis/CountsCacheInRedis.ts +2 -2
  338. package/src/storages/inRedis/EventsCacheInRedis.ts +1 -1
  339. package/src/storages/inRedis/ImpressionsCacheInRedis.ts +1 -1
  340. package/src/storages/inRedis/LatenciesCacheInRedis.ts +3 -3
  341. package/src/storages/inRedis/RedisAdapter.ts +3 -3
  342. package/src/storages/inRedis/SegmentsCacheInRedis.ts +2 -2
  343. package/src/storages/inRedis/SplitsCacheInRedis.ts +3 -3
  344. package/src/storages/inRedis/index.ts +8 -8
  345. package/src/storages/pluggable/SegmentsCachePluggable.ts +1 -1
  346. package/src/storages/pluggable/SplitsCachePluggable.ts +2 -2
  347. package/src/storages/pluggable/constants.ts +1 -1
  348. package/src/storages/pluggable/index.ts +4 -4
  349. package/src/storages/types.ts +2 -2
  350. package/src/sync/offline/splitsParser/parseCondition.ts +1 -1
  351. package/src/sync/offline/splitsParser/splitsParserFromFile.ts +1 -1
  352. package/src/sync/offline/splitsParser/splitsParserFromSettings.ts +1 -1
  353. package/src/sync/offline/syncManagerOffline.ts +2 -2
  354. package/src/sync/offline/syncTasks/fromObjectSyncTask.ts +2 -2
  355. package/src/sync/polling/fetchers/mySegmentsFetcher.ts +1 -1
  356. package/src/sync/polling/fetchers/segmentChangesFetcher.ts +1 -1
  357. package/src/sync/polling/fetchers/splitChangesFetcher.ts +1 -1
  358. package/src/sync/polling/pollingManagerCS.ts +3 -3
  359. package/src/sync/polling/pollingManagerSS.ts +4 -4
  360. package/src/sync/polling/syncTasks/mySegmentsSyncTask.ts +3 -3
  361. package/src/sync/polling/syncTasks/segmentsSyncTask.ts +3 -3
  362. package/src/sync/polling/syncTasks/splitsSyncTask.ts +3 -3
  363. package/src/sync/polling/updaters/mySegmentsUpdater.ts +1 -1
  364. package/src/sync/polling/updaters/segmentChangesUpdater.ts +1 -1
  365. package/src/sync/polling/updaters/splitChangesUpdater.ts +1 -1
  366. package/src/sync/streaming/AuthClient/index.ts +1 -1
  367. package/src/sync/streaming/SSEClient/index.ts +6 -6
  368. package/src/sync/streaming/SSEHandler/NotificationKeeper.ts +1 -1
  369. package/src/sync/streaming/SSEHandler/index.ts +2 -2
  370. package/src/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.ts +2 -2
  371. package/src/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.ts +2 -2
  372. package/src/sync/streaming/UpdateWorkers/SplitsUpdateWorker.ts +2 -2
  373. package/src/sync/streaming/UpdateWorkers/types.ts +1 -1
  374. package/src/sync/streaming/pushManager.ts +8 -8
  375. package/src/sync/submitters/submitterSyncTask.ts +1 -1
  376. package/src/sync/syncTask.ts +1 -1
  377. package/src/trackers/eventTracker.ts +3 -3
  378. package/src/trackers/impressionObserver/ImpressionObserver.ts +2 -2
  379. package/src/trackers/impressionObserver/impressionObserverCS.ts +1 -1
  380. package/src/trackers/impressionObserver/impressionObserverSS.ts +1 -1
  381. package/src/trackers/impressionsTracker.ts +3 -3
  382. package/src/types.ts +9 -8
  383. package/src/utils/Backoff.ts +1 -1
  384. package/src/utils/LRUCache/index.ts +1 -1
  385. package/src/utils/MinEventEmitter.ts +11 -11
  386. package/src/utils/MinEvents.ts +2 -7
  387. package/src/utils/env/isNode.ts +4 -1
  388. package/src/utils/inputValidation/trafficTypeExistance.ts +1 -1
  389. package/src/utils/lang/binarySearch.ts +1 -1
  390. package/src/utils/lang/objectAssign.ts +104 -0
  391. package/src/utils/promise/thenable.ts +3 -1
  392. package/src/utils/promise/timeout.ts +1 -1
  393. package/src/utils/promise/wrapper.ts +1 -1
  394. package/src/utils/settingsValidation/impressionsMode.ts +1 -1
  395. package/src/utils/settingsValidation/index.ts +2 -2
  396. package/src/utils/settingsValidation/mode.ts +1 -1
  397. package/src/utils/timeTracker/index.ts +4 -6
  398. package/src/utils/timeTracker/now/browser.ts +1 -3
  399. package/src/utils/timeTracker/now/node.ts +1 -1
  400. package/src/utils/timeTracker/timer.ts +1 -1
  401. package/types/evaluator/Engine.d.ts +1 -1
  402. package/types/evaluator/combiners/and.d.ts +1 -1
  403. package/types/evaluator/combiners/ifelseif.d.ts +1 -1
  404. package/types/evaluator/condition/index.d.ts +1 -1
  405. package/types/evaluator/matchers/all.d.ts +1 -1
  406. package/types/evaluator/matchers/between.d.ts +1 -1
  407. package/types/evaluator/matchers/boolean.d.ts +1 -1
  408. package/types/evaluator/matchers/cont_all.d.ts +1 -1
  409. package/types/evaluator/matchers/cont_any.d.ts +1 -1
  410. package/types/evaluator/matchers/cont_str.d.ts +1 -1
  411. package/types/evaluator/matchers/dependency.d.ts +1 -1
  412. package/types/evaluator/matchers/eq.d.ts +1 -1
  413. package/types/evaluator/matchers/eq_set.d.ts +1 -1
  414. package/types/evaluator/matchers/ew.d.ts +1 -1
  415. package/types/evaluator/matchers/gte.d.ts +1 -1
  416. package/types/evaluator/matchers/index.d.ts +1 -1
  417. package/types/evaluator/matchers/lte.d.ts +1 -1
  418. package/types/evaluator/matchers/part_of.d.ts +1 -1
  419. package/types/evaluator/matchers/segment.d.ts +1 -1
  420. package/types/evaluator/matchers/string.d.ts +1 -1
  421. package/types/evaluator/matchers/sw.d.ts +1 -1
  422. package/types/evaluator/matchers/whitelist.d.ts +1 -1
  423. package/types/evaluator/matchersTransform/index.d.ts +1 -1
  424. package/types/evaluator/matchersTransform/segment.d.ts +1 -1
  425. package/types/evaluator/matchersTransform/set.d.ts +1 -1
  426. package/types/evaluator/matchersTransform/unaryNumeric.d.ts +1 -1
  427. package/types/evaluator/matchersTransform/whitelist.d.ts +1 -1
  428. package/types/evaluator/parser/index.d.ts +1 -1
  429. package/types/evaluator/treatments/index.d.ts +1 -1
  430. package/types/evaluator/value/index.d.ts +1 -1
  431. package/types/evaluator/value/sanitize.d.ts +1 -1
  432. package/types/integrations/browser.d.ts +1 -1
  433. package/types/integrations/pluggable.d.ts +1 -1
  434. package/types/listeners/browser.d.ts +1 -1
  435. package/types/listeners/node.d.ts +1 -1
  436. package/types/readiness/sdkReadinessManager.d.ts +1 -1
  437. package/types/sdkClient/client.d.ts +1 -1
  438. package/types/sdkClient/clientCS.d.ts +1 -1
  439. package/types/sdkClient/clientInputValidation.d.ts +1 -1
  440. package/types/sdkFactory/types.d.ts +2 -2
  441. package/types/services/types.d.ts +11 -0
  442. package/types/storages/AbstractSegmentsCacheSync.d.ts +1 -1
  443. package/types/storages/AbstractSplitsCacheAsync.d.ts +1 -1
  444. package/types/storages/AbstractSplitsCacheSync.d.ts +1 -1
  445. package/types/storages/KeyBuilder.d.ts +1 -1
  446. package/types/storages/KeyBuilderCS.d.ts +2 -2
  447. package/types/storages/KeyBuilderSS.d.ts +2 -2
  448. package/types/storages/findLatencyIndex.d.ts +1 -1
  449. package/types/storages/inLocalStorage/MySegmentsCacheInLocal.d.ts +3 -3
  450. package/types/storages/inLocalStorage/SplitsCacheInLocal.d.ts +3 -3
  451. package/types/storages/inMemory/CountsCacheInMemory.d.ts +1 -1
  452. package/types/storages/inMemory/EventsCacheInMemory.d.ts +1 -1
  453. package/types/storages/inMemory/ImpressionCountsCacheInMemory.d.ts +1 -1
  454. package/types/storages/inMemory/ImpressionsCacheInMemory.d.ts +1 -1
  455. package/types/storages/inMemory/LatenciesCacheInMemory.d.ts +1 -1
  456. package/types/storages/inMemory/MySegmentsCacheInMemory.d.ts +2 -2
  457. package/types/storages/inMemory/SegmentsCacheInMemory.d.ts +2 -2
  458. package/types/storages/inMemory/SplitsCacheInMemory.d.ts +2 -2
  459. package/types/storages/inRedis/CountsCacheInRedis.d.ts +2 -2
  460. package/types/storages/inRedis/EventsCacheInRedis.d.ts +1 -1
  461. package/types/storages/inRedis/ImpressionsCacheInRedis.d.ts +1 -1
  462. package/types/storages/inRedis/LatenciesCacheInRedis.d.ts +2 -2
  463. package/types/storages/inRedis/RedisAdapter.d.ts +1 -1
  464. package/types/storages/inRedis/SegmentsCacheInRedis.d.ts +2 -2
  465. package/types/storages/inRedis/SplitsCacheInRedis.d.ts +3 -3
  466. package/types/storages/pluggable/SegmentsCachePluggable.d.ts +1 -1
  467. package/types/storages/pluggable/SplitsCachePluggable.d.ts +2 -2
  468. package/types/storages/pluggable/constants.d.ts +1 -1
  469. package/types/storages/types.d.ts +2 -2
  470. package/types/sync/offline/splitsParser/parseCondition.d.ts +1 -1
  471. package/types/sync/offline/syncTasks/fromObjectSyncTask.d.ts +1 -1
  472. package/types/sync/polling/fetchers/mySegmentsFetcher.d.ts +1 -1
  473. package/types/sync/polling/fetchers/segmentChangesFetcher.d.ts +1 -1
  474. package/types/sync/polling/fetchers/splitChangesFetcher.d.ts +1 -1
  475. package/types/sync/polling/pollingManagerCS.d.ts +1 -1
  476. package/types/sync/polling/pollingManagerSS.d.ts +1 -1
  477. package/types/sync/polling/syncTasks/mySegmentsSyncTask.d.ts +1 -1
  478. package/types/sync/polling/syncTasks/segmentsSyncTask.d.ts +1 -1
  479. package/types/sync/polling/syncTasks/splitsSyncTask.d.ts +1 -1
  480. package/types/sync/streaming/SSEClient/index.d.ts +5 -4
  481. package/types/sync/streaming/SSEHandler/NotificationKeeper.d.ts +1 -1
  482. package/types/sync/streaming/SSEHandler/index.d.ts +1 -1
  483. package/types/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.d.ts +2 -2
  484. package/types/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.d.ts +2 -2
  485. package/types/sync/streaming/UpdateWorkers/SplitsUpdateWorker.d.ts +2 -2
  486. package/types/sync/streaming/UpdateWorkers/types.d.ts +1 -1
  487. package/types/sync/streaming/pushManager.d.ts +1 -1
  488. package/types/sync/syncTask.d.ts +1 -1
  489. package/types/trackers/eventTracker.d.ts +1 -1
  490. package/types/trackers/impressionObserver/ImpressionObserver.d.ts +1 -1
  491. package/types/trackers/impressionObserver/impressionObserverCS.d.ts +1 -1
  492. package/types/trackers/impressionObserver/impressionObserverSS.d.ts +1 -1
  493. package/types/trackers/impressionsTracker.d.ts +1 -1
  494. package/types/types.d.ts +9 -9
  495. package/types/utils/Backoff.d.ts +1 -1
  496. package/types/utils/LRUCache/index.d.ts +1 -1
  497. package/types/utils/MinEventEmitter.d.ts +7 -7
  498. package/types/utils/MinEvents.d.ts +3 -2
  499. package/types/utils/env/isNode.d.ts +4 -0
  500. package/types/utils/lang/binarySearch.d.ts +1 -1
  501. package/types/utils/lang/objectAssign.d.ts +3 -0
  502. package/types/utils/promise/thenable.d.ts +1 -2
  503. package/types/utils/promise/timeout.d.ts +1 -1
  504. package/types/utils/promise/wrapper.d.ts +1 -1
  505. package/types/utils/settingsValidation/impressionsMode.d.ts +1 -1
  506. package/types/utils/settingsValidation/mode.d.ts +1 -1
  507. package/types/utils/timeTracker/index.d.ts +2 -2
  508. package/types/utils/timeTracker/now/browser.d.ts +1 -2
  509. package/types/utils/timeTracker/now/node.d.ts +1 -1
  510. package/types/utils/timeTracker/timer.d.ts +1 -1
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Engine = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  var lang_1 = require("../utils/lang");
5
- var parser_1 = tslib_1.__importDefault(require("./parser"));
6
+ var parser_1 = require("./parser");
6
7
  var key_1 = require("../utils/key");
7
- var thenable_1 = tslib_1.__importDefault(require("../utils/promise/thenable"));
8
+ var thenable_1 = require("../utils/promise/thenable");
8
9
  var LabelsConstants = tslib_1.__importStar(require("../utils/labels"));
9
10
  var constants_1 = require("../utils/constants");
10
11
  function evaluationResult(result, defaultTreatment) {
@@ -24,7 +25,7 @@ var Engine = /** @class */ (function () {
24
25
  }
25
26
  Engine.parse = function (log, splitFlatStructure, storage) {
26
27
  var conditions = splitFlatStructure.conditions;
27
- var evaluator = parser_1.default(log, conditions, storage);
28
+ var evaluator = parser_1.parser(log, conditions, storage);
28
29
  return new Engine(splitFlatStructure, evaluator);
29
30
  };
30
31
  Engine.prototype.getKey = function () {
@@ -56,7 +57,7 @@ var Engine = /** @class */ (function () {
56
57
  var evaluation = this.evaluator(parsedKey, seed, trafficAllocation, trafficAllocationSeed, attributes, splitEvaluator);
57
58
  // Evaluation could be async, so we should handle that case checking for a
58
59
  // thenable object
59
- if (thenable_1.default(evaluation)) {
60
+ if (thenable_1.thenable(evaluation)) {
60
61
  return evaluation.then(function (result) { return evaluationResult(result, defaultTreatment); });
61
62
  }
62
63
  else {
@@ -76,4 +77,4 @@ var Engine = /** @class */ (function () {
76
77
  };
77
78
  return Engine;
78
79
  }());
79
- exports.default = Engine;
80
+ exports.Engine = Engine;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
3
+ exports.andCombinerContext = void 0;
4
4
  var lang_1 = require("../../utils/lang");
5
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
5
+ var thenable_1 = require("../../utils/promise/thenable");
6
6
  var constants_1 = require("../../logger/constants");
7
7
  function andCombinerContext(log, matchers) {
8
8
  function andResults(results) {
@@ -18,7 +18,7 @@ function andCombinerContext(log, matchers) {
18
18
  }
19
19
  var matcherResults = matchers.map(function (matcher) { return matcher.apply(void 0, params); });
20
20
  // If any matching result is a thenable we should use Promise.all
21
- if (lang_1.findIndex(matcherResults, thenable_1.default) !== -1) {
21
+ if (lang_1.findIndex(matcherResults, thenable_1.thenable) !== -1) {
22
22
  return Promise.all(matcherResults).then(andResults);
23
23
  }
24
24
  else {
@@ -26,4 +26,4 @@ function andCombinerContext(log, matchers) {
26
26
  }
27
27
  };
28
28
  }
29
- exports.default = andCombinerContext;
29
+ exports.andCombinerContext = andCombinerContext;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ifElseIfCombinerContext = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  var lang_1 = require("../../utils/lang");
5
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
6
+ var thenable_1 = require("../../utils/promise/thenable");
6
7
  var LabelsConstants = tslib_1.__importStar(require("../../utils/labels"));
7
8
  var constants_1 = require("../../utils/constants");
8
9
  var constants_2 = require("../../logger/constants");
@@ -32,7 +33,7 @@ function ifElseIfCombinerContext(log, predicates) {
32
33
  // define how to return the treatment (wrap result into a Promise or not).
33
34
  var predicateResults = predicates.map(function (evaluator) { return evaluator(key, seed, trafficAllocation, trafficAllocationSeed, attributes, splitEvaluator); });
34
35
  // if we find a thenable
35
- if (lang_1.findIndex(predicateResults, thenable_1.default) !== -1) {
36
+ if (lang_1.findIndex(predicateResults, thenable_1.thenable) !== -1) {
36
37
  return Promise.all(predicateResults).then(function (results) { return computeTreatment(results); });
37
38
  }
38
39
  return computeTreatment(predicateResults);
@@ -45,4 +46,4 @@ function ifElseIfCombinerContext(log, predicates) {
45
46
  return ifElseIfCombiner;
46
47
  }
47
48
  }
48
- exports.default = ifElseIfCombinerContext;
49
+ exports.ifElseIfCombinerContext = ifElseIfCombinerContext;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.conditionContext = void 0;
3
4
  var tslib_1 = require("tslib");
4
5
  var engineUtils_1 = require("./engineUtils");
5
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
6
+ var thenable_1 = require("../../utils/promise/thenable");
6
7
  var LabelsConstants = tslib_1.__importStar(require("../../utils/labels"));
7
8
  // Build Evaluation object if and only if matchingResult is true
8
9
  function match(log, matchingResult, bucketingKey, seed, treatments, label) {
@@ -31,10 +32,10 @@ function conditionContext(log, matcherEvaluator, treatments, label, conditionTyp
31
32
  // Also, we pass splitEvaluator function in case we have a matcher that needs to evaluate another split,
32
33
  // as well as the entire key object for the same reason.
33
34
  var matches = matcherEvaluator(key, attributes, splitEvaluator);
34
- if (thenable_1.default(matches)) {
35
+ if (thenable_1.thenable(matches)) {
35
36
  return matches.then(function (result) { return match(log, result, key.bucketingKey, seed, treatments, label); });
36
37
  }
37
38
  return match(log, matches, key.bucketingKey, seed, treatments, label);
38
39
  };
39
40
  }
40
- exports.default = conditionContext;
41
+ exports.conditionContext = conditionContext;
@@ -2,10 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.evaluateFeatures = exports.evaluateFeature = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var Engine_1 = tslib_1.__importDefault(require("./Engine"));
6
- var thenable_1 = tslib_1.__importDefault(require("../utils/promise/thenable"));
5
+ var Engine_1 = require("./Engine");
6
+ var thenable_1 = require("../utils/promise/thenable");
7
7
  var LabelsConstants = tslib_1.__importStar(require("../utils/labels"));
8
- var lang_1 = require("../utils/lang");
9
8
  var constants_1 = require("../utils/constants");
10
9
  var treatmentException = {
11
10
  treatment: constants_1.CONTROL,
@@ -28,7 +27,7 @@ function evaluateFeature(log, key, splitName, attributes, storage) {
28
27
  // Exception on sync `getSplit` storage. Not possible ATM with InMemory and InLocal storages.
29
28
  return treatmentException;
30
29
  }
31
- if (thenable_1.default(stringifiedSplit)) {
30
+ if (thenable_1.thenable(stringifiedSplit)) {
32
31
  return stringifiedSplit.then(function (result) { return getEvaluation(log, result, key, attributes, storage); }).catch(
33
32
  // Exception on async `getSplit` storage. For example, when the storage is redis or
34
33
  // pluggable and there is a connection issue and we can't retrieve the split to be evaluated
@@ -46,7 +45,7 @@ function evaluateFeatures(log, key, splitNames, attributes, storage) {
46
45
  // Exception on sync `getSplits` storage. Not possible ATM with InMemory and InLocal storages.
47
46
  return treatmentsException(splitNames);
48
47
  }
49
- return (thenable_1.default(stringifiedSplits)) ?
48
+ return (thenable_1.thenable(stringifiedSplits)) ?
50
49
  stringifiedSplits.then(function (splits) { return getEvaluations(log, splitNames, splits, key, attributes, storage); })
51
50
  .catch(function () {
52
51
  // Exception on async `getSplits` storage. For example, when the storage is redis or
@@ -64,19 +63,19 @@ function getEvaluation(log, stringifiedSplit, key, attributes, storage) {
64
63
  };
65
64
  if (stringifiedSplit) {
66
65
  var splitJSON_1 = JSON.parse(stringifiedSplit);
67
- var split_1 = Engine_1.default.parse(log, splitJSON_1, storage);
66
+ var split_1 = Engine_1.Engine.parse(log, splitJSON_1, storage);
68
67
  evaluation = split_1.getTreatment(key, attributes, evaluateFeature);
69
- // If the storage is async, evaluation and changeNumber will return a thenable
70
- if (thenable_1.default(evaluation)) {
68
+ // If the storage is async and the evaluated split uses segment, evaluation is thenable
69
+ if (thenable_1.thenable(evaluation)) {
71
70
  return evaluation.then(function (result) {
72
71
  result.changeNumber = split_1.getChangeNumber();
73
- result.config = lang_1.get(splitJSON_1, "configurations." + result.treatment, null);
72
+ result.config = splitJSON_1.configurations && splitJSON_1.configurations[result.treatment] || null;
74
73
  return result;
75
74
  });
76
75
  }
77
76
  else {
78
77
  evaluation.changeNumber = split_1.getChangeNumber(); // Always sync and optional
79
- evaluation.config = lang_1.get(splitJSON_1, "configurations." + evaluation.treatment, null);
78
+ evaluation.config = splitJSON_1.configurations && splitJSON_1.configurations[evaluation.treatment] || null;
80
79
  }
81
80
  }
82
81
  return evaluation;
@@ -86,7 +85,7 @@ function getEvaluations(log, splitNames, splits, key, attributes, storage) {
86
85
  var thenables = [];
87
86
  splitNames.forEach(function (splitName) {
88
87
  var evaluation = getEvaluation(log, splits[splitName], key, attributes, storage);
89
- if (thenable_1.default(evaluation)) {
88
+ if (thenable_1.thenable(evaluation)) {
90
89
  thenables.push(evaluation.then(function (res) {
91
90
  result[splitName] = res;
92
91
  }));
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.allMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function allMatcherContext(log) {
5
6
  return function allMatcher(runtimeAttr) {
@@ -7,4 +8,4 @@ function allMatcherContext(log) {
7
8
  return runtimeAttr != null;
8
9
  };
9
10
  }
10
- exports.default = allMatcherContext;
11
+ exports.allMatcherContext = allMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.betweenMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function betweenMatcherContext(log, ruleVO) {
5
6
  return function betweenMatcher(runtimeAttr) {
@@ -8,4 +9,4 @@ function betweenMatcherContext(log, ruleVO) {
8
9
  return isBetween;
9
10
  };
10
11
  }
11
- exports.default = betweenMatcherContext;
12
+ exports.betweenMatcherContext = betweenMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.booleanMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function booleanMatcherContext(log, ruleAttr) {
5
6
  return function booleanMatcher(runtimeAttr) {
@@ -8,4 +9,4 @@ function booleanMatcherContext(log, ruleAttr) {
8
9
  return booleanMatches;
9
10
  };
10
11
  }
11
- exports.default = booleanMatcherContext;
12
+ exports.booleanMatcherContext = booleanMatcherContext;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.containsAllSetMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  var lang_1 = require("../../utils/lang");
5
- function containsAllMatcherContext(log, ruleAttr) {
6
+ function containsAllSetMatcherContext(log, ruleAttr) {
6
7
  return function containsAllMatcher(runtimeAttr) {
7
8
  var containsAll = true;
8
9
  if (runtimeAttr.length < ruleAttr.length) {
@@ -21,4 +22,4 @@ function containsAllMatcherContext(log, ruleAttr) {
21
22
  return containsAll;
22
23
  };
23
24
  }
24
- exports.default = containsAllMatcherContext;
25
+ exports.containsAllSetMatcherContext = containsAllSetMatcherContext;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.containsAnySetMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  var lang_1 = require("../../utils/lang");
5
- function containsAnyMatcherContext(log, ruleAttr) {
6
+ function containsAnySetMatcherContext(log, ruleAttr) {
6
7
  return function containsAnyMatcher(runtimeAttr) {
7
8
  var containsAny = false;
8
9
  var _loop_1 = function (i) {
@@ -16,4 +17,4 @@ function containsAnyMatcherContext(log, ruleAttr) {
16
17
  return containsAny;
17
18
  };
18
19
  }
19
- exports.default = containsAnyMatcherContext;
20
+ exports.containsAnySetMatcherContext = containsAnySetMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.containsStringMatcherContext = void 0;
3
4
  var lang_1 = require("../../utils/lang");
4
5
  var constants_1 = require("../../logger/constants");
5
6
  function containsStringMatcherContext(log, ruleAttr) {
@@ -9,4 +10,4 @@ function containsStringMatcherContext(log, ruleAttr) {
9
10
  return contains;
10
11
  };
11
12
  }
12
- exports.default = containsStringMatcherContext;
13
+ exports.containsStringMatcherContext = containsStringMatcherContext;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
3
+ exports.dependencyMatcherContext = void 0;
4
+ var thenable_1 = require("../../utils/promise/thenable");
5
5
  var constants_1 = require("../../logger/constants");
6
6
  function dependencyMatcherContext(log, _a, storage) {
7
7
  var split = _a.split, treatments = _a.treatments;
@@ -17,7 +17,7 @@ function dependencyMatcherContext(log, _a, storage) {
17
17
  var key = _a.key, attributes = _a.attributes;
18
18
  log.debug(constants_1.ENGINE_MATCHER_DEPENDENCY_PRE, [split, JSON.stringify(key), attributes ? '\n attributes: ' + JSON.stringify(attributes) : '']);
19
19
  var evaluation = splitEvaluator(log, key, split, attributes, storage);
20
- if (thenable_1.default(evaluation)) {
20
+ if (thenable_1.thenable(evaluation)) {
21
21
  return evaluation.then(function (ev) { return checkTreatment(ev, treatments, split); });
22
22
  }
23
23
  else {
@@ -25,4 +25,4 @@ function dependencyMatcherContext(log, _a, storage) {
25
25
  }
26
26
  };
27
27
  }
28
- exports.default = dependencyMatcherContext;
28
+ exports.dependencyMatcherContext = dependencyMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.equalToMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function equalToMatcherContext(log, ruleAttr) {
5
6
  return function equalToMatcher(runtimeAttr) {
@@ -8,4 +9,4 @@ function equalToMatcherContext(log, ruleAttr) {
8
9
  return isEqual;
9
10
  };
10
11
  }
11
- exports.default = equalToMatcherContext;
12
+ exports.equalToMatcherContext = equalToMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.equalToSetMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  var lang_1 = require("../../utils/lang");
5
6
  function equalToSetMatcherContext(log, ruleAttr) {
@@ -18,4 +19,4 @@ function equalToSetMatcherContext(log, ruleAttr) {
18
19
  return isEqual;
19
20
  };
20
21
  }
21
- exports.default = equalToSetMatcherContext;
22
+ exports.equalToSetMatcherContext = equalToSetMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.endsWithMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  var lang_1 = require("../../utils/lang");
5
6
  function endsWithMatcherContext(log, ruleAttr) {
@@ -9,4 +10,4 @@ function endsWithMatcherContext(log, ruleAttr) {
9
10
  return endsWith;
10
11
  };
11
12
  }
12
- exports.default = endsWithMatcherContext;
13
+ exports.endsWithMatcherContext = endsWithMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.greaterThanEqualMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function greaterThanEqualMatcherContext(log, ruleAttr) {
5
6
  return function greaterThanEqualMatcher(runtimeAttr) {
@@ -8,4 +9,4 @@ function greaterThanEqualMatcherContext(log, ruleAttr) {
8
9
  return isGreaterEqualThan;
9
10
  };
10
11
  }
11
- exports.default = greaterThanEqualMatcherContext;
12
+ exports.greaterThanEqualMatcherContext = greaterThanEqualMatcherContext;
@@ -1,42 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var all_1 = tslib_1.__importDefault(require("./all"));
5
- var segment_1 = tslib_1.__importDefault(require("./segment"));
6
- var whitelist_1 = tslib_1.__importDefault(require("./whitelist"));
7
- var eq_1 = tslib_1.__importDefault(require("./eq"));
8
- var gte_1 = tslib_1.__importDefault(require("./gte"));
9
- var lte_1 = tslib_1.__importDefault(require("./lte"));
10
- var between_1 = tslib_1.__importDefault(require("./between"));
11
- var eq_set_1 = tslib_1.__importDefault(require("./eq_set"));
12
- var cont_all_1 = tslib_1.__importDefault(require("./cont_all"));
13
- var cont_any_1 = tslib_1.__importDefault(require("./cont_any"));
14
- var part_of_1 = tslib_1.__importDefault(require("./part_of"));
15
- var sw_1 = tslib_1.__importDefault(require("./sw"));
16
- var ew_1 = tslib_1.__importDefault(require("./ew"));
17
- var cont_str_1 = tslib_1.__importDefault(require("./cont_str"));
18
- var dependency_1 = tslib_1.__importDefault(require("./dependency"));
19
- var boolean_1 = tslib_1.__importDefault(require("./boolean"));
20
- var string_1 = tslib_1.__importDefault(require("./string"));
3
+ exports.matcherFactory = void 0;
4
+ var all_1 = require("./all");
5
+ var segment_1 = require("./segment");
6
+ var whitelist_1 = require("./whitelist");
7
+ var eq_1 = require("./eq");
8
+ var gte_1 = require("./gte");
9
+ var lte_1 = require("./lte");
10
+ var between_1 = require("./between");
11
+ var eq_set_1 = require("./eq_set");
12
+ var cont_any_1 = require("./cont_any");
13
+ var cont_all_1 = require("./cont_all");
14
+ var part_of_1 = require("./part_of");
15
+ var ew_1 = require("./ew");
16
+ var sw_1 = require("./sw");
17
+ var cont_str_1 = require("./cont_str");
18
+ var dependency_1 = require("./dependency");
19
+ var boolean_1 = require("./boolean");
20
+ var string_1 = require("./string");
21
21
  var matchers = [
22
22
  undefined,
23
- all_1.default,
24
- segment_1.default,
25
- whitelist_1.default,
26
- eq_1.default,
27
- gte_1.default,
28
- lte_1.default,
29
- between_1.default,
30
- eq_set_1.default,
31
- cont_any_1.default,
32
- cont_all_1.default,
33
- part_of_1.default,
34
- ew_1.default,
35
- sw_1.default,
36
- cont_str_1.default,
37
- dependency_1.default,
38
- boolean_1.default,
39
- string_1.default // MATCHES_STRING: 17
23
+ all_1.allMatcherContext,
24
+ segment_1.segmentMatcherContext,
25
+ whitelist_1.whitelistMatcherContext,
26
+ eq_1.equalToMatcherContext,
27
+ gte_1.greaterThanEqualMatcherContext,
28
+ lte_1.lessThanEqualMatcherContext,
29
+ between_1.betweenMatcherContext,
30
+ eq_set_1.equalToSetMatcherContext,
31
+ cont_any_1.containsAnySetMatcherContext,
32
+ cont_all_1.containsAllSetMatcherContext,
33
+ part_of_1.partOfSetMatcherContext,
34
+ ew_1.endsWithMatcherContext,
35
+ sw_1.startsWithMatcherContext,
36
+ cont_str_1.containsStringMatcherContext,
37
+ dependency_1.dependencyMatcherContext,
38
+ boolean_1.booleanMatcherContext,
39
+ string_1.stringMatcherContext // MATCHES_STRING: 17
40
40
  ];
41
41
  /**
42
42
  * Matcher factory.
@@ -49,4 +49,4 @@ function matcherFactory(log, matcherDto, storage) {
49
49
  matcherFn = matchers[type](log, value, storage); // There is no index-out-of-bound exception in JavaScript
50
50
  return matcherFn;
51
51
  }
52
- exports.default = matcherFactory;
52
+ exports.matcherFactory = matcherFactory;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lessThanEqualMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function lessThanEqualMatcherContext(log, ruleAttr) {
5
6
  return function lessThanEqualMatcher(runtimeAttr) {
@@ -8,4 +9,4 @@ function lessThanEqualMatcherContext(log, ruleAttr) {
8
9
  return isLessEqualThan;
9
10
  };
10
11
  }
11
- exports.default = lessThanEqualMatcherContext;
12
+ exports.lessThanEqualMatcherContext = lessThanEqualMatcherContext;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.partOfSetMatcherContext = void 0;
3
4
  var lang_1 = require("../../utils/lang");
4
5
  var constants_1 = require("../../logger/constants");
5
- function partOfMatcherContext(log, ruleAttr) {
6
+ function partOfSetMatcherContext(log, ruleAttr) {
6
7
  return function partOfMatcher(runtimeAttr) {
7
8
  // To be part of the length should be minor or equal.
8
9
  var isPartOf = runtimeAttr.length <= ruleAttr.length;
@@ -18,4 +19,4 @@ function partOfMatcherContext(log, ruleAttr) {
18
19
  return isPartOf;
19
20
  };
20
21
  }
21
- exports.default = partOfMatcherContext;
22
+ exports.partOfSetMatcherContext = partOfSetMatcherContext;
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var thenable_1 = tslib_1.__importDefault(require("../../utils/promise/thenable"));
3
+ exports.segmentMatcherContext = void 0;
4
+ var thenable_1 = require("../../utils/promise/thenable");
5
5
  var constants_1 = require("../../logger/constants");
6
- function matcherSegmentContext(log, segmentName, storage) {
6
+ function segmentMatcherContext(log, segmentName, storage) {
7
7
  return function segmentMatcher(key) {
8
8
  var isInSegment = storage.segments.isInSegment(segmentName, key);
9
- if (thenable_1.default(isInSegment)) {
9
+ if (thenable_1.thenable(isInSegment)) {
10
10
  isInSegment.then(function (result) {
11
11
  log.debug(constants_1.ENGINE_MATCHER_SEGMENT, [segmentName, key, isInSegment]);
12
12
  return result;
@@ -18,4 +18,4 @@ function matcherSegmentContext(log, segmentName, storage) {
18
18
  return isInSegment;
19
19
  };
20
20
  }
21
- exports.default = matcherSegmentContext;
21
+ exports.segmentMatcherContext = segmentMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  function stringMatcherContext(log, ruleAttr) {
5
6
  return function stringMatcher(runtimeAttr) {
@@ -16,4 +17,4 @@ function stringMatcherContext(log, ruleAttr) {
16
17
  return regexMatches;
17
18
  };
18
19
  }
19
- exports.default = stringMatcherContext;
20
+ exports.stringMatcherContext = stringMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.startsWithMatcherContext = void 0;
3
4
  var constants_1 = require("../../logger/constants");
4
5
  var lang_1 = require("../../utils/lang");
5
6
  function startsWithMatcherContext(log, ruleAttr) {
@@ -9,4 +10,4 @@ function startsWithMatcherContext(log, ruleAttr) {
9
10
  return matches;
10
11
  };
11
12
  }
12
- exports.default = startsWithMatcherContext;
13
+ exports.startsWithMatcherContext = startsWithMatcherContext;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.whitelistMatcherContext = void 0;
3
4
  var sets_1 = require("../../utils/lang/sets");
4
5
  var constants_1 = require("../../logger/constants");
5
6
  function whitelistMatcherContext(log, ruleAttr) {
@@ -9,4 +10,4 @@ function whitelistMatcherContext(log, ruleAttr) {
9
10
  return isInWhitelist;
10
11
  };
11
12
  }
12
- exports.default = whitelistMatcherContext;
13
+ exports.whitelistMatcherContext = whitelistMatcherContext;
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
3
+ exports.matchersTransform = void 0;
4
4
  var lang_1 = require("../../utils/lang");
5
5
  var matcherTypes_1 = require("../matchers/matcherTypes");
6
- var segment_1 = tslib_1.__importDefault(require("./segment"));
7
- var whitelist_1 = tslib_1.__importDefault(require("./whitelist"));
8
- var set_1 = tslib_1.__importDefault(require("./set"));
9
- var unaryNumeric_1 = tslib_1.__importDefault(require("./unaryNumeric"));
6
+ var segment_1 = require("./segment");
7
+ var whitelist_1 = require("./whitelist");
8
+ var set_1 = require("./set");
9
+ var unaryNumeric_1 = require("./unaryNumeric");
10
10
  var convertions_1 = require("../convertions");
11
11
  /**
12
12
  * Flat the complex matcherGroup structure into something handy.
@@ -20,13 +20,13 @@ function matchersTransform(matchers) {
20
20
  var dataType = matcherTypes_1.matcherDataTypes.STRING;
21
21
  var value = undefined;
22
22
  if (type === matcherTypes_1.matcherTypes.IN_SEGMENT) {
23
- value = segment_1.default(segmentObject);
23
+ value = segment_1.segmentTransform(segmentObject);
24
24
  }
25
25
  else if (type === matcherTypes_1.matcherTypes.WHITELIST) {
26
- value = whitelist_1.default(whitelistObject);
26
+ value = whitelist_1.whitelistTransform(whitelistObject);
27
27
  }
28
28
  else if (type === matcherTypes_1.matcherTypes.EQUAL_TO) {
29
- value = unaryNumeric_1.default(unaryNumericObject);
29
+ value = unaryNumeric_1.numericTransform(unaryNumericObject);
30
30
  dataType = matcherTypes_1.matcherDataTypes.NUMBER;
31
31
  if (unaryNumericObject.dataType === 'DATETIME') {
32
32
  value = convertions_1.zeroSinceHH(value);
@@ -35,7 +35,7 @@ function matchersTransform(matchers) {
35
35
  }
36
36
  else if (type === matcherTypes_1.matcherTypes.GREATER_THAN_OR_EQUAL_TO ||
37
37
  type === matcherTypes_1.matcherTypes.LESS_THAN_OR_EQUAL_TO) {
38
- value = unaryNumeric_1.default(unaryNumericObject);
38
+ value = unaryNumeric_1.numericTransform(unaryNumericObject);
39
39
  dataType = matcherTypes_1.matcherDataTypes.NUMBER;
40
40
  if (unaryNumericObject.dataType === 'DATETIME') {
41
41
  value = convertions_1.zeroSinceSS(value);
@@ -55,13 +55,13 @@ function matchersTransform(matchers) {
55
55
  type === matcherTypes_1.matcherTypes.CONTAINS_ANY_OF_SET ||
56
56
  type === matcherTypes_1.matcherTypes.CONTAINS_ALL_OF_SET ||
57
57
  type === matcherTypes_1.matcherTypes.PART_OF_SET) {
58
- value = set_1.default(whitelistObject);
58
+ value = set_1.setTransform(whitelistObject);
59
59
  dataType = matcherTypes_1.matcherDataTypes.SET;
60
60
  }
61
61
  else if (type === matcherTypes_1.matcherTypes.STARTS_WITH ||
62
62
  type === matcherTypes_1.matcherTypes.ENDS_WITH ||
63
63
  type === matcherTypes_1.matcherTypes.CONTAINS_STRING) {
64
- value = set_1.default(whitelistObject);
64
+ value = set_1.setTransform(whitelistObject);
65
65
  }
66
66
  else if (type === matcherTypes_1.matcherTypes.IN_SPLIT_TREATMENT) {
67
67
  value = dependencyObject;
@@ -89,4 +89,4 @@ function matchersTransform(matchers) {
89
89
  return [];
90
90
  }
91
91
  }
92
- exports.default = matchersTransform;
92
+ exports.matchersTransform = matchersTransform;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.segmentTransform = void 0;
3
4
  /**
4
5
  * Extract segment name as a plain string.
5
6
  */
6
- function transform(segment) {
7
+ function segmentTransform(segment) {
7
8
  return segment ? segment.segmentName : undefined;
8
9
  }
9
- exports.default = transform;
10
+ exports.segmentTransform = segmentTransform;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setTransform = void 0;
3
4
  /**
4
5
  * Extract whitelist array. Used by set and string matchers
5
6
  */
6
- function transform(whitelistObject) {
7
+ function setTransform(whitelistObject) {
7
8
  return whitelistObject.whitelist;
8
9
  }
9
- exports.default = transform;
10
+ exports.setTransform = setTransform;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.numericTransform = void 0;
3
4
  /**
4
5
  * Extract value from unary matcher data.
5
6
  */
6
- function transform(unaryNumericObject) {
7
+ function numericTransform(unaryNumericObject) {
7
8
  return unaryNumericObject.value;
8
9
  }
9
- exports.default = transform;
10
+ exports.numericTransform = numericTransform;