@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,95 @@
1
+ import type { FieldValues } from "../fields.js";
2
+ import type { BrowserNativeObject, Primitive } from "../utils.js";
3
+ import type { ArrayKey, IsTuple, TupleKeys } from "./common.js";
4
+ /**
5
+ * Helper type for recursively constructing paths through a type.
6
+ * See {@link Path}
7
+ */
8
+ type PathImpl<K extends string | number, V> = V extends Primitive | BrowserNativeObject ? `${K}` : `${K}` | `${K}.${Path<V>}`;
9
+ /**
10
+ * Type which eagerly collects all paths through a type
11
+ * @typeParam T - type which should be introspected
12
+ * @example
13
+ * ```
14
+ * Path<{foo: {bar: string}}> = 'foo' | 'foo.bar'
15
+ * ```
16
+ */
17
+ export type Path<T> = T extends ReadonlyArray<infer V> ? IsTuple<T> extends true ? {
18
+ [K in TupleKeys<T>]-?: PathImpl<K & string, T[K]>;
19
+ }[TupleKeys<T>] : PathImpl<ArrayKey, V> : {
20
+ [K in keyof T]-?: PathImpl<K & string, T[K]>;
21
+ }[keyof T];
22
+ /**
23
+ * See {@link Path}
24
+ */
25
+ export type FieldPath<TFieldValues extends FieldValues> = Path<TFieldValues>;
26
+ /**
27
+ * Helper type for recursively constructing paths through a type.
28
+ * See {@link ArrayPath}
29
+ */
30
+ type ArrayPathImpl<K extends string | number, V> = V extends Primitive | BrowserNativeObject ? never : V extends ReadonlyArray<infer U> ? U extends Primitive | BrowserNativeObject ? never : `${K}` | `${K}.${ArrayPath<V>}` : `${K}.${ArrayPath<V>}`;
31
+ /**
32
+ * Type which eagerly collects all paths through a type which point to an array
33
+ * type.
34
+ * @typeParam T - type which should be introspected
35
+ * @example
36
+ * ```
37
+ * Path<{foo: {bar: string[], baz: number[]}}> = 'foo.bar' | 'foo.baz'
38
+ * ```
39
+ */
40
+ export type ArrayPath<T> = T extends ReadonlyArray<infer V> ? IsTuple<T> extends true ? {
41
+ [K in TupleKeys<T>]-?: ArrayPathImpl<K & string, T[K]>;
42
+ }[TupleKeys<T>] : ArrayPathImpl<ArrayKey, V> : {
43
+ [K in keyof T]-?: ArrayPathImpl<K & string, T[K]>;
44
+ }[keyof T];
45
+ /**
46
+ * See {@link ArrayPath}
47
+ */
48
+ export type FieldArrayPath<TFieldValues extends FieldValues> = ArrayPath<TFieldValues>;
49
+ /**
50
+ * Type to evaluate the type which the given path points to.
51
+ * @typeParam T - deeply nested type which is indexed by the path
52
+ * @typeParam P - path into the deeply nested type
53
+ * @example
54
+ * ```
55
+ * PathValue<{foo: {bar: string}}, 'foo.bar'> = string
56
+ * PathValue<[number, string], '1'> = string
57
+ * ```
58
+ */
59
+ export type PathValue<T, P extends Path<T> | ArrayPath<T>> = T extends any ? P extends `${infer K}.${infer R}` ? K extends keyof T ? R extends Path<T[K]> ? PathValue<T[K], R> : never : K extends `${ArrayKey}` ? T extends ReadonlyArray<infer V> ? PathValue<V, R & Path<V>> : never : never : P extends keyof T ? T[P] : P extends `${ArrayKey}` ? T extends ReadonlyArray<infer V> ? V : never : never : never;
60
+ /**
61
+ * See {@link PathValue}
62
+ */
63
+ export type FieldPathValue<TFieldValues extends FieldValues, TFieldPath extends FieldPath<TFieldValues>> = PathValue<TFieldValues, TFieldPath>;
64
+ /**
65
+ * See {@link PathValue}
66
+ */
67
+ export type FieldArrayPathValue<TFieldValues extends FieldValues, TFieldArrayPath extends FieldArrayPath<TFieldValues>> = PathValue<TFieldValues, TFieldArrayPath>;
68
+ /**
69
+ * Type to evaluate the type which the given paths point to.
70
+ * @typeParam TFieldValues - field values which are indexed by the paths
71
+ * @typeParam TPath - paths into the deeply nested field values
72
+ * @example
73
+ * ```
74
+ * FieldPathValues<{foo: {bar: string}}, ['foo', 'foo.bar']>
75
+ * = [{bar: string}, string]
76
+ * ```
77
+ */
78
+ export type FieldPathValues<TFieldValues extends FieldValues, TPath extends FieldPath<TFieldValues>[] | readonly FieldPath<TFieldValues>[]> = {} & {
79
+ [K in keyof TPath]: FieldPathValue<TFieldValues, TPath[K] & FieldPath<TFieldValues>>;
80
+ };
81
+ /**
82
+ * Type which eagerly collects all paths through a fieldType that matches a give type
83
+ * @typeParam TFieldValues - field values which are indexed by the paths
84
+ * @typeParam TValue - the value you want to match into each type
85
+ * @example
86
+ * ```typescript
87
+ * FieldPathByValue<{foo: {bar: number}, baz: number, bar: string}, number>
88
+ * = 'foo.bar' | 'baz'
89
+ * ```
90
+ */
91
+ export type FieldPathByValue<TFieldValues extends FieldValues, TValue> = {
92
+ [Key in FieldPath<TFieldValues>]: FieldPathValue<TFieldValues, Key> extends TValue ? Key : never;
93
+ }[FieldPath<TFieldValues>];
94
+ export {};
95
+ //# sourceMappingURL=eager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eager.d.ts","sourceRoot":"","sources":["../../../../../_src/lib/filter/types/path/eager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9fc3JjL2xpYi9maWx0ZXIvdHlwZXMvcGF0aC9lYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,4 @@
1
+ /** Re-export public API */
2
+ export { PathString } from "./common.js";
3
+ export { ArrayPath, FieldArrayPath, FieldArrayPathValue, FieldPath, FieldPathByValue, FieldPathValue, FieldPathValues, Path, PathValue } from "./eager.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../_src/lib/filter/types/path/index.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,IAAI,EACJ,SAAS,EACV,MAAM,YAAY,CAAA"}
@@ -0,0 +1,4 @@
1
+ /** Re-export public API */
2
+ export {} from "./common.js";
3
+ export {} from "./eager.js";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9fc3JjL2xpYi9maWx0ZXIvdHlwZXMvcGF0aC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQkFBMkI7QUFFM0IsT0FBTyxFQUFjLE1BQU0sYUFBYSxDQUFBO0FBQ3hDLE9BQU8sRUFVTixNQUFNLFlBQVksQ0FBQSJ9
@@ -0,0 +1,68 @@
1
+ declare const $NestedValue: unique symbol;
2
+ /**
3
+ * @deprecated to be removed in the next major version
4
+ */
5
+ export type NestedValue<TValue extends object = object> = {
6
+ [$NestedValue]: never;
7
+ } & TValue;
8
+ /**
9
+ * @deprecated to be removed in the next major version
10
+ */
11
+ export type UnpackNestedValue<T> = T extends NestedValue<infer U> ? U : T extends Date | FileList | File | Blob ? T : T extends object ? {
12
+ [K in keyof T]: UnpackNestedValue<T[K]>;
13
+ } : T;
14
+ export type Noop = () => void;
15
+ interface File extends Blob {
16
+ readonly lastModified: number;
17
+ readonly name: string;
18
+ }
19
+ interface FileList {
20
+ readonly length: number;
21
+ item(index: number): File | null;
22
+ [index: number]: File;
23
+ }
24
+ export type Primitive = null | undefined | string | number | boolean | symbol | bigint;
25
+ export type BrowserNativeObject = Date | FileList | File;
26
+ export type EmptyObject = {
27
+ [K in string | number]: never;
28
+ };
29
+ export type NonUndefined<T> = T extends undefined ? never : T;
30
+ export type LiteralUnion<T extends U, U extends Primitive> = T | (U & {
31
+ _?: never;
32
+ });
33
+ export type DeepPartial<T> = T extends BrowserNativeObject | NestedValue ? T : {
34
+ [K in keyof T]?: DeepPartial<T[K]>;
35
+ };
36
+ export type DeepPartialSkipArrayKey<T> = T extends BrowserNativeObject | NestedValue ? T : T extends ReadonlyArray<any> ? {
37
+ [K in keyof T]: DeepPartialSkipArrayKey<T[K]>;
38
+ } : {
39
+ [K in keyof T]?: DeepPartialSkipArrayKey<T[K]>;
40
+ };
41
+ /**
42
+ * Checks whether the type is any
43
+ * See {@link https://stackoverflow.com/a/49928360/3406963}
44
+ * @typeParam T - type which may be any
45
+ * ```
46
+ * IsAny<any> = true
47
+ * IsAny<string> = false
48
+ * ```
49
+ */
50
+ export type IsAny<T> = 0 extends 1 & T ? true : false;
51
+ /**
52
+ * Checks whether the type is never
53
+ * @typeParam T - type which may be never
54
+ * ```
55
+ * IsAny<never> = true
56
+ * IsAny<string> = false
57
+ * ```
58
+ */
59
+ export type IsNever<T> = [T] extends [never] ? true : false;
60
+ export type DeepMap<T, TValue> = IsAny<T> extends true ? any : T extends BrowserNativeObject | NestedValue ? TValue : T extends object ? {
61
+ [K in keyof T]: DeepMap<NonUndefined<T[K]>, TValue>;
62
+ } : TValue;
63
+ export type IsFlatObject<T extends object> = Extract<Exclude<T[keyof T], NestedValue | Date | FileList>, any[] | object> extends never ? true : false;
64
+ export type Merge<A, B> = {
65
+ [K in keyof A | keyof B]?: K extends keyof A & keyof B ? [A[K], B[K]] extends [object, object] ? Merge<A[K], B[K]> : A[K] | B[K] : K extends keyof A ? A[K] : K extends keyof B ? B[K] : never;
66
+ };
67
+ export {};
68
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../_src/lib/filter/types/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9fc3JjL2xpYi9maWx0ZXIvdHlwZXMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,30 @@
1
+ import type { Message } from "./errors.js";
2
+ import type { FieldValues, InternalFieldName } from "./fields.js";
3
+ import type { FieldPath, FieldPathValue } from "./path/index.js";
4
+ export type ValidationValue = boolean | number | string | RegExp;
5
+ export type ValidationRule<TValidationValue extends ValidationValue = ValidationValue> = TValidationValue | ValidationValueMessage<TValidationValue>;
6
+ export type ValidationValueMessage<TValidationValue extends ValidationValue = ValidationValue> = {
7
+ value: TValidationValue;
8
+ message: Message;
9
+ };
10
+ export type ValidateResult = Message | Message[] | boolean | undefined;
11
+ export type Validate<TFieldValue> = (value: TFieldValue) => ValidateResult | Promise<ValidateResult>;
12
+ export type RegisterOptions<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Partial<{
13
+ required: Message | ValidationRule<boolean>;
14
+ min: ValidationRule<number | string>;
15
+ max: ValidationRule<number | string>;
16
+ maxLength: ValidationRule<number>;
17
+ minLength: ValidationRule<number>;
18
+ pattern: ValidationRule<RegExp>;
19
+ validate: Validate<FieldPathValue<TFieldValues, TFieldName>> | Record<string, Validate<FieldPathValue<TFieldValues, TFieldName>>>;
20
+ valueAsNumber: boolean;
21
+ valueAsDate: boolean;
22
+ value: FieldPathValue<TFieldValues, TFieldName>;
23
+ setValueAs: (value: any) => any;
24
+ shouldUnregister?: boolean;
25
+ onChange?: (event: any) => void;
26
+ onBlur?: (event: any) => void;
27
+ disabled: boolean;
28
+ deps: InternalFieldName | InternalFieldName[];
29
+ }>;
30
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../../_src/lib/filter/types/validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhE,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAEhE,MAAM,MAAM,cAAc,CACxB,gBAAgB,SAAS,eAAe,GAAG,eAAe,IACxD,gBAAgB,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAA;AAE/D,MAAM,MAAM,sBAAsB,CAChC,gBAAgB,SAAS,eAAe,GAAG,eAAe,IACxD;IACF,KAAK,EAAE,gBAAgB,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,OAAO,GAAG,SAAS,CAAA;AAEtE,MAAM,MAAM,QAAQ,CAAC,WAAW,IAAI,CAClC,KAAK,EAAE,WAAW,KACf,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;AAE7C,MAAM,MAAM,eAAe,CACzB,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,IAClE,OAAO,CAAC;IACV,QAAQ,EAAE,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3C,GAAG,EAAE,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IACpC,GAAG,EAAE,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IACpC,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IACjC,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IACjC,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IAC/B,QAAQ,EACJ,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,GAClD,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IACtE,aAAa,EAAE,OAAO,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,cAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IAC/C,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC7B,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,CAAA;CAC9C,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vX3NyYy9saWIvZmlsdGVyL3R5cGVzL3ZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,133 @@
1
+ import type { FieldValues } from "./filter/types/fields.js";
2
+ import type { FieldPath } from "./filter/types/path/eager.js";
3
+ /**
4
+ * the function defaults to "eq", but has additional properties for notEq, in and notIn
5
+ */
6
+ export interface WhereFilter<TFieldValues extends FieldValues> extends ReturnType<typeof makeWhereFilter_<TFieldValues>> {
7
+ }
8
+ export declare function makeWhereFilter<TFieldValues extends FieldValues>(): WhereFilter<TFieldValues>;
9
+ export interface WhereHelpers<TFieldValues extends FieldValues> extends ReturnType<typeof makeHelpers_<TFieldValues>> {
10
+ }
11
+ declare function makeHelpers_<TFieldValues extends FieldValues>(): {
12
+ in<TFieldName extends FieldPath<TFieldValues>, V extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName>>(this: void, path: TFieldName, value: readonly V[]): {
13
+ key: TFieldName;
14
+ value: readonly V[];
15
+ t: "in";
16
+ };
17
+ notIn<TFieldName_1 extends FieldPath<TFieldValues>, V_1 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_1>>(this: void, path: TFieldName_1, value: readonly V_1[]): {
18
+ key: TFieldName_1;
19
+ value: readonly V_1[];
20
+ t: "not-in";
21
+ };
22
+ eq<TFieldName_2 extends FieldPath<TFieldValues>, V_2 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_2>>(this: void, path: TFieldName_2, value: V_2): {
23
+ key: TFieldName_2;
24
+ value: V_2;
25
+ t: "eq";
26
+ };
27
+ notEq<TFieldName_3 extends FieldPath<TFieldValues>, V_3 extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName_3>>(this: void, path: TFieldName_3, value: V_3): {
28
+ key: TFieldName_3;
29
+ value: V_3;
30
+ t: "not-eq";
31
+ };
32
+ };
33
+ declare function makeWhereFilter_<TFieldValues extends FieldValues>(): (<TFieldName extends import("./filter/types/path/eager.js").Path<TFieldValues>, V extends import("./filter/types/path/eager.js").PathValue<TFieldValues, TFieldName>>(this: void, path: TFieldName, value: V) => {
34
+ key: TFieldName;
35
+ value: V;
36
+ t: "eq";
37
+ }) & WhereHelpers<TFieldValues>;
38
+ export type WhereValue<T extends "eq" | "not-eq" | "starts-with" | "ends-with" | "includes" | "contains" | "not-contains", A, // extends SupportedValues,
39
+ V extends A = A> = {
40
+ t: T;
41
+ v: V;
42
+ };
43
+ type SupportedValues = string | boolean | number | null;
44
+ export type WhereIn<T extends "in" | "not-in", V, Values extends readonly V[] = readonly V[]> = {
45
+ t: T;
46
+ v: Values;
47
+ };
48
+ /**
49
+ * @tsplus fluent Iterable $contains
50
+ * @tsplus location "@effect-app/infra/lib/filter"
51
+ */
52
+ export declare function $contains<A extends SupportedValues, V extends A>(_: readonly A[], v: V): WhereValue<"contains", A, V>;
53
+ /**
54
+ * @tsplus fluent Iterable $notContains
55
+ * @tsplus location "@effect-app/infra/lib/filter"
56
+ */
57
+ export declare function $notContains<A extends SupportedValues, V extends A>(_: readonly A[], v: V): WhereValue<"not-contains", A, V>;
58
+ /**
59
+ * @tsplus fluent string $in
60
+ * @tsplus fluent boolean $in
61
+ * @tsplus fluent number $in
62
+ * @tsplus location "@effect-app/infra/lib/filter"
63
+ */
64
+ export declare function $in<A extends SupportedValues, Values extends readonly A[]>(_: A, ...v: Values): WhereIn<"in", A, Values>;
65
+ /**
66
+ * @tsplus fluent string $notIn
67
+ * @tsplus fluent boolean $notIn
68
+ * @tsplus fluent number $notIn
69
+ * @tsplus location "@effect-app/infra/lib/filter"
70
+ */
71
+ export declare function $notIn<A extends SupportedValues, Values extends readonly A[]>(_: A, ...v: Values): WhereIn<"not-in", A, Values>;
72
+ /**
73
+ * @tsplus fluent string $is
74
+ * @tsplus fluent boolean $is
75
+ * @tsplus fluent number $is
76
+ * @tsplus fluent Object $is
77
+ * @tsplus location "@effect-app/infra/lib/filter"
78
+ */
79
+ export declare function $is<A, V extends A>(_: A, v: V): WhereValue<"eq", A, V>;
80
+ /**
81
+ * @tsplus fluent string $isnt
82
+ * @tsplus fluent boolean $isnt
83
+ * @tsplus fluent number $isnt
84
+ * @tsplus fluent Object $isnt
85
+ * @tsplus location "@effect-app/infra/lib/filter"
86
+ */
87
+ export declare function $isnt<A, V extends A>(_: A, v: V): WhereValue<"not-eq", A, V>;
88
+ declare function $is__<V extends A, A>(v: V): (_: A) => WhereValue<"eq", A, V>;
89
+ declare function $isnt__<V extends A, A>(v: V): (_: A) => WhereValue<"not-eq", A, V>;
90
+ declare function $in__<A extends SupportedValues, Values extends readonly A[]>(...v: Values): (_: A) => WhereIn<"in", A, [...Values]>;
91
+ declare function $notIn__<A extends SupportedValues, Values extends readonly A[]>(...v: Values): (_: A) => WhereIn<"not-in", A, [...Values]>;
92
+ export declare const Filters: {
93
+ $is: typeof $is__;
94
+ $isnt: typeof $isnt__;
95
+ $in: typeof $in__;
96
+ $notIn: typeof $notIn__;
97
+ };
98
+ /**
99
+ * @tsplus fluent string $startsWith
100
+ * @tsplus location "@effect-app/infra/lib/filter"
101
+ */
102
+ export declare function $startsWith<A extends string, V extends A>(_: A, v: V): WhereValue<"starts-with", A, V>;
103
+ /**
104
+ * @tsplus fluent string $endsWith
105
+ * @tsplus location "@effect-app/infra/lib/filter"
106
+ */
107
+ export declare function $endsWith<A extends string, V extends A>(_: A, v: V): WhereValue<"ends-with", A, V>;
108
+ /**
109
+ * @tsplus fluent string $includes
110
+ * @tsplus location "@effect-app/infra/lib/filter"
111
+ */
112
+ export declare function $includes<A extends string, V extends A>(_: A, v: V): WhereValue<"includes", A, V>;
113
+ type ValueType<V> = {
114
+ t: "in" | "not-in";
115
+ v: readonly V[];
116
+ } | {
117
+ t: "eq" | "not-eq";
118
+ v: V;
119
+ };
120
+ type TType<T> = T extends ValueType<any> ? T["t"] : never;
121
+ type VType<T> = T extends ValueType<any> ? T["v"] : never;
122
+ type FIL<S, K extends string, T extends "in" | "not-in" | "eq" | "not-eq", V> = {
123
+ key: K;
124
+ t: T;
125
+ value: V;
126
+ readonly S: S;
127
+ };
128
+ export declare function makeFilters<T extends FieldValues>(): {
129
+ <TFieldName extends FieldPath<T>, A extends import("./filter/types/path/eager.js").PathValue<T, TFieldName>, Val>(path: TFieldName, value: (v: A) => Val): FIL<T, string, TType<Val>, VType<Val>>;
130
+ <TFieldName_1 extends FieldPath<T>, A_1 extends import("./filter/types/path/eager.js").PathValue<T, TFieldName_1>>(path: TFieldName_1, value: A_1): FIL<T, string, "eq", A_1>;
131
+ };
132
+ export {};
133
+ //# sourceMappingURL=filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../_src/lib/filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ export const $in = $in_1;
2
+ export const $notIn = $notIn_1;
3
+ export const $is = $is_1;
4
+ export const $isnt = $isnt_1;
5
+ export function makeWhereFilter() {
6
+ const f = makeWhereFilter_();
7
+ return f;
8
+ }
9
+ function makeHelpers() {
10
+ const helpers = makeHelpers_();
11
+ return helpers;
12
+ }
13
+ function makeHelpers_() {
14
+ return {
15
+ in(path, value) {
16
+ return { key: path, value, t: "in" };
17
+ },
18
+ notIn(path, value) {
19
+ return { key: path, value, t: "not-in" };
20
+ },
21
+ eq(path, value) {
22
+ return { key: path, value, t: "eq" };
23
+ },
24
+ notEq(path, value) {
25
+ return { key: path, value, t: "not-eq" };
26
+ }
27
+ };
28
+ }
29
+ function makeWhereFilter_() {
30
+ const helpers = makeHelpers();
31
+ const f = Object.assign(helpers.eq, helpers);
32
+ return f;
33
+ }
34
+ /**
35
+ * @tsplus fluent Iterable $contains
36
+ */
37
+ export function $contains(_, v) {
38
+ return $$contains(v);
39
+ }
40
+ /**
41
+ * @tsplus fluent Iterable $notContains
42
+ */
43
+ export function $notContains(_, v) {
44
+ return $$notContains(v);
45
+ }
46
+ /**
47
+ * @tsplus fluent string $in
48
+ * @tsplus fluent boolean $in
49
+ * @tsplus fluent number $in
50
+ */
51
+ function $in_1(_, ...v) {
52
+ return $$in(v);
53
+ }
54
+ /**
55
+ * @tsplus fluent string $notIn
56
+ * @tsplus fluent boolean $notIn
57
+ * @tsplus fluent number $notIn
58
+ */
59
+ function $notIn_1(_, ...v) {
60
+ return $$notIn(v);
61
+ }
62
+ /**
63
+ * @tsplus fluent string $is
64
+ * @tsplus fluent boolean $is
65
+ * @tsplus fluent number $is
66
+ * @tsplus fluent Object $is
67
+ */
68
+ function $is_1(_, v) {
69
+ return $$is(v);
70
+ }
71
+ /**
72
+ * @tsplus fluent string $isnt
73
+ * @tsplus fluent boolean $isnt
74
+ * @tsplus fluent number $isnt
75
+ * @tsplus fluent Object $isnt
76
+ */
77
+ function $isnt_1(_, v) {
78
+ return $$isnt(v);
79
+ }
80
+ function $is__(v) {
81
+ return (_) => $is_1(_, v);
82
+ }
83
+ function $isnt__(v) {
84
+ return (_) => $isnt_1(_, v);
85
+ }
86
+ function $in__(...v) {
87
+ return (_) => $in_1(_, ...v);
88
+ }
89
+ function $notIn__(...v) {
90
+ return (_) => $notIn_1(_, ...v);
91
+ }
92
+ // function $contains__<A extends SupportedValues, V extends A>(
93
+ // v: V
94
+ // ) {
95
+ // return (_: readonly A[]) => $contains(_, v)
96
+ // }
97
+ // function $notContains__<A extends SupportedValues, V extends A>(
98
+ // v: V
99
+ // ) {
100
+ // return (_: readonly A[]) => $notContains(_, v)
101
+ // }
102
+ export const Filters = {
103
+ $is: $is__,
104
+ $isnt: $isnt__,
105
+ $in: $in__,
106
+ $notIn: $notIn__,
107
+ // $contains: $contains__,
108
+ // $notContains: $notContains__,
109
+ };
110
+ /**
111
+ * @tsplus fluent string $startsWith
112
+ */
113
+ export function $startsWith(_, v) {
114
+ return $$startsWith(v);
115
+ }
116
+ /**
117
+ * @tsplus fluent string $endsWith
118
+ */
119
+ export function $endsWith(_, v) {
120
+ return $$endsWith(v);
121
+ }
122
+ /**
123
+ * @tsplus fluent string $includes
124
+ */
125
+ export function $includes(_, v) {
126
+ return $$includes(v);
127
+ }
128
+ function $$in(v) {
129
+ return { t: "in", v };
130
+ }
131
+ function $$notIn(v) {
132
+ return { t: "not-in", v };
133
+ }
134
+ function $$is(v) {
135
+ return { t: "eq", v };
136
+ }
137
+ function $$isnt(v) {
138
+ return { t: "not-eq", v };
139
+ }
140
+ // containsAny, containsAll?
141
+ function $$contains(v) {
142
+ return { t: "contains", v };
143
+ }
144
+ function $$notContains(v) {
145
+ return { t: "not-contains", v };
146
+ }
147
+ function $$includes(v) {
148
+ return { t: "includes", v };
149
+ }
150
+ function $$startsWith(v) {
151
+ return { t: "starts-with", v };
152
+ }
153
+ function $$endsWith(v) {
154
+ return { t: "ends-with", v };
155
+ }
156
+ function f(p, b) {
157
+ if (typeof b === "function")
158
+ b = b(undefined);
159
+ const obj = typeof b === "object" && b !== null;
160
+ return makeFilter(p, obj ? b.v : b, obj ? b.t ?? "eq" : "eq");
161
+ }
162
+ function makeFilter(path, value, t) {
163
+ return { key: path, t, value };
164
+ }
165
+ export function makeFilters() {
166
+ function test(p, v) {
167
+ return f(p, v);
168
+ }
169
+ return test;
170
+ }
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vX3NyYy9saWIvZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJhQXFHZ0IsR0FBRzthQVlILE1BQU07YUFhTixHQUFHO2FBU0gsS0FBSztBQS9IckIsTUFBTSxVQUFVLGVBQWU7SUFDN0IsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLEVBQWdCLENBQUE7SUFDMUMsT0FBTyxDQUE4QixDQUFBO0FBQ3ZDLENBQUM7QUFFRCxTQUFTLFdBQVc7SUFDbEIsTUFBTSxPQUFPLEdBQUcsWUFBWSxFQUFnQixDQUFBO0lBQzVDLE9BQU8sT0FBcUMsQ0FBQTtBQUM5QyxDQUFDO0FBSUQsU0FBUyxZQUFZO0lBSW5CLE9BQU87UUFDTCxFQUFFLENBRUEsSUFBZ0IsRUFDaEIsS0FBbUI7WUFFbkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFhLEVBQUUsQ0FBQTtRQUMvQyxDQUFDO1FBQ0QsS0FBSyxDQUVILElBQWdCLEVBQ2hCLEtBQW1CO1lBRW5CLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsUUFBaUIsRUFBRSxDQUFBO1FBQ25ELENBQUM7UUFDRCxFQUFFLENBRUEsSUFBZ0IsRUFDaEIsS0FBUTtZQUVSLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBYSxFQUFFLENBQUE7UUFDL0MsQ0FBQztRQUNELEtBQUssQ0FFSCxJQUFnQixFQUNoQixLQUFRO1lBRVIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFpQixFQUFFLENBQUE7UUFDbkQsQ0FBQztLQUNrRCxDQUFBO0FBQ3ZELENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixNQUFNLE9BQU8sR0FBRyxXQUFXLEVBQWdCLENBQUE7SUFDM0MsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzVDLE9BQU8sQ0FBQyxDQUFBO0FBQ1YsQ0FBQztBQWdCRDs7R0FFRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQ3ZCLENBQWUsRUFDZixDQUFJO0lBRUosT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDdEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FDMUIsQ0FBZSxFQUNmLENBQUk7SUFFSixPQUFPLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUN6QixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILGVBQ0UsQ0FBSSxFQUNKLEdBQUcsQ0FBUztJQUVaLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2hCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsa0JBQ0UsQ0FBSSxFQUNKLEdBQUcsQ0FBUztJQUVaLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ25CLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILGVBQW9DLENBQUksRUFBRSxDQUFJO0lBQzVDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2hCLENBQUM7QUFDRDs7Ozs7R0FLRztBQUNILGlCQUFzQyxDQUFJLEVBQUUsQ0FBSTtJQUM5QyxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNsQixDQUFDO0FBRUQsU0FBUyxLQUFLLENBQWlCLENBQUk7SUFDakMsT0FBTyxDQUFDLENBQUksRUFBRSxFQUFFLENBQUMsTUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFDNUIsQ0FBQztBQUVELFNBQVMsT0FBTyxDQUFpQixDQUFJO0lBQ25DLE9BQU8sQ0FBQyxDQUFJLEVBQUUsRUFBRSxDQUFDLFFBQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0FBQzlCLENBQUM7QUFHRCxTQUFTLEtBQUssQ0FDZCxHQUFHLENBQVM7SUFFVixPQUFPLENBQUMsQ0FBSSxFQUFFLEVBQUUsQ0FBQyxNQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBO0FBQy9CLENBQUM7QUFFRCxTQUFTLFFBQVEsQ0FDZixHQUFHLENBQVM7SUFFWixPQUFPLENBQUMsQ0FBSSxFQUFFLEVBQUUsQ0FBQyxTQUFPLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBO0FBQ2xDLENBQUM7QUFFRCxnRUFBZ0U7QUFDaEUsU0FBUztBQUNULE1BQU07QUFDTixnREFBZ0Q7QUFDaEQsSUFBSTtBQUVKLG1FQUFtRTtBQUNuRSxTQUFTO0FBQ1QsTUFBTTtBQUNOLG1EQUFtRDtBQUNuRCxJQUFJO0FBRUosTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLE9BQU87SUFDZCxHQUFHLEVBQUUsS0FBSztJQUNWLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLDBCQUEwQjtJQUMxQixnQ0FBZ0M7Q0FDakMsQ0FBQTtBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FBZ0MsQ0FBSSxFQUFFLENBQUk7SUFDbkUsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDeEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBZ0MsQ0FBSSxFQUFFLENBQUk7SUFDakUsT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDdEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBZ0MsQ0FBSSxFQUFFLENBQUk7SUFDakUsT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDdEIsQ0FBQztBQUVELFNBQVMsSUFBSSxDQUEyQixDQUFJO0lBQzFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsSUFBYSxFQUFFLENBQUMsRUFBRSxDQUFBO0FBQ2hDLENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBMkIsQ0FBSTtJQUM3QyxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQWlCLEVBQUUsQ0FBQyxFQUFFLENBQUE7QUFDcEMsQ0FBQztBQUNELFNBQVMsSUFBSSxDQUFJLENBQUk7SUFDbkIsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFhLEVBQUUsQ0FBQyxFQUFFLENBQUE7QUFDaEMsQ0FBQztBQUNELFNBQVMsTUFBTSxDQUFJLENBQUk7SUFDckIsT0FBTyxFQUFFLENBQUMsRUFBRSxRQUFpQixFQUFFLENBQUMsRUFBRSxDQUFBO0FBQ3BDLENBQUM7QUFFRCw0QkFBNEI7QUFDNUIsU0FBUyxVQUFVLENBQUksQ0FBSTtJQUN6QixPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQW1CLEVBQUUsQ0FBQyxFQUFFLENBQUE7QUFDdEMsQ0FBQztBQUNELFNBQVMsYUFBYSxDQUFJLENBQUk7SUFDNUIsT0FBTyxFQUFFLENBQUMsRUFBRSxjQUF1QixFQUFFLENBQUMsRUFBRSxDQUFBO0FBQzFDLENBQUM7QUFDRCxTQUFTLFVBQVUsQ0FBbUIsQ0FBSTtJQUN4QyxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQW1CLEVBQUUsQ0FBQyxFQUFFLENBQUE7QUFDdEMsQ0FBQztBQUNELFNBQVMsWUFBWSxDQUFtQixDQUFJO0lBQzFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsYUFBc0IsRUFBRSxDQUFDLEVBQUUsQ0FBQTtBQUN6QyxDQUFDO0FBQ0QsU0FBUyxVQUFVLENBQW1CLENBQUk7SUFDeEMsT0FBTyxFQUFFLENBQUMsRUFBRSxXQUFvQixFQUFFLENBQUMsRUFBRSxDQUFBO0FBQ3ZDLENBQUM7QUFVRCxTQUFTLENBQUMsQ0FBQyxDQUFTLEVBQUUsQ0FBTTtJQUMxQixJQUFJLE9BQU8sQ0FBQyxLQUFLLFVBQVU7UUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQzdDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFBO0lBQy9DLE9BQU8sVUFBVSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQsU0FBUyxVQUFVLENBQThDLElBQVksRUFBRSxLQUFVLEVBQUUsQ0FBSTtJQUM3RixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUE7QUFDaEMsQ0FBQztBQVVELE1BQU0sVUFBVSxXQUFXO0lBbUJ6QixTQUFTLElBQUksQ0FBQyxDQUFTLEVBQUUsQ0FBTTtRQUM3QixPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFRLENBQUE7SUFDdkIsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyJ9
@@ -0,0 +1,7 @@
1
+ import { Effect } from "@effect/io/Effect";
2
+ /**
3
+ * @tsplus fluent effect/io/Effect instrument
4
+ * @tsplus location "@effect-app/infra/lib/instrument"
5
+ */
6
+ export declare function instr<R, E, A>(self: Effect<R, E, A>, name: string, properties?: Record<string, string>): import("@effect/io/Effect").Effect<R, E, A>;
7
+ //# sourceMappingURL=instrument.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../../_src/lib/instrument.ts"],"names":[],"mappings":";;;;;AAGA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,+CAKtG"}
@@ -0,0 +1,12 @@
1
+ import * as tracer_1 from "@effect/io/Debug";
2
+ const fileName_1 = "packages/infra/_src/lib/instrument.ts";
3
+ import * as tsplus_module_1 from "@effect-app/prelude/utils";
4
+ import * as tsplus_module_2 from "@effect/io/Effect";
5
+ /**
6
+ * @tsplus fluent effect/io/Effect instrument
7
+ */
8
+ export function instr(self, name, properties) {
9
+ return tracer_1.withCallTrace(fileName_1 + ":7:6")(tsplus_module_2.withSpan(name))(tracer_1.withCallTrace(fileName_1 + ":6:6")(tsplus_module_2.tap(() => tracer_1.withCallTrace(fileName_1 + ":6:48")(tsplus_module_2.logAnnotate("properties", tsplus_module_1.RecordPretty(tsplus_module_1.object$((properties || {})))))(tracer_1.withCallTrace(fileName_1 + ":6:23")(tsplus_module_2.logDebug(`instrumented`)))))(self));
10
+ // trackMetric(name, time, properties))
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvbGliL2luc3RydW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBVSxJQUFxQixFQUFFLElBQVksRUFBRSxVQUFtQztJQUNyRyxPQUFPLHFFQUVLLElBQUksR0FGVCxnRUFDQSxHQUFHLEVBQUUsQ0FBQyx5RUFBNEMsWUFBWSx1REFBRSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsa0RBQTVFLHlCQUFnQixjQUFjLENBQUMsRUFBd0QsR0FEN0YsSUFBSSxDQUMwRixDQUNwRixDQUFBO0lBQ2pCLHVDQUF1QztBQUN6QyxDQUFDIn0=
@@ -0,0 +1,43 @@
1
+ import { DUR } from "@fp-ts/data/Duration";
2
+ import { TSemaphore } from "@effect/stm/TSemaphore";
3
+ import { Effect, Semaphore } from "@effect/io/Effect";
4
+ import { Chunk } from "@fp-ts/data/Chunk";
5
+ /**
6
+ * Executes the specified effect, acquiring the specified number of permits
7
+ * immediately before the effect begins execution and releasing them
8
+ * delayed by duration after the effect completes execution, whether by success,
9
+ * failure, or interruption.
10
+ * @tsplus static effect/stm/TSemaphore.Ops withPermitsDuration
11
+ * @tsplus pipeable effect/stm/TSemaphore withPermitsDuration
12
+ * @tsplus location "@effect-app/infra/lib/rateLimit"
13
+ */
14
+ export declare function withPermitsDuration(permits: number, duration: DUR): (self: TSemaphore) => <R, E, A>(effect: import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, E, A>;
15
+ /**
16
+ * Executes the specified effect, acquiring the specified number of permits
17
+ * immediately before the effect begins execution and releasing them
18
+ * delayed by duration after the effect completes execution, whether by success,
19
+ * failure, or interruption.
20
+ * @tsplus static effect/io/Effect/Semaphore.Ops withPermitsDuration
21
+ * @tsplus pipeable effect/io/Effect/Semaphore withPermitsDuration
22
+ * @tsplus location "@effect-app/infra/lib/rateLimit"
23
+ */
24
+ export declare function SEM_withPermitsDuration(permits: number, duration: DUR): (self: Semaphore) => <R, E, A>(effect: import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, E, A>;
25
+ /**
26
+ * @tsplus pipeable Iterable batchNPar
27
+ * @tsplus static Collection.Aspects batchNPar
28
+ * @tsplus location "@effect-app/infra/lib/rateLimit"
29
+ */
30
+ export declare function batchNPar<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, i: number) => Effect<R, E, A>, forEachBatch: (a: Chunk<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("@effect/io/Effect").Effect<R | R2, E | E2, import("@fp-ts/data/Chunk").Chunk<A2>>;
31
+ /**
32
+ * @tsplus pipeable Iterable batch
33
+ * @tsplus static Collection.Aspects batch
34
+ * @tsplus location "@effect-app/infra/lib/rateLimit"
35
+ */
36
+ export declare function batch<R, E, A, R2, E2, A2, T>(n: number, forEachItem: (item: T, iWithinBatch: number, batchI: number) => Effect<R, E, A>, forEachBatch: (a: Chunk<A>, i: number) => Effect<R2, E2, A2>): (items: Iterable<T>) => import("@effect/io/Effect").Effect<R | R2, E | E2, import("@fp-ts/data/Chunk").Chunk<A2>>;
37
+ /**
38
+ * @tsplus pipeable Iterable naiveRateLimit
39
+ * @tsplus static Collection.Aspects naiveRateLimit
40
+ * @tsplus location "@effect-app/infra/lib/rateLimit"
41
+ */
42
+ export declare function naiveRateLimit(n: number, d: DUR): <T>(items: Iterable<T>) => <R, E, A, R2, E2, A2>(forEachItem: (i: T) => import("@effect/io/Effect").Effect<R, E, A>, forEachBatch: (a: import("@fp-ts/data/Chunk").Chunk<A>) => import("@effect/io/Effect").Effect<R2, E2, A2>) => import("@effect/io/Effect").Effect<R | R2, E | E2, import("@fp-ts/data/Chunk").Chunk<A2>>;
43
+ //# sourceMappingURL=rateLimit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rateLimit.d.ts","sourceRoot":"","sources":["../../_src/lib/rateLimit.ts"],"names":[],"mappings":";;;;;;;;;;;;;AASA,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,UAClD,UAAU,mHAazB;;;;;;;;;;AAWD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,UACtD,SAAS,mHAYxB;;;;;;AAMD,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC9C,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC1E,YAAY,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WAE7C,SAAS,CAAC,CAAC,+FAM3B;;;;;;AAMD,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC1C,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC/E,YAAY,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WAE7C,SAAS,CAAC,CAAC,+FAM3B;;;;;;AA2BD,wBAAgB,cAAc,CAC5B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,GAAG,gUAeP"}