@effect-app/infra 0.7.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 (438) hide show
  1. package/.eslintrc.cjs +11 -0
  2. package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-314902b6271c341511f7398a50469024 +0 -0
  3. package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-3f072cc7afa09b6adaead0527ab9df83 +0 -0
  4. package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-74c3c295c110fc861b6a4c673afc3e24 +0 -0
  5. package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-bf6dae8cb9ea9740ceb39aefaf12716c +0 -0
  6. package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-cf9d1486029526079a5f68f2041dea02 +0 -0
  7. package/.jest-cache/haste-map-4ca41cc04e60c616a19cbb483cbf487b-e2f1f4b6d87214e3c49442fed31f310c-b4710ed9fb3d0757c4bf23045c585670 +0 -0
  8. package/.jest-cache/haste-map-4ca41cc04e60c616a19cbb483cbf487b-e2f1f4b6d87214e3c49442fed31f310c-ee17e5395bb1b7b36a4e2e22a6ae1449 +0 -0
  9. package/.jest-cache/haste-map-7dc16d7fae8c072843ed1c69eae73100-a8a4225b317477b49bca31f54559afb3-c16136699bb7f463be85273162b447c3 +0 -0
  10. package/.jest-cache/haste-map-9aa1e395a82e108eb49698982c574272-e2f1f4b6d87214e3c49442fed31f310c-f7435f46fc41ac5a13d06a49cae9a650 +0 -0
  11. package/.jest-cache/haste-map-9d206b45d610536c9ec65eec263c6964-a8a4225b317477b49bca31f54559afb3-3510506a330b44f1ae629033aac8fbb3 +0 -0
  12. package/.jest-cache/haste-map-a00ab30d0d656f9d3990958a54b9ccfd-87603b0fc921b26b622a5859b4c92bed-17b550b450b18840c25861aa6e835f0c +0 -0
  13. package/.jest-cache/haste-map-a00ab30d0d656f9d3990958a54b9ccfd-87603b0fc921b26b622a5859b4c92bed-4dc31290b1efc98335eb4c89167d75c3 +0 -0
  14. package/.jest-cache/haste-map-ab843cb0ffbadfd0deea4adb182c7ecd-87603b0fc921b26b622a5859b4c92bed-997106edf4bbc31567a378146180e45e +0 -0
  15. package/.jest-cache/haste-map-ab843cb0ffbadfd0deea4adb182c7ecd-87603b0fc921b26b622a5859b4c92bed-f0cd25414f9ed16c446940ca3aa23c1b +0 -0
  16. package/.jest-cache/haste-map-cf17f2edf0e949eebfdfca561816457c-e7a7ff05756c055cb63be97ba8537525-2cac07d09e6384e2d37c49714edad0ba +0 -0
  17. package/.jest-cache/haste-map-cf17f2edf0e949eebfdfca561816457c-e7a7ff05756c055cb63be97ba8537525-d7967c2976c5feac7161c964f0aa442f +0 -0
  18. package/.jest-cache/haste-map-fb1a173276d25bbff02f815600059283-938122bdc1c8836874b6585d7acb2e99-f705929cca05ce95ceaa6d520b560ce8 +0 -0
  19. package/.prettierignore +6 -0
  20. package/_cjs/_global.cjs +6 -0
  21. package/_cjs/_global.cjs.map +1 -0
  22. package/_cjs/_global.ext.cjs +6 -0
  23. package/_cjs/_global.ext.cjs.map +1 -0
  24. package/_cjs/_global.schema.cjs +5 -0
  25. package/_cjs/_global.schema.cjs.map +1 -0
  26. package/_cjs/errors.cjs +82 -0
  27. package/_cjs/errors.cjs.map +1 -0
  28. package/_cjs/ext.cjs +4 -0
  29. package/_cjs/ext.cjs.map +1 -0
  30. package/_cjs/index.cjs +6 -0
  31. package/_cjs/index.cjs.map +1 -0
  32. package/_cjs/lib/RequestContext.cjs +70 -0
  33. package/_cjs/lib/RequestContext.cjs.map +1 -0
  34. package/_cjs/lib/api/authorization.jwt.cjs +44 -0
  35. package/_cjs/lib/api/authorization.jwt.cjs.map +1 -0
  36. package/_cjs/lib/api/defaultErrorHandler.cjs +45 -0
  37. package/_cjs/lib/api/defaultErrorHandler.cjs.map +1 -0
  38. package/_cjs/lib/api/reportError.cjs +64 -0
  39. package/_cjs/lib/api/reportError.cjs.map +1 -0
  40. package/_cjs/lib/api/routing.cjs +262 -0
  41. package/_cjs/lib/api/routing.cjs.map +1 -0
  42. package/_cjs/lib/api/setupRequest.cjs +35 -0
  43. package/_cjs/lib/api/setupRequest.cjs.map +1 -0
  44. package/_cjs/lib/api/util.cjs +17 -0
  45. package/_cjs/lib/api/util.cjs.map +1 -0
  46. package/_cjs/lib/api/writeDocs.cjs +31 -0
  47. package/_cjs/lib/api/writeDocs.cjs.map +1 -0
  48. package/_cjs/lib/errorReporter.cjs +72 -0
  49. package/_cjs/lib/errorReporter.cjs.map +1 -0
  50. package/_cjs/lib/ext/Array.cjs +30 -0
  51. package/_cjs/lib/ext/Array.cjs.map +1 -0
  52. package/_cjs/lib/fileUtil.cjs +36 -0
  53. package/_cjs/lib/fileUtil.cjs.map +1 -0
  54. package/_cjs/lib/filter/types/errors.cjs +6 -0
  55. package/_cjs/lib/filter/types/errors.cjs.map +1 -0
  56. package/_cjs/lib/filter/types/fields.cjs +6 -0
  57. package/_cjs/lib/filter/types/fields.cjs.map +1 -0
  58. package/_cjs/lib/filter/types/index.cjs +61 -0
  59. package/_cjs/lib/filter/types/index.cjs.map +1 -0
  60. package/_cjs/lib/filter/types/path/common.cjs +6 -0
  61. package/_cjs/lib/filter/types/path/common.cjs.map +1 -0
  62. package/_cjs/lib/filter/types/path/eager.cjs +6 -0
  63. package/_cjs/lib/filter/types/path/eager.cjs.map +1 -0
  64. package/_cjs/lib/filter/types/path/index.cjs +8 -0
  65. package/_cjs/lib/filter/types/path/index.cjs.map +1 -0
  66. package/_cjs/lib/filter/types/utils.cjs +6 -0
  67. package/_cjs/lib/filter/types/utils.cjs.map +1 -0
  68. package/_cjs/lib/filter/types/validator.cjs +6 -0
  69. package/_cjs/lib/filter/types/validator.cjs.map +1 -0
  70. package/_cjs/lib/filter.cjs +238 -0
  71. package/_cjs/lib/filter.cjs.map +1 -0
  72. package/_cjs/lib/instrument.cjs +20 -0
  73. package/_cjs/lib/instrument.cjs.map +1 -0
  74. package/_cjs/lib/rateLimit.cjs +88 -0
  75. package/_cjs/lib/rateLimit.cjs.map +1 -0
  76. package/_cjs/services/CUPS/service.cjs +15 -0
  77. package/_cjs/services/CUPS/service.cjs.map +1 -0
  78. package/_cjs/services/CUPS.cjs +113 -0
  79. package/_cjs/services/CUPS.cjs.map +1 -0
  80. package/_cjs/services/Cache.cjs +39 -0
  81. package/_cjs/services/Cache.cjs.map +1 -0
  82. package/_cjs/services/Emailer/Sendgrid.cjs +112 -0
  83. package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -0
  84. package/_cjs/services/Emailer/fake.cjs +24 -0
  85. package/_cjs/services/Emailer/fake.cjs.map +1 -0
  86. package/_cjs/services/Emailer/service.cjs +12 -0
  87. package/_cjs/services/Emailer/service.cjs.map +1 -0
  88. package/_cjs/services/Emailer.cjs +17 -0
  89. package/_cjs/services/Emailer.cjs.map +1 -0
  90. package/_cjs/services/Repository.cjs +247 -0
  91. package/_cjs/services/Repository.cjs.map +1 -0
  92. package/_cjs/services/ServiceBus.cjs +69 -0
  93. package/_cjs/services/ServiceBus.cjs.map +1 -0
  94. package/_cjs/services/Store/Cosmos.cjs +324 -0
  95. package/_cjs/services/Store/Cosmos.cjs.map +1 -0
  96. package/_cjs/services/Store/Cosmos.test.cjs +59 -0
  97. package/_cjs/services/Store/Cosmos.test.cjs.map +1 -0
  98. package/_cjs/services/Store/Disk.cjs +62 -0
  99. package/_cjs/services/Store/Disk.cjs.map +1 -0
  100. package/_cjs/services/Store/Memory.cjs +70 -0
  101. package/_cjs/services/Store/Memory.cjs.map +1 -0
  102. package/_cjs/services/Store/Redis.cjs +72 -0
  103. package/_cjs/services/Store/Redis.cjs.map +1 -0
  104. package/_cjs/services/Store/codeFilter.test.cjs +61 -0
  105. package/_cjs/services/Store/codeFilter.test.cjs.map +1 -0
  106. package/_cjs/services/Store/index.cjs +72 -0
  107. package/_cjs/services/Store/index.cjs.map +1 -0
  108. package/_cjs/services/Store/service.cjs +72 -0
  109. package/_cjs/services/Store/service.cjs.map +1 -0
  110. package/_cjs/services/Store/utils.cjs +78 -0
  111. package/_cjs/services/Store/utils.cjs.map +1 -0
  112. package/_cjs/services/Store.cjs +17 -0
  113. package/_cjs/services/Store.cjs.map +1 -0
  114. package/_cjs/services/memQueue.cjs +32 -0
  115. package/_cjs/services/memQueue.cjs.map +1 -0
  116. package/_cjs/test.arbs.cjs +32 -0
  117. package/_cjs/test.arbs.cjs.map +1 -0
  118. package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs +14 -0
  119. package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs.map +1 -0
  120. package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs +29 -0
  121. package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs.map +1 -0
  122. package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs +32 -0
  123. package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs.map +1 -0
  124. package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs +266 -0
  125. package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs.map +1 -0
  126. package/_cjs/vendor/Cache/Cache/_internal/CacheState.cjs +31 -0
  127. package/_cjs/vendor/Cache/Cache/_internal/CacheState.cjs.map +1 -0
  128. package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs +67 -0
  129. package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs.map +1 -0
  130. package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs +44 -0
  131. package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs.map +1 -0
  132. package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs +33 -0
  133. package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs.map +1 -0
  134. package/_cjs/vendor/Cache/Cache/definition.cjs +13 -0
  135. package/_cjs/vendor/Cache/Cache/definition.cjs.map +1 -0
  136. package/_cjs/vendor/Cache/Cache/operations/make.cjs +20 -0
  137. package/_cjs/vendor/Cache/Cache/operations/make.cjs.map +1 -0
  138. package/_cjs/vendor/Cache/Cache/operations/makeWith.cjs +23 -0
  139. package/_cjs/vendor/Cache/Cache/operations/makeWith.cjs.map +1 -0
  140. package/_cjs/vendor/Cache/Cache/operations.cjs +28 -0
  141. package/_cjs/vendor/Cache/Cache/operations.cjs.map +1 -0
  142. package/_cjs/vendor/Cache/Cache.cjs +28 -0
  143. package/_cjs/vendor/Cache/Cache.cjs.map +1 -0
  144. package/_cjs/vendor/Cache/CacheStats/definition.cjs +13 -0
  145. package/_cjs/vendor/Cache/CacheStats/definition.cjs.map +1 -0
  146. package/_cjs/vendor/Cache/CacheStats.cjs +17 -0
  147. package/_cjs/vendor/Cache/CacheStats.cjs.map +1 -0
  148. package/_cjs/vendor/Cache/EntryStats/definition.cjs +11 -0
  149. package/_cjs/vendor/Cache/EntryStats/definition.cjs.map +1 -0
  150. package/_cjs/vendor/Cache/EntryStats.cjs +17 -0
  151. package/_cjs/vendor/Cache/EntryStats.cjs.map +1 -0
  152. package/_cjs/vendor/Cache/Lookup/definition.cjs +6 -0
  153. package/_cjs/vendor/Cache/Lookup/definition.cjs.map +1 -0
  154. package/_cjs/vendor/Cache/Lookup.cjs +17 -0
  155. package/_cjs/vendor/Cache/Lookup.cjs.map +1 -0
  156. package/_cjs/vendor/Cache/index.cjs +17 -0
  157. package/_cjs/vendor/Cache/index.cjs.map +1 -0
  158. package/_src/_global.ext.ts +34 -0
  159. package/_src/_global.schema.ts +10 -0
  160. package/_src/_global.ts +14 -0
  161. package/_src/errors.ts +50 -0
  162. package/_src/ext.ts +1 -0
  163. package/_src/index.ts +0 -0
  164. package/_src/lib/RequestContext.ts +132 -0
  165. package/_src/lib/api/authorization.jwt.ts +52 -0
  166. package/_src/lib/api/defaultErrorHandler.ts +92 -0
  167. package/_src/lib/api/reportError.ts +50 -0
  168. package/_src/lib/api/routing.ts +623 -0
  169. package/_src/lib/api/setupRequest.ts +22 -0
  170. package/_src/lib/api/util.ts +14 -0
  171. package/_src/lib/api/writeDocs.ts +26 -0
  172. package/_src/lib/errorReporter.ts +63 -0
  173. package/_src/lib/ext/Array.ts +32 -0
  174. package/_src/lib/fileUtil.ts +56 -0
  175. package/_src/lib/filter/types/errors.ts +47 -0
  176. package/_src/lib/filter/types/fields.ts +50 -0
  177. package/_src/lib/filter/types/index.ts +5 -0
  178. package/_src/lib/filter/types/path/common.ts +404 -0
  179. package/_src/lib/filter/types/path/eager.ts +146 -0
  180. package/_src/lib/filter/types/path/index.ts +14 -0
  181. package/_src/lib/filter/types/utils.ts +106 -0
  182. package/_src/lib/filter/types/validator.ts +46 -0
  183. package/_src/lib/filter.ts +323 -0
  184. package/_src/lib/instrument.ts +9 -0
  185. package/_src/lib/rateLimit.ts +126 -0
  186. package/_src/services/CUPS/service.ts +16 -0
  187. package/_src/services/CUPS.ts +105 -0
  188. package/_src/services/Cache.ts +45 -0
  189. package/_src/services/Emailer/Sendgrid.ts +123 -0
  190. package/_src/services/Emailer/fake.ts +14 -0
  191. package/_src/services/Emailer/service.ts +33 -0
  192. package/_src/services/Emailer.ts +1 -0
  193. package/_src/services/Repository.ts +513 -0
  194. package/_src/services/ServiceBus.ts +111 -0
  195. package/_src/services/Store/Cosmos.test.ts +91 -0
  196. package/_src/services/Store/Cosmos.ts +545 -0
  197. package/_src/services/Store/Disk.ts +81 -0
  198. package/_src/services/Store/Memory.ts +77 -0
  199. package/_src/services/Store/Redis.ts +92 -0
  200. package/_src/services/Store/codeFilter.test.ts +74 -0
  201. package/_src/services/Store/index.test.ts.bak +112 -0
  202. package/_src/services/Store/index.ts +62 -0
  203. package/_src/services/Store/service.ts +174 -0
  204. package/_src/services/Store/utils.ts +126 -0
  205. package/_src/services/Store.ts +1 -0
  206. package/_src/services/memQueue.ts +30 -0
  207. package/_src/test.arbs.ts +27 -0
  208. package/_src/vendor/Cache/Cache/_internal/AtomicBoolean.ts +7 -0
  209. package/_src/vendor/Cache/Cache/_internal/AtomicNumber.ts +28 -0
  210. package/_src/vendor/Cache/Cache/_internal/AtomicReference.ts +30 -0
  211. package/_src/vendor/Cache/Cache/_internal/CacheInternal.ts +293 -0
  212. package/_src/vendor/Cache/Cache/_internal/CacheState.ts +56 -0
  213. package/_src/vendor/Cache/Cache/_internal/KeySet.ts +58 -0
  214. package/_src/vendor/Cache/Cache/_internal/MapKey.ts +43 -0
  215. package/_src/vendor/Cache/Cache/_internal/MapValue.ts +39 -0
  216. package/_src/vendor/Cache/Cache/definition.ts +112 -0
  217. package/_src/vendor/Cache/Cache/operations/make.ts +17 -0
  218. package/_src/vendor/Cache/Cache/operations/makeWith.ts +32 -0
  219. package/_src/vendor/Cache/Cache/operations.ts +4 -0
  220. package/_src/vendor/Cache/Cache.ts +4 -0
  221. package/_src/vendor/Cache/CacheStats/definition.ts +23 -0
  222. package/_src/vendor/Cache/CacheStats.ts +3 -0
  223. package/_src/vendor/Cache/EntryStats/definition.ts +19 -0
  224. package/_src/vendor/Cache/EntryStats.ts +3 -0
  225. package/_src/vendor/Cache/Lookup/definition.ts +15 -0
  226. package/_src/vendor/Cache/Lookup.ts +3 -0
  227. package/_src/vendor/Cache/global.ts.bak +23 -0
  228. package/_src/vendor/Cache/index.ts +4 -0
  229. package/dist/_global.d.ts +10 -0
  230. package/dist/_global.d.ts.map +1 -0
  231. package/dist/_global.ext.d.ts +34 -0
  232. package/dist/_global.ext.d.ts.map +1 -0
  233. package/dist/_global.ext.js +2 -0
  234. package/dist/_global.js +12 -0
  235. package/dist/_global.schema.d.ts +6 -0
  236. package/dist/_global.schema.d.ts.map +1 -0
  237. package/dist/_global.schema.js +9 -0
  238. package/dist/errors.d.ts +41 -0
  239. package/dist/errors.d.ts.map +1 -0
  240. package/dist/errors.js +51 -0
  241. package/dist/ext.d.ts +2 -0
  242. package/dist/ext.d.ts.map +1 -0
  243. package/dist/ext.js +2 -0
  244. package/dist/index.d.ts +2 -0
  245. package/dist/index.d.ts.map +1 -0
  246. package/dist/index.js +2 -0
  247. package/dist/lib/RequestContext.d.ts +122 -0
  248. package/dist/lib/RequestContext.d.ts.map +1 -0
  249. package/dist/lib/RequestContext.js +52 -0
  250. package/dist/lib/api/authorization.jwt.d.ts +7 -0
  251. package/dist/lib/api/authorization.jwt.d.ts.map +1 -0
  252. package/dist/lib/api/authorization.jwt.js +32 -0
  253. package/dist/lib/api/defaultErrorHandler.d.ts +8 -0
  254. package/dist/lib/api/defaultErrorHandler.d.ts.map +1 -0
  255. package/dist/lib/api/defaultErrorHandler.js +37 -0
  256. package/dist/lib/api/reportError.d.ts +32 -0
  257. package/dist/lib/api/reportError.d.ts.map +1 -0
  258. package/dist/lib/api/reportError.js +44 -0
  259. package/dist/lib/api/routing.d.ts +100 -0
  260. package/dist/lib/api/routing.d.ts.map +1 -0
  261. package/dist/lib/api/routing.js +248 -0
  262. package/dist/lib/api/setupRequest.d.ts +13 -0
  263. package/dist/lib/api/setupRequest.d.ts.map +1 -0
  264. package/dist/lib/api/setupRequest.js +25 -0
  265. package/dist/lib/api/util.d.ts +3 -0
  266. package/dist/lib/api/util.d.ts.map +1 -0
  267. package/dist/lib/api/util.js +14 -0
  268. package/dist/lib/api/writeDocs.d.ts +3 -0
  269. package/dist/lib/api/writeDocs.d.ts.map +1 -0
  270. package/dist/lib/api/writeDocs.js +23 -0
  271. package/dist/lib/errorReporter.d.ts +8 -0
  272. package/dist/lib/errorReporter.d.ts.map +1 -0
  273. package/dist/lib/errorReporter.js +45 -0
  274. package/dist/lib/ext/Array.d.ts +19 -0
  275. package/dist/lib/ext/Array.d.ts.map +1 -0
  276. package/dist/lib/ext/Array.js +21 -0
  277. package/dist/lib/fileUtil.d.ts +22 -0
  278. package/dist/lib/fileUtil.d.ts.map +1 -0
  279. package/dist/lib/fileUtil.js +23 -0
  280. package/dist/lib/filter/types/errors.d.ts +30 -0
  281. package/dist/lib/filter/types/errors.d.ts.map +1 -0
  282. package/dist/lib/filter/types/errors.js +2 -0
  283. package/dist/lib/filter/types/fields.d.ts +29 -0
  284. package/dist/lib/filter/types/fields.d.ts.map +1 -0
  285. package/dist/lib/filter/types/fields.js +2 -0
  286. package/dist/lib/filter/types/index.d.ts +6 -0
  287. package/dist/lib/filter/types/index.d.ts.map +1 -0
  288. package/dist/lib/filter/types/index.js +6 -0
  289. package/dist/lib/filter/types/path/common.d.ts +316 -0
  290. package/dist/lib/filter/types/path/common.d.ts.map +1 -0
  291. package/dist/lib/filter/types/path/common.js +2 -0
  292. package/dist/lib/filter/types/path/eager.d.ts +95 -0
  293. package/dist/lib/filter/types/path/eager.d.ts.map +1 -0
  294. package/dist/lib/filter/types/path/eager.js +2 -0
  295. package/dist/lib/filter/types/path/index.d.ts +4 -0
  296. package/dist/lib/filter/types/path/index.d.ts.map +1 -0
  297. package/dist/lib/filter/types/path/index.js +4 -0
  298. package/dist/lib/filter/types/utils.d.ts +68 -0
  299. package/dist/lib/filter/types/utils.d.ts.map +1 -0
  300. package/dist/lib/filter/types/utils.js +2 -0
  301. package/dist/lib/filter/types/validator.d.ts +30 -0
  302. package/dist/lib/filter/types/validator.d.ts.map +1 -0
  303. package/dist/lib/filter/types/validator.js +2 -0
  304. package/dist/lib/filter.d.ts +133 -0
  305. package/dist/lib/filter.d.ts.map +1 -0
  306. package/dist/lib/filter.js +171 -0
  307. package/dist/lib/instrument.d.ts +7 -0
  308. package/dist/lib/instrument.d.ts.map +1 -0
  309. package/dist/lib/instrument.js +12 -0
  310. package/dist/lib/rateLimit.d.ts +43 -0
  311. package/dist/lib/rateLimit.d.ts.map +1 -0
  312. package/dist/lib/rateLimit.js +76 -0
  313. package/dist/services/CUPS/service.d.ts +19 -0
  314. package/dist/services/CUPS/service.d.ts.map +1 -0
  315. package/dist/services/CUPS/service.js +5 -0
  316. package/dist/services/CUPS.d.ts +10 -0
  317. package/dist/services/CUPS.d.ts.map +1 -0
  318. package/dist/services/CUPS.js +89 -0
  319. package/dist/services/Cache.d.ts +28 -0
  320. package/dist/services/Cache.d.ts.map +1 -0
  321. package/dist/services/Cache.js +28 -0
  322. package/dist/services/Emailer/Sendgrid.d.ts +180 -0
  323. package/dist/services/Emailer/Sendgrid.d.ts.map +1 -0
  324. package/dist/services/Emailer/Sendgrid.js +102 -0
  325. package/dist/services/Emailer/fake.d.ts +7 -0
  326. package/dist/services/Emailer/fake.d.ts.map +1 -0
  327. package/dist/services/Emailer/fake.js +15 -0
  328. package/dist/services/Emailer/service.d.ts +41 -0
  329. package/dist/services/Emailer/service.d.ts.map +1 -0
  330. package/dist/services/Emailer/service.js +3 -0
  331. package/dist/services/Emailer.d.ts +2 -0
  332. package/dist/services/Emailer.d.ts.map +1 -0
  333. package/dist/services/Emailer.js +2 -0
  334. package/dist/services/Repository.d.ts +300 -0
  335. package/dist/services/Repository.d.ts.map +1 -0
  336. package/dist/services/Repository.js +193 -0
  337. package/dist/services/ServiceBus.d.ts +26 -0
  338. package/dist/services/ServiceBus.d.ts.map +1 -0
  339. package/dist/services/ServiceBus.js +53 -0
  340. package/dist/services/Store/Cosmos.d.ts +56 -0
  341. package/dist/services/Store/Cosmos.d.ts.map +1 -0
  342. package/dist/services/Store/Cosmos.js +321 -0
  343. package/dist/services/Store/Cosmos.test.d.ts.map +1 -0
  344. package/dist/services/Store/Disk.d.ts +14 -0
  345. package/dist/services/Store/Disk.d.ts.map +1 -0
  346. package/dist/services/Store/Disk.js +52 -0
  347. package/dist/services/Store/Memory.d.ts +17 -0
  348. package/dist/services/Store/Memory.d.ts.map +1 -0
  349. package/dist/services/Store/Memory.js +60 -0
  350. package/dist/services/Store/Redis.d.ts +12 -0
  351. package/dist/services/Store/Redis.d.ts.map +1 -0
  352. package/dist/services/Store/Redis.js +59 -0
  353. package/dist/services/Store/codeFilter.test.d.ts.map +1 -0
  354. package/dist/services/Store/index.d.ts +10 -0
  355. package/dist/services/Store/index.d.ts.map +1 -0
  356. package/dist/services/Store/index.js +52 -0
  357. package/dist/services/Store/service.d.ts +113 -0
  358. package/dist/services/Store/service.d.ts.map +1 -0
  359. package/dist/services/Store/service.js +63 -0
  360. package/dist/services/Store/utils.d.ts +14 -0
  361. package/dist/services/Store/utils.d.ts.map +1 -0
  362. package/dist/services/Store/utils.js +103 -0
  363. package/dist/services/Store.d.ts +2 -0
  364. package/dist/services/Store.d.ts.map +1 -0
  365. package/dist/services/Store.js +2 -0
  366. package/dist/services/memQueue.d.ts +18 -0
  367. package/dist/services/memQueue.d.ts.map +1 -0
  368. package/dist/services/memQueue.js +24 -0
  369. package/dist/test.arbs.d.ts +13 -0
  370. package/dist/test.arbs.d.ts.map +1 -0
  371. package/dist/test.arbs.js +22 -0
  372. package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts +5 -0
  373. package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts.map +1 -0
  374. package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.js +7 -0
  375. package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts +8 -0
  376. package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts.map +1 -0
  377. package/dist/vendor/Cache/Cache/_internal/AtomicNumber.js +22 -0
  378. package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts +10 -0
  379. package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts.map +1 -0
  380. package/dist/vendor/Cache/Cache/_internal/AtomicReference.js +25 -0
  381. package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts +51 -0
  382. package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts.map +1 -0
  383. package/dist/vendor/Cache/Cache/_internal/CacheInternal.js +253 -0
  384. package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts +33 -0
  385. package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts.map +1 -0
  386. package/dist/vendor/Cache/Cache/_internal/CacheState.js +21 -0
  387. package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts +20 -0
  388. package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts.map +1 -0
  389. package/dist/vendor/Cache/Cache/_internal/KeySet.js +61 -0
  390. package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts +24 -0
  391. package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts.map +1 -0
  392. package/dist/vendor/Cache/Cache/_internal/MapKey.js +37 -0
  393. package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts +32 -0
  394. package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts.map +1 -0
  395. package/dist/vendor/Cache/Cache/_internal/MapValue.js +24 -0
  396. package/dist/vendor/Cache/Cache/definition.d.ts +100 -0
  397. package/dist/vendor/Cache/Cache/definition.d.ts.map +1 -0
  398. package/dist/vendor/Cache/Cache/definition.js +5 -0
  399. package/dist/vendor/Cache/Cache/operations/make.d.ts +12 -0
  400. package/dist/vendor/Cache/Cache/operations/make.d.ts.map +1 -0
  401. package/dist/vendor/Cache/Cache/operations/make.js +12 -0
  402. package/dist/vendor/Cache/Cache/operations/makeWith.d.ts +14 -0
  403. package/dist/vendor/Cache/Cache/operations/makeWith.d.ts.map +1 -0
  404. package/dist/vendor/Cache/Cache/operations/makeWith.js +15 -0
  405. package/dist/vendor/Cache/Cache/operations.d.ts +3 -0
  406. package/dist/vendor/Cache/Cache/operations.d.ts.map +1 -0
  407. package/dist/vendor/Cache/Cache/operations.js +4 -0
  408. package/dist/vendor/Cache/Cache.d.ts +3 -0
  409. package/dist/vendor/Cache/Cache.d.ts.map +1 -0
  410. package/dist/vendor/Cache/Cache.js +4 -0
  411. package/dist/vendor/Cache/CacheStats/definition.d.ts +19 -0
  412. package/dist/vendor/Cache/CacheStats/definition.d.ts.map +1 -0
  413. package/dist/vendor/Cache/CacheStats/definition.js +6 -0
  414. package/dist/vendor/Cache/CacheStats.d.ts +2 -0
  415. package/dist/vendor/Cache/CacheStats.d.ts.map +1 -0
  416. package/dist/vendor/Cache/CacheStats.js +3 -0
  417. package/dist/vendor/Cache/EntryStats/definition.d.ts +17 -0
  418. package/dist/vendor/Cache/EntryStats/definition.d.ts.map +1 -0
  419. package/dist/vendor/Cache/EntryStats/definition.js +4 -0
  420. package/dist/vendor/Cache/EntryStats.d.ts +2 -0
  421. package/dist/vendor/Cache/EntryStats.d.ts.map +1 -0
  422. package/dist/vendor/Cache/EntryStats.js +3 -0
  423. package/dist/vendor/Cache/Lookup/definition.d.ts +17 -0
  424. package/dist/vendor/Cache/Lookup/definition.d.ts.map +1 -0
  425. package/dist/vendor/Cache/Lookup/definition.js +2 -0
  426. package/dist/vendor/Cache/Lookup.d.ts +2 -0
  427. package/dist/vendor/Cache/Lookup.d.ts.map +1 -0
  428. package/dist/vendor/Cache/Lookup.js +3 -0
  429. package/dist/vendor/Cache/index.d.ts +5 -0
  430. package/dist/vendor/Cache/index.d.ts.map +1 -0
  431. package/dist/vendor/Cache/index.js +5 -0
  432. package/package.json +756 -0
  433. package/tsconfig.json +107 -0
  434. package/tsconfig.json.bak +47 -0
  435. package/tsplus.config.json +6 -0
  436. package/types/modules.d.ts +1 -0
  437. package/vitest.config.ts +5 -0
  438. package/wallaby.cjs +1 -0
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RedisStoreLive = RedisStoreLive;
7
+ exports.makeRedisStore = makeRedisStore;
8
+ var tracer_1 = _interopRequireWildcard(require("@effect/io/Debug"));
9
+ var tsplus_module_1 = _interopRequireWildcard(require("@effect/io/Effect"));
10
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/core/Effect"));
11
+ var tsplus_module_3 = _interopRequireWildcard(require("@fp-ts/data/Option"));
12
+ var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/prelude"));
13
+ var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/prelude/_ext/Prelude.ext"));
14
+ var tsplus_module_6 = _interopRequireWildcard(require("@fp-ts/data/Chunk"));
15
+ var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/fluent/_ext/awesome/_files/Iterable"));
16
+ var RedisClient = _interopRequireWildcard(require("@effect-app/infra-adapters/redis-client"));
17
+ var _errors = require("../../errors.cjs");
18
+ var _Memory = require("./Memory.cjs");
19
+ var _service = require("./service.cjs");
20
+ var _utils = require("./utils.cjs");
21
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+ const fileName_1 = "packages/infra/_src/services/Store/Redis.ts";
24
+ function makeRedisStore({
25
+ prefix
26
+ }) {
27
+ return tracer_1.withCallTrace(fileName_1 + ":11:17")(tsplus_module_1.gen(function* ($) {
28
+ const redis = yield* $(tsplus_module_1.service(RedisClient.RedisClient));
29
+ return {
30
+ make: (name, existing, _config) => tracer_1.withCallTrace(fileName_1 + ":19:16")(tsplus_module_1.gen(function* ($) {
31
+ const updateETag = (0, _utils.makeUpdateETag)(name);
32
+ // Very naive implementation of course.
33
+ const key = `${prefix}${name}`;
34
+ const current = yield* $(tracer_1.withCallTrace(fileName_1 + ":23:63")(tsplus_module_2.provideService(tsplus_module_1.orDie(RedisClient.get(key)), RedisClient.RedisClient, redis)));
35
+ if (!tsplus_module_3.isSome(current)) {
36
+ const m = yield* $(existing ?? tracer_1.withCallTrace(fileName_1 + ":25:44")(tsplus_module_1.sync(() => tsplus_module_4.ROMap.empty)));
37
+ yield* $(tracer_1.withCallTrace(fileName_1 + ":29:18")(tsplus_module_2.provideService(tsplus_module_1.orDie(RedisClient.set(key, JSON.stringify({
38
+ data: [...m.values()].map(e => (0, _utils.makeETag)(e))
39
+ }))), RedisClient.RedisClient, redis)));
40
+ }
41
+ const get = tracer_1.withCallTrace(fileName_1 + ":37:14")(tsplus_module_2.provideService(tracer_1.withCallTrace(fileName_1 + ":36:14")(tsplus_module_1.map(_ => _.data))(tracer_1.withCallTrace(fileName_1 + ":35:14")(tsplus_module_1.map(x => JSON.parse(x)))(tsplus_module_1.orDie(tracer_1.withCallTrace(fileName_1 + ":33:14")(tsplus_module_1.flatMap(x => tsplus_module_5.encaseMaybeInEffect_(x, () => new _errors.NotFoundError("data", ""))))(RedisClient.get(key))))), RedisClient.RedisClient, redis));
42
+ const set = i => tsplus_module_1.orDie(RedisClient.set(key, JSON.stringify({
43
+ data: [...i.values()]
44
+ })));
45
+ const sem = tsplus_module_1.unsafeMakeSemaphore(1);
46
+ const withPermit = sem.withPermits(1);
47
+ const asMap = tracer_1.withCallTrace(fileName_1 + ":44:29")(tsplus_module_1.map(x => tsplus_module_4.ROMap.make(x.map(x => [x.id, x]))))(get);
48
+ const all = tracer_1.withCallTrace(fileName_1 + ":45:27")(tsplus_module_1.map(tsplus_module_6.fromIterable))(get);
49
+ const batchSet = items => tracer_1.withCallTrace(fileName_1 + ":60:16")(tsplus_module_2.provideService(withPermit(tracer_1.withCallTrace(fileName_1 + ":58:16")(tsplus_module_1.map(_ => _.toReadonlyArray()))(tracer_1.withCallTrace(fileName_1 + ":49:16")(tsplus_module_1.tap(items => tracer_1.withCallTrace(fileName_1 + ":56:20")(tsplus_module_1.flatMap(set))(tracer_1.withCallTrace(fileName_1 + ":51:20")(tsplus_module_1.map(m => {
50
+ const mut = tsplus_module_4.ROMap.toMutable(m);
51
+ items.forEach(e => mut.set(e.id, e));
52
+ return tsplus_module_4.ROMap.fromMutable(mut);
53
+ }))(asMap))))(tsplus_module_7.ext_forEach(items, e => tracer_1.withCallTrace(fileName_1 + ":48:48")(tsplus_module_1.flatMap(current => updateETag(e, current)))(s.find(e.id)))))), RedisClient.RedisClient, redis));
54
+ const s = {
55
+ all,
56
+ filter: (filter, cursor) => tracer_1.withCallTrace(fileName_1 + ":64:19")(tsplus_module_1.map((0, _Memory.memFilter)(filter, cursor)))(all),
57
+ filterJoinSelect: filter => tracer_1.withCallTrace(fileName_1 + ":66:19")(tsplus_module_1.map(c => c.flatMap((0, _utils.codeFilterJoinSelect)(filter))))(all),
58
+ find: id => tracer_1.withCallTrace(fileName_1 + ":67:31")(tsplus_module_1.map(tsplus_module_4.ROMap.lookup(id)))(asMap),
59
+ set: e => tracer_1.withCallTrace(fileName_1 + ":74:18")(tsplus_module_2.provideService(withPermit(tracer_1.withCallTrace(fileName_1 + ":72:18")(tsplus_module_1.tap(e => tracer_1.withCallTrace(fileName_1 + ":72:60")(tsplus_module_1.flatMap(set))(tracer_1.withCallTrace(fileName_1 + ":72:33")(tsplus_module_1.map(tsplus_module_4.ROMap.insert(e.id, e)))(asMap))))(tracer_1.withCallTrace(fileName_1 + ":71:18")(tsplus_module_1.flatMap(current => updateETag(e, current)))(s.find(e.id)))), RedisClient.RedisClient, redis)),
60
+ batchSet,
61
+ bulkSet: batchSet,
62
+ remove: e => tracer_1.withCallTrace(fileName_1 + ":80:18")(tsplus_module_2.provideService(withPermit(tracer_1.withCallTrace(fileName_1 + ":78:45")(tsplus_module_1.flatMap(set))(tracer_1.withCallTrace(fileName_1 + ":78:21")(tsplus_module_1.map(tsplus_module_4.ROMap.remove(e.id)))(asMap))), RedisClient.RedisClient, redis))
63
+ };
64
+ return s;
65
+ }))
66
+ };
67
+ }));
68
+ }
69
+ function RedisStoreLive(config) {
70
+ return tsplus_module_1.toLayer(_service.StoreMaker)(tracer_1.withCallTrace(fileName_1 + ":91:24")(tsplus_module_1.flatMap(makeRedisStore))(tsplus_module_1.config(config)));
71
+ }
72
+ //# sourceMappingURL=Redis.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Redis.cjs","mappings":";;;;;;;;;;;;;;;AACA;AACA;AACA;AAGA;AACA;AAA2E;AAAA;;AAErE,SAAUA,cAAc,CAAC;EAAEC;AAAM,CAAiB;EACtD,qDAAOC,oBAAW,WAAUC,CAAC;IAC3B,MAAMC,KAAK,GAAG,OAAOD,CAAC,yBAACE,WAAW,CAACA,WAAW,EAAQ;IACtD,OAAO;MACLC,IAAI,EAAE,CACJC,IAAY,EACZC,QAA+C,EAC/CC,OAAyB,KACvBC,8CACFR,oBAAW,WAAUC,CAAC;QACpB,MAAMQ,UAAU,GAAG,yBAAc,EAACJ,IAAI,CAAC;QACvC;QACA,MAAMK,GAAG,GAAG,GAAGX,MAAM,GAAGM,IAAI,EAAE;QAC9B,MAAMM,OAAO,GAAG,OAAOV,CAAC,+CAACW,gEAAW,CAACC,GAAG,CAACH,GAAG,CAAC,GAAsBP,WAAW,CAACA,WAAW,EAAED,KAAK,CAAC,EAAC;QACnG,IAAI,CAACY,8BAAO,CAAS,EAAE;UACrB,MAAMC,CAAC,GAAG,OAAOd,CAAC,CAACK,QAAQ,kDAAIN,2BAAOgB,qBAAK,CAACC,KAAK,CAAC,EAAC;UACnD,OAAOhB,CAAC,+CACNW,gEAAW,CAACM,GAAG,CAACR,GAAG,EAAES,IAAI,CAACC,SAAS,CAAC;YAAEC,IAAI,EAAE,CAAC,GAAGN,CAAC,CAACO,MAAM,EAAE,CAAC,CAACC,GAAG,CAACC,CAAC,IAAI,mBAAQ,EAACA,CAAC,CAAC;UAAC,CAAE,CAAC,CAAC,GAEnErB,WAAW,CAACA,WAAW,EAAED,KAAK,CAAC,EAClD;;QAEH,MAAMW,GAAG,iDAAGD,iGAILa,CAAC,IAAIA,CAAC,CAACJ,IAAI,GAJNb,kEAGLkB,CAAC,IAAIP,IAAI,CAACQ,KAAK,CAACD,CAAC,CAA4B,yBAHxClB,sEACDkB,CAAC,IAAIE,sCAAC,EAAgB,MAAM,IAAIC,qBAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GADzD1B,WAAW,CAACU,GAAG,CAACH,GAAG,CAAC,CACsC,EAEjB,CAClC,EACDP,WAAW,CAACA,WAAW,EAAED,KAAK,CAAC;QAEjD,MAAMgB,GAAG,GAAIY,CAAgB,IAAI9B,sBAACG,WAAW,CAACe,GAAG,CAACR,GAAG,EAAES,IAAI,CAACC,SAAS,CAAC;UAAEC,IAAI,EAAE,CAAC,GAAGS,CAAC,CAACR,MAAM,EAAE;QAAC,CAAE,CAAC,CAAC,CAAM;QAEvG,MAAMS,GAAG,GAAG/B,oCAAqB,CAAC,CAAC;QACnC,MAAMgC,UAAU,GAAGD,GAAG,CAACE,WAAW,CAAC,CAAC,CAAC;QAErC,MAAMC,KAAK,GAAG1B,kEAAQkB,CAAC,IAAIV,qBAAK,CAACZ,IAAI,CAACsB,CAAC,CAACH,GAAG,CAACG,CAAC,IAAI,CAACA,CAAC,CAACS,EAAE,EAAET,CAAC,CAAU,CAAC,CAAC,GAAvDb,GAAG,CAAqD;QACtE,MAAMuB,GAAG,GAAG5B,oGAAG,CAAwB;QACvC,MAAM6B,QAAQ,GAAIC,KAAgC,IAAI9B,8CACpDI,+BAYSoB,UAAU,CAZnBxB,kEAWOiB,CAAC,IAAIA,CAAC,CAACc,eAAe,EAA+B,GAX5D/B,kEAEO8B,KAAK,IACR9B,sEAMWU,GAAG,GANdV,kEACOO,CAAC,IAAG;UACP,MAAMyB,GAAG,GAAGxB,qBAAK,CAACyB,SAAS,CAAC1B,CAAC,CAAC;UAC9BuB,KAAK,CAACI,OAAO,CAAClB,CAAC,IAAIgB,GAAG,CAACtB,GAAG,CAACM,CAAC,CAACW,EAAE,EAAEX,CAAC,CAAC,CAAC;UACpC,OAAOR,qBAAK,CAAC2B,WAAW,CAACH,GAAG,CAAC;QAC/B,CAAC,GALHN,KAAK,CAKD,CACW,GATnBU,iCAAK,EACYpB,CAAC,IAAIhB,sEAAqBG,OAAO,IAAIF,UAAU,CAACe,CAAC,EAAEb,OAAO,CAAC,GAAtDkC,CAAC,CAACC,IAAI,CAACtB,CAAC,CAACW,EAAE,CAAC,CAA2C,CAAC,CAS3E,CAC0D,GAE3ChC,WAAW,CAACA,WAAW,EAAED,KAAK,CAAC;QACnD,MAAM2C,CAAC,GAAkB;UACvBT,GAAG;UACHW,MAAM,EAAE,CAACA,MAAkB,EAAEC,MAA0C,KACrExC,kEAAQ,qBAAS,EAACuC,MAAM,EAAEC,MAAM,CAAC,GAAjCZ,GAAG,CAA+B;UACpCa,gBAAgB,EAAqBF,MAAwB,IAC3DvC,kEAAQ0C,CAAC,IAAIA,CAAC,CAACC,OAAO,CAAC,+BAAoB,EAAQJ,MAAM,CAAC,CAAC,GAA3DX,GAAG,CAAyD;UAC9DU,IAAI,EAAEX,EAAE,IAAI3B,kEAAUQ,qBAAK,CAACoC,MAAM,CAACjB,EAAE,CAAC,GAA1BD,KAAK,CAAsB;UACvChB,GAAG,EAAEM,CAAC,IAAGhB,8CACPI,+BAISoB,UAAU,CAJnBxB,kEAGOgB,CAAC,IAAIhB,sEAAyCU,GAAG,GAA5CV,kEAAUQ,qBAAK,CAACqC,MAAM,CAAC7B,CAAC,CAACW,EAAE,EAAEX,CAAC,CAAC,GAA/BU,KAAK,CAA2B,CAAa,GAHzD1B,sEAEWG,OAAO,IAAIF,UAAU,CAACe,CAAC,EAAEb,OAAO,CAAC,GAF5CkC,CAAC,CACEC,IAAI,CAACtB,CAAC,CAACW,EAAE,CAAC,CACgC,CACa,GAExChC,WAAW,CAACA,WAAW,EAAED,KAAK,CAAC;UACnDmC,QAAQ;UACRiB,OAAO,EAAEjB,QAAQ;UACjBkB,MAAM,EAAG/B,CAAK,IAAIhB,8CAChBI,+BACSoB,UAAU,CADnBxB,sEAAsCU,GAAG,GAAzCV,kEAAUQ,qBAAK,CAACuC,MAAM,CAAC/B,CAAC,CAACW,EAAE,CAAC,GAA5BD,KAAK,CAAwB,CAAa,GAGtC/B,WAAW,CAACA,WAAW,EACvBD,KAAK,CACN;SACN;QACD,OAAO2C,CAAC;MACV,CAAC,CAAC;KACL;EACH,CAAC,CAAC;AACJ;AACM,SAAUW,cAAc,CAACC,MAA6B;EAC1D,OAAOzD,wBAA8C0D,mBAAU,EAAxDlD,sEAAsBV,cAAc,0BAApC2D,MAAM,EAA+B,CAAoB;AAClE","names":["makeRedisStore","prefix","tsplus_module_1","$","redis","RedisClient","make","name","existing","_config","tracer_1","updateETag","key","current","tsplus_module_2","get","tsplus_module_3","m","tsplus_module_4","empty","set","JSON","stringify","data","values","map","e","_","x","parse","tsplus_module_5","NotFoundError","i","sem","withPermit","withPermits","asMap","id","all","batchSet","items","toReadonlyArray","mut","toMutable","forEach","fromMutable","tsplus_module_7","s","find","filter","cursor","filterJoinSelect","c","flatMap","lookup","insert","bulkSet","remove","RedisStoreLive","config","StoreMaker"],"sourceRoot":"","sources":["../../../_src/services/Store/Redis.ts"],"sourcesContent":[null]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.makeSomethingFilter_ = makeSomethingFilter_;
7
+ exports.somethingsWhere = somethingsWhere;
8
+ var tsplus_module_1 = _interopRequireWildcard(require("@fp-ts/data/ReadonlyArray"));
9
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/core/Array"));
10
+ var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/infra/lib/filter"));
11
+ var _vitest = require("vitest");
12
+ var _filter2 = require("../../lib/filter.cjs");
13
+ var _utils = require("./utils.cjs");
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ const somethings = [{
17
+ a: 1,
18
+ b: "b",
19
+ c: ["c"],
20
+ d: [{
21
+ a: "a2",
22
+ b: 1
23
+ }, {
24
+ a: "a",
25
+ b: 1
26
+ }],
27
+ id: "1"
28
+ }, {
29
+ a: 2,
30
+ b: "b2",
31
+ c: ["c2"],
32
+ d: [{
33
+ a: "a4",
34
+ b: 2
35
+ }, {
36
+ a: "a5",
37
+ b: 2
38
+ }],
39
+ id: "2"
40
+ }];
41
+ const f_ = (0, _filter2.makeFilters)();
42
+ function makeSomethingFilter_(filter) {
43
+ return filter(f_);
44
+ }
45
+ function somethingsWhere(makeWhere, mode) {
46
+ return makeSomethingFilter_(f => {
47
+ const m = makeWhere ? makeWhere(f) : [];
48
+ return {
49
+ mode,
50
+ where: Array.isArray(m) ? m : [m]
51
+ };
52
+ });
53
+ }
54
+ (0, _vitest.test)("works", () => {
55
+ (0, _vitest.expect)(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap((0, _utils.codeFilter)(somethingsWhere(_ => _("b", _ => "b2"))))(somethings))).toEqual([somethings[1]]);
56
+ (0, _vitest.expect)(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap((0, _utils.codeFilter)(somethingsWhere(_ => _("b", _ => "b"))))(somethings))).toEqual([somethings[0]]);
57
+ (0, _vitest.expect)(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap((0, _utils.codeFilter)(somethingsWhere(_ => _("d.-1.a", _ => "a5"))))(somethings))).toEqual([somethings[1]]);
58
+ (0, _vitest.expect)(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap((0, _utils.codeFilter)(somethingsWhere(_ => _("d.-1.a", _ => "a"))))(somethings))).toEqual([somethings[0]]);
59
+ (0, _vitest.expect)(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap((0, _utils.codeFilter)(somethingsWhere(_ => _("d.-1.a", _ => tsplus_module_3.$isnt(_, "a")))))(somethings))).toEqual([somethings[1]]);
60
+ });
61
+ //# sourceMappingURL=codeFilter.test.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeFilter.test.cjs","mappings":";;;;;;;;;;AAAA;AAEA;AACA;AAAuC;AAAA;AAGvC,MAAMA,UAAU,GAAG,CACjB;EAACC,CAAC,EAAE,CAAC;EAAEC,CAAC,EAAE,GAAG;EAAEC,CAAC,EAAE,CAAC,GAAG,CAAC;EAAEC,CAAC,EAAE,CAAC;IAACH,CAAC,EAAE,IAAI;IAAEC,CAAC,EAAE;EAAC,CAAC,EAAE;IAACD,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAC,CAAC,CAAC;EAAEG,EAAE,EAAE;AAAG,CAAC,EACvE;EAACJ,CAAC,EAAE,CAAC;EAAEC,CAAC,EAAE,IAAI;EAAEC,CAAC,EAAE,CAAC,IAAI,CAAC;EAAEC,CAAC,EAAE,CAAC;IAACH,CAAC,EAAE,IAAI;IAAEC,CAAC,EAAE;EAAC,CAAC,EAAE;IAACD,CAAC,EAAE,IAAI;IAAEC,CAAC,EAAE;EAAC,CAAC,CAAC;EAAEG,EAAE,EAAE;AAAG,CAAC,CAC5C;AAEhC,MAAMC,EAAE,GAAG,wBAAW,GAAa;AAG7B,SAAUC,oBAAoB,CAACC,MAAqD;EACxF,OAAOA,MAAM,CAACF,EAAE,CAAC;AACnB;AAEM,SAAUG,eAAe,CAC7BC,SAEgC,EAChCC,IAAmB;EAEnB,OAAOJ,oBAAoB,CAACK,CAAC,IAAG;IAC9B,MAAMC,CAAC,GAAGH,SAAS,GAAGA,SAAS,CAACE,CAAC,CAAC,GAAG,EAAE;IACvC,OAAQ;MACND,IAAI;MACJG,KAAK,EAAGC,KAAK,CAACC,OAAO,CAACH,CAAC,CAAC,GAAGA,CAAmC,GAAG,CAACA,CAAC;KACpE;EACH,CAAC,CAAC;AACJ;AAgBA,gBAAI,EAAC,OAAO,EAAE,MAAK;EACjB,kBAAM,kCAACI,0BAAqB,qBAAU,EACpCR,eAAe,CAACS,CAAC,IAAIA,CAAC,CAAC,GAAG,EAAEA,CAAC,IAAI,IAAI,CAAC,CAAC,CACxC,EAFMlB,UAAU,CAEf,EAAS,CACVmB,OAAO,CAAC,CAACnB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;EAEzB,kBAAM,kCAACiB,0BAAqB,qBAAU,EACpCR,eAAe,CAACS,CAAC,IAAIA,CAAC,CAAC,GAAG,EAAEA,CAAC,IAAI,GAAG,CAAC,CAAC,CACvC,EAFMlB,UAAU,CAEf,EAAS,CACVmB,OAAO,CAAC,CAACnB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;EAGzB,kBAAM,kCAACiB,0BAAqB,qBAAU,EACpCR,eAAe,CAACS,CAAC,IAAIA,CAAC,CAAC,QAAQ,EAAEA,CAAC,IAAI,IAAI,CAAC,CAAC,CAC7C,EAFMlB,UAAU,CAEf,EAAS,CACVmB,OAAO,CAAC,CAACnB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;EAEzB,kBAAM,kCAACiB,0BAAqB,qBAAU,EACpCR,eAAe,CAACS,CAAC,IAAIA,CAAC,CAAC,QAAQ,EAAEA,CAAC,IAAI,GAAG,CAAC,CAAC,CAC5C,EAFMlB,UAAU,CAEf,EAAS,CACVmB,OAAO,CAAC,CAACnB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;EAEzB,kBAAM,kCAACiB,0BAAqB,qBAAU,EACpCR,eAAe,CAACS,CAAC,IAAIA,CAAC,CAAC,QAAQ,EAAEA,CAAC,IAAIE,uBAAC,EAAO,GAAG,CAAC,CAAC,CAAC,CACrD,EAFMpB,UAAU,CAEf,EAAS,CACVmB,OAAO,CAAC,CAACnB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC","names":["somethings","a","b","c","d","id","f_","makeSomethingFilter_","filter","somethingsWhere","makeWhere","mode","f","m","where","Array","isArray","tsplus_module_1","_","toEqual","tsplus_module_3"],"sourceRoot":"","sources":["../../../_src/services/Store/codeFilter.test.ts"],"sourcesContent":[null]}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ StoreMakerLive: true
8
+ };
9
+ exports.StoreMakerLive = StoreMakerLive;
10
+ var tracer_1 = _interopRequireWildcard(require("@effect/io/Debug"));
11
+ var tsplus_module_1 = _interopRequireWildcard(require("@effect/io/Config/Secret"));
12
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Effect"));
13
+ var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/Effect"));
14
+ var tsplus_module_4 = _interopRequireWildcard(require("@effect/io/Layer"));
15
+ var CosmosClient = _interopRequireWildcard(require("@effect-app/infra-adapters/cosmos-client"));
16
+ var RedisClient = _interopRequireWildcard(require("@effect-app/infra-adapters/redis-client"));
17
+ var _redis = require("redis");
18
+ var _Cosmos = require("./Cosmos.cjs");
19
+ var _Disk = require("./Disk.cjs");
20
+ var _Memory = require("./Memory.cjs");
21
+ var _Redis = require("./Redis.cjs");
22
+ var _service = require("./service.cjs");
23
+ Object.keys(_service).forEach(function (key) {
24
+ if (key === "default" || key === "__esModule") return;
25
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
26
+ if (key in exports && exports[key] === _service[key]) return;
27
+ Object.defineProperty(exports, key, {
28
+ enumerable: true,
29
+ get: function () {
30
+ return _service[key];
31
+ }
32
+ });
33
+ });
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
+ const fileName_1 = "packages/infra/_src/services/Store/index.ts";
37
+ /**
38
+ * @tsplus static StoreMaker.Ops Live
39
+ */
40
+ function StoreMakerLive(config) {
41
+ return tsplus_module_4.scoped(_service.StoreMaker)(tracer_1.withCallTrace(fileName_1 + ":17:24")(tsplus_module_2.flatMap(cfg => {
42
+ const storageUrl = tsplus_module_1.value(cfg.url);
43
+ if (storageUrl.startsWith("mem://")) {
44
+ console.log("Using in memory store");
45
+ return tracer_1.withCallTrace(fileName_1 + ":21:14")(tsplus_module_2.sync(() => (0, _Memory.makeMemoryStore)()));
46
+ }
47
+ if (storageUrl.startsWith("disk://")) {
48
+ console.log("Using disk store at ./.data");
49
+ return (0, _Disk.makeDiskStore)(cfg);
50
+ }
51
+ if (storageUrl.startsWith("redis://")) {
52
+ console.log("Using Redis store");
53
+ return tracer_1.withCallTrace(fileName_1 + ":29:65")(tsplus_module_2.flatMap(client => tracer_1.withCallTrace(fileName_1 + ":30:29")(tsplus_module_3.provideService((0, _Redis.makeRedisStore)(cfg), RedisClient.RedisClient, client))))(RedisClient.makeRedisClient(makeRedis(storageUrl)));
54
+ }
55
+ console.log("Using Cosmos DB store");
56
+ return tracer_1.withCallTrace(fileName_1 + ":38:66")(tsplus_module_2.flatMap(client => tracer_1.withCallTrace(fileName_1 + ":39:28")(tsplus_module_3.provideService((0, _Cosmos.makeCosmosStore)(cfg), CosmosClient.CosmosClient, client))))(CosmosClient.makeCosmosClient(storageUrl, cfg.dbName));
57
+ }))(tsplus_module_2.config(config)));
58
+ }
59
+ function makeRedis(storageUrl) {
60
+ const url = new URL(storageUrl);
61
+ const hostname = url.hostname;
62
+ const password = url.password;
63
+ return () => (0, _redis.createClient)(storageUrl === "redis://" ? {
64
+ host: hostname,
65
+ port: 6380,
66
+ auth_pass: password,
67
+ tls: {
68
+ servername: hostname
69
+ }
70
+ } : storageUrl);
71
+ }
72
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","mappings":";;;;;;;;;;;;;;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AAmDA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAA4B;AAAA;;AAjD5B;;;AAGM,SAAUA,cAAc,CAACC,MAA6B;EAC1D,OAAOC,uBAyBUC,mBAAU,EAzBpBC,sEAAsBC,GAAG,IAAG;IACjC,MAAMC,UAAU,yBAAGD,GAAG,CAACE,GAAG,CAAM;IAChC,IAAID,UAAU,CAACE,UAAU,CAAC,QAAQ,CAAC,EAAE;MACnCC,OAAO,CAACC,GAAG,CAAC,uBAAuB,CAAC;MACpC,qDAAOC,2BAAO,2BAAe,GAAE,CAAC;;IAElC,IAAIL,UAAU,CAACE,UAAU,CAAC,SAAS,CAAC,EAAE;MACpCC,OAAO,CAACC,GAAG,CAAC,6BAA6B,CAAC;MAC1C,OAAO,uBAAa,EAACL,GAAG,CAAC;;IAE3B,IAAIC,UAAU,CAACE,UAAU,CAAC,UAAU,CAAC,EAAE;MACrCC,OAAO,CAACC,GAAG,CAAC,mBAAmB,CAAC;MAChC,OAAON,sEAA2DQ,MAAM,IAAGR,8CACzES,wDAAc,EAACR,GAAG,CAAC,EACjBS,WAAW,CAACA,WAAW,EACvBF,MAAM,CACP,IAJIE,WAAW,CAACC,eAAe,CAACC,SAAS,CAACV,UAAU,CAAC,CAAC,CAKxD;;IAGHG,OAAO,CAACC,GAAG,CAAC,uBAAuB,CAAC;IACpC,OAAON,sEAA8DQ,MAAM,IAAGR,8CAC5ES,0DAAe,EAACR,GAAG,CAAC,EAAgBY,YAAY,CAACA,YAAY,EAAEL,MAAM,CAAC,IADjEK,YAAY,CAACC,gBAAgB,CAACZ,UAAU,EAAED,GAAG,CAACc,MAAM,CAAC,CAE3D;EACH,CAAC,0BAxBMlB,MAAM,EAwBX,CAC0B;AAC9B;AAEA,SAASe,SAAS,CAACV,UAAkB;EACnC,MAAMC,GAAG,GAAG,IAAIa,GAAG,CAACd,UAAU,CAAC;EAC/B,MAAMe,QAAQ,GAAGd,GAAG,CAACc,QAAQ;EAC7B,MAAMC,QAAQ,GAAGf,GAAG,CAACe,QAAQ;EAC7B,OAAO,MACL,uBAAY,EACVhB,UAAU,KAAK,UAAU,GACpB;IACDiB,IAAI,EAAEF,QAAQ;IACdG,IAAI,EAAE,IAAI;IACVC,SAAS,EAAEH,QAAQ;IACnBI,GAAG,EAAE;MAAEC,UAAU,EAAEN;IAAQ;GACpB,GACNf,UAAkB,CACxB;AACL","names":["StoreMakerLive","config","tsplus_module_4","StoreMaker","tracer_1","cfg","storageUrl","url","startsWith","console","log","tsplus_module_2","client","tsplus_module_3","RedisClient","makeRedisClient","makeRedis","CosmosClient","makeCosmosClient","dbName","URL","hostname","password","host","port","auth_pass","tls","servername"],"sourceRoot":"","sources":["../../../_src/services/Store/index.ts"],"sourcesContent":[null]}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.makeMap = exports.StoreMaker = exports.ContextMap = void 0;
7
+ var tracer_1 = _interopRequireWildcard(require("@effect/io/Debug"));
8
+ var tsplus_module_1 = _interopRequireWildcard(require("@fp-ts/data/Context"));
9
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/prelude"));
10
+ var tsplus_module_3 = _interopRequireWildcard(require("@effect/io/Effect"));
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ const fileName_1 = "packages/infra/_src/services/Store/service.ts";
14
+ const StoreMaker = tsplus_module_1.Tag();
15
+ /**
16
+ * @tsplus static ContextMap.Ops Make
17
+ */
18
+ exports.StoreMaker = StoreMaker;
19
+ const makeMap = tracer_1.withCallTrace(fileName_1 + ":94:24")(tsplus_module_3.sync(() => {
20
+ const etags = tsplus_module_2.ROMap.make([])["|>"](tsplus_module_2.ROMap.toMutable);
21
+ const getEtag = id => etags.get(id);
22
+ const setEtag = (id, eTag) => {
23
+ eTag === undefined ? etags.delete(id) : etags.set(id, eTag);
24
+ };
25
+ const parsedCache = tsplus_module_2.ROMap.make([])["|>"](tsplus_module_2.ROMap.toMutable);
26
+ const parserCache = tsplus_module_2.ROMap.make([])["|>"](tsplus_module_2.ROMap.toMutable);
27
+ const setAndReturn = (p, np) => {
28
+ parserCache.set(p, np);
29
+ return np;
30
+ };
31
+ const parserEnv = {
32
+ // TODO: lax: true would turn off refinement checks, may help on large payloads
33
+ // but of course removes confirming of validation rules (which may be okay for a database owned by the app, as we write safely)
34
+ lax: false,
35
+ cache: {
36
+ getOrSetParser: p => parserCache.get(p) ?? setAndReturn(p, i => parserEnv.cache.getOrSet(i, p)),
37
+ getOrSetParsers: parsers => {
38
+ return Object.entries(parsers).reduce((prev, [k, v]) => {
39
+ prev[k] = parserEnv.cache.getOrSetParser(v);
40
+ return prev;
41
+ }, {});
42
+ },
43
+ getOrSet: (i, parse) => {
44
+ const c = parsedCache.get(parse);
45
+ if (c) {
46
+ const f = c.get(i);
47
+ if (f) {
48
+ // console.log("$$$ cache hit", i)
49
+ return f;
50
+ } else {
51
+ const nf = parse(i, parserEnv);
52
+ c.set(i, nf);
53
+ return nf;
54
+ }
55
+ } else {
56
+ const nf = parse(i, parserEnv);
57
+ parsedCache.set(parse, tsplus_module_2.ROMap.make([[i, nf]])["|>"](tsplus_module_2.ROMap.toMutable));
58
+ return nf;
59
+ }
60
+ }
61
+ }
62
+ };
63
+ return {
64
+ get: getEtag,
65
+ set: setEtag,
66
+ parserEnv
67
+ };
68
+ }));
69
+ exports.makeMap = makeMap;
70
+ const ContextMap = tsplus_module_1.Tag();
71
+ exports.ContextMap = ContextMap;
72
+ //# sourceMappingURL=service.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.cjs","mappings":";;;;;;;;;;;;;AAwFO,MAAMA,UAAU,GAAkBC,mBAAG,EAAc;AAE1D;;;AAAA;AAGO,MAAMC,OAAO,iDAAGC,qBAAO,MAAK;EACjC,MAAMC,KAAK,GAAGC,qBAAK,CAACC,IAAI,CAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAACD,qBAAK,CAACE,SAAS,CAAC;EACnE,MAAMC,OAAO,GAAIC,EAAU,IAAKL,KAAK,CAACM,GAAG,CAACD,EAAE,CAAC;EAC7C,MAAME,OAAO,GAAG,CAACF,EAAU,EAAEG,IAAwB,KAAI;IACvDA,IAAI,KAAKC,SAAS,GAAGT,KAAK,CAACU,MAAM,CAACL,EAAE,CAAC,GAAGL,KAAK,CAACW,GAAG,CAACN,EAAE,EAAEG,IAAI,CAAC;EAC7D,CAAC;EAED,MAAMI,WAAW,GAAGX,qBAAK,CAACC,IAAI,CAG5B,EAAE,CAAC,CAAC,IAAI,CAAC,CAACD,qBAAK,CAACE,SAAS,CAAC;EAE5B,MAAMU,WAAW,GAAGZ,qBAAK,CAACC,IAAI,CAG5B,EAAE,CAAC,CAAC,IAAI,CAAC,CAACD,qBAAK,CAACE,SAAS,CAAC;EAE5B,MAAMW,YAAY,GAAG,CACnBC,CAAkB,EAClBC,EAA+B,KAC7B;IACFH,WAAW,CAACF,GAAG,CAACI,CAAC,EAAEC,EAAE,CAAC;IACtB,OAAOA,EAAE;EACX,CAAC;EAED,MAAMC,SAAS,GAAc;IAC3B;IACA;IACAC,GAAG,EAAE,KAAK;IACVC,KAAK,EAAE;MACLC,cAAc,EAAEL,CAAC,IAAIF,WAAW,CAACP,GAAG,CAACS,CAAC,CAAC,IAAID,YAAY,CAACC,CAAC,EAAEM,CAAC,IAAIJ,SAAS,CAACE,KAAM,CAACG,QAAQ,CAACD,CAAC,EAAEN,CAAC,CAAC,CAAC;MAChGQ,eAAe,EAAEC,OAAO,IAAG;QACzB,OAAOC,MAAM,CAACC,OAAO,CAACF,OAAO,CAAC,CAACG,MAAM,CAAC,CAACC,IAAI,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAI;UACrDF,IAAI,CAACC,CAAC,CAAC,GAAGZ,SAAS,CAACE,KAAM,CAACC,cAAc,CAACU,CAAC,CAAC;UAC5C,OAAOF,IAAI;QACb,CAAC,EAAE,EAAS,CAAC;MACf,CAAC;MACDN,QAAQ,EAAE,CAACD,CAAC,EAAEU,KAAK,KAAS;QAC1B,MAAMC,CAAC,GAAGpB,WAAW,CAACN,GAAG,CAACyB,KAAK,CAAC;QAChC,IAAIC,CAAC,EAAE;UACL,MAAMC,CAAC,GAAGD,CAAC,CAAC1B,GAAG,CAACe,CAAC,CAAC;UAClB,IAAIY,CAAC,EAAE;YACL;YACA,OAAOA,CAAC;WACT,MAAM;YACL,MAAMC,EAAE,GAAGH,KAAK,CAACV,CAAC,EAAEJ,SAAS,CAAC;YAC9Be,CAAC,CAACrB,GAAG,CAACU,CAAC,EAAEa,EAAE,CAAC;YACZ,OAAOA,EAAE;;SAEZ,MAAM;UACL,MAAMA,EAAE,GAAGH,KAAK,CAACV,CAAC,EAAEJ,SAAS,CAAC;UAC9BL,WAAW,CAACD,GAAG,CAACoB,KAAK,EAAE9B,qBAAK,CAACC,IAAI,CAAC,CAAC,CAACmB,CAAC,EAAEa,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAACjC,qBAAK,CAACE,SAAS,CAAC,CAAC;UACpE,OAAO+B,EAAE;;MAEb;;GAEH;EAED,OAAO;IACL5B,GAAG,EAAEF,OAAO;IACZO,GAAG,EAAEJ,OAAO;IACZU;GACD;AACH,CAAC,CAAC;AAAA;AAMK,MAAMkB,UAAU,GAAkBtC,mBAAG,EAAc;AAAA","names":["StoreMaker","tsplus_module_1","makeMap","tsplus_module_3","etags","tsplus_module_2","make","toMutable","getEtag","id","get","setEtag","eTag","undefined","delete","set","parsedCache","parserCache","setAndReturn","p","np","parserEnv","lax","cache","getOrSetParser","i","getOrSet","getOrSetParsers","parsers","Object","entries","reduce","prev","k","v","parse","c","f","nf","ContextMap"],"sourceRoot":"","sources":["../../../_src/services/Store/service.ts"],"sourcesContent":[null]}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.codeFilter = codeFilter;
7
+ exports.codeFilterJoinSelect = codeFilterJoinSelect;
8
+ exports.makeUpdateETag = exports.makeETag = void 0;
9
+ var tracer_1 = _interopRequireWildcard(require("@effect/io/Debug"));
10
+ var tsplus_module_1 = _interopRequireWildcard(require("@fp-ts/data/Option"));
11
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Effect"));
12
+ var tsplus_module_3 = _interopRequireWildcard(require("@fp-ts/data/ReadonlyArray"));
13
+ var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/core/Array"));
14
+ var _utils = require("@effect-app/prelude/utils");
15
+ var _errors = require("../../errors.cjs");
16
+ var _objectHash = _interopRequireDefault(require("object-hash"));
17
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ const fileName_1 = "packages/infra/_src/services/Store/utils.ts";
21
+ const makeETag = ({
22
+ _etag,
23
+ ...e
24
+ }) => ({
25
+ ...e,
26
+ _etag: (0, _objectHash.default)(e)
27
+ });
28
+ exports.makeETag = makeETag;
29
+ const makeUpdateETag = name => (e, current) => tracer_1.withCallTrace(fileName_1 + ":18:12")(tsplus_module_2.gen(function* ($) {
30
+ if (tsplus_module_1.isSome(current) && current.value._etag !== e._etag) {
31
+ return yield* $(tracer_1.withCallTrace(fileName_1 + ":21:18")(tsplus_module_2.fail(new _errors.OptimisticConcurrencyException(name, current.value.id, current.value._etag, e._etag))));
32
+ }
33
+ const newE = makeETag(e);
34
+ return newE;
35
+ }));
36
+ exports.makeUpdateETag = makeUpdateETag;
37
+ function codeFilter(filter) {
38
+ return x => filter.type === "startsWith"
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ ? lowercaseIfString(x[filter.by]).startsWith(filter.value.toLowerCase()) ? tsplus_module_1.some(x) : tsplus_module_1.none : filter.type === "endsWith"
41
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
42
+ ? lowercaseIfString(x[filter.by]).endsWith(filter.value.toLowerCase()) ? tsplus_module_1.some(x) : tsplus_module_1.none : filter.type === "contains"
43
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
45
+ ? lowercaseIfString(x[filter.by]).includes(filter.value.toLowerCase()) ? tsplus_module_1.some(x) : tsplus_module_1.none : filter.type === "join_find" ? filter.keys.some(k => {
46
+ const value = (0, _utils.get)(x, k);
47
+ // we mimic the behavior of cosmosdb; if the shape in db does not match what we're looking for, we imagine false hit
48
+ return value && value.some(v => compareCaseInsensitive(v[filter.valueKey], filter.value));
49
+ }) ? tsplus_module_1.some(x) : tsplus_module_1.none :
50
+ // TODO: support mixed or/and
51
+ filter.mode === "or" ? filter.where.some(p => p.t === "in" ? p.value.includes((0, _utils.get)(x, p.key)) : p.t === "not-in" ? !p.value.includes((0, _utils.get)(x, p.key)) : p.t === "not-eq" ? !compareCaseInsensitive((0, _utils.get)(x, p.key), p.value) : compareCaseInsensitive((0, _utils.get)(x, p.key), p.value)) ? tsplus_module_1.some(x) : tsplus_module_1.none : filter.where.every(p => p.t === "in" ? p.value.includes((0, _utils.get)(x, p.key)) : p.t === "not-in" ? !p.value.includes((0, _utils.get)(x, p.key)) : p.t === "not-eq" ? p.key.includes(".-1.") ? (0, _utils.get)(x, p.key.split(".-1.")[0])
52
+ // TODO: or vs and
53
+ .every(_ => !compareCaseInsensitive((0, _utils.get)(_, p.key.split(".-1.")[1]), p.value)) : !compareCaseInsensitive((0, _utils.get)(x, p.key), p.value) : p.key.includes(".-1.") ? (0, _utils.get)(x, p.key.split(".-1.")[0])
54
+ // TODO: or vs and
55
+ .some(_ => compareCaseInsensitive((0, _utils.get)(_, p.key.split(".-1.")[1]), p.value)) : compareCaseInsensitive((0, _utils.get)(x, p.key), p.value)) ? tsplus_module_1.some(x) : tsplus_module_1.none;
56
+ }
57
+ function codeFilterJoinSelect(filter) {
58
+ return x => tsplus_module_4.ext_itToChunk(tsplus_module_3.filterMap(k => {
59
+ const value = (0, _utils.get)(x, k);
60
+ // we mimic the behavior of cosmosdb; if the shape in db does not match what we're looking for, we imagine false hit
61
+ return value ? tsplus_module_1.some(tsplus_module_3.filterMap(v =>
62
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
63
+ compareCaseInsensitive(v[filter.valueKey], filter.value) ? tsplus_module_1.some({
64
+ ...v,
65
+ _rootId: x.id
66
+ }) : tsplus_module_1.none)(value)) : tsplus_module_1.none;
67
+ })(filter.keys).flatMap(_ => _));
68
+ }
69
+ function lowercaseIfString(val) {
70
+ if (typeof val === "string") {
71
+ return val.toLowerCase();
72
+ }
73
+ return val;
74
+ }
75
+ function compareCaseInsensitive(valA, valB) {
76
+ return typeof valB === "string" && typeof valA === "string" ? valA.toLowerCase() === valB.toLowerCase() : valA === valB;
77
+ }
78
+ //# sourceMappingURL=utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.cjs","mappings":"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","names":["makeETag","_etag","e","makeUpdateETag","name","current","tracer_1","tsplus_module_2","$","tsplus_module_1","value","OptimisticConcurrencyException","id","newE","codeFilter","filter","x","type","lowercaseIfString","by","startsWith","toLowerCase","endsWith","includes","keys","some","k","v","compareCaseInsensitive","valueKey","mode","where","p","t","key","every","split","_","codeFilterJoinSelect","tsplus_module_4","tsplus_module_3","_rootId","flatMap","val","valA","valB"],"sourceRoot":"","sources":["../../../_src/services/Store/utils.ts"],"sourcesContent":[null]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _service = require("./Store/service.cjs");
7
+ Object.keys(_service).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _service[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _service[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=Store.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Store.cjs","mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../../_src/services/Store.ts"],"sourcesContent":[null]}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MemQueue = exports.LiveMemQueue = void 0;
7
+ var tracer_1 = _interopRequireWildcard(require("@effect/io/Debug"));
8
+ var tsplus_module_1 = _interopRequireWildcard(require("@fp-ts/data/Context"));
9
+ var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Effect"));
10
+ var tsplus_module_3 = _interopRequireWildcard(require("@effect/io/Queue"));
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ const fileName_1 = "packages/infra/_src/services/memQueue.ts";
14
+ const MemQueue = tsplus_module_1.Tag();
15
+ /**
16
+ * @tsplus static MemQueue.Ops Live
17
+ */
18
+ exports.MemQueue = MemQueue;
19
+ const LiveMemQueue = tsplus_module_2.toLayer(MemQueue)(tracer_1.withCallTrace(fileName_1 + ":17:36")(tsplus_module_2.gen(function* ($) {
20
+ const store = yield* $(tracer_1.withCallTrace(fileName_1 + ":18:26")(tsplus_module_2.sync(() => new Map())));
21
+ return {
22
+ getOrCreateQueue: k => tracer_1.withCallTrace(fileName_1 + ":22:14")(tsplus_module_2.gen(function* ($) {
23
+ const q = store.get(k);
24
+ if (q) return q;
25
+ const newQ = yield* $(tracer_1.withCallTrace(fileName_1 + ":25:33")(tsplus_module_3.unbounded()));
26
+ store.set(k, newQ);
27
+ return newQ;
28
+ }))
29
+ };
30
+ })));
31
+ exports.LiveMemQueue = LiveMemQueue;
32
+ //# sourceMappingURL=memQueue.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memQueue.cjs","mappings":";;;;;;;;;;;;;AAWO,MAAMA,QAAQ,GAAgBC,mBAAG,EAAY;AAEpD;;;AAAA;AAGO,MAAMC,YAAY,GAAGC,wBAajBH,QAAQ,gDAbSG,oBAAW,WAAUC,CAAC;EAChD,MAAMC,KAAK,GAAG,OAAOD,CAAC,+CAACD,2BAAO,IAAIG,GAAG,EAAyB,CAAC,EAAC;EAEhE,OAAO;IACLC,gBAAgB,EAAGC,CAAS,IAAIC,8CAC9BN,oBAAW,WAAUC,CAAC;MACpB,MAAMM,CAAC,GAAGL,KAAK,CAACM,GAAG,CAACH,CAAC,CAAC;MACtB,IAAIE,CAAC,EAAE,OAAOA,CAAC;MACf,MAAME,IAAI,GAAG,OAAOR,CAAC,+CAACS,2BAAqB,EAAC;MAC5CR,KAAK,CAACS,GAAG,CAACN,CAAC,EAAEI,IAAI,CAAC;MAClB,OAAOA,IAAI;IACb,CAAC,CAAC;GACL;AACH,CAAC,CAAC,EAAkB;AAAA","names":["MemQueue","tsplus_module_1","LiveMemQueue","tsplus_module_2","$","store","Map","getOrCreateQueue","k","tracer_1","q","get","newQ","tsplus_module_3","set"],"sourceRoot":"","sources":["../../_src/services/memQueue.ts"],"sourcesContent":[null]}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.generate = void 0;
7
+ exports.generateFromArbitrary = generateFromArbitrary;
8
+ var _faker = require("@effect-app/prelude/faker");
9
+ var _faker2 = _interopRequireDefault(require("faker"));
10
+ var fc = _interopRequireWildcard(require("fast-check"));
11
+ var rand = _interopRequireWildcard(require("pure-rand"));
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+ const generate = generate_1;
16
+ // Do not import to frontend
17
+ exports.generate = generate;
18
+ const rnd = new fc.Random(rand.congruential32(5));
19
+ (0, _faker.setFaker)(_faker2.default);
20
+ /**
21
+ * @tsplus getter FastCheck generate
22
+ */
23
+ function generate_1(arb) {
24
+ return arb.generate(rnd, undefined);
25
+ }
26
+ /**
27
+ * @tsplus getter ets/Schema/Arbitrary/Gen generate
28
+ */
29
+ function generateFromArbitrary(arb) {
30
+ return generate_1(arb(fc));
31
+ }
32
+ //# sourceMappingURL=test.arbs.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.arbs.cjs","mappings":";;;;;;;AAEA;AAEA;AACA;AAEA;AAAiC;AAAA;AAAA;MASjBA,QAAQ;AAhBxB;AAAA;AASA,MAAMC,GAAG,GAAG,IAAIC,SAAM,CAACC,IAAI,CAACC,cAAc,CAAC,CAAC,CAAC,CAAC;AAE9C,mBAAQ,EAACC,eAAK,CAAC;AAEf;;;AAGA,oBAA4BC,GAAoB;EAC9C,OAAOA,GAAG,CAACN,QAAQ,CAACC,GAAG,EAAEM,SAAS,CAAC;AACrC;AAEA;;;AAIM,SAAUC,qBAAqB,CAAIF,GAAqB;EAC5D,OAAOG,WAASH,GAAG,CAACI,EAAE,CAAC,CAAC;AAC1B","names":["generate","rnd","Random","rand","congruential32","faker","arb","undefined","generateFromArbitrary","generate_1","fc"],"sourceRoot":"","sources":["../_src/test.arbs.ts"],"sourcesContent":[null]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AtomicBoolean = void 0;
7
+ var _AtomicReference = require("./AtomicReference.cjs");
8
+ class AtomicBoolean extends _AtomicReference.AtomicReference {
9
+ constructor(b) {
10
+ super(b);
11
+ }
12
+ }
13
+ exports.AtomicBoolean = AtomicBoolean;
14
+ //# sourceMappingURL=AtomicBoolean.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AtomicBoolean.cjs","mappings":";;;;;;AAAA;AAEM,MAAOA,aAAc,SAAQC,gCAAwB;EACzDC,YAAYC,CAAU;IACpB,KAAK,CAACA,CAAC,CAAC;EACV;;AACD","names":["AtomicBoolean","AtomicReference","constructor","b"],"sourceRoot":"","sources":["../../../../../_src/vendor/Cache/Cache/_internal/AtomicBoolean.ts"],"sourcesContent":[null]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AtomicNumber = void 0;
7
+ var _AtomicReference = require("./AtomicReference.cjs");
8
+ class AtomicNumber extends _AtomicReference.AtomicReference {
9
+ constructor(n) {
10
+ super(n);
11
+ this.incrementAndGet = this.incrementAndGet.bind(this);
12
+ this.decrementAndGet = this.decrementAndGet.bind(this);
13
+ }
14
+ incrementAndGet() {
15
+ this.set(this.get + 1);
16
+ return this.get;
17
+ }
18
+ decrementAndGet() {
19
+ this.set(this.get - 1);
20
+ return this.get;
21
+ }
22
+ getAndIncrement() {
23
+ const ret = this.get;
24
+ this.set(this.get + 1);
25
+ return ret;
26
+ }
27
+ }
28
+ exports.AtomicNumber = AtomicNumber;
29
+ //# sourceMappingURL=AtomicNumber.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AtomicNumber.cjs","mappings":";;;;;;AAAA;AAEM,MAAOA,YAAa,SAAQC,gCAAuB;EACvDC,YAAYC,CAAS;IACnB,KAAK,CAACA,CAAC,CAAC;IAER,IAAI,CAACC,eAAe,GAAG,IAAI,CAACA,eAAe,CAACC,IAAI,CAAC,IAAI,CAAC;IACtD,IAAI,CAACC,eAAe,GAAG,IAAI,CAACA,eAAe,CAACD,IAAI,CAAC,IAAI,CAAC;EACxD;EAEAD,eAAe;IACb,IAAI,CAACG,GAAG,CAAC,IAAI,CAACC,GAAG,GAAG,CAAC,CAAC;IACtB,OAAO,IAAI,CAACA,GAAG;EACjB;EAEAF,eAAe;IACb,IAAI,CAACC,GAAG,CAAC,IAAI,CAACC,GAAG,GAAG,CAAC,CAAC;IACtB,OAAO,IAAI,CAACA,GAAG;EACjB;EAEAC,eAAe;IACb,MAAMC,GAAG,GAAG,IAAI,CAACF,GAAG;IAEpB,IAAI,CAACD,GAAG,CAAC,IAAI,CAACC,GAAG,GAAG,CAAC,CAAC;IAEtB,OAAOE,GAAG;EACZ;;AACD","names":["AtomicNumber","AtomicReference","constructor","n","incrementAndGet","bind","decrementAndGet","set","get","getAndIncrement","ret"],"sourceRoot":"","sources":["../../../../../_src/vendor/Cache/Cache/_internal/AtomicNumber.ts"],"sourcesContent":[null]}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AtomicReference = void 0;
7
+ class AtomicReference {
8
+ constructor(initial) {
9
+ this.initial = initial;
10
+ this.current = initial;
11
+ }
12
+ get get() {
13
+ return this.current;
14
+ }
15
+ getAndSet(value) {
16
+ const old = this.current;
17
+ this.set(value);
18
+ return old;
19
+ }
20
+ set(value) {
21
+ this.current = value;
22
+ }
23
+ compareAndSet(old, value) {
24
+ if (this.get === old) {
25
+ this.set(value);
26
+ return true;
27
+ }
28
+ return false;
29
+ }
30
+ }
31
+ exports.AtomicReference = AtomicReference;
32
+ //# sourceMappingURL=AtomicReference.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AtomicReference.cjs","mappings":";;;;;;AAAM,MAAOA,eAAe;EAG1BC,YAAqBC,OAAU;IAAV,YAAO,GAAPA,OAAO;IAC1B,IAAI,CAACC,OAAO,GAAGD,OAAO;EACxB;EAEA,IAAIE,GAAG;IACL,OAAO,IAAI,CAACD,OAAO;EACrB;EAEAE,SAAS,CAACC,KAAQ;IAChB,MAAMC,GAAG,GAAG,IAAI,CAACJ,OAAO;IAExB,IAAI,CAACK,GAAG,CAACF,KAAK,CAAC;IACf,OAAOC,GAAG;EACZ;EAEAC,GAAG,CAACF,KAAQ;IACV,IAAI,CAACH,OAAO,GAAGG,KAAK;EACtB;EAEAG,aAAa,CAACF,GAAM,EAAED,KAAQ;IAC5B,IAAI,IAAI,CAACF,GAAG,KAAKG,GAAG,EAAE;MACpB,IAAI,CAACC,GAAG,CAACF,KAAK,CAAC;MACf,OAAO,IAAI;;IAEb,OAAO,KAAK;EACd;;AACD","names":["AtomicReference","constructor","initial","current","get","getAndSet","value","old","set","compareAndSet"],"sourceRoot":"","sources":["../../../../../_src/vendor/Cache/Cache/_internal/AtomicReference.ts"],"sourcesContent":[null]}