equipped 5.2.8 → 5.3.0-alpha.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 (779) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/README.md +362 -34
  3. package/dist/cjs/cache/adapters/in-memory/index.cjs +824 -0
  4. package/dist/cjs/cache/adapters/in-memory/index.cjs.map +1 -0
  5. package/dist/cjs/cache/adapters/in-memory/index.min.cjs +4 -0
  6. package/dist/cjs/cache/adapters/in-memory/index.min.cjs.map +1 -0
  7. package/dist/cjs/cache/adapters/redis/index.cjs +844 -0
  8. package/dist/cjs/cache/adapters/redis/index.cjs.map +1 -0
  9. package/dist/cjs/cache/adapters/redis/index.min.cjs +4 -0
  10. package/dist/cjs/cache/adapters/redis/index.min.cjs.map +1 -0
  11. package/dist/cjs/cache/index.cjs +602 -4
  12. package/dist/cjs/cache/index.cjs.map +1 -1
  13. package/dist/cjs/cache/index.min.cjs +3 -1
  14. package/dist/cjs/cache/index.min.cjs.map +1 -1
  15. package/dist/cjs/dbs/adapters/mongodb/index.cjs +1314 -0
  16. package/dist/cjs/dbs/adapters/mongodb/index.cjs.map +1 -0
  17. package/dist/cjs/dbs/adapters/mongodb/index.min.cjs +4 -0
  18. package/dist/cjs/dbs/adapters/mongodb/index.min.cjs.map +1 -0
  19. package/dist/cjs/dbs/index.cjs +965 -6
  20. package/dist/cjs/dbs/index.cjs.map +1 -1
  21. package/dist/cjs/dbs/index.min.cjs +3 -1
  22. package/dist/cjs/dbs/index.min.cjs.map +1 -1
  23. package/dist/cjs/errors/index.cjs +127 -8
  24. package/dist/cjs/errors/index.cjs.map +1 -1
  25. package/dist/cjs/errors/index.min.cjs +1 -1
  26. package/dist/cjs/errors/index.min.cjs.map +1 -1
  27. package/dist/cjs/events/adapters/kafka/index.cjs +845 -0
  28. package/dist/cjs/events/adapters/kafka/index.cjs.map +1 -0
  29. package/dist/cjs/events/adapters/kafka/index.min.cjs +4 -0
  30. package/dist/cjs/events/adapters/kafka/index.min.cjs.map +1 -0
  31. package/dist/cjs/events/adapters/rabbitmq/index.cjs +836 -0
  32. package/dist/cjs/events/adapters/rabbitmq/index.cjs.map +1 -0
  33. package/dist/cjs/events/adapters/rabbitmq/index.min.cjs +4 -0
  34. package/dist/cjs/events/adapters/rabbitmq/index.min.cjs.map +1 -0
  35. package/dist/cjs/events/index.cjs +33 -4
  36. package/dist/cjs/events/index.cjs.map +1 -1
  37. package/dist/cjs/events/index.min.cjs +1 -1
  38. package/dist/cjs/events/index.min.cjs.map +1 -1
  39. package/dist/cjs/index.cjs +588 -1
  40. package/dist/cjs/index.cjs.map +1 -1
  41. package/dist/cjs/index.min.cjs +3 -1
  42. package/dist/cjs/index.min.cjs.map +1 -1
  43. package/dist/cjs/instance/index.cjs +514 -64
  44. package/dist/cjs/instance/index.cjs.map +1 -1
  45. package/dist/cjs/instance/index.min.cjs +3 -3
  46. package/dist/cjs/instance/index.min.cjs.map +1 -1
  47. package/dist/cjs/jobs/adapters/redis/index.cjs +979 -0
  48. package/dist/cjs/jobs/adapters/redis/index.cjs.map +1 -0
  49. package/dist/cjs/jobs/adapters/redis/index.min.cjs +4 -0
  50. package/dist/cjs/jobs/adapters/redis/index.min.cjs.map +1 -0
  51. package/dist/cjs/jobs/index.cjs +55 -2
  52. package/dist/cjs/jobs/index.cjs.map +1 -1
  53. package/dist/cjs/jobs/index.min.cjs +1 -1
  54. package/dist/cjs/jobs/index.min.cjs.map +1 -1
  55. package/dist/cjs/orm/adapters/in-memory/index.cjs +2551 -0
  56. package/dist/cjs/orm/adapters/in-memory/index.cjs.map +1 -0
  57. package/dist/cjs/orm/adapters/in-memory/index.min.cjs +4 -0
  58. package/dist/cjs/orm/adapters/in-memory/index.min.cjs.map +1 -0
  59. package/dist/cjs/orm/adapters/json/index.cjs +3518 -0
  60. package/dist/cjs/orm/adapters/json/index.cjs.map +1 -0
  61. package/dist/cjs/orm/adapters/json/index.min.cjs +4 -0
  62. package/dist/cjs/orm/adapters/json/index.min.cjs.map +1 -0
  63. package/dist/cjs/orm/adapters/mongodb/index.cjs +3299 -0
  64. package/dist/cjs/orm/adapters/mongodb/index.cjs.map +1 -0
  65. package/dist/cjs/orm/adapters/mongodb/index.min.cjs +4 -0
  66. package/dist/cjs/orm/adapters/mongodb/index.min.cjs.map +1 -0
  67. package/dist/cjs/orm/adapters/postgresql/index.cjs +4114 -0
  68. package/dist/cjs/orm/adapters/postgresql/index.cjs.map +1 -0
  69. package/dist/cjs/orm/adapters/postgresql/index.min.cjs +49 -0
  70. package/dist/cjs/orm/adapters/postgresql/index.min.cjs.map +1 -0
  71. package/dist/cjs/orm/index.cjs +9216 -0
  72. package/dist/cjs/orm/index.cjs.map +1 -0
  73. package/dist/cjs/orm/index.min.cjs +4 -0
  74. package/dist/cjs/orm/index.min.cjs.map +1 -0
  75. package/dist/cjs/server/adapters/express/index.cjs +1705 -0
  76. package/dist/cjs/server/adapters/express/index.cjs.map +1 -0
  77. package/dist/cjs/server/adapters/express/index.min.cjs +32 -0
  78. package/dist/cjs/server/adapters/express/index.min.cjs.map +1 -0
  79. package/dist/cjs/server/adapters/fastify/index.cjs +1709 -0
  80. package/dist/cjs/server/adapters/fastify/index.cjs.map +1 -0
  81. package/dist/cjs/server/adapters/fastify/index.min.cjs +32 -0
  82. package/dist/cjs/server/adapters/fastify/index.min.cjs.map +1 -0
  83. package/dist/cjs/server/index.cjs +1600 -9
  84. package/dist/cjs/server/index.cjs.map +1 -1
  85. package/dist/cjs/server/index.min.cjs +31 -1
  86. package/dist/cjs/server/index.min.cjs.map +1 -1
  87. package/dist/cjs/types/index.cjs +18 -1
  88. package/dist/cjs/types/index.cjs.map +1 -1
  89. package/dist/cjs/types/index.min.cjs +1 -1
  90. package/dist/cjs/types/index.min.cjs.map +1 -1
  91. package/dist/cjs/utilities/index.cjs +862 -7
  92. package/dist/cjs/utilities/index.cjs.map +1 -1
  93. package/dist/cjs/utilities/index.min.cjs +3 -1
  94. package/dist/cjs/utilities/index.min.cjs.map +1 -1
  95. package/dist/cjs/validations/index.cjs +679 -10
  96. package/dist/cjs/validations/index.cjs.map +1 -1
  97. package/dist/cjs/validations/index.min.cjs +3 -1
  98. package/dist/cjs/validations/index.min.cjs.map +1 -1
  99. package/dist/esm/cache/adapters/in-memory/index.min.mjs +2 -0
  100. package/dist/esm/cache/adapters/in-memory/index.min.mjs.map +1 -0
  101. package/dist/esm/cache/adapters/in-memory/index.mjs +93 -0
  102. package/dist/esm/cache/adapters/in-memory/index.mjs.map +1 -0
  103. package/dist/esm/cache/adapters/redis/index.min.mjs +2 -0
  104. package/dist/esm/cache/adapters/redis/index.mjs +13 -0
  105. package/dist/esm/cache/index.min.mjs +1 -1
  106. package/dist/esm/cache/index.min.mjs.map +1 -1
  107. package/dist/esm/cache/index.mjs +9 -4
  108. package/dist/esm/cache/index.mjs.map +1 -1
  109. package/dist/esm/chunk-2TCFNKRZ.mjs +1824 -0
  110. package/dist/esm/chunk-2TCFNKRZ.mjs.map +1 -0
  111. package/dist/esm/chunk-6DW4GW3R.min.mjs +2 -0
  112. package/dist/esm/chunk-6DW4GW3R.min.mjs.map +1 -0
  113. package/dist/esm/chunk-6SB5M4XH.mjs +795 -0
  114. package/dist/esm/chunk-6SB5M4XH.mjs.map +1 -0
  115. package/dist/esm/chunk-AQY7QVYI.min.mjs +2 -0
  116. package/dist/esm/chunk-AUKXL4EA.min.mjs +2 -0
  117. package/dist/esm/chunk-AUKXL4EA.min.mjs.map +1 -0
  118. package/dist/esm/chunk-BJNIUCPT.min.mjs +2 -0
  119. package/dist/esm/chunk-BJNIUCPT.min.mjs.map +1 -0
  120. package/dist/esm/chunk-DKPZJIIR.mjs +29 -0
  121. package/dist/esm/chunk-DKPZJIIR.mjs.map +1 -0
  122. package/dist/esm/chunk-DSUJ5FUL.min.mjs +2 -0
  123. package/dist/esm/chunk-DSUJ5FUL.min.mjs.map +1 -0
  124. package/dist/esm/chunk-ECBJ3NT3.min.mjs +2 -0
  125. package/dist/esm/chunk-ECBJ3NT3.min.mjs.map +1 -0
  126. package/dist/{types/events/types/kafka.js → esm/chunk-I4BB436E.mjs} +60 -37
  127. package/dist/esm/chunk-I4BB436E.mjs.map +1 -0
  128. package/dist/esm/chunk-IEBC3OWN.mjs +22 -0
  129. package/dist/esm/chunk-IEBC3OWN.mjs.map +1 -0
  130. package/dist/esm/chunk-J5LGTIGS.mjs +10 -0
  131. package/dist/esm/chunk-KW3PBDFD.mjs +53 -0
  132. package/dist/esm/chunk-KW3PBDFD.mjs.map +1 -0
  133. package/dist/esm/chunk-LTDVZJYJ.min.mjs +32 -0
  134. package/dist/esm/chunk-LTDVZJYJ.min.mjs.map +1 -0
  135. package/dist/esm/chunk-MYGAF2AC.min.mjs +2 -0
  136. package/dist/esm/chunk-MYGAF2AC.min.mjs.map +1 -0
  137. package/dist/esm/chunk-OXI6IKAM.min.mjs +2 -0
  138. package/dist/esm/chunk-OXI6IKAM.min.mjs.map +1 -0
  139. package/dist/esm/chunk-RIRBNBTC.mjs +113 -0
  140. package/dist/esm/chunk-RIRBNBTC.mjs.map +1 -0
  141. package/dist/esm/chunk-TWKHVLLT.mjs +1280 -0
  142. package/dist/esm/chunk-TWKHVLLT.mjs.map +1 -0
  143. package/dist/esm/chunk-VCCS7CAI.mjs +8 -0
  144. package/dist/esm/chunk-VCCS7CAI.mjs.map +1 -0
  145. package/dist/esm/chunk-WHIWTP2Z.min.mjs +2 -0
  146. package/dist/esm/chunk-WHIWTP2Z.min.mjs.map +1 -0
  147. package/dist/esm/chunk-YTHRK2PO.mjs +126 -0
  148. package/dist/esm/chunk-YTHRK2PO.mjs.map +1 -0
  149. package/dist/esm/chunk-YTM6ZURZ.min.mjs +2 -0
  150. package/dist/esm/chunk-YTM6ZURZ.min.mjs.map +1 -0
  151. package/dist/esm/dbs/adapters/mongodb/index.min.mjs +2 -0
  152. package/dist/esm/dbs/adapters/mongodb/index.min.mjs.map +1 -0
  153. package/dist/esm/dbs/adapters/mongodb/index.mjs +419 -0
  154. package/dist/esm/dbs/adapters/mongodb/index.mjs.map +1 -0
  155. package/dist/esm/dbs/index.min.mjs +1 -1
  156. package/dist/esm/dbs/index.min.mjs.map +1 -1
  157. package/dist/esm/dbs/index.mjs +22 -6
  158. package/dist/esm/dbs/index.mjs.map +1 -1
  159. package/dist/esm/errors/index.min.mjs +1 -1
  160. package/dist/esm/errors/index.min.mjs.map +1 -1
  161. package/dist/esm/errors/index.mjs +22 -8
  162. package/dist/esm/errors/index.mjs.map +1 -1
  163. package/dist/esm/events/adapters/kafka/index.min.mjs +2 -0
  164. package/dist/esm/events/adapters/kafka/index.min.mjs.map +1 -0
  165. package/dist/esm/events/adapters/kafka/index.mjs +12 -0
  166. package/dist/esm/events/adapters/kafka/index.mjs.map +1 -0
  167. package/dist/esm/events/adapters/rabbitmq/index.min.mjs +2 -0
  168. package/dist/esm/events/adapters/rabbitmq/index.min.mjs.map +1 -0
  169. package/dist/esm/events/adapters/rabbitmq/index.mjs +92 -0
  170. package/dist/esm/events/adapters/rabbitmq/index.mjs.map +1 -0
  171. package/dist/esm/events/index.min.mjs +1 -1
  172. package/dist/esm/events/index.min.mjs.map +1 -1
  173. package/dist/esm/events/index.mjs +7 -4
  174. package/dist/esm/events/index.mjs.map +1 -1
  175. package/dist/esm/index.min.mjs +1 -1
  176. package/dist/esm/index.min.mjs.map +1 -1
  177. package/dist/esm/index.mjs +8 -1
  178. package/dist/esm/index.mjs.map +1 -1
  179. package/dist/esm/instance/index.min.mjs +1 -3
  180. package/dist/esm/instance/index.min.mjs.map +1 -1
  181. package/dist/esm/instance/index.mjs +4 -132
  182. package/dist/esm/instance/index.mjs.map +1 -1
  183. package/dist/esm/introspection-GP3G26B6.min.mjs +2 -0
  184. package/dist/esm/introspection-GP3G26B6.min.mjs.map +1 -0
  185. package/dist/esm/introspection-Y7EXSYPD.mjs +10 -0
  186. package/dist/esm/introspection-Y7EXSYPD.mjs.map +1 -0
  187. package/dist/esm/jobs/adapters/redis/index.min.mjs +2 -0
  188. package/dist/esm/jobs/adapters/redis/index.min.mjs.map +1 -0
  189. package/dist/esm/jobs/{types/redis.mjs → adapters/redis/index.mjs} +71 -56
  190. package/dist/esm/jobs/adapters/redis/index.mjs.map +1 -0
  191. package/dist/esm/jobs/index.min.mjs +1 -1
  192. package/dist/esm/jobs/index.min.mjs.map +1 -1
  193. package/dist/esm/jobs/index.mjs +9 -2
  194. package/dist/esm/jobs/index.mjs.map +1 -1
  195. package/dist/esm/orm/adapters/in-memory/index.min.mjs +2 -0
  196. package/dist/esm/orm/adapters/in-memory/index.min.mjs.map +1 -0
  197. package/dist/esm/orm/adapters/in-memory/index.mjs +11 -0
  198. package/dist/esm/orm/adapters/in-memory/index.mjs.map +1 -0
  199. package/dist/esm/orm/adapters/json/index.min.mjs +2 -0
  200. package/dist/esm/orm/adapters/json/index.min.mjs.map +1 -0
  201. package/dist/esm/orm/adapters/json/index.mjs +980 -0
  202. package/dist/esm/orm/adapters/json/index.mjs.map +1 -0
  203. package/dist/esm/orm/adapters/mongodb/index.min.mjs +2 -0
  204. package/dist/esm/orm/adapters/mongodb/index.min.mjs.map +1 -0
  205. package/dist/esm/orm/adapters/mongodb/index.mjs +1539 -0
  206. package/dist/esm/orm/adapters/mongodb/index.mjs.map +1 -0
  207. package/dist/esm/orm/adapters/postgresql/index.min.mjs +47 -0
  208. package/dist/esm/orm/adapters/postgresql/index.min.mjs.map +1 -0
  209. package/dist/esm/orm/adapters/postgresql/index.mjs +2070 -0
  210. package/dist/esm/orm/adapters/postgresql/index.mjs.map +1 -0
  211. package/dist/esm/orm/index.min.mjs +2 -0
  212. package/dist/esm/orm/index.min.mjs.map +1 -0
  213. package/dist/esm/orm/index.mjs +7326 -0
  214. package/dist/esm/orm/index.mjs.map +1 -0
  215. package/dist/esm/server/adapters/express/index.min.mjs +2 -0
  216. package/dist/esm/server/adapters/express/index.min.mjs.map +1 -0
  217. package/dist/esm/server/adapters/express/index.mjs +126 -0
  218. package/dist/esm/server/adapters/express/index.mjs.map +1 -0
  219. package/dist/esm/server/adapters/fastify/index.min.mjs +2 -0
  220. package/dist/esm/server/adapters/fastify/index.min.mjs.map +1 -0
  221. package/dist/{types/server/impls/fastify.js → esm/server/adapters/fastify/index.mjs} +56 -45
  222. package/dist/esm/server/adapters/fastify/index.mjs.map +1 -0
  223. package/dist/esm/server/index.min.mjs +1 -1
  224. package/dist/esm/server/index.min.mjs.map +1 -1
  225. package/dist/esm/server/index.mjs +38 -9
  226. package/dist/esm/server/index.mjs.map +1 -1
  227. package/dist/esm/types/index.min.mjs +0 -1
  228. package/dist/esm/types/index.min.mjs.map +1 -1
  229. package/dist/esm/types/index.mjs +0 -1
  230. package/dist/esm/types/index.mjs.map +1 -1
  231. package/dist/esm/utilities/index.min.mjs +1 -1
  232. package/dist/esm/utilities/index.min.mjs.map +1 -1
  233. package/dist/esm/utilities/index.mjs +22 -9
  234. package/dist/esm/utilities/index.mjs.map +1 -1
  235. package/dist/esm/validations/index.min.mjs +1 -1
  236. package/dist/esm/validations/index.min.mjs.map +1 -1
  237. package/dist/esm/validations/index.mjs +8 -18
  238. package/dist/esm/validations/index.mjs.map +1 -1
  239. package/dist/types/adapter-Coap9ISX.d.ts +1435 -0
  240. package/dist/types/{fastify-DLPUK3vD.d.ts → base-3PpBAx1K.d.ts} +58 -143
  241. package/dist/types/cache/adapters/in-memory/index.d.ts +21 -0
  242. package/dist/types/cache/adapters/in-memory/index.js +92 -0
  243. package/dist/types/cache/adapters/redis/index.d.ts +73 -0
  244. package/dist/types/cache/adapters/redis/index.js +12 -0
  245. package/dist/types/cache/index.d.ts +2 -42
  246. package/dist/types/cache/index.js +9 -4
  247. package/dist/types/chunk-32DMHN3G.js +1823 -0
  248. package/dist/types/chunk-4LRJJSGG.js +112 -0
  249. package/dist/types/chunk-A2MRYMCA.js +1279 -0
  250. package/dist/types/chunk-H6JBLKX5.js +794 -0
  251. package/dist/{esm/events/types/kafka.mjs → types/chunk-IAHTILKJ.js} +59 -38
  252. package/dist/types/chunk-JZ2JTENY.js +125 -0
  253. package/dist/types/chunk-KZKFYO4V.js +7 -0
  254. package/dist/types/chunk-LN3A6R4Y.js +28 -0
  255. package/dist/types/chunk-LWUMIHL4.js +21 -0
  256. package/dist/types/chunk-MLKGABMK.js +9 -0
  257. package/dist/types/chunk-XOU2A2Y6.js +52 -0
  258. package/dist/types/{core-BrkNSwvc.d.ts → core-tNlIMH9Y.d.ts} +48 -38
  259. package/dist/types/dbs/adapters/mongodb/index.d.ts +43 -0
  260. package/dist/types/dbs/adapters/mongodb/index.js +418 -0
  261. package/dist/types/dbs/index.d.ts +14 -12
  262. package/dist/types/dbs/index.js +22 -6
  263. package/dist/types/equippedError-Cmo60Kn-.d.ts +8 -0
  264. package/dist/types/errors/index.d.ts +3 -3
  265. package/dist/types/errors/index.js +22 -8
  266. package/dist/types/events/adapters/kafka/index.d.ts +83 -0
  267. package/dist/types/events/adapters/kafka/index.js +11 -0
  268. package/dist/types/events/adapters/rabbitmq/index.d.ts +41 -0
  269. package/dist/types/events/adapters/rabbitmq/index.js +91 -0
  270. package/dist/types/events/index.d.ts +11 -11
  271. package/dist/types/events/index.js +7 -4
  272. package/dist/types/index.d.ts +2 -25
  273. package/dist/types/index.js +8 -1
  274. package/dist/types/instance/index.d.ts +12 -179
  275. package/dist/types/instance/index.js +4 -132
  276. package/dist/types/introspection-ZQCAW254.js +9 -0
  277. package/dist/types/jobs/adapters/redis/index.d.ts +93 -0
  278. package/dist/types/jobs/{types/redis.js → adapters/redis/index.js} +70 -55
  279. package/dist/types/jobs/index.d.ts +19 -35
  280. package/dist/types/jobs/index.js +9 -2
  281. package/dist/types/orm/adapters/in-memory/index.d.ts +92 -0
  282. package/dist/types/orm/adapters/in-memory/index.js +10 -0
  283. package/dist/types/orm/adapters/json/index.d.ts +72 -0
  284. package/dist/types/orm/adapters/json/index.js +979 -0
  285. package/dist/types/orm/adapters/mongodb/index.d.ts +74 -0
  286. package/dist/types/orm/adapters/mongodb/index.js +1538 -0
  287. package/dist/types/orm/adapters/postgresql/index.d.ts +112 -0
  288. package/dist/types/orm/adapters/postgresql/index.js +2069 -0
  289. package/dist/types/orm/index.d.ts +160 -0
  290. package/dist/types/orm/index.js +7325 -0
  291. package/dist/types/{requestError-C2PNWUrt.d.ts → requestError-DdaL8hc3.d.ts} +2 -8
  292. package/dist/types/server/adapters/express/index.d.ts +194 -0
  293. package/dist/types/server/adapters/express/index.js +125 -0
  294. package/dist/types/server/adapters/fastify/index.d.ts +219 -0
  295. package/dist/{esm/server/impls/fastify.mjs → types/server/adapters/fastify/index.js} +55 -46
  296. package/dist/types/server/index.d.ts +10 -11
  297. package/dist/types/server/index.js +38 -9
  298. package/dist/types/types/index.js +0 -1
  299. package/dist/types/utilities/index.d.ts +22 -9
  300. package/dist/types/utilities/index.js +22 -9
  301. package/dist/types/{validationError-Bw8OYv5s.d.ts → validationError-oigtHqBi.d.ts} +1 -1
  302. package/dist/types/validations/index.d.ts +3 -2
  303. package/dist/types/validations/index.js +8 -18
  304. package/package.json +154 -15
  305. package/dist/cjs/audit/events.cjs +0 -101
  306. package/dist/cjs/audit/events.cjs.map +0 -1
  307. package/dist/cjs/audit/events.min.cjs +0 -2
  308. package/dist/cjs/audit/events.min.cjs.map +0 -1
  309. package/dist/cjs/audit/index.cjs +0 -2
  310. package/dist/cjs/audit/index.cjs.map +0 -1
  311. package/dist/cjs/audit/index.min.cjs +0 -2
  312. package/dist/cjs/audit/index.min.cjs.map +0 -1
  313. package/dist/cjs/cache/base.cjs +0 -6
  314. package/dist/cjs/cache/base.cjs.map +0 -1
  315. package/dist/cjs/cache/base.min.cjs +0 -2
  316. package/dist/cjs/cache/base.min.cjs.map +0 -1
  317. package/dist/cjs/cache/pipes.cjs +0 -16
  318. package/dist/cjs/cache/pipes.cjs.map +0 -1
  319. package/dist/cjs/cache/pipes.min.cjs +0 -2
  320. package/dist/cjs/cache/pipes.min.cjs.map +0 -1
  321. package/dist/cjs/cache/types/in-memory.cjs +0 -47
  322. package/dist/cjs/cache/types/in-memory.cjs.map +0 -1
  323. package/dist/cjs/cache/types/in-memory.min.cjs +0 -2
  324. package/dist/cjs/cache/types/in-memory.min.cjs.map +0 -1
  325. package/dist/cjs/cache/types/redis.cjs +0 -55
  326. package/dist/cjs/cache/types/redis.cjs.map +0 -1
  327. package/dist/cjs/cache/types/redis.min.cjs +0 -2
  328. package/dist/cjs/cache/types/redis.min.cjs.map +0 -1
  329. package/dist/cjs/dbs/base/changes.cjs +0 -36
  330. package/dist/cjs/dbs/base/changes.cjs.map +0 -1
  331. package/dist/cjs/dbs/base/changes.min.cjs +0 -2
  332. package/dist/cjs/dbs/base/changes.min.cjs.map +0 -1
  333. package/dist/cjs/dbs/base/core.cjs +0 -1
  334. package/dist/cjs/dbs/base/core.cjs.map +0 -1
  335. package/dist/cjs/dbs/base/core.min.cjs +0 -1
  336. package/dist/cjs/dbs/base/core.min.cjs.map +0 -1
  337. package/dist/cjs/dbs/base/db.cjs +0 -14
  338. package/dist/cjs/dbs/base/db.cjs.map +0 -1
  339. package/dist/cjs/dbs/base/db.min.cjs +0 -2
  340. package/dist/cjs/dbs/base/db.min.cjs.map +0 -1
  341. package/dist/cjs/dbs/base/types.cjs +0 -2
  342. package/dist/cjs/dbs/base/types.cjs.map +0 -1
  343. package/dist/cjs/dbs/base/types.min.cjs +0 -2
  344. package/dist/cjs/dbs/base/types.min.cjs.map +0 -1
  345. package/dist/cjs/dbs/mongo/changes.cjs +0 -81
  346. package/dist/cjs/dbs/mongo/changes.cjs.map +0 -1
  347. package/dist/cjs/dbs/mongo/changes.min.cjs +0 -2
  348. package/dist/cjs/dbs/mongo/changes.min.cjs.map +0 -1
  349. package/dist/cjs/dbs/mongo/db.cjs +0 -225
  350. package/dist/cjs/dbs/mongo/db.cjs.map +0 -1
  351. package/dist/cjs/dbs/mongo/db.min.cjs +0 -2
  352. package/dist/cjs/dbs/mongo/db.min.cjs.map +0 -1
  353. package/dist/cjs/dbs/mongo/query.cjs +0 -66
  354. package/dist/cjs/dbs/mongo/query.cjs.map +0 -1
  355. package/dist/cjs/dbs/mongo/query.min.cjs +0 -2
  356. package/dist/cjs/dbs/mongo/query.min.cjs.map +0 -1
  357. package/dist/cjs/dbs/pipes.cjs +0 -104
  358. package/dist/cjs/dbs/pipes.cjs.map +0 -1
  359. package/dist/cjs/dbs/pipes.min.cjs +0 -2
  360. package/dist/cjs/dbs/pipes.min.cjs.map +0 -1
  361. package/dist/cjs/errors/equippedError.cjs +0 -12
  362. package/dist/cjs/errors/equippedError.cjs.map +0 -1
  363. package/dist/cjs/errors/equippedError.min.cjs +0 -2
  364. package/dist/cjs/errors/equippedError.min.cjs.map +0 -1
  365. package/dist/cjs/errors/requestError.cjs +0 -12
  366. package/dist/cjs/errors/requestError.cjs.map +0 -1
  367. package/dist/cjs/errors/requestError.min.cjs +0 -2
  368. package/dist/cjs/errors/requestError.min.cjs.map +0 -1
  369. package/dist/cjs/errors/types/badRequestError.cjs +0 -12
  370. package/dist/cjs/errors/types/badRequestError.cjs.map +0 -1
  371. package/dist/cjs/errors/types/badRequestError.min.cjs +0 -2
  372. package/dist/cjs/errors/types/badRequestError.min.cjs.map +0 -1
  373. package/dist/cjs/errors/types/notAuthenticatedError.cjs +0 -12
  374. package/dist/cjs/errors/types/notAuthenticatedError.cjs.map +0 -1
  375. package/dist/cjs/errors/types/notAuthenticatedError.min.cjs +0 -2
  376. package/dist/cjs/errors/types/notAuthenticatedError.min.cjs.map +0 -1
  377. package/dist/cjs/errors/types/notAuthorizedError.cjs +0 -12
  378. package/dist/cjs/errors/types/notAuthorizedError.cjs.map +0 -1
  379. package/dist/cjs/errors/types/notAuthorizedError.min.cjs +0 -2
  380. package/dist/cjs/errors/types/notAuthorizedError.min.cjs.map +0 -1
  381. package/dist/cjs/errors/types/notFoundError.cjs +0 -12
  382. package/dist/cjs/errors/types/notFoundError.cjs.map +0 -1
  383. package/dist/cjs/errors/types/notFoundError.min.cjs +0 -2
  384. package/dist/cjs/errors/types/notFoundError.min.cjs.map +0 -1
  385. package/dist/cjs/errors/types/tokenExpired.cjs +0 -12
  386. package/dist/cjs/errors/types/tokenExpired.cjs.map +0 -1
  387. package/dist/cjs/errors/types/tokenExpired.min.cjs +0 -2
  388. package/dist/cjs/errors/types/tokenExpired.min.cjs.map +0 -1
  389. package/dist/cjs/errors/types/validationError.cjs +0 -16
  390. package/dist/cjs/errors/types/validationError.cjs.map +0 -1
  391. package/dist/cjs/errors/types/validationError.min.cjs +0 -2
  392. package/dist/cjs/errors/types/validationError.min.cjs.map +0 -1
  393. package/dist/cjs/events/base.cjs +0 -6
  394. package/dist/cjs/events/base.cjs.map +0 -1
  395. package/dist/cjs/events/base.min.cjs +0 -2
  396. package/dist/cjs/events/base.min.cjs.map +0 -1
  397. package/dist/cjs/events/pipes.cjs +0 -28
  398. package/dist/cjs/events/pipes.cjs.map +0 -1
  399. package/dist/cjs/events/pipes.min.cjs +0 -2
  400. package/dist/cjs/events/pipes.min.cjs.map +0 -1
  401. package/dist/cjs/events/types/kafka.cjs +0 -80
  402. package/dist/cjs/events/types/kafka.cjs.map +0 -1
  403. package/dist/cjs/events/types/kafka.min.cjs +0 -2
  404. package/dist/cjs/events/types/kafka.min.cjs.map +0 -1
  405. package/dist/cjs/events/types/rabbitmq.cjs +0 -54
  406. package/dist/cjs/events/types/rabbitmq.cjs.map +0 -1
  407. package/dist/cjs/events/types/rabbitmq.min.cjs +0 -2
  408. package/dist/cjs/events/types/rabbitmq.min.cjs.map +0 -1
  409. package/dist/cjs/instance/hooks.cjs +0 -26
  410. package/dist/cjs/instance/hooks.cjs.map +0 -1
  411. package/dist/cjs/instance/hooks.min.cjs +0 -2
  412. package/dist/cjs/instance/hooks.min.cjs.map +0 -1
  413. package/dist/cjs/instance/settings.cjs +0 -57
  414. package/dist/cjs/instance/settings.cjs.map +0 -1
  415. package/dist/cjs/instance/settings.min.cjs +0 -2
  416. package/dist/cjs/instance/settings.min.cjs.map +0 -1
  417. package/dist/cjs/jobs/pipes.cjs +0 -13
  418. package/dist/cjs/jobs/pipes.cjs.map +0 -1
  419. package/dist/cjs/jobs/pipes.min.cjs +0 -2
  420. package/dist/cjs/jobs/pipes.min.cjs.map +0 -1
  421. package/dist/cjs/jobs/types/redis.cjs +0 -106
  422. package/dist/cjs/jobs/types/redis.cjs.map +0 -1
  423. package/dist/cjs/jobs/types/redis.min.cjs +0 -2
  424. package/dist/cjs/jobs/types/redis.min.cjs.map +0 -1
  425. package/dist/cjs/server/impls/base.cjs +0 -211
  426. package/dist/cjs/server/impls/base.cjs.map +0 -1
  427. package/dist/cjs/server/impls/base.min.cjs +0 -2
  428. package/dist/cjs/server/impls/base.min.cjs.map +0 -1
  429. package/dist/cjs/server/impls/express.cjs +0 -111
  430. package/dist/cjs/server/impls/express.cjs.map +0 -1
  431. package/dist/cjs/server/impls/express.min.cjs +0 -2
  432. package/dist/cjs/server/impls/express.min.cjs.map +0 -1
  433. package/dist/cjs/server/impls/fastify.cjs +0 -121
  434. package/dist/cjs/server/impls/fastify.cjs.map +0 -1
  435. package/dist/cjs/server/impls/fastify.min.cjs +0 -2
  436. package/dist/cjs/server/impls/fastify.min.cjs.map +0 -1
  437. package/dist/cjs/server/middlewares/index.cjs +0 -2
  438. package/dist/cjs/server/middlewares/index.cjs.map +0 -1
  439. package/dist/cjs/server/middlewares/index.min.cjs +0 -2
  440. package/dist/cjs/server/middlewares/index.min.cjs.map +0 -1
  441. package/dist/cjs/server/middlewares/requireAuthUser.cjs +0 -22
  442. package/dist/cjs/server/middlewares/requireAuthUser.cjs.map +0 -1
  443. package/dist/cjs/server/middlewares/requireAuthUser.min.cjs +0 -2
  444. package/dist/cjs/server/middlewares/requireAuthUser.min.cjs.map +0 -1
  445. package/dist/cjs/server/openapi.cjs +0 -191
  446. package/dist/cjs/server/openapi.cjs.map +0 -1
  447. package/dist/cjs/server/openapi.min.cjs +0 -30
  448. package/dist/cjs/server/openapi.min.cjs.map +0 -1
  449. package/dist/cjs/server/pipes.cjs +0 -67
  450. package/dist/cjs/server/pipes.cjs.map +0 -1
  451. package/dist/cjs/server/pipes.min.cjs +0 -2
  452. package/dist/cjs/server/pipes.min.cjs.map +0 -1
  453. package/dist/cjs/server/requests-auth-methods/apiKeys.cjs +0 -21
  454. package/dist/cjs/server/requests-auth-methods/apiKeys.cjs.map +0 -1
  455. package/dist/cjs/server/requests-auth-methods/apiKeys.min.cjs +0 -2
  456. package/dist/cjs/server/requests-auth-methods/apiKeys.min.cjs.map +0 -1
  457. package/dist/cjs/server/requests-auth-methods/base.cjs +0 -20
  458. package/dist/cjs/server/requests-auth-methods/base.cjs.map +0 -1
  459. package/dist/cjs/server/requests-auth-methods/base.min.cjs +0 -2
  460. package/dist/cjs/server/requests-auth-methods/base.min.cjs.map +0 -1
  461. package/dist/cjs/server/requests-auth-methods/index.cjs +0 -4
  462. package/dist/cjs/server/requests-auth-methods/index.cjs.map +0 -1
  463. package/dist/cjs/server/requests-auth-methods/index.min.cjs +0 -2
  464. package/dist/cjs/server/requests-auth-methods/index.min.cjs.map +0 -1
  465. package/dist/cjs/server/requests-auth-methods/jwt.cjs +0 -78
  466. package/dist/cjs/server/requests-auth-methods/jwt.cjs.map +0 -1
  467. package/dist/cjs/server/requests-auth-methods/jwt.min.cjs +0 -2
  468. package/dist/cjs/server/requests-auth-methods/jwt.min.cjs.map +0 -1
  469. package/dist/cjs/server/requests.cjs +0 -80
  470. package/dist/cjs/server/requests.cjs.map +0 -1
  471. package/dist/cjs/server/requests.min.cjs +0 -2
  472. package/dist/cjs/server/requests.min.cjs.map +0 -1
  473. package/dist/cjs/server/routes.cjs +0 -74
  474. package/dist/cjs/server/routes.cjs.map +0 -1
  475. package/dist/cjs/server/routes.min.cjs +0 -2
  476. package/dist/cjs/server/routes.min.cjs.map +0 -1
  477. package/dist/cjs/server/sockets.cjs +0 -126
  478. package/dist/cjs/server/sockets.cjs.map +0 -1
  479. package/dist/cjs/server/sockets.min.cjs +0 -2
  480. package/dist/cjs/server/sockets.min.cjs.map +0 -1
  481. package/dist/cjs/server/types.cjs +0 -34
  482. package/dist/cjs/server/types.cjs.map +0 -1
  483. package/dist/cjs/server/types.min.cjs +0 -2
  484. package/dist/cjs/server/types.min.cjs.map +0 -1
  485. package/dist/cjs/types/overrides.cjs +0 -1
  486. package/dist/cjs/types/overrides.cjs.map +0 -1
  487. package/dist/cjs/types/overrides.min.cjs +0 -1
  488. package/dist/cjs/types/overrides.min.cjs.map +0 -1
  489. package/dist/cjs/utilities/authProviders.cjs +0 -53
  490. package/dist/cjs/utilities/authProviders.cjs.map +0 -1
  491. package/dist/cjs/utilities/authProviders.min.cjs +0 -2
  492. package/dist/cjs/utilities/authProviders.min.cjs.map +0 -1
  493. package/dist/cjs/utilities/hash.cjs +0 -17
  494. package/dist/cjs/utilities/hash.cjs.map +0 -1
  495. package/dist/cjs/utilities/hash.min.cjs +0 -2
  496. package/dist/cjs/utilities/hash.min.cjs.map +0 -1
  497. package/dist/cjs/utilities/json.cjs +0 -16
  498. package/dist/cjs/utilities/json.cjs.map +0 -1
  499. package/dist/cjs/utilities/json.min.cjs +0 -2
  500. package/dist/cjs/utilities/json.min.cjs.map +0 -1
  501. package/dist/cjs/utilities/media.cjs +0 -13
  502. package/dist/cjs/utilities/media.cjs.map +0 -1
  503. package/dist/cjs/utilities/media.min.cjs +0 -2
  504. package/dist/cjs/utilities/media.min.cjs.map +0 -1
  505. package/dist/cjs/utilities/random.cjs +0 -12
  506. package/dist/cjs/utilities/random.cjs.map +0 -1
  507. package/dist/cjs/utilities/random.min.cjs +0 -2
  508. package/dist/cjs/utilities/random.min.cjs.map +0 -1
  509. package/dist/cjs/utilities/retry.cjs +0 -14
  510. package/dist/cjs/utilities/retry.cjs.map +0 -1
  511. package/dist/cjs/utilities/retry.min.cjs +0 -2
  512. package/dist/cjs/utilities/retry.min.cjs.map +0 -1
  513. package/dist/cjs/validations/valleyed.cjs +0 -43
  514. package/dist/cjs/validations/valleyed.cjs.map +0 -1
  515. package/dist/cjs/validations/valleyed.min.cjs +0 -2
  516. package/dist/cjs/validations/valleyed.min.cjs.map +0 -1
  517. package/dist/esm/audit/events.min.mjs +0 -2
  518. package/dist/esm/audit/events.min.mjs.map +0 -1
  519. package/dist/esm/audit/events.mjs +0 -101
  520. package/dist/esm/audit/events.mjs.map +0 -1
  521. package/dist/esm/audit/index.min.mjs +0 -2
  522. package/dist/esm/audit/index.min.mjs.map +0 -1
  523. package/dist/esm/audit/index.mjs +0 -2
  524. package/dist/esm/audit/index.mjs.map +0 -1
  525. package/dist/esm/cache/base.min.mjs +0 -2
  526. package/dist/esm/cache/base.min.mjs.map +0 -1
  527. package/dist/esm/cache/base.mjs +0 -6
  528. package/dist/esm/cache/base.mjs.map +0 -1
  529. package/dist/esm/cache/pipes.min.mjs +0 -2
  530. package/dist/esm/cache/pipes.min.mjs.map +0 -1
  531. package/dist/esm/cache/pipes.mjs +0 -16
  532. package/dist/esm/cache/pipes.mjs.map +0 -1
  533. package/dist/esm/cache/types/in-memory.min.mjs +0 -2
  534. package/dist/esm/cache/types/in-memory.min.mjs.map +0 -1
  535. package/dist/esm/cache/types/in-memory.mjs +0 -47
  536. package/dist/esm/cache/types/in-memory.mjs.map +0 -1
  537. package/dist/esm/cache/types/redis.min.mjs +0 -2
  538. package/dist/esm/cache/types/redis.min.mjs.map +0 -1
  539. package/dist/esm/cache/types/redis.mjs +0 -55
  540. package/dist/esm/cache/types/redis.mjs.map +0 -1
  541. package/dist/esm/dbs/base/changes.min.mjs +0 -2
  542. package/dist/esm/dbs/base/changes.min.mjs.map +0 -1
  543. package/dist/esm/dbs/base/changes.mjs +0 -36
  544. package/dist/esm/dbs/base/changes.mjs.map +0 -1
  545. package/dist/esm/dbs/base/core.min.mjs +0 -1
  546. package/dist/esm/dbs/base/core.mjs +0 -1
  547. package/dist/esm/dbs/base/db.min.mjs +0 -2
  548. package/dist/esm/dbs/base/db.min.mjs.map +0 -1
  549. package/dist/esm/dbs/base/db.mjs +0 -14
  550. package/dist/esm/dbs/base/db.mjs.map +0 -1
  551. package/dist/esm/dbs/base/types.min.mjs +0 -2
  552. package/dist/esm/dbs/base/types.min.mjs.map +0 -1
  553. package/dist/esm/dbs/base/types.mjs +0 -2
  554. package/dist/esm/dbs/base/types.mjs.map +0 -1
  555. package/dist/esm/dbs/mongo/changes.min.mjs +0 -2
  556. package/dist/esm/dbs/mongo/changes.min.mjs.map +0 -1
  557. package/dist/esm/dbs/mongo/changes.mjs +0 -81
  558. package/dist/esm/dbs/mongo/changes.mjs.map +0 -1
  559. package/dist/esm/dbs/mongo/db.min.mjs +0 -2
  560. package/dist/esm/dbs/mongo/db.min.mjs.map +0 -1
  561. package/dist/esm/dbs/mongo/db.mjs +0 -225
  562. package/dist/esm/dbs/mongo/db.mjs.map +0 -1
  563. package/dist/esm/dbs/mongo/query.min.mjs +0 -2
  564. package/dist/esm/dbs/mongo/query.min.mjs.map +0 -1
  565. package/dist/esm/dbs/mongo/query.mjs +0 -66
  566. package/dist/esm/dbs/mongo/query.mjs.map +0 -1
  567. package/dist/esm/dbs/pipes.min.mjs +0 -2
  568. package/dist/esm/dbs/pipes.min.mjs.map +0 -1
  569. package/dist/esm/dbs/pipes.mjs +0 -104
  570. package/dist/esm/dbs/pipes.mjs.map +0 -1
  571. package/dist/esm/errors/equippedError.min.mjs +0 -2
  572. package/dist/esm/errors/equippedError.min.mjs.map +0 -1
  573. package/dist/esm/errors/equippedError.mjs +0 -12
  574. package/dist/esm/errors/equippedError.mjs.map +0 -1
  575. package/dist/esm/errors/requestError.min.mjs +0 -2
  576. package/dist/esm/errors/requestError.min.mjs.map +0 -1
  577. package/dist/esm/errors/requestError.mjs +0 -12
  578. package/dist/esm/errors/requestError.mjs.map +0 -1
  579. package/dist/esm/errors/types/badRequestError.min.mjs +0 -2
  580. package/dist/esm/errors/types/badRequestError.min.mjs.map +0 -1
  581. package/dist/esm/errors/types/badRequestError.mjs +0 -12
  582. package/dist/esm/errors/types/badRequestError.mjs.map +0 -1
  583. package/dist/esm/errors/types/notAuthenticatedError.min.mjs +0 -2
  584. package/dist/esm/errors/types/notAuthenticatedError.min.mjs.map +0 -1
  585. package/dist/esm/errors/types/notAuthenticatedError.mjs +0 -12
  586. package/dist/esm/errors/types/notAuthenticatedError.mjs.map +0 -1
  587. package/dist/esm/errors/types/notAuthorizedError.min.mjs +0 -2
  588. package/dist/esm/errors/types/notAuthorizedError.min.mjs.map +0 -1
  589. package/dist/esm/errors/types/notAuthorizedError.mjs +0 -12
  590. package/dist/esm/errors/types/notAuthorizedError.mjs.map +0 -1
  591. package/dist/esm/errors/types/notFoundError.min.mjs +0 -2
  592. package/dist/esm/errors/types/notFoundError.min.mjs.map +0 -1
  593. package/dist/esm/errors/types/notFoundError.mjs +0 -12
  594. package/dist/esm/errors/types/notFoundError.mjs.map +0 -1
  595. package/dist/esm/errors/types/tokenExpired.min.mjs +0 -2
  596. package/dist/esm/errors/types/tokenExpired.min.mjs.map +0 -1
  597. package/dist/esm/errors/types/tokenExpired.mjs +0 -12
  598. package/dist/esm/errors/types/tokenExpired.mjs.map +0 -1
  599. package/dist/esm/errors/types/validationError.min.mjs +0 -2
  600. package/dist/esm/errors/types/validationError.min.mjs.map +0 -1
  601. package/dist/esm/errors/types/validationError.mjs +0 -16
  602. package/dist/esm/errors/types/validationError.mjs.map +0 -1
  603. package/dist/esm/events/base.min.mjs +0 -2
  604. package/dist/esm/events/base.min.mjs.map +0 -1
  605. package/dist/esm/events/base.mjs +0 -6
  606. package/dist/esm/events/base.mjs.map +0 -1
  607. package/dist/esm/events/pipes.min.mjs +0 -2
  608. package/dist/esm/events/pipes.min.mjs.map +0 -1
  609. package/dist/esm/events/pipes.mjs +0 -28
  610. package/dist/esm/events/pipes.mjs.map +0 -1
  611. package/dist/esm/events/types/kafka.min.mjs +0 -2
  612. package/dist/esm/events/types/kafka.min.mjs.map +0 -1
  613. package/dist/esm/events/types/kafka.mjs.map +0 -1
  614. package/dist/esm/events/types/rabbitmq.min.mjs +0 -2
  615. package/dist/esm/events/types/rabbitmq.min.mjs.map +0 -1
  616. package/dist/esm/events/types/rabbitmq.mjs +0 -54
  617. package/dist/esm/events/types/rabbitmq.mjs.map +0 -1
  618. package/dist/esm/instance/hooks.min.mjs +0 -2
  619. package/dist/esm/instance/hooks.min.mjs.map +0 -1
  620. package/dist/esm/instance/hooks.mjs +0 -26
  621. package/dist/esm/instance/hooks.mjs.map +0 -1
  622. package/dist/esm/instance/settings.min.mjs +0 -2
  623. package/dist/esm/instance/settings.min.mjs.map +0 -1
  624. package/dist/esm/instance/settings.mjs +0 -57
  625. package/dist/esm/instance/settings.mjs.map +0 -1
  626. package/dist/esm/jobs/pipes.min.mjs +0 -2
  627. package/dist/esm/jobs/pipes.min.mjs.map +0 -1
  628. package/dist/esm/jobs/pipes.mjs +0 -13
  629. package/dist/esm/jobs/pipes.mjs.map +0 -1
  630. package/dist/esm/jobs/types/redis.min.mjs +0 -2
  631. package/dist/esm/jobs/types/redis.min.mjs.map +0 -1
  632. package/dist/esm/jobs/types/redis.mjs.map +0 -1
  633. package/dist/esm/server/impls/base.min.mjs +0 -2
  634. package/dist/esm/server/impls/base.min.mjs.map +0 -1
  635. package/dist/esm/server/impls/base.mjs +0 -211
  636. package/dist/esm/server/impls/base.mjs.map +0 -1
  637. package/dist/esm/server/impls/express.min.mjs +0 -2
  638. package/dist/esm/server/impls/express.min.mjs.map +0 -1
  639. package/dist/esm/server/impls/express.mjs +0 -111
  640. package/dist/esm/server/impls/express.mjs.map +0 -1
  641. package/dist/esm/server/impls/fastify.min.mjs +0 -2
  642. package/dist/esm/server/impls/fastify.min.mjs.map +0 -1
  643. package/dist/esm/server/impls/fastify.mjs.map +0 -1
  644. package/dist/esm/server/middlewares/index.min.mjs +0 -2
  645. package/dist/esm/server/middlewares/index.min.mjs.map +0 -1
  646. package/dist/esm/server/middlewares/index.mjs +0 -2
  647. package/dist/esm/server/middlewares/index.mjs.map +0 -1
  648. package/dist/esm/server/middlewares/requireAuthUser.min.mjs +0 -2
  649. package/dist/esm/server/middlewares/requireAuthUser.min.mjs.map +0 -1
  650. package/dist/esm/server/middlewares/requireAuthUser.mjs +0 -22
  651. package/dist/esm/server/middlewares/requireAuthUser.mjs.map +0 -1
  652. package/dist/esm/server/openapi.min.mjs +0 -30
  653. package/dist/esm/server/openapi.min.mjs.map +0 -1
  654. package/dist/esm/server/openapi.mjs +0 -191
  655. package/dist/esm/server/openapi.mjs.map +0 -1
  656. package/dist/esm/server/pipes.min.mjs +0 -2
  657. package/dist/esm/server/pipes.min.mjs.map +0 -1
  658. package/dist/esm/server/pipes.mjs +0 -67
  659. package/dist/esm/server/pipes.mjs.map +0 -1
  660. package/dist/esm/server/requests-auth-methods/apiKeys.min.mjs +0 -2
  661. package/dist/esm/server/requests-auth-methods/apiKeys.min.mjs.map +0 -1
  662. package/dist/esm/server/requests-auth-methods/apiKeys.mjs +0 -21
  663. package/dist/esm/server/requests-auth-methods/apiKeys.mjs.map +0 -1
  664. package/dist/esm/server/requests-auth-methods/base.min.mjs +0 -2
  665. package/dist/esm/server/requests-auth-methods/base.min.mjs.map +0 -1
  666. package/dist/esm/server/requests-auth-methods/base.mjs +0 -20
  667. package/dist/esm/server/requests-auth-methods/base.mjs.map +0 -1
  668. package/dist/esm/server/requests-auth-methods/index.min.mjs +0 -2
  669. package/dist/esm/server/requests-auth-methods/index.min.mjs.map +0 -1
  670. package/dist/esm/server/requests-auth-methods/index.mjs +0 -4
  671. package/dist/esm/server/requests-auth-methods/index.mjs.map +0 -1
  672. package/dist/esm/server/requests-auth-methods/jwt.min.mjs +0 -2
  673. package/dist/esm/server/requests-auth-methods/jwt.min.mjs.map +0 -1
  674. package/dist/esm/server/requests-auth-methods/jwt.mjs +0 -78
  675. package/dist/esm/server/requests-auth-methods/jwt.mjs.map +0 -1
  676. package/dist/esm/server/requests.min.mjs +0 -2
  677. package/dist/esm/server/requests.min.mjs.map +0 -1
  678. package/dist/esm/server/requests.mjs +0 -80
  679. package/dist/esm/server/requests.mjs.map +0 -1
  680. package/dist/esm/server/routes.min.mjs +0 -2
  681. package/dist/esm/server/routes.min.mjs.map +0 -1
  682. package/dist/esm/server/routes.mjs +0 -74
  683. package/dist/esm/server/routes.mjs.map +0 -1
  684. package/dist/esm/server/sockets.min.mjs +0 -2
  685. package/dist/esm/server/sockets.min.mjs.map +0 -1
  686. package/dist/esm/server/sockets.mjs +0 -126
  687. package/dist/esm/server/sockets.mjs.map +0 -1
  688. package/dist/esm/server/types.min.mjs +0 -2
  689. package/dist/esm/server/types.min.mjs.map +0 -1
  690. package/dist/esm/server/types.mjs +0 -34
  691. package/dist/esm/server/types.mjs.map +0 -1
  692. package/dist/esm/types/overrides.min.mjs +0 -1
  693. package/dist/esm/types/overrides.mjs +0 -1
  694. package/dist/esm/utilities/authProviders.min.mjs +0 -2
  695. package/dist/esm/utilities/authProviders.min.mjs.map +0 -1
  696. package/dist/esm/utilities/authProviders.mjs +0 -53
  697. package/dist/esm/utilities/authProviders.mjs.map +0 -1
  698. package/dist/esm/utilities/hash.min.mjs +0 -2
  699. package/dist/esm/utilities/hash.min.mjs.map +0 -1
  700. package/dist/esm/utilities/hash.mjs +0 -17
  701. package/dist/esm/utilities/hash.mjs.map +0 -1
  702. package/dist/esm/utilities/json.min.mjs +0 -2
  703. package/dist/esm/utilities/json.min.mjs.map +0 -1
  704. package/dist/esm/utilities/json.mjs +0 -16
  705. package/dist/esm/utilities/json.mjs.map +0 -1
  706. package/dist/esm/utilities/media.min.mjs +0 -2
  707. package/dist/esm/utilities/media.min.mjs.map +0 -1
  708. package/dist/esm/utilities/media.mjs +0 -13
  709. package/dist/esm/utilities/media.mjs.map +0 -1
  710. package/dist/esm/utilities/random.min.mjs +0 -2
  711. package/dist/esm/utilities/random.min.mjs.map +0 -1
  712. package/dist/esm/utilities/random.mjs +0 -12
  713. package/dist/esm/utilities/random.mjs.map +0 -1
  714. package/dist/esm/utilities/retry.min.mjs +0 -2
  715. package/dist/esm/utilities/retry.min.mjs.map +0 -1
  716. package/dist/esm/utilities/retry.mjs +0 -14
  717. package/dist/esm/utilities/retry.mjs.map +0 -1
  718. package/dist/esm/validations/valleyed.min.mjs +0 -2
  719. package/dist/esm/validations/valleyed.min.mjs.map +0 -1
  720. package/dist/esm/validations/valleyed.mjs +0 -43
  721. package/dist/esm/validations/valleyed.mjs.map +0 -1
  722. package/dist/types/audit/events.js +0 -100
  723. package/dist/types/audit/index.d.ts +0 -44
  724. package/dist/types/audit/index.js +0 -1
  725. package/dist/types/cache/base.js +0 -5
  726. package/dist/types/cache/pipes.js +0 -15
  727. package/dist/types/cache/types/in-memory.js +0 -46
  728. package/dist/types/cache/types/redis.js +0 -54
  729. package/dist/types/db-C8YY1yTO.d.ts +0 -14
  730. package/dist/types/db-Dj1SGto0.d.ts +0 -24
  731. package/dist/types/dbs/base/changes.js +0 -35
  732. package/dist/types/dbs/base/core.js +0 -0
  733. package/dist/types/dbs/base/db.js +0 -13
  734. package/dist/types/dbs/base/types.js +0 -1
  735. package/dist/types/dbs/mongo/changes.js +0 -80
  736. package/dist/types/dbs/mongo/db.js +0 -224
  737. package/dist/types/dbs/mongo/query.js +0 -65
  738. package/dist/types/dbs/pipes.js +0 -103
  739. package/dist/types/errors/equippedError.js +0 -11
  740. package/dist/types/errors/requestError.js +0 -11
  741. package/dist/types/errors/types/badRequestError.js +0 -11
  742. package/dist/types/errors/types/notAuthenticatedError.js +0 -11
  743. package/dist/types/errors/types/notAuthorizedError.js +0 -11
  744. package/dist/types/errors/types/notFoundError.js +0 -11
  745. package/dist/types/errors/types/tokenExpired.js +0 -11
  746. package/dist/types/errors/types/validationError.js +0 -15
  747. package/dist/types/events/base.js +0 -5
  748. package/dist/types/events/pipes.js +0 -27
  749. package/dist/types/events/types/rabbitmq.js +0 -53
  750. package/dist/types/instance/hooks.js +0 -25
  751. package/dist/types/instance/settings.js +0 -56
  752. package/dist/types/jobs/pipes.js +0 -12
  753. package/dist/types/kafka-Cf-TUJgv.d.ts +0 -54
  754. package/dist/types/server/impls/base.js +0 -210
  755. package/dist/types/server/impls/express.js +0 -110
  756. package/dist/types/server/middlewares/index.js +0 -1
  757. package/dist/types/server/middlewares/requireAuthUser.js +0 -21
  758. package/dist/types/server/openapi.js +0 -190
  759. package/dist/types/server/pipes.js +0 -66
  760. package/dist/types/server/requests-auth-methods/apiKeys.js +0 -20
  761. package/dist/types/server/requests-auth-methods/base.js +0 -19
  762. package/dist/types/server/requests-auth-methods/index.js +0 -3
  763. package/dist/types/server/requests-auth-methods/jwt.js +0 -77
  764. package/dist/types/server/requests.js +0 -79
  765. package/dist/types/server/routes.js +0 -73
  766. package/dist/types/server/sockets.js +0 -125
  767. package/dist/types/server/types.js +0 -33
  768. package/dist/types/types/overrides.js +0 -0
  769. package/dist/types/utilities/authProviders.js +0 -52
  770. package/dist/types/utilities/hash.js +0 -16
  771. package/dist/types/utilities/json.js +0 -15
  772. package/dist/types/utilities/media.js +0 -12
  773. package/dist/types/utilities/random.js +0 -11
  774. package/dist/types/utilities/retry.js +0 -13
  775. package/dist/types/validations/valleyed.js +0 -42
  776. /package/dist/esm/{dbs/base/core.min.mjs.map → cache/adapters/redis/index.min.mjs.map} +0 -0
  777. /package/dist/esm/{dbs/base/core.mjs.map → cache/adapters/redis/index.mjs.map} +0 -0
  778. /package/dist/esm/{types/overrides.min.mjs.map → chunk-AQY7QVYI.min.mjs.map} +0 -0
  779. /package/dist/esm/{types/overrides.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
@@ -1,225 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _nodeasync_hooks = require('node:async_hooks');
2
-
3
-
4
-
5
-
6
-
7
- var _mongodb = require('mongodb');
8
- var _indexcjs = require('../../errors/index.cjs');
9
- var _indexcjs3 = require('../../instance/index.cjs');
10
- var _corecjs = require('../base/core.cjs'); var core = _interopRequireWildcard(_corecjs);
11
- var _dbcjs = require('../base/db.cjs');
12
- var _changescjs = require('./changes.cjs');
13
- var _querycjs = require('./query.cjs');
14
- const idKey = "_id";
15
- const sessionStore = new (0, _nodeasync_hooks.AsyncLocalStorage)(void 0);
16
- class MongoDb extends _dbcjs.Db {
17
- constructor(mongoConfig, dbConfig) {
18
- super(dbConfig);
19
- this.mongoConfig = mongoConfig;
20
- this.client = new (0, _mongodb.MongoClient)(mongoConfig.uri, { ignoreUndefined: true });
21
- _indexcjs3.Instance.on(
22
- "start",
23
- async () => {
24
- await this.client.connect();
25
- const grouped = this.#cols.reduce((acc, cur) => {
26
- if (!acc[cur.db]) acc[cur.db] = [];
27
- acc[cur.db].push(cur.col);
28
- return acc;
29
- }, {});
30
- const options = {
31
- changeStreamPreAndPostImages: { enabled: true }
32
- };
33
- await Promise.all(
34
- Object.entries(grouped).map(async ([dbName, colNames]) => {
35
- const db = this.client.db(dbName);
36
- const collections = await db.listCollections().toArray();
37
- return colNames.map(async (colName) => {
38
- const existing = collections.find((collection) => collection.name === colName);
39
- if (existing) {
40
- if (_optionalChain([existing, 'access', _ => _.options, 'optionalAccess', _2 => _2.changeStreamPreAndPostImages, 'optionalAccess', _3 => _3.enabled]) !== options.changeStreamPreAndPostImages.enabled)
41
- await db.command({ collMod: colName, ...options });
42
- } else await db.createCollection(colName, options);
43
- });
44
- })
45
- );
46
- },
47
- 3
48
- );
49
- _indexcjs3.Instance.on("close", async () => this.client.close(), 1);
50
- }
51
-
52
- #cols = [];
53
- async session(callback) {
54
- if (sessionStore.getStore()) return callback();
55
- const session = await this.client.startSession();
56
- return session.withTransaction(async () => sessionStore.run(session, callback));
57
- }
58
- id() {
59
- return new (0, _mongodb.ObjectId)();
60
- }
61
- use(config) {
62
- const db = this.getScopedDb(config.db);
63
- this.#cols.push({ db, col: config.col });
64
- return this.#getTable(config, this.client.db(db).collection(config.col));
65
- }
66
- #getTable(config, collection) {
67
- async function transform(doc) {
68
- const docs = Array.isArray(doc) ? doc : [doc];
69
- const mapped = docs.map((d) => config.mapper(d));
70
- return Array.isArray(doc) ? mapped : mapped[0];
71
- }
72
- function prepInsertValue(value, id, now, skipUpdate) {
73
- const base = {
74
- [idKey]: id,
75
- ..._optionalChain([config, 'access', _4 => _4.options, 'optionalAccess', _5 => _5.skipAudit]) ? {} : {
76
- createdAt: now.getTime(),
77
- ...skipUpdate ? {} : { updatedAt: now.getTime() }
78
- }
79
- };
80
- return {
81
- ...value,
82
- ...base
83
- };
84
- }
85
- function prepUpdateValue(value, now, upsert = false) {
86
- return {
87
- ...value,
88
- $set: {
89
- ...value.$set,
90
- ...upsert || Object.keys(value).length > 0 && !_optionalChain([config, 'access', _6 => _6.options, 'optionalAccess', _7 => _7.skipAudit]) ? { updatedAt: now.getTime() } : {}
91
- }
92
- };
93
- }
94
- const dbThis = this;
95
- const table = {
96
- config,
97
- extras: { collection },
98
- query: async (params) => {
99
- const results = await _querycjs.parseMongodbQueryParams.call(void 0, collection, params);
100
- return {
101
- ...results,
102
- results: await transform(results.results)
103
- };
104
- },
105
- findMany: async (filter, options = {}) => {
106
- const sortArray = Array.isArray(options.sort) ? options.sort : options.sort ? [options.sort] : [];
107
- const sort = sortArray.map((p) => [p.field, p.desc ? "desc" : "asc"]);
108
- const docs = await collection.find(filter, {
109
- session: sessionStore.getStore(),
110
- limit: options.limit,
111
- sort
112
- }).toArray();
113
- return transform(docs);
114
- },
115
- findOne: async (filter) => {
116
- const result = await table.findMany(filter, { limit: 1 });
117
- return _nullishCoalesce(result.at(0), () => ( null));
118
- },
119
- findById: async (id) => {
120
- const result = await table.findOne({ [idKey]: id });
121
- return result;
122
- },
123
- insertMany: async (values, options = {}) => {
124
- const now = _nullishCoalesce(_optionalChain([options, 'access', _8 => _8.getTime, 'optionalCall', _9 => _9()]), () => ( /* @__PURE__ */ new Date()));
125
- const payload = values.map((value, i) => prepInsertValue(value, _nullishCoalesce(_optionalChain([options, 'access', _10 => _10.makeId, 'optionalCall', _11 => _11(i)]), () => ( new (0, _mongodb.ObjectId)().toString())), now));
126
- await collection.insertMany(payload, { session: sessionStore.getStore() });
127
- const insertedData = await Promise.all(payload.map(async (data) => await table.findById(data[idKey])));
128
- return insertedData.filter((value) => !!value);
129
- },
130
- insertOne: async (values, options = {}) => {
131
- const result = await table.insertMany([values], options);
132
- return result[0];
133
- },
134
- updateMany: async (filter, values, options = {}) => {
135
- const now = _nullishCoalesce(_optionalChain([options, 'access', _12 => _12.getTime, 'optionalCall', _13 => _13()]), () => ( /* @__PURE__ */ new Date()));
136
- const session = sessionStore.getStore();
137
- const data = await collection.find(filter, { session, projection: { [idKey]: 1 } }).toArray();
138
- const ids = data.map((doc) => doc[idKey]);
139
- const filterUpd = { [idKey]: { $in: ids } };
140
- await collection.updateMany(filterUpd, prepUpdateValue(values, now), { session });
141
- return table.findMany(filterUpd);
142
- },
143
- updateOne: async (filter, values, options = {}) => {
144
- const now = _nullishCoalesce(_optionalChain([options, 'access', _14 => _14.getTime, 'optionalCall', _15 => _15()]), () => ( /* @__PURE__ */ new Date()));
145
- const doc = await collection.findOneAndUpdate(filter, prepUpdateValue(values, now), {
146
- returnDocument: "after",
147
- session: sessionStore.getStore()
148
- });
149
- return doc ? transform(doc) : null;
150
- },
151
- updateById: async (id, values, options = {}) => {
152
- const result = await table.updateOne({ [idKey]: id }, values, options);
153
- return result;
154
- },
155
- upsertOne: async (filter, values, options = {}) => {
156
- const now = _nullishCoalesce(_optionalChain([options, 'access', _16 => _16.getTime, 'optionalCall', _17 => _17()]), () => ( /* @__PURE__ */ new Date()));
157
- const doc = await collection.findOneAndUpdate(
158
- filter,
159
- {
160
- ...prepUpdateValue("update" in values ? values.update : {}, now, true),
161
- // @ts-expect-error fighting ts
162
- $setOnInsert: prepInsertValue(values.insert, _nullishCoalesce(_optionalChain([options, 'access', _18 => _18.makeId, 'optionalCall', _19 => _19()]), () => ( new (0, _mongodb.ObjectId)().toString())), now, true)
163
- },
164
- { returnDocument: "after", session: sessionStore.getStore(), upsert: true }
165
- );
166
- return transform(doc);
167
- },
168
- deleteMany: async (filter, options = {}) => {
169
- const docs = await table.findMany(filter, options);
170
- await collection.deleteMany(filter, { session: sessionStore.getStore() });
171
- return docs;
172
- },
173
- deleteOne: async (filter) => {
174
- const doc = await collection.findOneAndDelete(filter, { session: sessionStore.getStore() });
175
- return doc ? transform(doc) : null;
176
- },
177
- deleteById: async (id) => {
178
- const result = await table.deleteOne({ [idKey]: id });
179
- return result;
180
- },
181
- bulkWrite: async (operations, options = {}) => {
182
- const bulk = collection.initializeUnorderedBulkOp({ session: sessionStore.getStore() });
183
- const now = _nullishCoalesce(_optionalChain([options, 'access', _20 => _20.getTime, 'optionalCall', _21 => _21()]), () => ( /* @__PURE__ */ new Date()));
184
- operations.forEach((operation, i) => {
185
- switch (operation.op) {
186
- case "insert":
187
- bulk.insert(prepInsertValue(operation.value, _nullishCoalesce(_optionalChain([operation, 'access', _22 => _22.makeId, 'optionalCall', _23 => _23(i)]), () => ( new (0, _mongodb.ObjectId)().toString())), now));
188
- break;
189
- case "delete":
190
- bulk.find(operation.filter).delete();
191
- break;
192
- case "update":
193
- bulk.find(operation.filter).update(prepUpdateValue(operation.value, now));
194
- break;
195
- case "upsert":
196
- bulk.find(operation.filter).upsert().update({
197
- ...prepUpdateValue("update" in operation ? operation.update : {}, now, true),
198
- $setOnInsert: prepInsertValue(
199
- operation.insert,
200
- _nullishCoalesce(_optionalChain([operation, 'access', _24 => _24.makeId, 'optionalCall', _25 => _25(i)]), () => ( new (0, _mongodb.ObjectId)().toString())),
201
- now,
202
- true
203
- )
204
- });
205
- break;
206
- default:
207
- throw new (0, _indexcjs.EquippedError)(`Unknown bulkWrite operation`, { operation });
208
- }
209
- });
210
- if (!bulk.length) return;
211
- await bulk.execute({ session: sessionStore.getStore() });
212
- },
213
- watch(callbacks) {
214
- if (!dbThis.config.changes)
215
- _indexcjs3.Instance.crash(new (0, _indexcjs.EquippedError)("Db changes are not enabled in the configuration.", { config }));
216
- return new (0, _changescjs.MongoDbChange)(dbThis.mongoConfig, dbThis.config.changes, collection, callbacks, config.mapper);
217
- }
218
- };
219
- return table;
220
- }
221
- }
222
-
223
-
224
- exports.MongoDb = MongoDb;
225
- //# sourceMappingURL=db.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/dbs/mongo/db.ts","/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/db.cjs"],"names":[],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/db.cjs","sourcesContent":["import { AsyncLocalStorage } from 'node:async_hooks'\n\nimport {\n\tClientSession,\n\tCollection,\n\ttype CollectionInfo,\n\tMongoClient,\n\tObjectId,\n\ttype OptionalUnlessRequiredId,\n\ttype SortDirection,\n\ttype WithId,\n} from 'mongodb'\n\nimport { EquippedError } from '../../errors'\nimport { Instance } from '../../instance'\nimport * as core from '../base/core'\nimport { Db } from '../base/db'\nimport type { DbConfig } from '../base/types'\nimport type { MongoDbConfig, QueryParams } from '../pipes'\nimport { MongoDbChange } from './changes'\nimport { parseMongodbQueryParams } from './query'\n\nconst idKey = '_id'\ntype IdType = { _id: string }\n\nconst sessionStore = new AsyncLocalStorage<ClientSession | undefined>(undefined)\n\nexport class MongoDb extends Db<{ _id: string }> {\n\tclient: MongoClient\n\t#cols: { db: string; col: string }[] = []\n\n\tconstructor(\n\t\tprivate mongoConfig: MongoDbConfig,\n\t\tdbConfig: DbConfig,\n\t) {\n\t\tsuper(dbConfig)\n\t\tthis.client = new MongoClient(mongoConfig.uri, { ignoreUndefined: true })\n\t\tInstance.on(\n\t\t\t'start',\n\t\t\tasync () => {\n\t\t\t\tawait this.client.connect()\n\n\t\t\t\tconst grouped = this.#cols.reduce<Record<string, string[]>>((acc, cur) => {\n\t\t\t\t\tif (!acc[cur.db]) acc[cur.db] = []\n\t\t\t\t\tacc[cur.db].push(cur.col)\n\t\t\t\t\treturn acc\n\t\t\t\t}, {})\n\n\t\t\t\tconst options = {\n\t\t\t\t\tchangeStreamPreAndPostImages: { enabled: true },\n\t\t\t\t}\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tObject.entries(grouped).map(async ([dbName, colNames]) => {\n\t\t\t\t\t\tconst db = this.client.db(dbName)\n\t\t\t\t\t\tconst collections = await db.listCollections<CollectionInfo>().toArray()\n\t\t\t\t\t\treturn colNames.map(async (colName) => {\n\t\t\t\t\t\t\tconst existing = collections.find((collection) => collection.name === colName)\n\t\t\t\t\t\t\tif (existing) {\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\texisting.options?.changeStreamPreAndPostImages?.enabled !== options.changeStreamPreAndPostImages.enabled\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\tawait db.command({ collMod: colName, ...options })\n\t\t\t\t\t\t\t} else await db.createCollection(colName, options)\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t},\n\t\t\t3,\n\t\t)\n\t\tInstance.on('close', async () => this.client.close(), 1)\n\t}\n\n\tasync session<T>(callback: () => Promise<T>) {\n\t\tif (sessionStore.getStore()) return callback()\n\t\tconst session = await this.client.startSession()\n\t\treturn session.withTransaction(async () => sessionStore.run(session, callback))\n\t}\n\n\tid() {\n\t\treturn new ObjectId()\n\t}\n\n\tuse<Model extends core.Model<{ _id: string }>, Entity extends core.Entity>(config: core.Config<Model, Entity>) {\n\t\tconst db = this.getScopedDb(config.db)\n\t\tthis.#cols.push({ db, col: config.col })\n\t\treturn this.#getTable(config, this.client.db(db).collection<Model>(config.col))\n\t}\n\n\t#getTable<Model extends core.Model<IdType>, Entity extends core.Entity>(\n\t\tconfig: core.Config<Model, Entity>,\n\t\tcollection: Collection<Model>,\n\t) {\n\t\ttype WI = Model | WithId<Model>\n\t\tasync function transform(doc: WI): Promise<Entity>\n\t\t// eslint-disable-next-line no-redeclare\n\t\tasync function transform(doc: WI[]): Promise<Entity[]>\n\t\t// eslint-disable-next-line no-redeclare\n\t\tasync function transform(doc: WI | WI[]) {\n\t\t\tconst docs = Array.isArray(doc) ? doc : [doc]\n\t\t\tconst mapped = docs.map((d) => config.mapper(d as Model))\n\t\t\treturn Array.isArray(doc) ? mapped : mapped[0]\n\t\t}\n\n\t\tfunction prepInsertValue(value: core.CreateInput<Model>, id: string, now: Date, skipUpdate?: boolean) {\n\t\t\tconst base: core.Model<IdType> = {\n\t\t\t\t[idKey]: id,\n\t\t\t\t...(config.options?.skipAudit\n\t\t\t\t\t? {}\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tcreatedAt: now.getTime(),\n\t\t\t\t\t\t\t...(skipUpdate ? {} : { updatedAt: now.getTime() }),\n\t\t\t\t\t\t}),\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...value,\n\t\t\t\t...base,\n\t\t\t} as unknown as OptionalUnlessRequiredId<Model>\n\t\t}\n\n\t\tfunction prepUpdateValue(value: core.UpdateInput<Model>, now: Date, upsert = false) {\n\t\t\treturn {\n\t\t\t\t...value,\n\t\t\t\t$set: {\n\t\t\t\t\t...value.$set,\n\t\t\t\t\t...(upsert || (Object.keys(value).length > 0 && !config.options?.skipAudit) ? { updatedAt: now.getTime() } : {}),\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tconst dbThis = this\n\n\t\tconst table: core.Table<IdType, Model, Entity, { collection: Collection<Model> }> = {\n\t\t\tconfig,\n\t\t\textras: { collection },\n\n\t\t\tquery: async (params: QueryParams) => {\n\t\t\t\tconst results = await parseMongodbQueryParams(collection, params)\n\t\t\t\treturn {\n\t\t\t\t\t...results,\n\t\t\t\t\tresults: (await transform(results.results as any)) as any,\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tfindMany: async (filter, options = {}) => {\n\t\t\t\tconst sortArray = Array.isArray(options.sort) ? options.sort : options.sort ? [options.sort] : []\n\t\t\t\tconst sort = sortArray.map((p) => [p.field, p.desc ? 'desc' : 'asc'] as [string, SortDirection])\n\t\t\t\tconst docs = await collection\n\t\t\t\t\t.find(filter, {\n\t\t\t\t\t\tsession: sessionStore.getStore(),\n\t\t\t\t\t\tlimit: options.limit,\n\t\t\t\t\t\tsort,\n\t\t\t\t\t})\n\t\t\t\t\t.toArray()\n\t\t\t\treturn transform(docs)\n\t\t\t},\n\n\t\t\tfindOne: async (filter) => {\n\t\t\t\tconst result = await table.findMany(filter, { limit: 1 })\n\t\t\t\treturn result.at(0) ?? null\n\t\t\t},\n\n\t\t\tfindById: async (id) => {\n\t\t\t\tconst result = await table.findOne({ [idKey]: id } as core.Filter<Model>)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tinsertMany: async (values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst payload = values.map((value, i) => prepInsertValue(value, options.makeId?.(i) ?? new ObjectId().toString(), now))\n\t\t\t\tawait collection.insertMany(payload, { session: sessionStore.getStore() })\n\n\t\t\t\tconst insertedData = await Promise.all(payload.map(async (data) => await table.findById(data[idKey] as any)))\n\t\t\t\treturn insertedData.filter((value) => !!value)\n\t\t\t},\n\n\t\t\tinsertOne: async (values, options = {}) => {\n\t\t\t\tconst result = await table.insertMany([values], options)\n\t\t\t\treturn result[0]\n\t\t\t},\n\n\t\t\tupdateMany: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst session = sessionStore.getStore()\n\t\t\t\tconst data = await collection.find(filter, { session, projection: { [idKey]: 1 } }).toArray()\n\t\t\t\tconst ids = data.map((doc) => doc[idKey])\n\t\t\t\tconst filterUpd = { [idKey]: { $in: ids } } as core.Filter<Model>\n\t\t\t\tawait collection.updateMany(filterUpd, prepUpdateValue(values, now), { session })\n\t\t\t\treturn table.findMany(filterUpd)\n\t\t\t},\n\n\t\t\tupdateOne: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst doc = await collection.findOneAndUpdate(filter, prepUpdateValue(values, now), {\n\t\t\t\t\treturnDocument: 'after',\n\t\t\t\t\tsession: sessionStore.getStore(),\n\t\t\t\t})\n\t\t\t\treturn doc ? transform(doc) : null\n\t\t\t},\n\n\t\t\tupdateById: async (id, values, options = {}) => {\n\t\t\t\tconst result = await table.updateOne({ [idKey]: id } as core.Filter<Model>, values, options)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tupsertOne: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\n\t\t\t\tconst doc = await collection.findOneAndUpdate(\n\t\t\t\t\tfilter,\n\t\t\t\t\t{\n\t\t\t\t\t\t...prepUpdateValue('update' in values ? values.update : {}, now, true),\n\t\t\t\t\t\t// @ts-expect-error fighting ts\n\t\t\t\t\t\t$setOnInsert: prepInsertValue(values.insert, options.makeId?.() ?? new ObjectId().toString(), now, true),\n\t\t\t\t\t},\n\t\t\t\t\t{ returnDocument: 'after', session: sessionStore.getStore(), upsert: true },\n\t\t\t\t)\n\n\t\t\t\treturn transform(doc)\n\t\t\t},\n\n\t\t\tdeleteMany: async (filter, options = {}) => {\n\t\t\t\tconst docs = await table.findMany(filter, options)\n\t\t\t\tawait collection.deleteMany(filter, { session: sessionStore.getStore() })\n\t\t\t\treturn docs\n\t\t\t},\n\n\t\t\tdeleteOne: async (filter) => {\n\t\t\t\tconst doc = await collection.findOneAndDelete(filter, { session: sessionStore.getStore() })\n\t\t\t\treturn doc ? transform(doc) : null\n\t\t\t},\n\n\t\t\tdeleteById: async (id) => {\n\t\t\t\tconst result = await table.deleteOne({ [idKey]: id } as core.Filter<Model>)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tbulkWrite: async (operations, options = {}) => {\n\t\t\t\tconst bulk = collection.initializeUnorderedBulkOp({ session: sessionStore.getStore() })\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\toperations.forEach((operation, i) => {\n\t\t\t\t\tswitch (operation.op) {\n\t\t\t\t\t\tcase 'insert':\n\t\t\t\t\t\t\tbulk.insert(prepInsertValue(operation.value, operation.makeId?.(i) ?? new ObjectId().toString(), now))\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'delete':\n\t\t\t\t\t\t\tbulk.find(operation.filter).delete()\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'update':\n\t\t\t\t\t\t\tbulk.find(operation.filter).update(prepUpdateValue(operation.value, now))\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'upsert':\n\t\t\t\t\t\t\tbulk.find(operation.filter)\n\t\t\t\t\t\t\t\t.upsert()\n\t\t\t\t\t\t\t\t.update({\n\t\t\t\t\t\t\t\t\t...prepUpdateValue('update' in operation ? operation.update : {}, now, true),\n\t\t\t\t\t\t\t\t\t$setOnInsert: prepInsertValue(\n\t\t\t\t\t\t\t\t\t\toperation.insert as any,\n\t\t\t\t\t\t\t\t\t\toperation.makeId?.(i) ?? new ObjectId().toString(),\n\t\t\t\t\t\t\t\t\t\tnow,\n\t\t\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tthrow new EquippedError(`Unknown bulkWrite operation`, { operation })\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tif (!bulk.length) return\n\t\t\t\tawait bulk.execute({ session: sessionStore.getStore() })\n\t\t\t},\n\n\t\t\twatch(callbacks) {\n\t\t\t\tif (!dbThis.config.changes)\n\t\t\t\t\tInstance.crash(new EquippedError('Db changes are not enabled in the configuration.', { config }))\n\t\t\t\treturn new MongoDbChange<Model, Entity>(dbThis.mongoConfig, dbThis.config.changes, collection, callbacks, config.mapper)\n\t\t\t},\n\t\t}\n\n\t\treturn table\n\t}\n}\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _nodeasync_hooks = require('node:async_hooks');var _mongodb = require('mongodb');var _indexmincjs = require('../../errors/index.min.cjs');var _indexmincjs3 = require('../../instance/index.min.cjs');require('../base/core');var _dbmincjs = require('../base/db.min.cjs');var _changesmincjs = require('./changes.min.cjs');var _querymincjs = require('./query.min.cjs');const p="_id",l=new (0, _nodeasync_hooks.AsyncLocalStorage)(void 0);class F extends _dbmincjs.Db{constructor(i,a){super(a);this.mongoConfig=i;this.client=new (0, _mongodb.MongoClient)(i.uri,{ignoreUndefined:!0}),_indexmincjs3.Instance.on("start",async()=>{await this.client.connect();const m=this.#e.reduce((d,u)=>(d[u.db]||(d[u.db]=[]),d[u.db].push(u.col),d),{}),y={changeStreamPreAndPostImages:{enabled:!0}};await Promise.all(Object.entries(m).map(async([d,u])=>{const o=this.client.db(d),e=await o.listCollections().toArray();return u.map(async t=>{const n=e.find(r=>r.name===t);n?_optionalChain([n, 'access', _ => _.options, 'optionalAccess', _2 => _2.changeStreamPreAndPostImages, 'optionalAccess', _3 => _3.enabled])!==y.changeStreamPreAndPostImages.enabled&&await o.command({collMod:t,...y}):await o.createCollection(t,y)})}))},3),_indexmincjs3.Instance.on("close",async()=>this.client.close(),1)}#e=[];async session(i){if(l.getStore())return i();const a=await this.client.startSession();return a.withTransaction(async()=>l.run(a,i))}id(){return new _mongodb.ObjectId}use(i){const a=this.getScopedDb(i.db);return this.#e.push({db:a,col:i.col}),this.#t(i,this.client.db(a).collection(i.col))}#t(i,a){async function m(e){const n=(Array.isArray(e)?e:[e]).map(r=>i.mapper(r));return Array.isArray(e)?n:n[0]}function y(e,t,n,r){const s={[p]:t,..._optionalChain([i, 'access', _4 => _4.options, 'optionalAccess', _5 => _5.skipAudit])?{}:{createdAt:n.getTime(),...r?{}:{updatedAt:n.getTime()}}};return{...e,...s}}function d(e,t,n=!1){return{...e,$set:{...e.$set,...n||Object.keys(e).length>0&&!_optionalChain([i, 'access', _6 => _6.options, 'optionalAccess', _7 => _7.skipAudit])?{updatedAt:t.getTime()}:{}}}}const u=this,o={config:i,extras:{collection:a},query:async e=>{const t=await _querymincjs.parseMongodbQueryParams.call(void 0, a,e);return{...t,results:await m(t.results)}},findMany:async(e,t={})=>{const r=(Array.isArray(t.sort)?t.sort:t.sort?[t.sort]:[]).map(c=>[c.field,c.desc?"desc":"asc"]),s=await a.find(e,{session:l.getStore(),limit:t.limit,sort:r}).toArray();return m(s)},findOne:async e=>await _asyncNullishCoalesce((await o.findMany(e,{limit:1})).at(0), async () => (null)),findById:async e=>await o.findOne({[p]:e}),insertMany:async(e,t={})=>{const n=_nullishCoalesce(_optionalChain([t, 'access', _8 => _8.getTime, 'optionalCall', _9 => _9()]), () => (new Date)),r=e.map((c,f)=>y(c,_nullishCoalesce(_optionalChain([t, 'access', _10 => _10.makeId, 'optionalCall', _11 => _11(f)]), () => (new (0, _mongodb.ObjectId)().toString())),n));return await a.insertMany(r,{session:l.getStore()}),(await Promise.all(r.map(async c=>await o.findById(c[p])))).filter(c=>!!c)},insertOne:async(e,t={})=>(await o.insertMany([e],t))[0],updateMany:async(e,t,n={})=>{const r=_nullishCoalesce(_optionalChain([n, 'access', _12 => _12.getTime, 'optionalCall', _13 => _13()]), () => (new Date)),s=l.getStore(),f=(await a.find(e,{session:s,projection:{[p]:1}}).toArray()).map(I=>I[p]),M={[p]:{$in:f}};return await a.updateMany(M,d(t,r),{session:s}),o.findMany(M)},updateOne:async(e,t,n={})=>{const r=_nullishCoalesce(_optionalChain([n, 'access', _14 => _14.getTime, 'optionalCall', _15 => _15()]), () => (new Date)),s=await a.findOneAndUpdate(e,d(t,r),{returnDocument:"after",session:l.getStore()});return s?m(s):null},updateById:async(e,t,n={})=>await o.updateOne({[p]:e},t,n),upsertOne:async(e,t,n={})=>{const r=_nullishCoalesce(_optionalChain([n, 'access', _16 => _16.getTime, 'optionalCall', _17 => _17()]), () => (new Date)),s=await a.findOneAndUpdate(e,{...d("update"in t?t.update:{},r,!0),$setOnInsert:y(t.insert,_nullishCoalesce(_optionalChain([n, 'access', _18 => _18.makeId, 'optionalCall', _19 => _19()]), () => (new (0, _mongodb.ObjectId)().toString())),r,!0)},{returnDocument:"after",session:l.getStore(),upsert:!0});return m(s)},deleteMany:async(e,t={})=>{const n=await o.findMany(e,t);return await a.deleteMany(e,{session:l.getStore()}),n},deleteOne:async e=>{const t=await a.findOneAndDelete(e,{session:l.getStore()});return t?m(t):null},deleteById:async e=>await o.deleteOne({[p]:e}),bulkWrite:async(e,t={})=>{const n=a.initializeUnorderedBulkOp({session:l.getStore()}),r=_nullishCoalesce(_optionalChain([t, 'access', _20 => _20.getTime, 'optionalCall', _21 => _21()]), () => (new Date));e.forEach((s,c)=>{switch(s.op){case"insert":n.insert(y(s.value,_nullishCoalesce(_optionalChain([s, 'access', _22 => _22.makeId, 'optionalCall', _23 => _23(c)]), () => (new (0, _mongodb.ObjectId)().toString())),r));break;case"delete":n.find(s.filter).delete();break;case"update":n.find(s.filter).update(d(s.value,r));break;case"upsert":n.find(s.filter).upsert().update({...d("update"in s?s.update:{},r,!0),$setOnInsert:y(s.insert,_nullishCoalesce(_optionalChain([s, 'access', _24 => _24.makeId, 'optionalCall', _25 => _25(c)]), () => (new (0, _mongodb.ObjectId)().toString())),r,!0)});break;default:throw new (0, _indexmincjs.EquippedError)("Unknown bulkWrite operation",{operation:s})}}),n.length&&await n.execute({session:l.getStore()})},watch(e){return u.config.changes||_indexmincjs3.Instance.crash(new (0, _indexmincjs.EquippedError)("Db changes are not enabled in the configuration.",{config:i})),new (0, _changesmincjs.MongoDbChange)(u.mongoConfig,u.config.changes,a,e,i.mapper)}};return o}}exports.MongoDb = F;
2
- //# sourceMappingURL=db.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/dbs/mongo/db.ts"],"names":["dbConfig","grouped","acc","cur","options","collections","db","colName","existing","Instance","#cols","sessionStore","callback","session","config","#getTable","transform","doc","mapped","d","prepInsertValue","value","id","now","base","skipUpdate","prepUpdateValue","upsert","dbThis","results","collection","params","filter","p","docs","sort","table","i","payload","data","idKey","values","ids","filterUpd","operation","bulk","ObjectId","EquippedError","callbacks"],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/db.min.cjs","sourcesContent":["import { AsyncLocalStorage } from 'node:async_hooks'\n\nimport {\n\tClientSession,\n\tCollection,\n\ttype CollectionInfo,\n\tMongoClient,\n\tObjectId,\n\ttype OptionalUnlessRequiredId,\n\ttype SortDirection,\n\ttype WithId,\n} from 'mongodb'\n\nimport { EquippedError } from '../../errors'\nimport { Instance } from '../../instance'\nimport * as core from '../base/core'\nimport { Db } from '../base/db'\nimport type { DbConfig } from '../base/types'\nimport type { MongoDbConfig, QueryParams } from '../pipes'\nimport { MongoDbChange } from './changes'\nimport { parseMongodbQueryParams } from './query'\n\nconst idKey = '_id'\ntype IdType = { _id: string }\n\nconst sessionStore = new AsyncLocalStorage<ClientSession | undefined>(undefined)\n\nexport class MongoDb extends Db<{ _id: string }> {\n\tclient: MongoClient\n\t#cols: { db: string; col: string }[] = []\n\n\tconstructor(\n\t\tprivate mongoConfig: MongoDbConfig,\n\t\tdbConfig: DbConfig,\n\t) {\n\t\tsuper(dbConfig)\n\t\tthis.client = new MongoClient(mongoConfig.uri, { ignoreUndefined: true })\n\t\tInstance.on(\n\t\t\t'start',\n\t\t\tasync () => {\n\t\t\t\tawait this.client.connect()\n\n\t\t\t\tconst grouped = this.#cols.reduce<Record<string, string[]>>((acc, cur) => {\n\t\t\t\t\tif (!acc[cur.db]) acc[cur.db] = []\n\t\t\t\t\tacc[cur.db].push(cur.col)\n\t\t\t\t\treturn acc\n\t\t\t\t}, {})\n\n\t\t\t\tconst options = {\n\t\t\t\t\tchangeStreamPreAndPostImages: { enabled: true },\n\t\t\t\t}\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tObject.entries(grouped).map(async ([dbName, colNames]) => {\n\t\t\t\t\t\tconst db = this.client.db(dbName)\n\t\t\t\t\t\tconst collections = await db.listCollections<CollectionInfo>().toArray()\n\t\t\t\t\t\treturn colNames.map(async (colName) => {\n\t\t\t\t\t\t\tconst existing = collections.find((collection) => collection.name === colName)\n\t\t\t\t\t\t\tif (existing) {\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\texisting.options?.changeStreamPreAndPostImages?.enabled !== options.changeStreamPreAndPostImages.enabled\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\tawait db.command({ collMod: colName, ...options })\n\t\t\t\t\t\t\t} else await db.createCollection(colName, options)\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t},\n\t\t\t3,\n\t\t)\n\t\tInstance.on('close', async () => this.client.close(), 1)\n\t}\n\n\tasync session<T>(callback: () => Promise<T>) {\n\t\tif (sessionStore.getStore()) return callback()\n\t\tconst session = await this.client.startSession()\n\t\treturn session.withTransaction(async () => sessionStore.run(session, callback))\n\t}\n\n\tid() {\n\t\treturn new ObjectId()\n\t}\n\n\tuse<Model extends core.Model<{ _id: string }>, Entity extends core.Entity>(config: core.Config<Model, Entity>) {\n\t\tconst db = this.getScopedDb(config.db)\n\t\tthis.#cols.push({ db, col: config.col })\n\t\treturn this.#getTable(config, this.client.db(db).collection<Model>(config.col))\n\t}\n\n\t#getTable<Model extends core.Model<IdType>, Entity extends core.Entity>(\n\t\tconfig: core.Config<Model, Entity>,\n\t\tcollection: Collection<Model>,\n\t) {\n\t\ttype WI = Model | WithId<Model>\n\t\tasync function transform(doc: WI): Promise<Entity>\n\t\t// eslint-disable-next-line no-redeclare\n\t\tasync function transform(doc: WI[]): Promise<Entity[]>\n\t\t// eslint-disable-next-line no-redeclare\n\t\tasync function transform(doc: WI | WI[]) {\n\t\t\tconst docs = Array.isArray(doc) ? doc : [doc]\n\t\t\tconst mapped = docs.map((d) => config.mapper(d as Model))\n\t\t\treturn Array.isArray(doc) ? mapped : mapped[0]\n\t\t}\n\n\t\tfunction prepInsertValue(value: core.CreateInput<Model>, id: string, now: Date, skipUpdate?: boolean) {\n\t\t\tconst base: core.Model<IdType> = {\n\t\t\t\t[idKey]: id,\n\t\t\t\t...(config.options?.skipAudit\n\t\t\t\t\t? {}\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tcreatedAt: now.getTime(),\n\t\t\t\t\t\t\t...(skipUpdate ? {} : { updatedAt: now.getTime() }),\n\t\t\t\t\t\t}),\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...value,\n\t\t\t\t...base,\n\t\t\t} as unknown as OptionalUnlessRequiredId<Model>\n\t\t}\n\n\t\tfunction prepUpdateValue(value: core.UpdateInput<Model>, now: Date, upsert = false) {\n\t\t\treturn {\n\t\t\t\t...value,\n\t\t\t\t$set: {\n\t\t\t\t\t...value.$set,\n\t\t\t\t\t...(upsert || (Object.keys(value).length > 0 && !config.options?.skipAudit) ? { updatedAt: now.getTime() } : {}),\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\n\t\tconst dbThis = this\n\n\t\tconst table: core.Table<IdType, Model, Entity, { collection: Collection<Model> }> = {\n\t\t\tconfig,\n\t\t\textras: { collection },\n\n\t\t\tquery: async (params: QueryParams) => {\n\t\t\t\tconst results = await parseMongodbQueryParams(collection, params)\n\t\t\t\treturn {\n\t\t\t\t\t...results,\n\t\t\t\t\tresults: (await transform(results.results as any)) as any,\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tfindMany: async (filter, options = {}) => {\n\t\t\t\tconst sortArray = Array.isArray(options.sort) ? options.sort : options.sort ? [options.sort] : []\n\t\t\t\tconst sort = sortArray.map((p) => [p.field, p.desc ? 'desc' : 'asc'] as [string, SortDirection])\n\t\t\t\tconst docs = await collection\n\t\t\t\t\t.find(filter, {\n\t\t\t\t\t\tsession: sessionStore.getStore(),\n\t\t\t\t\t\tlimit: options.limit,\n\t\t\t\t\t\tsort,\n\t\t\t\t\t})\n\t\t\t\t\t.toArray()\n\t\t\t\treturn transform(docs)\n\t\t\t},\n\n\t\t\tfindOne: async (filter) => {\n\t\t\t\tconst result = await table.findMany(filter, { limit: 1 })\n\t\t\t\treturn result.at(0) ?? null\n\t\t\t},\n\n\t\t\tfindById: async (id) => {\n\t\t\t\tconst result = await table.findOne({ [idKey]: id } as core.Filter<Model>)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tinsertMany: async (values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst payload = values.map((value, i) => prepInsertValue(value, options.makeId?.(i) ?? new ObjectId().toString(), now))\n\t\t\t\tawait collection.insertMany(payload, { session: sessionStore.getStore() })\n\n\t\t\t\tconst insertedData = await Promise.all(payload.map(async (data) => await table.findById(data[idKey] as any)))\n\t\t\t\treturn insertedData.filter((value) => !!value)\n\t\t\t},\n\n\t\t\tinsertOne: async (values, options = {}) => {\n\t\t\t\tconst result = await table.insertMany([values], options)\n\t\t\t\treturn result[0]\n\t\t\t},\n\n\t\t\tupdateMany: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst session = sessionStore.getStore()\n\t\t\t\tconst data = await collection.find(filter, { session, projection: { [idKey]: 1 } }).toArray()\n\t\t\t\tconst ids = data.map((doc) => doc[idKey])\n\t\t\t\tconst filterUpd = { [idKey]: { $in: ids } } as core.Filter<Model>\n\t\t\t\tawait collection.updateMany(filterUpd, prepUpdateValue(values, now), { session })\n\t\t\t\treturn table.findMany(filterUpd)\n\t\t\t},\n\n\t\t\tupdateOne: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\tconst doc = await collection.findOneAndUpdate(filter, prepUpdateValue(values, now), {\n\t\t\t\t\treturnDocument: 'after',\n\t\t\t\t\tsession: sessionStore.getStore(),\n\t\t\t\t})\n\t\t\t\treturn doc ? transform(doc) : null\n\t\t\t},\n\n\t\t\tupdateById: async (id, values, options = {}) => {\n\t\t\t\tconst result = await table.updateOne({ [idKey]: id } as core.Filter<Model>, values, options)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tupsertOne: async (filter, values, options = {}) => {\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\n\t\t\t\tconst doc = await collection.findOneAndUpdate(\n\t\t\t\t\tfilter,\n\t\t\t\t\t{\n\t\t\t\t\t\t...prepUpdateValue('update' in values ? values.update : {}, now, true),\n\t\t\t\t\t\t// @ts-expect-error fighting ts\n\t\t\t\t\t\t$setOnInsert: prepInsertValue(values.insert, options.makeId?.() ?? new ObjectId().toString(), now, true),\n\t\t\t\t\t},\n\t\t\t\t\t{ returnDocument: 'after', session: sessionStore.getStore(), upsert: true },\n\t\t\t\t)\n\n\t\t\t\treturn transform(doc)\n\t\t\t},\n\n\t\t\tdeleteMany: async (filter, options = {}) => {\n\t\t\t\tconst docs = await table.findMany(filter, options)\n\t\t\t\tawait collection.deleteMany(filter, { session: sessionStore.getStore() })\n\t\t\t\treturn docs\n\t\t\t},\n\n\t\t\tdeleteOne: async (filter) => {\n\t\t\t\tconst doc = await collection.findOneAndDelete(filter, { session: sessionStore.getStore() })\n\t\t\t\treturn doc ? transform(doc) : null\n\t\t\t},\n\n\t\t\tdeleteById: async (id) => {\n\t\t\t\tconst result = await table.deleteOne({ [idKey]: id } as core.Filter<Model>)\n\t\t\t\treturn result\n\t\t\t},\n\n\t\t\tbulkWrite: async (operations, options = {}) => {\n\t\t\t\tconst bulk = collection.initializeUnorderedBulkOp({ session: sessionStore.getStore() })\n\t\t\t\tconst now = options.getTime?.() ?? new Date()\n\t\t\t\toperations.forEach((operation, i) => {\n\t\t\t\t\tswitch (operation.op) {\n\t\t\t\t\t\tcase 'insert':\n\t\t\t\t\t\t\tbulk.insert(prepInsertValue(operation.value, operation.makeId?.(i) ?? new ObjectId().toString(), now))\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'delete':\n\t\t\t\t\t\t\tbulk.find(operation.filter).delete()\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'update':\n\t\t\t\t\t\t\tbulk.find(operation.filter).update(prepUpdateValue(operation.value, now))\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tcase 'upsert':\n\t\t\t\t\t\t\tbulk.find(operation.filter)\n\t\t\t\t\t\t\t\t.upsert()\n\t\t\t\t\t\t\t\t.update({\n\t\t\t\t\t\t\t\t\t...prepUpdateValue('update' in operation ? operation.update : {}, now, true),\n\t\t\t\t\t\t\t\t\t$setOnInsert: prepInsertValue(\n\t\t\t\t\t\t\t\t\t\toperation.insert as any,\n\t\t\t\t\t\t\t\t\t\toperation.makeId?.(i) ?? new ObjectId().toString(),\n\t\t\t\t\t\t\t\t\t\tnow,\n\t\t\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tthrow new EquippedError(`Unknown bulkWrite operation`, { operation })\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tif (!bulk.length) return\n\t\t\t\tawait bulk.execute({ session: sessionStore.getStore() })\n\t\t\t},\n\n\t\t\twatch(callbacks) {\n\t\t\t\tif (!dbThis.config.changes)\n\t\t\t\t\tInstance.crash(new EquippedError('Db changes are not enabled in the configuration.', { config }))\n\t\t\t\treturn new MongoDbChange<Model, Entity>(dbThis.mongoConfig, dbThis.config.changes, collection, callbacks, config.mapper)\n\t\t\t},\n\t\t}\n\n\t\treturn table\n\t}\n}\n"]}
@@ -1,66 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _mongodb = require('mongodb');
2
- var _corecjs = require('../base/core.cjs'); var core = _interopRequireWildcard(_corecjs);
3
- var _pipescjs = require('../pipes.cjs');
4
- const parseMongodbQueryParams = async (collection, params) => {
5
- const query = [];
6
- const where = buildWhereQuery(params.where, params.whereType);
7
- if (where) query.push(where);
8
- const auth = buildWhereQuery(params.auth, params.authType);
9
- if (auth) query.push(auth);
10
- if (params.search && params.search.fields.length > 0) {
11
- const search = params.search.fields.map((field) => ({
12
- [field]: {
13
- $regex: new RegExp(params.search.value, "i")
14
- }
15
- }));
16
- query.push({ $or: search });
17
- }
18
- const totalClause = {};
19
- if (query.length > 0) totalClause["$and"] = query;
20
- const sort = params.sort.map((p) => [p.field, p.desc ? "desc" : "asc"]);
21
- const all = _nullishCoalesce(params.all, () => ( false));
22
- const limit = params.limit;
23
- const page = params.page;
24
- const total = await collection.countDocuments(totalClause);
25
- let builtQuery = collection.find(totalClause);
26
- if (sort.length) builtQuery = builtQuery.sort(Object.fromEntries(sort));
27
- if (!all && limit) {
28
- builtQuery = builtQuery.limit(limit);
29
- if (page) builtQuery = builtQuery.skip((page - 1) * limit);
30
- }
31
- const results = await builtQuery.toArray();
32
- const start = 1;
33
- const last = Math.ceil(total / limit) || 1;
34
- const next = page >= last ? null : page + 1;
35
- const previous = page <= start ? null : page - 1;
36
- return {
37
- pages: { start, last, next, previous, current: page },
38
- docs: { limit, total, count: results.length },
39
- results
40
- };
41
- };
42
- function isWhereBlock(param) {
43
- return Object.values(_pipescjs.QueryKeys).includes(param.condition);
44
- }
45
- const buildWhereQuery = (params, key = _pipescjs.QueryKeys.and) => {
46
- const where = (Array.isArray(params) ? params : []).map((param) => {
47
- if (isWhereBlock(param)) return buildWhereQuery(param.value, param.condition);
48
- const { field } = param;
49
- const checkedField = field === "id" ? "_id" : _nullishCoalesce(field, () => ( ""));
50
- const checkedValue = param.value === void 0 ? "" : param.value;
51
- return {
52
- field: checkedField,
53
- value: checkedValue,
54
- condition: param.condition,
55
- isWhere: true
56
- };
57
- }).filter((c) => !!c).map((c) => {
58
- if (c.isWhere) return { [`${c.field}`]: { [`$${c.condition}`]: c.value } };
59
- else return c;
60
- });
61
- return where.length > 0 ? { [`$${key}`]: where } : null;
62
- };
63
-
64
-
65
- exports.parseMongodbQueryParams = parseMongodbQueryParams;
66
- //# sourceMappingURL=query.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/dbs/mongo/query.ts","/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/query.cjs"],"names":[],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/query.cjs","sourcesContent":["import { Collection } from 'mongodb'\n\nimport * as core from '../base/core'\nimport { QueryKeys, type QueryParams, type QueryResults, type QueryWhereBlock, type QueryWhereClause } from '../pipes'\n\nexport const parseMongodbQueryParams = async <Model extends core.Model<{ _id: string }>>(\n\tcollection: Collection<Model>,\n\tparams: QueryParams,\n): Promise<QueryResults<Model>> => {\n\t// Handle where/search clauses\n\tconst query = <ReturnType<typeof buildWhereQuery>[]>[]\n\tconst where = buildWhereQuery(params.where, params.whereType)\n\tif (where) query.push(where)\n\tconst auth = buildWhereQuery(params.auth, params.authType)\n\tif (auth) query.push(auth)\n\tif (params.search && params.search.fields.length > 0) {\n\t\tconst search = params.search.fields.map((field) => ({\n\t\t\t[field]: {\n\t\t\t\t$regex: new RegExp(params.search!.value, 'i'),\n\t\t\t},\n\t\t}))\n\t\tquery.push({ $or: search })\n\t}\n\tconst totalClause = {}\n\tif (query.length > 0) totalClause['$and'] = query\n\n\t// Handle sort clauses\n\tconst sort = params.sort.map((p) => [p.field, p.desc ? 'desc' : 'asc'])\n\n\t// Handle limit/offest clause\n\tconst all = params.all ?? false\n\tconst limit = params.limit\n\tconst page = params.page\n\n\tconst total = await collection.countDocuments(totalClause)\n\n\tlet builtQuery = collection.find(totalClause)\n\tif (sort.length) builtQuery = builtQuery.sort(Object.fromEntries(sort))\n\tif (!all && limit) {\n\t\tbuiltQuery = builtQuery.limit(limit)\n\t\tif (page) builtQuery = builtQuery.skip((page - 1) * limit)\n\t}\n\n\tconst results = await builtQuery.toArray()\n\tconst start = 1\n\tconst last = Math.ceil(total / limit) || 1\n\tconst next = page >= last ? null : page + 1\n\tconst previous = page <= start ? null : page - 1\n\n\treturn {\n\t\tpages: { start, last, next, previous, current: page },\n\t\tdocs: { limit, total, count: results.length },\n\t\tresults: results as any[],\n\t} satisfies QueryResults<Model>\n}\n\nfunction isWhereBlock(param: QueryWhereClause): param is QueryWhereBlock {\n\treturn Object.values(QueryKeys).includes(param.condition as QueryKeys)\n}\n\nconst buildWhereQuery = (params: QueryWhereClause[], key: QueryKeys = QueryKeys.and): Record<string, Record<string, any>> | null => {\n\tconst where = (Array.isArray(params) ? params : [])\n\t\t.map((param) => {\n\t\t\tif (isWhereBlock(param)) return buildWhereQuery(param.value, param.condition)\n\t\t\tconst { field } = param\n\t\t\tconst checkedField = field === 'id' ? '_id' : (field ?? '')\n\t\t\tconst checkedValue = param.value === undefined ? '' : param.value\n\t\t\treturn {\n\t\t\t\tfield: checkedField,\n\t\t\t\tvalue: checkedValue,\n\t\t\t\tcondition: param.condition,\n\t\t\t\tisWhere: true,\n\t\t\t}\n\t\t})\n\t\t.filter((c) => !!c)\n\t\t.map((c) => {\n\t\t\tif (c.isWhere) return { [`${c.field}`]: { [`$${c.condition}`]: c.value } }\n\t\t\telse return c\n\t\t})\n\n\treturn where.length > 0 ? { [`$${key}`]: where } : null\n}\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }require('mongodb');require('../base/core');var _pipesmincjs = require('../pipes.min.cjs');const C=async(s,t)=>{const r=[],e=y(t.where,t.whereType);e&&r.push(e);const l=y(t.auth,t.authType);if(l&&r.push(l),t.search&&t.search.fields.length>0){const d=t.search.fields.map($=>({[$]:{$regex:new RegExp(t.search.value,"i")}}));r.push({$or:d})}const i={};r.length>0&&(i.$and=r);const c=t.sort.map(d=>[d.field,d.desc?"desc":"asc"]),W=_nullishCoalesce(t.all, () => (!1)),u=t.limit,n=t.page,h=await s.countDocuments(i);let o=s.find(i);c.length&&(o=o.sort(Object.fromEntries(c))),!W&&u&&(o=o.limit(u),n&&(o=o.skip((n-1)*u)));const f=await o.toArray(),a=1,Q=Math.ceil(h/u)||1,p=n>=Q?null:n+1,v=n<=a?null:n-1;return{pages:{start:a,last:Q,next:p,previous:v,current:n},docs:{limit:u,total:h,count:f.length},results:f}};function w(s){return Object.values(_pipesmincjs.QueryKeys).includes(s.condition)}const y=(s,t=_pipesmincjs.QueryKeys.and)=>{const r=(Array.isArray(s)?s:[]).map(e=>{if(w(e))return y(e.value,e.condition);const{field:l}=e,i=l==="id"?"_id":_nullishCoalesce(l, () => ("")),c=e.value===void 0?"":e.value;return{field:i,value:c,condition:e.condition,isWhere:!0}}).filter(e=>!!e).map(e=>e.isWhere?{[`${e.field}`]:{[`$${e.condition}`]:e.value}}:e);return r.length>0?{[`$${t}`]:r}:null};exports.parseMongodbQueryParams = C;
2
- //# sourceMappingURL=query.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/dbs/mongo/query.ts"],"names":["collection","params","query","where","auth","buildWhereQuery","search","totalClause","sort","p","all","limit","page","total","builtQuery","results","next","last","previous","start","isWhereBlock","param","field","checkedValue","c"],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/mongo/query.min.cjs","sourcesContent":["import { Collection } from 'mongodb'\n\nimport * as core from '../base/core'\nimport { QueryKeys, type QueryParams, type QueryResults, type QueryWhereBlock, type QueryWhereClause } from '../pipes'\n\nexport const parseMongodbQueryParams = async <Model extends core.Model<{ _id: string }>>(\n\tcollection: Collection<Model>,\n\tparams: QueryParams,\n): Promise<QueryResults<Model>> => {\n\t// Handle where/search clauses\n\tconst query = <ReturnType<typeof buildWhereQuery>[]>[]\n\tconst where = buildWhereQuery(params.where, params.whereType)\n\tif (where) query.push(where)\n\tconst auth = buildWhereQuery(params.auth, params.authType)\n\tif (auth) query.push(auth)\n\tif (params.search && params.search.fields.length > 0) {\n\t\tconst search = params.search.fields.map((field) => ({\n\t\t\t[field]: {\n\t\t\t\t$regex: new RegExp(params.search!.value, 'i'),\n\t\t\t},\n\t\t}))\n\t\tquery.push({ $or: search })\n\t}\n\tconst totalClause = {}\n\tif (query.length > 0) totalClause['$and'] = query\n\n\t// Handle sort clauses\n\tconst sort = params.sort.map((p) => [p.field, p.desc ? 'desc' : 'asc'])\n\n\t// Handle limit/offest clause\n\tconst all = params.all ?? false\n\tconst limit = params.limit\n\tconst page = params.page\n\n\tconst total = await collection.countDocuments(totalClause)\n\n\tlet builtQuery = collection.find(totalClause)\n\tif (sort.length) builtQuery = builtQuery.sort(Object.fromEntries(sort))\n\tif (!all && limit) {\n\t\tbuiltQuery = builtQuery.limit(limit)\n\t\tif (page) builtQuery = builtQuery.skip((page - 1) * limit)\n\t}\n\n\tconst results = await builtQuery.toArray()\n\tconst start = 1\n\tconst last = Math.ceil(total / limit) || 1\n\tconst next = page >= last ? null : page + 1\n\tconst previous = page <= start ? null : page - 1\n\n\treturn {\n\t\tpages: { start, last, next, previous, current: page },\n\t\tdocs: { limit, total, count: results.length },\n\t\tresults: results as any[],\n\t} satisfies QueryResults<Model>\n}\n\nfunction isWhereBlock(param: QueryWhereClause): param is QueryWhereBlock {\n\treturn Object.values(QueryKeys).includes(param.condition as QueryKeys)\n}\n\nconst buildWhereQuery = (params: QueryWhereClause[], key: QueryKeys = QueryKeys.and): Record<string, Record<string, any>> | null => {\n\tconst where = (Array.isArray(params) ? params : [])\n\t\t.map((param) => {\n\t\t\tif (isWhereBlock(param)) return buildWhereQuery(param.value, param.condition)\n\t\t\tconst { field } = param\n\t\t\tconst checkedField = field === 'id' ? '_id' : (field ?? '')\n\t\t\tconst checkedValue = param.value === undefined ? '' : param.value\n\t\t\treturn {\n\t\t\t\tfield: checkedField,\n\t\t\t\tvalue: checkedValue,\n\t\t\t\tcondition: param.condition,\n\t\t\t\tisWhere: true,\n\t\t\t}\n\t\t})\n\t\t.filter((c) => !!c)\n\t\t.map((c) => {\n\t\t\tif (c.isWhere) return { [`${c.field}`]: { [`$${c.condition}`]: c.value } }\n\t\t\telse return c\n\t\t})\n\n\treturn where.length > 0 ? { [`$${key}`]: where } : null\n}\n"]}
@@ -1,104 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _valleyed = require('valleyed');
2
- var _indexcjs = require('../instance/index.cjs');
3
- var QueryKeys = /* @__PURE__ */ ((QueryKeys2) => {
4
- QueryKeys2["and"] = "and";
5
- QueryKeys2["or"] = "or";
6
- return QueryKeys2;
7
- })(QueryKeys || {});
8
- var Conditions = /* @__PURE__ */ ((Conditions2) => {
9
- Conditions2["lt"] = "lt";
10
- Conditions2["lte"] = "lte";
11
- Conditions2["gt"] = "gt";
12
- Conditions2["gte"] = "gte";
13
- Conditions2["eq"] = "eq";
14
- Conditions2["ne"] = "ne";
15
- Conditions2["in"] = "in";
16
- Conditions2["nin"] = "nin";
17
- Conditions2["exists"] = "exists";
18
- return Conditions2;
19
- })(Conditions || {});
20
- const queryKeys = _valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.in(["and" /* and */, "or" /* or */]), "and" /* and */), "and" /* and */);
21
- const queryWhere = _valleyed.v.object({
22
- field: _valleyed.v.string(),
23
- value: _valleyed.v.any(),
24
- condition: _valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.in(Object.values(Conditions)), "eq" /* eq */), "eq" /* eq */)
25
- });
26
- const queryWhereBlock = _valleyed.v.recursive(
27
- () => _valleyed.v.discriminate((d) => Object.values(QueryKeys).includes(d.condition) ? "block" : "regular", {
28
- block: _valleyed.v.object({
29
- condition: queryKeys,
30
- value: _valleyed.v.array(queryWhereBlock)
31
- }),
32
- regular: queryWhere
33
- }),
34
- "QueryWhereBlock"
35
- );
36
- const queryWhereClause = _valleyed.v.defaults(_valleyed.v.array(queryWhereBlock), []);
37
- function queryParamsPipe() {
38
- return _valleyed.v.meta(
39
- _valleyed.v.object({
40
- all: _valleyed.v.defaults(_valleyed.v.boolean(), false),
41
- limit: _valleyed.v.lazy(() => {
42
- const pagLimit = _indexcjs.Instance.get().settings.utils.paginationDefaultLimit;
43
- return _valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.number().pipe(_valleyed.v.lte(pagLimit)), pagLimit), pagLimit);
44
- }),
45
- page: _valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.number().pipe(_valleyed.v.gte(1)), 1), 1),
46
- search: _valleyed.v.defaults(
47
- _valleyed.v.nullish(
48
- _valleyed.v.object({
49
- value: _valleyed.v.string(),
50
- fields: _valleyed.v.array(_valleyed.v.string())
51
- })
52
- ),
53
- null
54
- ),
55
- sort: _valleyed.v.defaults(
56
- _valleyed.v.array(
57
- _valleyed.v.object({
58
- field: _valleyed.v.string(),
59
- desc: _valleyed.v.defaults(_valleyed.v.boolean(), false)
60
- })
61
- ),
62
- []
63
- ),
64
- whereType: queryKeys,
65
- where: queryWhereClause
66
- }).pipe((p) => ({ ...p, auth: [], authType: "and" /* and */ })),
67
- { title: "Query Params", $refId: "QueryParams" }
68
- );
69
- }
70
- function queryResultsPipe(model) {
71
- return _valleyed.v.object({
72
- pages: _valleyed.v.object({
73
- current: _valleyed.v.number(),
74
- start: _valleyed.v.number(),
75
- last: _valleyed.v.number(),
76
- previous: _valleyed.v.nullable(_valleyed.v.number()),
77
- next: _valleyed.v.nullable(_valleyed.v.number())
78
- }),
79
- docs: _valleyed.v.object({
80
- limit: _valleyed.v.number(),
81
- total: _valleyed.v.number(),
82
- count: _valleyed.v.number()
83
- }),
84
- results: _valleyed.v.array(model)
85
- });
86
- }
87
- function wrapQueryParams(params) {
88
- return _valleyed.v.assert(queryParamsPipe(), params);
89
- }
90
- const mongoDbConfigPipe = () => _valleyed.v.meta(
91
- _valleyed.v.object({
92
- uri: _valleyed.v.string()
93
- }),
94
- { title: "Mongodb Config", $refId: "MongodbConfig" }
95
- );
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
- exports.Conditions = Conditions; exports.QueryKeys = QueryKeys; exports.mongoDbConfigPipe = mongoDbConfigPipe; exports.queryParamsPipe = queryParamsPipe; exports.queryResultsPipe = queryResultsPipe; exports.wrapQueryParams = wrapQueryParams;
104
- //# sourceMappingURL=pipes.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/dbs/pipes.ts","/home/runner/work/equipped/equipped/dist/cjs/dbs/pipes.cjs"],"names":["QueryKeys","Conditions"],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/pipes.cjs","sourcesContent":["import { type ConditionalObjectKeys, type Pipe, type PipeInput, type PipeOutput, v } from 'valleyed'\n\nimport { Instance } from '../instance'\n\nexport enum QueryKeys {\n\tand = 'and',\n\tor = 'or',\n}\n\nexport enum Conditions {\n\tlt = 'lt',\n\tlte = 'lte',\n\tgt = 'gt',\n\tgte = 'gte',\n\teq = 'eq',\n\tne = 'ne',\n\tin = 'in',\n\tnin = 'nin',\n\texists = 'exists',\n}\n\nconst queryKeys = v.catch(v.defaults(v.in([QueryKeys.and, QueryKeys.or]), QueryKeys.and), QueryKeys.and)\nconst queryWhere = v.object({\n\tfield: v.string(),\n\tvalue: v.any(),\n\tcondition: v.catch(v.defaults(v.in(Object.values(Conditions)), Conditions.eq), Conditions.eq),\n})\nconst queryWhereBlock = v.recursive(\n\t() =>\n\t\tv.discriminate((d) => (Object.values(QueryKeys).includes(d.condition as any) ? 'block' : 'regular'), {\n\t\t\tblock: v.object({\n\t\t\t\tcondition: queryKeys,\n\t\t\t\tvalue: v.array(queryWhereBlock),\n\t\t\t}),\n\t\t\tregular: queryWhere,\n\t\t}),\n\t'QueryWhereBlock',\n) as Pipe<\n\t| {\n\t\t\tcondition: PipeInput<typeof queryKeys>\n\t\t\tvalue: PipeInput<typeof queryWhere>[]\n\t }\n\t| PipeInput<typeof queryWhere>,\n\t| {\n\t\t\tcondition: PipeOutput<typeof queryKeys>\n\t\t\tvalue: PipeOutput<typeof queryWhere>[]\n\t }\n\t| PipeOutput<typeof queryWhere>\n>\n\nconst queryWhereClause = v.defaults(v.array(queryWhereBlock), [])\n\nexport function queryParamsPipe() {\n\treturn v.meta(\n\t\tv\n\t\t\t.object({\n\t\t\t\tall: v.defaults(v.boolean(), false),\n\t\t\t\tlimit: v.lazy(() => {\n\t\t\t\t\tconst pagLimit = Instance.get().settings.utils.paginationDefaultLimit\n\t\t\t\t\treturn v.catch(v.defaults(v.number().pipe(v.lte(pagLimit)), pagLimit), pagLimit)\n\t\t\t\t}),\n\t\t\t\tpage: v.catch(v.defaults(v.number().pipe(v.gte(1)), 1), 1),\n\t\t\t\tsearch: v.defaults(\n\t\t\t\t\tv.nullish(\n\t\t\t\t\t\tv.object({\n\t\t\t\t\t\t\tvalue: v.string(),\n\t\t\t\t\t\t\tfields: v.array(v.string()),\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t\tnull,\n\t\t\t\t),\n\t\t\t\tsort: v.defaults(\n\t\t\t\t\tv.array(\n\t\t\t\t\t\tv.object({\n\t\t\t\t\t\t\tfield: v.string(),\n\t\t\t\t\t\t\tdesc: v.defaults(v.boolean(), false),\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t\t[],\n\t\t\t\t),\n\t\t\t\twhereType: queryKeys,\n\t\t\t\twhere: queryWhereClause,\n\t\t\t})\n\t\t\t.pipe((p) => ({ ...p, auth: <(typeof p)['where']>[], authType: QueryKeys.and })),\n\t\t{ title: 'Query Params', $refId: 'QueryParams' },\n\t)\n}\n\nexport function queryResultsPipe<T>(model: Pipe<any, T>) {\n\treturn v.object({\n\t\tpages: v.object({\n\t\t\tcurrent: v.number(),\n\t\t\tstart: v.number(),\n\t\t\tlast: v.number(),\n\t\t\tprevious: v.nullable(v.number()),\n\t\t\tnext: v.nullable(v.number()),\n\t\t}),\n\t\tdocs: v.object({\n\t\t\tlimit: v.number(),\n\t\t\ttotal: v.number(),\n\t\t\tcount: v.number(),\n\t\t}),\n\t\tresults: v.array(model),\n\t})\n}\n\nexport function wrapQueryParams(params: QueryParamsInput): QueryParams {\n\treturn v.assert(queryParamsPipe(), params)\n}\n\nexport type QueryParams = PipeOutput<ReturnType<typeof queryParamsPipe>>\nexport type QueryParamsInput = ConditionalObjectKeys<PipeInput<ReturnType<typeof queryParamsPipe>>>\nexport type QueryWhereClause = QueryParams['where'][number]\nexport type QueryWhere = Extract<QueryWhereClause, { field: string }>\nexport type QueryWhereBlock = Exclude<QueryWhereClause, { field: string }>\nexport type QueryResults<T> = PipeOutput<ReturnType<typeof queryResultsPipe<T>>>\n\nexport const mongoDbConfigPipe = () =>\n\tv.meta(\n\t\tv.object({\n\t\t\turi: v.string(),\n\t\t}),\n\t\t{ title: 'Mongodb Config', $refId: 'MongodbConfig' },\n\t)\n\nexport type MongoDbConfig = PipeOutput<ReturnType<typeof mongoDbConfigPipe>>\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _valleyed = require('valleyed');var _indexmincjs = require('../instance/index.min.cjs');var a=(u=>(u.and="and",u.or="or",u))(a||{}),n= exports.Conditions =(r=>(r.lt="lt",r.lte="lte",r.gt="gt",r.gte="gte",r.eq="eq",r.ne="ne",r.in="in",r.nin="nin",r.exists="exists",r))(n||{});const p=_valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.in(["and","or"]),"and"),"and"),i=_valleyed.v.object({field:_valleyed.v.string(),value:_valleyed.v.any(),condition:_valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.in(Object.values(n)),"eq"),"eq")}),o=_valleyed.v.recursive(()=>_valleyed.v.discriminate(t=>Object.values(a).includes(t.condition)?"block":"regular",{block:_valleyed.v.object({condition:p,value:_valleyed.v.array(o)}),regular:i}),"QueryWhereBlock"),s=_valleyed.v.defaults(_valleyed.v.array(o),[]);function l(){return _valleyed.v.meta(_valleyed.v.object({all:_valleyed.v.defaults(_valleyed.v.boolean(),!1),limit:_valleyed.v.lazy(()=>{const t=_indexmincjs.Instance.get().settings.utils.paginationDefaultLimit;return _valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.number().pipe(_valleyed.v.lte(t)),t),t)}),page:_valleyed.v.catch(_valleyed.v.defaults(_valleyed.v.number().pipe(_valleyed.v.gte(1)),1),1),search:_valleyed.v.defaults(_valleyed.v.nullish(_valleyed.v.object({value:_valleyed.v.string(),fields:_valleyed.v.array(_valleyed.v.string())})),null),sort:_valleyed.v.defaults(_valleyed.v.array(_valleyed.v.object({field:_valleyed.v.string(),desc:_valleyed.v.defaults(_valleyed.v.boolean(),!1)})),[]),whereType:p,where:s}).pipe(t=>({...t,auth:[],authType:"and"})),{title:"Query Params",$refId:"QueryParams"})}function m(t){return _valleyed.v.object({pages:_valleyed.v.object({current:_valleyed.v.number(),start:_valleyed.v.number(),last:_valleyed.v.number(),previous:_valleyed.v.nullable(_valleyed.v.number()),next:_valleyed.v.nullable(_valleyed.v.number())}),docs:_valleyed.v.object({limit:_valleyed.v.number(),total:_valleyed.v.number(),count:_valleyed.v.number()}),results:_valleyed.v.array(t)})}function b(t){return _valleyed.v.assert(l(),t)}const P=()=>_valleyed.v.meta(_valleyed.v.object({uri:_valleyed.v.string()}),{title:"Mongodb Config",$refId:"MongodbConfig"});exports.Conditions = n; exports.QueryKeys = a; exports.mongoDbConfigPipe = P; exports.queryParamsPipe = l; exports.queryResultsPipe = m; exports.wrapQueryParams = b;
2
- //# sourceMappingURL=pipes.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/dbs/pipes.ts"],"names":["QueryKeys","Conditions","queryKeys","v","queryWhere","queryWhereBlock","d","queryParamsPipe","Instance","pagLimit","p","model","wrapQueryParams","params","mongoDbConfigPipe"],"mappings":"AAAA,6GAA0F,wDAKzF,IAAM,CAAA,CAAA,CAAA,CACNA,EAAA,CAAA,CAAA,CAAK,GAAA,CAAA,KAFMA,CAAAA,CAAAA,CAAA,EAAA,CAAA,IAKAC,CAAAA,CAAAA,CAAAA,CACXA,CAAAA,CAAA,EAAA,CAAK,CAAA,CAAA,CAAA,CAAA,sBACLA,CAAAA,CAAA,EAAA,CAAA,CAAM,CAAA,EAAA,CAAA,IACN,CAAA,CAAA,CAAK,GAAA,CAAA,KACL,CAAA,CAAM,CAAA,EAAA,CAAA,IACN,CAAA,CAAA,CAAK,GAAA,CAAA,KACL,CAAK,CAAA,CAAA,EAAA,CACLA,IAAA,CAAK,CAAA,CAAA,EAAA,CACLA,IAAA,CAAA,CAAM,CAAA,EAAA,CAAA,IACN,CAAA,CAAA,CAAA,GAAA,CAAS,KAAA,CAAA,CAAA,CAAA,MATEA,CAAAA,QAYZ,CAAA,CAAA,CAAMC,CAAAA,CAAYC,CAAAA,EAAE,CAAA,CAAA,CAAA,CAAA,MAAQ,CAAA,CAAA,WAAA,CAAA,KAAW,CAAA,WAAG,CAAC,QAAe,CAAA,WAAY,CAAC,EAAG,CAAA,CAAA,KAAgB,CAAA,IAAa,CAAA,CACjGC,CAAAA,KAAe,CAAA,CAAA,KACpB,CAAA,CAAA,CAAA,CAAA,WAAOD,CAAAA,MAAE,CAAA,CAAO,KAChB,CAAA,WAAA,CAAOA,MAAM,CAAA,CACb,CAAA,KAAA,CAAA,WAAA,CAAA,GAAa,CAAA,CAAA,CAAA,SAAQ,CAAA,WAAA,CAAA,KAAW,CAAA,WAAG,CAAA,QAAO,CAAA,WAAA,CAAA,EAAOF,CAAU,MAAI,CAAa,MAAgB,CAC7F,CAAC,CAAA,CACKI,CAAAA,IAAoB,CAAA,CAAA,IAAA,CAAA,CAAA,CACzB,CAAA,CAAA,CAAA,WACCF,CAAAA,SAAE,CAAA,CAAA,CAAA,EAAcG,WAAAA,CAAAA,YAAc,CAAA,CAAA,EAAgB,MAAE,CAAA,MAAW,CAAA,CAAA,CAAA,CAAA,QAAoB,CAAA,CAAA,CAAA,SAAU,CAAA,CAAA,OACxF,CAAA,SAAS,CAAA,CAAO,KACf,CAAA,WAAA,CAAA,MACA,CAAA,CAAA,SAAS,CAAA,CAAMD,CAAe,KAE/B,CAAA,WAAA,CAAA,KACD,CAAC,CAAA,CACF,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,iBAcmCF,CAAAA,CAAE,CAAA,CAAA,WAAA,CAAA,QAA0B,CAEzD,WAAA,CAAA,KAAA,CAAA,CAASI,CAAAA,CAAAA,CAAkB,CACjC,CAAA,CAAA,SAAS,CAAA,CAAA,CACRJ,CAAAA,OACE,WAAO,CACP,IAAKA,CAAAA,WAAE,CAAA,MAAA,CAAA,CAASA,GAAE,CAAA,WAAA,CAAA,QAAgB,CAAA,WAClC,CAAA,OAAS,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,KACb,CAAA,WAAA,CAAA,IAAiBK,CAAS,CAAA,CAAA,EAAI,CAAA,MAAE,CAAA,CAAA,qBAAA,CAAS,GAAA,CAAA,CAAA,CAAM,QAAA,CAAA,KAAA,CAAA,sBACtC,CAAML,OAAE,WAAA,CAAA,KAAW,CAAA,WAAA,CAAA,QAAS,CAAA,WAAKA,CAAAA,MAAc,CAAC,CAAA,CAAGM,IAAmB,CAChF,WAAC,CAAA,GACD,CAAA,CAAA,CAAMN,CAAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMA,CAAAA,CAAE,IAAA,CAAA,WAAA,CAAA,KAAW,CAAA,WAAA,CAAA,QAAS,CAAA,WAAKA,CAAAA,MAAO,CAAC,CAAA,CAAG,IAAK,CAAA,WACzD,CAAA,GAAA,CAAA,CAAA,CAAQA,CAAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MACP,CAAA,WAAA,CAAA,QACC,CAAA,WAAA,CAAA,OACD,CAAA,WAAOA,CAAAA,MAAE,CAAA,CAAO,KAChB,CAAA,WAAA,CAAA,MAAU,CAAA,CAAA,CAAMA,MAAE,CAAA,WAAA,CAAO,KAE3B,CACA,WAAA,CAAA,MAED,CAAA,CAAA,CAAMA,CAAAA,CAAE,CAAA,CAAA,IAAA,CAAA,CAAA,IACL,CAAA,WAAA,CAAA,QACC,CAAA,WAAA,CAAO,KACR,CAAA,WAAOA,CAAAA,MAAE,CAAA,CAAO,KAChB,CAAA,WAAMA,CAAAA,MAAE,CAAA,CAAA,CAAA,IAAW,CAAA,WAAA,CAAA,QAAgB,CACpC,WAAC,CACF,OAGD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAWD,CAAAA,CACX,CAAA,CAAA,CAAA,SAEA,CAAA,CAAA,CAAMQ,KAAS,CAAA,CAAA,CAAGA,CAAAA,CAAG,IAAA,CAA2B,CAAC,EAAG,CAAA,CAAA,GAAA,CAAA,CAAA,IAAU,CAAA,CAAA,CAAc,CAAA,QAC5E,CAAA,KAAO,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAgB,cAAQ,CAAA,MAClC,CACD,aAEoCC,CAAqB,CACxD,CAAA,SAAS,CAAA,CAAA,CAAA,CAAA,CAAA,OACR,WAAOR,CAAAA,MAAE,CAAA,CAAO,KACf,CAAA,WAAA,CAAA,MAAW,CAAA,CAAA,OACX,CAAA,WAAA,CAAOA,MAAE,CAAA,CAAA,CAAO,KAChB,CAAA,WAAMA,CAAAA,MAAE,CAAA,CAAO,CAAA,IACf,CAAA,WAAA,CAAA,MAAY,CAAA,CAAA,CAAA,QAAW,CAAA,WAAA,CAAA,QACvB,CAAA,WAAA,CAAMA,MAAE,CAAA,CAAA,CAAA,CAAA,IAAW,CAAA,WAAA,CAAA,QAEpB,CAAA,WAAA,CAAA,MAAQ,CAAA,CAAA,CAAA,CAAA,CAAO,CACd,IAAA,CAAA,WAAOA,CAAAA,MAAE,CAAA,CAAO,KAChB,CAAA,WAAA,CAAOA,MAAE,CAAA,CAAA,CAAO,KAChB,CAAA,WAAA,CAAOA,MAAE,CAAA,CAAA,CAAO,KAEjB,CAAA,WAAA,CAAA,MAAW,CAAA,CAAA,CAAA,CAAA,CAAA,OAIN,CAAA,WAAA,CAAA,KAASS,CAAAA,CAAgBC,CAAAA,CAAuC,CACtE,CAAA,SAAS,CAAA,CAAA,CAAA,CAAA,CAAA,OACV,WASO,CAAA,MAAMC,CAAoB,CAAA,CAAA,CAAA,CAChCX,CAAAA,CAAE,CAAA,MACC,CAAA,CAAA,CAAA,CAAA,EAAA,WAAO,CACR,IAAKA,CAAAA,WAAE,CAAA,MAAO,CACf,CAAC,GACC,CAAA,WAAA,CAAA,MAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,gBAA0B,CAAA,MAAA,CAAgB,eACpD,CAAA,CAAA,CAAA,qKAAA","file":"/home/runner/work/equipped/equipped/dist/cjs/dbs/pipes.min.cjs","sourcesContent":["import { type ConditionalObjectKeys, type Pipe, type PipeInput, type PipeOutput, v } from 'valleyed'\n\nimport { Instance } from '../instance'\n\nexport enum QueryKeys {\n\tand = 'and',\n\tor = 'or',\n}\n\nexport enum Conditions {\n\tlt = 'lt',\n\tlte = 'lte',\n\tgt = 'gt',\n\tgte = 'gte',\n\teq = 'eq',\n\tne = 'ne',\n\tin = 'in',\n\tnin = 'nin',\n\texists = 'exists',\n}\n\nconst queryKeys = v.catch(v.defaults(v.in([QueryKeys.and, QueryKeys.or]), QueryKeys.and), QueryKeys.and)\nconst queryWhere = v.object({\n\tfield: v.string(),\n\tvalue: v.any(),\n\tcondition: v.catch(v.defaults(v.in(Object.values(Conditions)), Conditions.eq), Conditions.eq),\n})\nconst queryWhereBlock = v.recursive(\n\t() =>\n\t\tv.discriminate((d) => (Object.values(QueryKeys).includes(d.condition as any) ? 'block' : 'regular'), {\n\t\t\tblock: v.object({\n\t\t\t\tcondition: queryKeys,\n\t\t\t\tvalue: v.array(queryWhereBlock),\n\t\t\t}),\n\t\t\tregular: queryWhere,\n\t\t}),\n\t'QueryWhereBlock',\n) as Pipe<\n\t| {\n\t\t\tcondition: PipeInput<typeof queryKeys>\n\t\t\tvalue: PipeInput<typeof queryWhere>[]\n\t }\n\t| PipeInput<typeof queryWhere>,\n\t| {\n\t\t\tcondition: PipeOutput<typeof queryKeys>\n\t\t\tvalue: PipeOutput<typeof queryWhere>[]\n\t }\n\t| PipeOutput<typeof queryWhere>\n>\n\nconst queryWhereClause = v.defaults(v.array(queryWhereBlock), [])\n\nexport function queryParamsPipe() {\n\treturn v.meta(\n\t\tv\n\t\t\t.object({\n\t\t\t\tall: v.defaults(v.boolean(), false),\n\t\t\t\tlimit: v.lazy(() => {\n\t\t\t\t\tconst pagLimit = Instance.get().settings.utils.paginationDefaultLimit\n\t\t\t\t\treturn v.catch(v.defaults(v.number().pipe(v.lte(pagLimit)), pagLimit), pagLimit)\n\t\t\t\t}),\n\t\t\t\tpage: v.catch(v.defaults(v.number().pipe(v.gte(1)), 1), 1),\n\t\t\t\tsearch: v.defaults(\n\t\t\t\t\tv.nullish(\n\t\t\t\t\t\tv.object({\n\t\t\t\t\t\t\tvalue: v.string(),\n\t\t\t\t\t\t\tfields: v.array(v.string()),\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t\tnull,\n\t\t\t\t),\n\t\t\t\tsort: v.defaults(\n\t\t\t\t\tv.array(\n\t\t\t\t\t\tv.object({\n\t\t\t\t\t\t\tfield: v.string(),\n\t\t\t\t\t\t\tdesc: v.defaults(v.boolean(), false),\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t\t[],\n\t\t\t\t),\n\t\t\t\twhereType: queryKeys,\n\t\t\t\twhere: queryWhereClause,\n\t\t\t})\n\t\t\t.pipe((p) => ({ ...p, auth: <(typeof p)['where']>[], authType: QueryKeys.and })),\n\t\t{ title: 'Query Params', $refId: 'QueryParams' },\n\t)\n}\n\nexport function queryResultsPipe<T>(model: Pipe<any, T>) {\n\treturn v.object({\n\t\tpages: v.object({\n\t\t\tcurrent: v.number(),\n\t\t\tstart: v.number(),\n\t\t\tlast: v.number(),\n\t\t\tprevious: v.nullable(v.number()),\n\t\t\tnext: v.nullable(v.number()),\n\t\t}),\n\t\tdocs: v.object({\n\t\t\tlimit: v.number(),\n\t\t\ttotal: v.number(),\n\t\t\tcount: v.number(),\n\t\t}),\n\t\tresults: v.array(model),\n\t})\n}\n\nexport function wrapQueryParams(params: QueryParamsInput): QueryParams {\n\treturn v.assert(queryParamsPipe(), params)\n}\n\nexport type QueryParams = PipeOutput<ReturnType<typeof queryParamsPipe>>\nexport type QueryParamsInput = ConditionalObjectKeys<PipeInput<ReturnType<typeof queryParamsPipe>>>\nexport type QueryWhereClause = QueryParams['where'][number]\nexport type QueryWhere = Extract<QueryWhereClause, { field: string }>\nexport type QueryWhereBlock = Exclude<QueryWhereClause, { field: string }>\nexport type QueryResults<T> = PipeOutput<ReturnType<typeof queryResultsPipe<T>>>\n\nexport const mongoDbConfigPipe = () =>\n\tv.meta(\n\t\tv.object({\n\t\t\turi: v.string(),\n\t\t}),\n\t\t{ title: 'Mongodb Config', $refId: 'MongodbConfig' },\n\t)\n\nexport type MongoDbConfig = PipeOutput<ReturnType<typeof mongoDbConfigPipe>>\n"]}
@@ -1,12 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});class EquippedError extends Error {
2
- constructor(message, context, cause) {
3
- super(message, { cause });
4
- this.message = message;
5
- this.context = context;
6
- this.cause = cause;
7
- }
8
- }
9
-
10
-
11
- exports.EquippedError = EquippedError;
12
- //# sourceMappingURL=equippedError.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/errors/equippedError.ts","/home/runner/work/equipped/equipped/dist/cjs/errors/equippedError.cjs"],"names":[],"mappings":"AAAO,+EAAM,cAAA,QAAsB,MAAM;AAAA,EACxC,WAAA,CACiB,OAAA,EACA,OAAA,EACA,KAAA,EACf;AACD,IAAA,KAAA,CAAM,OAAA,EAAS,EAAE,MAAM,CAAC,CAAA;AAJR,IAAA,IAAA,CAAA,QAAA,EAAA,OAAA;AACA,IAAA,IAAA,CAAA,QAAA,EAAA,OAAA;AACA,IAAA,IAAA,CAAA,MAAA,EAAA,KAAA;AAAA,EAGjB;AACD;ACAA;AACE;AACF,sCAAC","file":"/home/runner/work/equipped/equipped/dist/cjs/errors/equippedError.cjs","sourcesContent":["export class EquippedError extends Error {\n\tconstructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly context: Record<string, unknown>,\n\t\tpublic readonly cause?: unknown,\n\t) {\n\t\tsuper(message, { cause })\n\t}\n}\n",null]}