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,111 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _http = require('http'); var _http2 = _interopRequireDefault(_http);
2
- var _cookieparser = require('cookie-parser'); var _cookieparser2 = _interopRequireDefault(_cookieparser);
3
- var _cors = require('cors'); var _cors2 = _interopRequireDefault(_cors);
4
- var _express = require('express'); var _express2 = _interopRequireDefault(_express);
5
- var _expressfileupload = require('express-fileupload'); var _expressfileupload2 = _interopRequireDefault(_expressfileupload);
6
- var _expressratelimit = require('express-rate-limit');
7
- var _helmet = require('helmet'); var _helmet2 = _interopRequireDefault(_helmet);
8
- var _pinohttp = require('pino-http');
9
- var _indexcjs = require('../../instance/index.cjs');
10
- var _indexcjs3 = require('../../utilities/index.cjs');
11
- var _requestscjs = require('../requests.cjs');
12
- var _typescjs = require('../types.cjs');
13
- var _basecjs = require('./base.cjs');
14
- class ExpressServer extends _basecjs.Server {
15
- constructor(config) {
16
- const app = _express2.default.call(void 0, );
17
- const instance = _indexcjs.Instance.get();
18
- super(_http2.default.createServer(app), config, {
19
- parseRequest: async (req) => {
20
- const files = Object.fromEntries(
21
- await Promise.all(
22
- Object.entries(_nullishCoalesce(req.files, () => ( {}))).map(async ([key, file]) => {
23
- const uploads = Array.isArray(file) ? file : [file];
24
- const fileArray = await Promise.all(
25
- uploads.map(async (f) => ({
26
- name: f.name,
27
- type: f.mimetype,
28
- size: f.size,
29
- isTruncated: f.truncated,
30
- data: f.data,
31
- duration: await _indexcjs3.getMediaDuration.call(void 0, f.data)
32
- }))
33
- );
34
- return [key, fileArray];
35
- })
36
- )
37
- );
38
- return new (0, _requestscjs.Request)({
39
- ip: req.ip,
40
- body: _nullishCoalesce(req.body, () => ( {})),
41
- cookies: _nullishCoalesce(req.cookies, () => ( {})),
42
- params: _nullishCoalesce(req.params, () => ( {})),
43
- query: _nullishCoalesce(req.query, () => ( {})),
44
- method: req.method,
45
- path: req.path,
46
- headers: req.headers,
47
- files
48
- });
49
- },
50
- handleResponse: async (res, response) => {
51
- if (!response.piped) {
52
- Object.entries(response.headers).forEach(([key, value]) => res.header(key, value));
53
- Object.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts));
54
- const type = response.body === null || response.body === void 0 ? "json" : "send";
55
- res.status(response.status)[type](response.body).end();
56
- } else {
57
- response.body.pipe(res);
58
- }
59
- },
60
- registerRoute: (method, path, cb) => {
61
- _optionalChain([app, 'access', _2 => _2[method], 'optionalCall', _3 => _3(path, async (req, res) => cb(req, res))]);
62
- },
63
- registerErrorHandler: (cb) => {
64
- app.use(async (err, req, res, _next) => cb(err, req, res));
65
- },
66
- registerNotFoundHandler: (cb) => {
67
- app.use(async (req, res, _next) => cb(req, res));
68
- },
69
- start: async (port) => new Promise((resolve, reject) => {
70
- try {
71
- const app2 = this.server.listen({ host: "0.0.0.0", port }, async () => resolve(true));
72
- _indexcjs.Instance.on("close", app2.close, 1);
73
- } catch (err) {
74
- reject(err);
75
- }
76
- })
77
- });
78
- app.disable("x-powered-by");
79
- if (config.requests.log) app.use(_pinohttp.pinoHttp.call(void 0, { logger: instance.log }));
80
- app.use(_express2.default.json());
81
- app.use(_express2.default.text());
82
- app.use(_cookieparser2.default.call(void 0, ));
83
- app.use(
84
- _helmet2.default.call(void 0, {
85
- crossOriginResourcePolicy: { policy: "cross-origin" },
86
- contentSecurityPolicy: false
87
- })
88
- );
89
- app.use(_cors2.default.call(void 0, this.cors));
90
- app.use(_express2.default.urlencoded({ extended: false }));
91
- if (config.publicPath) app.use(_express2.default.static(config.publicPath));
92
- app.use(
93
- _expressfileupload2.default.call(void 0, {
94
- limits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },
95
- useTempFiles: false
96
- })
97
- );
98
- if (config.requests.rateLimit.enabled)
99
- app.use(
100
- _expressratelimit.rateLimit.call(void 0, {
101
- windowMs: config.requests.rateLimit.periodInMs,
102
- limit: config.requests.rateLimit.limit,
103
- handler: (_, res) => res.status(_typescjs.StatusCodes.TooManyRequests).json([{ message: "Too Many Requests" }])
104
- })
105
- );
106
- }
107
- }
108
-
109
-
110
- exports.ExpressServer = ExpressServer;
111
- //# sourceMappingURL=express.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/impls/express.ts","/home/runner/work/equipped/equipped/dist/cjs/server/impls/express.cjs"],"names":["app"],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/server/impls/express.cjs","sourcesContent":["import http from 'http'\n\nimport cookie from 'cookie-parser'\nimport cors from 'cors'\nimport express from 'express'\nimport fileUpload from 'express-fileupload'\nimport { rateLimit } from 'express-rate-limit'\n// import slowDown from 'express-slow-down'\nimport helmet from 'helmet'\nimport { pinoHttp } from 'pino-http'\n\nimport { Instance } from '../../instance'\nimport { getMediaDuration } from '../../utilities'\nimport type { ServerConfig } from '../pipes'\nimport { Request } from '../requests'\nimport { type IncomingFile, StatusCodes } from '../types'\nimport { Server } from './base'\n\nexport class ExpressServer extends Server<express.Request, express.Response> {\n\tconstructor(config: ServerConfig) {\n\t\tconst app = express()\n\t\tconst instance = Instance.get()\n\t\tsuper(http.createServer(app), config, {\n\t\t\tparseRequest: async (req) => {\n\t\t\t\tconst files = Object.fromEntries(\n\t\t\t\t\tawait Promise.all(\n\t\t\t\t\t\tObject.entries(req.files ?? {}).map(async ([key, file]) => {\n\t\t\t\t\t\t\tconst uploads = Array.isArray(file) ? file : [file]\n\t\t\t\t\t\t\tconst fileArray: IncomingFile[] = await Promise.all(\n\t\t\t\t\t\t\t\tuploads.map(async (f) => ({\n\t\t\t\t\t\t\t\t\tname: f.name,\n\t\t\t\t\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\t\t\t\t\tsize: f.size,\n\t\t\t\t\t\t\t\t\tisTruncated: f.truncated,\n\t\t\t\t\t\t\t\t\tdata: f.data,\n\t\t\t\t\t\t\t\t\tduration: await getMediaDuration(f.data),\n\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\treturn <const>[key, fileArray]\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t)\n\n\t\t\t\treturn new Request<any>({\n\t\t\t\t\tip: req.ip,\n\t\t\t\t\tbody: req.body ?? {},\n\t\t\t\t\tcookies: req.cookies ?? {},\n\t\t\t\t\tparams: req.params ?? {},\n\t\t\t\t\tquery: req.query ?? {},\n\t\t\t\t\tmethod: <any>req.method,\n\t\t\t\t\tpath: req.path,\n\t\t\t\t\theaders: req.headers,\n\t\t\t\t\tfiles,\n\t\t\t\t})\n\t\t\t},\n\t\t\thandleResponse: async (res, response) => {\n\t\t\t\tif (!response.piped) {\n\t\t\t\t\tObject.entries(response.headers).forEach(([key, value]) => res.header(key, value as string))\n\t\t\t\t\tObject.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts))\n\t\t\t\t\tconst type = response.body === null || response.body === undefined ? 'json' : 'send'\n\t\t\t\t\tres.status(response.status)[type](response.body).end()\n\t\t\t\t} else {\n\t\t\t\t\tresponse.body.pipe(res)\n\t\t\t\t}\n\t\t\t},\n\t\t\tregisterRoute: (method, path, cb) => {\n\t\t\t\tapp[method]?.(path, async (req, res) => cb(req, res))\n\t\t\t},\n\t\t\tregisterErrorHandler: (cb) => {\n\t\t\t\tapp.use(async (err, req, res, _next) => cb(err, req, res))\n\t\t\t},\n\t\t\tregisterNotFoundHandler: (cb) => {\n\t\t\t\tapp.use(async (req, res, _next) => cb(req, res))\n\t\t\t},\n\t\t\tstart: async (port) =>\n\t\t\t\tnew Promise((resolve: (s: boolean) => void, reject: (e: Error) => void) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst app = this.server.listen({ host: '0.0.0.0', port }, async () => resolve(true))\n\t\t\t\t\t\tInstance.on('close', app.close, 1)\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\treject(<Error>err)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t})\n\n\t\tapp.disable('x-powered-by')\n\t\tif (config.requests.log) app.use(pinoHttp({ logger: instance.log }))\n\t\tapp.use(express.json())\n\t\tapp.use(express.text())\n\t\tapp.use(cookie())\n\t\tapp.use(\n\t\t\thelmet({\n\t\t\t\tcrossOriginResourcePolicy: { policy: 'cross-origin' },\n\t\t\t\tcontentSecurityPolicy: false,\n\t\t\t}),\n\t\t)\n\t\tapp.use(cors(this.cors))\n\t\tapp.use(express.urlencoded({ extended: false }))\n\t\tif (config.publicPath) app.use(express.static(config.publicPath))\n\t\tapp.use(\n\t\t\tfileUpload({\n\t\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\t\tuseTempFiles: false,\n\t\t\t}),\n\t\t)\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.use(\n\t\t\t\trateLimit({\n\t\t\t\t\twindowMs: config.requests.rateLimit.periodInMs,\n\t\t\t\t\tlimit: config.requests.rateLimit.limit,\n\t\t\t\t\thandler: (_: express.Request, res: express.Response) =>\n\t\t\t\t\t\tres.status(StatusCodes.TooManyRequests).json([{ message: 'Too Many Requests' }]),\n\t\t\t\t}),\n\t\t\t)\n\t\t/* if (this.settings.slowdown.enabled) app.use(slowDown({\n\t\t\twindowMs: this.settings.slowdown.periodInMs,\n\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\tdelayMs: this.settings.slowdown.delayInMs\n\t\t})) */\n\t}\n}\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _http = require('http'); var _http2 = _interopRequireDefault(_http);var _cookieparser = require('cookie-parser'); var _cookieparser2 = _interopRequireDefault(_cookieparser);var _cors = require('cors'); var _cors2 = _interopRequireDefault(_cors);var _express = require('express'); var _express2 = _interopRequireDefault(_express);var _expressfileupload = require('express-fileupload'); var _expressfileupload2 = _interopRequireDefault(_expressfileupload);var _expressratelimit = require('express-rate-limit');var _helmet = require('helmet'); var _helmet2 = _interopRequireDefault(_helmet);var _pinohttp = require('pino-http');var _indexmincjs = require('../../instance/index.min.cjs');var _indexmincjs3 = require('../../utilities/index.min.cjs');var _requestsmincjs = require('../requests.min.cjs');var _typesmincjs = require('../types.min.cjs');var _basemincjs = require('./base.min.cjs');class C extends _basemincjs.Server{constructor(a){const r=_express2.default.call(void 0, ),c=_indexmincjs.Instance.get();super(_http2.default.createServer(r),a,{parseRequest:async e=>{const s=Object.fromEntries(await Promise.all(Object.entries(_nullishCoalesce(e.files, () => ({}))).map(async([o,t])=>{const i=Array.isArray(t)?t:[t],p=await Promise.all(i.map(async n=>({name:n.name,type:n.mimetype,size:n.size,isTruncated:n.truncated,data:n.data,duration:await _indexmincjs3.getMediaDuration.call(void 0, n.data)})));return[o,p]})));return new (0, _requestsmincjs.Request)({ip:e.ip,body:_nullishCoalesce(e.body, () => ({})),cookies:_nullishCoalesce(e.cookies, () => ({})),params:_nullishCoalesce(e.params, () => ({})),query:_nullishCoalesce(e.query, () => ({})),method:e.method,path:e.path,headers:e.headers,files:s})},handleResponse:async(e,s)=>{if(s.piped)s.body.pipe(e);else{Object.entries(s.headers).forEach(([t,i])=>e.header(t,i)),Object.entries(s.cookies).forEach(([t,{value:i,...p}])=>e.cookie(t,i,p));const o=s.body===null||s.body===void 0?"json":"send";e.status(s.status)[o](s.body).end()}},registerRoute:(e,s,o)=>{_optionalChain([r, 'access', _ => _[e], 'optionalCall', _2 => _2(s,async(t,i)=>o(t,i))])},registerErrorHandler:e=>{r.use(async(s,o,t,i)=>e(s,o,t))},registerNotFoundHandler:e=>{r.use(async(s,o,t)=>e(s,o))},start:async e=>new Promise((s,o)=>{try{const t=this.server.listen({host:"0.0.0.0",port:e},async()=>s(!0));_indexmincjs.Instance.on("close",t.close,1)}catch(t){o(t)}})}),r.disable("x-powered-by"),a.requests.log&&r.use(_pinohttp.pinoHttp.call(void 0, {logger:c.log})),r.use(_express2.default.json()),r.use(_express2.default.text()),r.use(_cookieparser2.default.call(void 0, )),r.use(_helmet2.default.call(void 0, {crossOriginResourcePolicy:{policy:"cross-origin"},contentSecurityPolicy:!1})),r.use(_cors2.default.call(void 0, this.cors)),r.use(_express2.default.urlencoded({extended:!1})),a.publicPath&&r.use(_express2.default.static(a.publicPath)),r.use(_expressfileupload2.default.call(void 0, {limits:{fileSize:c.settings.utils.maxFileUploadSizeInMb*1024*1024},useTempFiles:!1})),a.requests.rateLimit.enabled&&r.use(_expressratelimit.rateLimit.call(void 0, {windowMs:a.requests.rateLimit.periodInMs,limit:a.requests.rateLimit.limit,handler:(e,s)=>s.status(_typesmincjs.StatusCodes.TooManyRequests).json([{message:"Too Many Requests"}])}))}}exports.ExpressServer = C;
2
- //# sourceMappingURL=express.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/impls/express.ts"],"names":["ExpressServer","req","files","key","uploads","file","fileArray","f","getMediaDuration","Request","res","response","value","opts","path","cb","app","_next","err","resolve","reject","port","config","pinoHttp","instance","cookie","helmet","cors","express","fileUpload","rateLimit","StatusCodes"],"mappings":"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","file":"/home/runner/work/equipped/equipped/dist/cjs/server/impls/express.min.cjs","sourcesContent":["import http from 'http'\n\nimport cookie from 'cookie-parser'\nimport cors from 'cors'\nimport express from 'express'\nimport fileUpload from 'express-fileupload'\nimport { rateLimit } from 'express-rate-limit'\n// import slowDown from 'express-slow-down'\nimport helmet from 'helmet'\nimport { pinoHttp } from 'pino-http'\n\nimport { Instance } from '../../instance'\nimport { getMediaDuration } from '../../utilities'\nimport type { ServerConfig } from '../pipes'\nimport { Request } from '../requests'\nimport { type IncomingFile, StatusCodes } from '../types'\nimport { Server } from './base'\n\nexport class ExpressServer extends Server<express.Request, express.Response> {\n\tconstructor(config: ServerConfig) {\n\t\tconst app = express()\n\t\tconst instance = Instance.get()\n\t\tsuper(http.createServer(app), config, {\n\t\t\tparseRequest: async (req) => {\n\t\t\t\tconst files = Object.fromEntries(\n\t\t\t\t\tawait Promise.all(\n\t\t\t\t\t\tObject.entries(req.files ?? {}).map(async ([key, file]) => {\n\t\t\t\t\t\t\tconst uploads = Array.isArray(file) ? file : [file]\n\t\t\t\t\t\t\tconst fileArray: IncomingFile[] = await Promise.all(\n\t\t\t\t\t\t\t\tuploads.map(async (f) => ({\n\t\t\t\t\t\t\t\t\tname: f.name,\n\t\t\t\t\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\t\t\t\t\tsize: f.size,\n\t\t\t\t\t\t\t\t\tisTruncated: f.truncated,\n\t\t\t\t\t\t\t\t\tdata: f.data,\n\t\t\t\t\t\t\t\t\tduration: await getMediaDuration(f.data),\n\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\treturn <const>[key, fileArray]\n\t\t\t\t\t\t}),\n\t\t\t\t\t),\n\t\t\t\t)\n\n\t\t\t\treturn new Request<any>({\n\t\t\t\t\tip: req.ip,\n\t\t\t\t\tbody: req.body ?? {},\n\t\t\t\t\tcookies: req.cookies ?? {},\n\t\t\t\t\tparams: req.params ?? {},\n\t\t\t\t\tquery: req.query ?? {},\n\t\t\t\t\tmethod: <any>req.method,\n\t\t\t\t\tpath: req.path,\n\t\t\t\t\theaders: req.headers,\n\t\t\t\t\tfiles,\n\t\t\t\t})\n\t\t\t},\n\t\t\thandleResponse: async (res, response) => {\n\t\t\t\tif (!response.piped) {\n\t\t\t\t\tObject.entries(response.headers).forEach(([key, value]) => res.header(key, value as string))\n\t\t\t\t\tObject.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts))\n\t\t\t\t\tconst type = response.body === null || response.body === undefined ? 'json' : 'send'\n\t\t\t\t\tres.status(response.status)[type](response.body).end()\n\t\t\t\t} else {\n\t\t\t\t\tresponse.body.pipe(res)\n\t\t\t\t}\n\t\t\t},\n\t\t\tregisterRoute: (method, path, cb) => {\n\t\t\t\tapp[method]?.(path, async (req, res) => cb(req, res))\n\t\t\t},\n\t\t\tregisterErrorHandler: (cb) => {\n\t\t\t\tapp.use(async (err, req, res, _next) => cb(err, req, res))\n\t\t\t},\n\t\t\tregisterNotFoundHandler: (cb) => {\n\t\t\t\tapp.use(async (req, res, _next) => cb(req, res))\n\t\t\t},\n\t\t\tstart: async (port) =>\n\t\t\t\tnew Promise((resolve: (s: boolean) => void, reject: (e: Error) => void) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst app = this.server.listen({ host: '0.0.0.0', port }, async () => resolve(true))\n\t\t\t\t\t\tInstance.on('close', app.close, 1)\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\treject(<Error>err)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t})\n\n\t\tapp.disable('x-powered-by')\n\t\tif (config.requests.log) app.use(pinoHttp({ logger: instance.log }))\n\t\tapp.use(express.json())\n\t\tapp.use(express.text())\n\t\tapp.use(cookie())\n\t\tapp.use(\n\t\t\thelmet({\n\t\t\t\tcrossOriginResourcePolicy: { policy: 'cross-origin' },\n\t\t\t\tcontentSecurityPolicy: false,\n\t\t\t}),\n\t\t)\n\t\tapp.use(cors(this.cors))\n\t\tapp.use(express.urlencoded({ extended: false }))\n\t\tif (config.publicPath) app.use(express.static(config.publicPath))\n\t\tapp.use(\n\t\t\tfileUpload({\n\t\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\t\tuseTempFiles: false,\n\t\t\t}),\n\t\t)\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.use(\n\t\t\t\trateLimit({\n\t\t\t\t\twindowMs: config.requests.rateLimit.periodInMs,\n\t\t\t\t\tlimit: config.requests.rateLimit.limit,\n\t\t\t\t\thandler: (_: express.Request, res: express.Response) =>\n\t\t\t\t\t\tres.status(StatusCodes.TooManyRequests).json([{ message: 'Too Many Requests' }]),\n\t\t\t\t}),\n\t\t\t)\n\t\t/* if (this.settings.slowdown.enabled) app.use(slowDown({\n\t\t\twindowMs: this.settings.slowdown.periodInMs,\n\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\tdelayMs: this.settings.slowdown.delayInMs\n\t\t})) */\n\t}\n}\n"]}
@@ -1,121 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _cookie = require('@fastify/cookie'); var _cookie2 = _interopRequireDefault(_cookie);
2
- var _cors = require('@fastify/cors'); var _cors2 = _interopRequireDefault(_cors);
3
- var _formbody = require('@fastify/formbody'); var _formbody2 = _interopRequireDefault(_formbody);
4
- var _helmet = require('@fastify/helmet'); var _helmet2 = _interopRequireDefault(_helmet);
5
- var _multipart = require('@fastify/multipart'); var _multipart2 = _interopRequireDefault(_multipart);
6
- var _ratelimit = require('@fastify/rate-limit'); var _ratelimit2 = _interopRequireDefault(_ratelimit);
7
- var _static = require('@fastify/static'); var _static2 = _interopRequireDefault(_static);
8
- var _fastify = require('fastify'); var _fastify2 = _interopRequireDefault(_fastify);
9
- var _qs = require('qs'); var _qs2 = _interopRequireDefault(_qs);
10
- var _indexcjs = require('../../errors/index.cjs');
11
- var _indexcjs3 = require('../../instance/index.cjs');
12
- var _indexcjs5 = require('../../utilities/index.cjs');
13
- var _requestscjs = require('../requests.cjs');
14
- var _typescjs = require('../types.cjs');
15
- var _basecjs = require('./base.cjs');
16
- class FastifyServer extends _basecjs.Server {
17
- constructor(config) {
18
- const instance = _indexcjs3.Instance.get();
19
- const app = _fastify2.default.call(void 0, {
20
- disableRequestLogging: !config.requests.log,
21
- loggerInstance: config.requests.log ? instance.log : void 0,
22
- ajv: { customOptions: { coerceTypes: false } },
23
- routerOptions: {
24
- ignoreTrailingSlash: true,
25
- caseSensitive: false
26
- },
27
- schemaErrorFormatter: (errors, data) => new (0, _indexcjs.ValidationError)(
28
- errors.map((error) => ({
29
- messages: [_nullishCoalesce(error.message, () => ( ""))],
30
- field: `${data}${error.instancePath}`.replaceAll("/", ".")
31
- }))
32
- )
33
- });
34
- super(app.server, config, {
35
- parseRequest: async (req) => {
36
- const { body, files } = excludeBufferKeys(_nullishCoalesce(req.body, () => ( {})));
37
- return new (0, _requestscjs.Request)({
38
- ip: req.ip,
39
- body,
40
- cookies: _nullishCoalesce(req.cookies, () => ( {})),
41
- params: _nullishCoalesce(req.params, () => ( {})),
42
- query: _nullishCoalesce(req.query, () => ( {})),
43
- method: req.method,
44
- path: req.url,
45
- headers: req.headers,
46
- files
47
- });
48
- },
49
- handleResponse: async (res, response) => {
50
- for (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts);
51
- await res.status(response.status).headers(response.headers).send(response.body);
52
- },
53
- registerRoute: (method, path, cb) => {
54
- app.register(async (inst) => {
55
- inst.route({ url: path, method, handler: cb });
56
- });
57
- },
58
- registerErrorHandler: (cb) => {
59
- app.setErrorHandler(cb);
60
- },
61
- registerNotFoundHandler: (cb) => {
62
- app.setNotFoundHandler(cb);
63
- },
64
- start: async (port) => {
65
- await app.ready();
66
- await app.listen({ port, host: "0.0.0.0" });
67
- _indexcjs3.Instance.on("close", app.close, 1);
68
- return true;
69
- }
70
- });
71
- app.decorateRequest("savedReq", null);
72
- app.setValidatorCompiler(() => () => true);
73
- app.setSerializerCompiler(() => (data) => JSON.stringify(data));
74
- if (config.publicPath) app.register(_static2.default, { root: config.publicPath });
75
- app.register(_cookie2.default, {});
76
- app.register(_cors2.default, this.cors);
77
- app.register(_formbody2.default, { parser: (str) => _qs2.default.parse(str) });
78
- app.register(_helmet2.default, { crossOriginResourcePolicy: { policy: "cross-origin" }, contentSecurityPolicy: false });
79
- app.register(_multipart2.default, {
80
- attachFieldsToBody: "keyValues",
81
- throwFileSizeLimit: false,
82
- limits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },
83
- onFile: async (f) => {
84
- const buffer = await f.toBuffer();
85
- const parsed = {
86
- name: f.filename,
87
- type: f.mimetype,
88
- size: buffer.byteLength,
89
- isTruncated: f.file.truncated,
90
- data: buffer,
91
- duration: await _indexcjs5.getMediaDuration.call(void 0, buffer)
92
- };
93
- f.value = parsed;
94
- }
95
- });
96
- if (config.requests.rateLimit.enabled)
97
- app.register(_ratelimit2.default, {
98
- max: config.requests.rateLimit.limit,
99
- timeWindow: config.requests.rateLimit.periodInMs,
100
- errorResponseBuilder: (_, context) => ({
101
- statusCode: _typescjs.StatusCodes.TooManyRequests,
102
- message: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }])
103
- })
104
- });
105
- }
106
- }
107
- function excludeBufferKeys(body) {
108
- if (typeof body !== "object") return { body, files: {} };
109
- const entries = Object.entries(_nullishCoalesce(body, () => ( {})));
110
- const isFile = (val) => Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(_optionalChain([val, 'optionalAccess', _2 => _2.data]));
111
- const fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]]);
112
- const nonFileEntries = entries.filter(([_, value]) => !isFile(value));
113
- return {
114
- body: Object.fromEntries(nonFileEntries),
115
- files: Object.fromEntries(fileEntries)
116
- };
117
- }
118
-
119
-
120
- exports.FastifyServer = FastifyServer;
121
- //# sourceMappingURL=fastify.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/impls/fastify.ts","/home/runner/work/equipped/equipped/dist/cjs/server/impls/fastify.cjs"],"names":[],"mappings":"AAAA,02BAA0B;AAC1B,iFAAwB;AACxB,iGAA4B;AAC5B,yFAA0B;AAC1B,qGAA6B;AAC7B,sGAA6B;AAC7B,yFAA0B;AAE1B,oFAAoB;AAEpB,gEAAe;AAEf,kDAAgC;AAChC,qDAAyB;AACzB,sDAAiC;AAEjC,8CAAwB;AACxB,wCAA+C;AAC/C,qCAAuB;AAEhB,MAAM,cAAA,QAAsB,gBAAqC;AAAA,EACvE,WAAA,CAAY,MAAA,EAAsB;AACjC,IAAA,MAAM,SAAA,EAAW,mBAAA,CAAS,GAAA,CAAI,CAAA;AAC9B,IAAA,MAAM,IAAA,EAAM,+BAAA;AAAQ,MACnB,qBAAA,EAAuB,CAAC,MAAA,CAAO,QAAA,CAAS,GAAA;AAAA,MACxC,cAAA,EAAgB,MAAA,CAAO,QAAA,CAAS,IAAA,EAAM,QAAA,CAAS,IAAA,EAAM,KAAA,CAAA;AAAA,MACrD,GAAA,EAAK,EAAE,aAAA,EAAe,EAAE,WAAA,EAAa,MAAM,EAAE,CAAA;AAAA,MAC7C,aAAA,EAAe;AAAA,QACd,mBAAA,EAAqB,IAAA;AAAA,QACrB,aAAA,EAAe;AAAA,MAChB,CAAA;AAAA,MACA,oBAAA,EAAsB,CAAC,MAAA,EAAQ,IAAA,EAAA,GAC9B,IAAI,8BAAA;AAAA,QACH,MAAA,CAAO,GAAA,CAAI,CAAC,KAAA,EAAA,GAAA,CAAW;AAAA,UACtB,QAAA,EAAU,kBAAC,KAAA,CAAM,OAAA,UAAW,IAAE,CAAA;AAAA,UAC9B,KAAA,EAAO,CAAA,EAAA;AACN,QAAA;AACH,MAAA;AACD,IAAA;AACS,IAAA;AACT,MAAA;AACS,QAAA;AAED,QAAA;AACE,UAAA;AACR,UAAA;AACA,UAAA;AACQ,UAAA;AACD,UAAA;AACM,UAAA;AACP,UAAA;AACN,UAAA;AACA,UAAA;AACA,QAAA;AACF,MAAA;AACA,MAAA;AACC,QAAA;AACU,QAAA;AACX,MAAA;AACA,MAAA;AACK,QAAA;AACE,UAAA;AACL,QAAA;AACF,MAAA;AACA,MAAA;AACK,QAAA;AACL,MAAA;AACA,MAAA;AACK,QAAA;AACL,MAAA;AACO,MAAA;AACI,QAAA;AACA,QAAA;AACD,QAAA;AACF,QAAA;AACR,MAAA;AACA,IAAA;AAEG,IAAA;AACA,IAAA;AACA,IAAA;AACO,IAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACZ,MAAA;AACA,MAAA;AACU,MAAA;AACF,MAAA;AACD,QAAA;AACA,QAAA;AACG,UAAA;AACA,UAAA;AACF,UAAA;AACN,UAAA;AACM,UAAA;AACN,UAAA;AACD,QAAA;AAEU,QAAA;AACX,MAAA;AACA,IAAA;AAMU,IAAA;AACN,MAAA;AACE,QAAA;AACL,QAAA;AACA,QAAA;AACC,UAAA;AACA,UAAA;AACD,QAAA;AACA,MAAA;AACH,EAAA;AACD;AAES;AACG,EAAA;AACK,EAAA;AACA,EAAA;AACV,EAAA;AACA,EAAA;AACC,EAAA;AACU,IAAA;AAC8B,IAAA;AAC/C,EAAA;AACD;ACdkB;AACA;AACA","file":"/home/runner/work/equipped/equipped/dist/cjs/server/impls/fastify.cjs","sourcesContent":["import fastifyCookie from '@fastify/cookie'\nimport fastifyCors from '@fastify/cors'\nimport fastifyFormBody from '@fastify/formbody'\nimport fastifyHelmet from '@fastify/helmet'\nimport fastifyMultipart from '@fastify/multipart'\nimport fastifyRateLimit from '@fastify/rate-limit'\nimport fastifyStatic from '@fastify/static'\nimport type { FastifyReply, FastifyRequest } from 'fastify'\nimport Fastify from 'fastify'\n// import fastifySlowDown from 'fastify-slow-down'\nimport qs from 'qs'\n\nimport { ValidationError } from '../../errors'\nimport { Instance } from '../../instance'\nimport { getMediaDuration } from '../../utilities'\nimport type { ServerConfig } from '../pipes'\nimport { Request } from '../requests'\nimport { type IncomingFile, StatusCodes } from '../types'\nimport { Server } from './base'\n\nexport class FastifyServer extends Server<FastifyRequest, FastifyReply> {\n\tconstructor(config: ServerConfig) {\n\t\tconst instance = Instance.get()\n\t\tconst app = Fastify({\n\t\t\tdisableRequestLogging: !config.requests.log,\n\t\t\tloggerInstance: config.requests.log ? instance.log : undefined,\n\t\t\tajv: { customOptions: { coerceTypes: false } },\n\t\t\trouterOptions: {\n\t\t\t\tignoreTrailingSlash: true,\n\t\t\t\tcaseSensitive: false,\n\t\t\t},\n\t\t\tschemaErrorFormatter: (errors, data) =>\n\t\t\t\tnew ValidationError(\n\t\t\t\t\terrors.map((error) => ({\n\t\t\t\t\t\tmessages: [error.message ?? ''],\n\t\t\t\t\t\tfield: `${data}${error.instancePath}`.replaceAll('/', '.'),\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t})\n\t\tsuper(app.server, config, {\n\t\t\tparseRequest: async (req) => {\n\t\t\t\tconst { body, files } = excludeBufferKeys(req.body ?? {})\n\n\t\t\t\treturn new Request({\n\t\t\t\t\tip: req.ip,\n\t\t\t\t\tbody,\n\t\t\t\t\tcookies: req.cookies ?? {},\n\t\t\t\t\tparams: req.params ?? <any>{},\n\t\t\t\t\tquery: req.query ?? {},\n\t\t\t\t\tmethod: <any>req.method,\n\t\t\t\t\tpath: req.url,\n\t\t\t\t\theaders: req.headers,\n\t\t\t\t\tfiles,\n\t\t\t\t})\n\t\t\t},\n\t\t\thandleResponse: async (res, response) => {\n\t\t\t\tfor (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts)\n\t\t\t\tawait res.status(response.status).headers(response.headers).send(response.body)\n\t\t\t},\n\t\t\tregisterRoute: (method, path, cb) => {\n\t\t\t\tapp.register(async (inst) => {\n\t\t\t\t\tinst.route({ url: path, method, handler: cb })\n\t\t\t\t})\n\t\t\t},\n\t\t\tregisterErrorHandler: (cb) => {\n\t\t\t\tapp.setErrorHandler(cb)\n\t\t\t},\n\t\t\tregisterNotFoundHandler: (cb) => {\n\t\t\t\tapp.setNotFoundHandler(cb)\n\t\t\t},\n\t\t\tstart: async (port) => {\n\t\t\t\tawait app.ready()\n\t\t\t\tawait app.listen({ port, host: '0.0.0.0' })\n\t\t\t\tInstance.on('close', app.close, 1)\n\t\t\t\treturn true\n\t\t\t},\n\t\t})\n\n\t\tapp.decorateRequest('savedReq', null)\n\t\tapp.setValidatorCompiler(() => () => true)\n\t\tapp.setSerializerCompiler(() => (data) => JSON.stringify(data))\n\t\tif (config.publicPath) app.register(fastifyStatic, { root: config.publicPath })\n\t\tapp.register(fastifyCookie, {})\n\t\tapp.register(fastifyCors, this.cors)\n\t\tapp.register(fastifyFormBody, { parser: (str) => qs.parse(str) })\n\t\tapp.register(fastifyHelmet, { crossOriginResourcePolicy: { policy: 'cross-origin' }, contentSecurityPolicy: false })\n\t\tapp.register(fastifyMultipart, {\n\t\t\tattachFieldsToBody: 'keyValues',\n\t\t\tthrowFileSizeLimit: false,\n\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\tonFile: async (f) => {\n\t\t\t\tconst buffer = await f.toBuffer()\n\t\t\t\tconst parsed: IncomingFile = {\n\t\t\t\t\tname: f.filename,\n\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\tsize: buffer.byteLength,\n\t\t\t\t\tisTruncated: f.file.truncated,\n\t\t\t\t\tdata: buffer,\n\t\t\t\t\tduration: await getMediaDuration(buffer),\n\t\t\t\t}\n\t\t\t\t// @ts-ignore\n\t\t\t\tf.value = parsed\n\t\t\t},\n\t\t})\n\t\t/* if (this.settings.slowdown.enabled) app.register(fastifySlowDown, {\n\t\t\ttimeWindow: this.settings.slowdown.periodInMs,\n\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\tdelay: this.settings.slowdown.delayInMs\n\t\t}) */\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.register(fastifyRateLimit, {\n\t\t\t\tmax: config.requests.rateLimit.limit,\n\t\t\t\ttimeWindow: config.requests.rateLimit.periodInMs,\n\t\t\t\terrorResponseBuilder: (_, context) => ({\n\t\t\t\t\tstatusCode: StatusCodes.TooManyRequests,\n\t\t\t\t\tmessage: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }]),\n\t\t\t\t}),\n\t\t\t})\n\t}\n}\n\nfunction excludeBufferKeys<T>(body: T) {\n\tif (typeof body !== 'object') return { body, files: {} }\n\tconst entries = Object.entries(body ?? {})\n\tconst isFile = (val: any) => (Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(val?.data))\n\tconst fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]])\n\tconst nonFileEntries = entries.filter(([_, value]) => !isFile(value))\n\treturn {\n\t\tbody: <T>Object.fromEntries(nonFileEntries),\n\t\tfiles: <Record<string, IncomingFile[]>>Object.fromEntries(fileEntries),\n\t}\n}\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _cookie = require('@fastify/cookie'); var _cookie2 = _interopRequireDefault(_cookie);var _cors = require('@fastify/cors'); var _cors2 = _interopRequireDefault(_cors);var _formbody = require('@fastify/formbody'); var _formbody2 = _interopRequireDefault(_formbody);var _helmet = require('@fastify/helmet'); var _helmet2 = _interopRequireDefault(_helmet);var _multipart = require('@fastify/multipart'); var _multipart2 = _interopRequireDefault(_multipart);var _ratelimit = require('@fastify/rate-limit'); var _ratelimit2 = _interopRequireDefault(_ratelimit);var _static = require('@fastify/static'); var _static2 = _interopRequireDefault(_static);var _fastify = require('fastify'); var _fastify2 = _interopRequireDefault(_fastify);var _qs = require('qs'); var _qs2 = _interopRequireDefault(_qs);var _indexmincjs = require('../../errors/index.min.cjs');var _indexmincjs3 = require('../../instance/index.min.cjs');var _indexmincjs5 = require('../../utilities/index.min.cjs');var _requestsmincjs = require('../requests.min.cjs');var _typesmincjs = require('../types.min.cjs');var _basemincjs = require('./base.min.cjs');class N extends _basemincjs.Server{constructor(i){const o=_indexmincjs3.Instance.get(),r=_fastify2.default.call(void 0, {disableRequestLogging:!i.requests.log,loggerInstance:i.requests.log?o.log:void 0,ajv:{customOptions:{coerceTypes:!1}},routerOptions:{ignoreTrailingSlash:!0,caseSensitive:!1},schemaErrorFormatter:(e,t)=>new (0, _indexmincjs.ValidationError)(e.map(s=>({messages:[_nullishCoalesce(s.message, () => (""))],field:`${t}${s.instancePath}`.replaceAll("/",".")})))});super(r.server,i,{parseRequest:async e=>{const{body:t,files:s}=C(_nullishCoalesce(e.body, () => ({})));return new (0, _requestsmincjs.Request)({ip:e.ip,body:t,cookies:_nullishCoalesce(e.cookies, () => ({})),params:_nullishCoalesce(e.params, () => ({})),query:_nullishCoalesce(e.query, () => ({})),method:e.method,path:e.url,headers:e.headers,files:s})},handleResponse:async(e,t)=>{for(const[s,{value:n,...f}]of Object.entries(t.cookies))e=e.setCookie(s,n,f);await e.status(t.status).headers(t.headers).send(t.body)},registerRoute:(e,t,s)=>{r.register(async n=>{n.route({url:t,method:e,handler:s})})},registerErrorHandler:e=>{r.setErrorHandler(e)},registerNotFoundHandler:e=>{r.setNotFoundHandler(e)},start:async e=>(await r.ready(),await r.listen({port:e,host:"0.0.0.0"}),_indexmincjs3.Instance.on("close",r.close,1),!0)}),r.decorateRequest("savedReq",null),r.setValidatorCompiler(()=>()=>!0),r.setSerializerCompiler(()=>e=>JSON.stringify(e)),i.publicPath&&r.register(_static2.default,{root:i.publicPath}),r.register(_cookie2.default,{}),r.register(_cors2.default,this.cors),r.register(_formbody2.default,{parser:e=>_qs2.default.parse(e)}),r.register(_helmet2.default,{crossOriginResourcePolicy:{policy:"cross-origin"},contentSecurityPolicy:!1}),r.register(_multipart2.default,{attachFieldsToBody:"keyValues",throwFileSizeLimit:!1,limits:{fileSize:o.settings.utils.maxFileUploadSizeInMb*1024*1024},onFile:async e=>{const t=await e.toBuffer(),s={name:e.filename,type:e.mimetype,size:t.byteLength,isTruncated:e.file.truncated,data:t,duration:await _indexmincjs5.getMediaDuration.call(void 0, t)};e.value=s}}),i.requests.rateLimit.enabled&&r.register(_ratelimit2.default,{max:i.requests.rateLimit.limit,timeWindow:i.requests.rateLimit.periodInMs,errorResponseBuilder:(e,t)=>({statusCode:_typesmincjs.StatusCodes.TooManyRequests,message:JSON.stringify([{message:`Too Many Requests. Retry in ${t.after}`}])})})}}function C(a){if(typeof a!="object")return{body:a,files:{}};const i=Object.entries(_nullishCoalesce(a, () => ({}))),o=t=>Array.isArray(t)?o(t.at(0)):Buffer.isBuffer(_optionalChain([t, 'optionalAccess', _ => _.data])),r=i.filter(([t,s])=>o(s)).map(([t,s])=>[t,Array.isArray(s)?s:[s]]),e=i.filter(([t,s])=>!o(s));return{body:Object.fromEntries(e),files:Object.fromEntries(r)}}exports.FastifyServer = N;
2
- //# sourceMappingURL=fastify.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/impls/fastify.ts"],"names":["getMediaDuration","config","instance"],"mappings":"AAAA,02BAA0B,iFACF,iGACI,yFACF,qGACG,sGACA,yFACH,oFAEN,gEAEL,yDAGN,4DACAA,6DAGT,qDACS,+CAGIC,4CAGV,MAAwBA,EAAO,QAAS,kBAAA,CAAA,WACxC,CAAA,CAAA,CAAA,CAAA,MAAuB,CAAA,CAAA,sBAAA,CAAA,GAAS,CAAA,CAAA,CAAA,CAAMC,CAAAA,+BAAS,CAAA,qBACxC,CAAA,CAAA,CAAA,CAAA,QAAiB,CAAA,GAAA,CAAA,cACxB,CAAA,CAAA,CAAA,QACC,CAAA,GAAA,CAAA,CAAA,CAAA,GAAA,CAAA,KAAA,CAAA,CAAqB,GACrB,CAAA,CAAA,aAAe,CAChB,CAAA,WACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,aACC,CAAA,CAAA,mBAEE,CAAA,CAAA,CAAA,CAAU,aAAkB,CAAE,CAAA,CAC9B,CAAA,CAAA,oBAAuB,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,EAAG,IAAA,iCAAA,CAAA,CAAA,CAAA,GAAW,CAAA,CAAA,EAAK,CAAA,CAAA,QAGzD,CACD,kBAAA,CAAA,CAAA,OAAU,SAAA,IAAA,CAAQD,CAAAA,KACjB,CAAA,CAAA,EAAA","file":"/home/runner/work/equipped/equipped/dist/cjs/server/impls/fastify.min.cjs","sourcesContent":["import fastifyCookie from '@fastify/cookie'\nimport fastifyCors from '@fastify/cors'\nimport fastifyFormBody from '@fastify/formbody'\nimport fastifyHelmet from '@fastify/helmet'\nimport fastifyMultipart from '@fastify/multipart'\nimport fastifyRateLimit from '@fastify/rate-limit'\nimport fastifyStatic from '@fastify/static'\nimport type { FastifyReply, FastifyRequest } from 'fastify'\nimport Fastify from 'fastify'\n// import fastifySlowDown from 'fastify-slow-down'\nimport qs from 'qs'\n\nimport { ValidationError } from '../../errors'\nimport { Instance } from '../../instance'\nimport { getMediaDuration } from '../../utilities'\nimport type { ServerConfig } from '../pipes'\nimport { Request } from '../requests'\nimport { type IncomingFile, StatusCodes } from '../types'\nimport { Server } from './base'\n\nexport class FastifyServer extends Server<FastifyRequest, FastifyReply> {\n\tconstructor(config: ServerConfig) {\n\t\tconst instance = Instance.get()\n\t\tconst app = Fastify({\n\t\t\tdisableRequestLogging: !config.requests.log,\n\t\t\tloggerInstance: config.requests.log ? instance.log : undefined,\n\t\t\tajv: { customOptions: { coerceTypes: false } },\n\t\t\trouterOptions: {\n\t\t\t\tignoreTrailingSlash: true,\n\t\t\t\tcaseSensitive: false,\n\t\t\t},\n\t\t\tschemaErrorFormatter: (errors, data) =>\n\t\t\t\tnew ValidationError(\n\t\t\t\t\terrors.map((error) => ({\n\t\t\t\t\t\tmessages: [error.message ?? ''],\n\t\t\t\t\t\tfield: `${data}${error.instancePath}`.replaceAll('/', '.'),\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t})\n\t\tsuper(app.server, config, {\n\t\t\tparseRequest: async (req) => {\n\t\t\t\tconst { body, files } = excludeBufferKeys(req.body ?? {})\n\n\t\t\t\treturn new Request({\n\t\t\t\t\tip: req.ip,\n\t\t\t\t\tbody,\n\t\t\t\t\tcookies: req.cookies ?? {},\n\t\t\t\t\tparams: req.params ?? <any>{},\n\t\t\t\t\tquery: req.query ?? {},\n\t\t\t\t\tmethod: <any>req.method,\n\t\t\t\t\tpath: req.url,\n\t\t\t\t\theaders: req.headers,\n\t\t\t\t\tfiles,\n\t\t\t\t})\n\t\t\t},\n\t\t\thandleResponse: async (res, response) => {\n\t\t\t\tfor (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts)\n\t\t\t\tawait res.status(response.status).headers(response.headers).send(response.body)\n\t\t\t},\n\t\t\tregisterRoute: (method, path, cb) => {\n\t\t\t\tapp.register(async (inst) => {\n\t\t\t\t\tinst.route({ url: path, method, handler: cb })\n\t\t\t\t})\n\t\t\t},\n\t\t\tregisterErrorHandler: (cb) => {\n\t\t\t\tapp.setErrorHandler(cb)\n\t\t\t},\n\t\t\tregisterNotFoundHandler: (cb) => {\n\t\t\t\tapp.setNotFoundHandler(cb)\n\t\t\t},\n\t\t\tstart: async (port) => {\n\t\t\t\tawait app.ready()\n\t\t\t\tawait app.listen({ port, host: '0.0.0.0' })\n\t\t\t\tInstance.on('close', app.close, 1)\n\t\t\t\treturn true\n\t\t\t},\n\t\t})\n\n\t\tapp.decorateRequest('savedReq', null)\n\t\tapp.setValidatorCompiler(() => () => true)\n\t\tapp.setSerializerCompiler(() => (data) => JSON.stringify(data))\n\t\tif (config.publicPath) app.register(fastifyStatic, { root: config.publicPath })\n\t\tapp.register(fastifyCookie, {})\n\t\tapp.register(fastifyCors, this.cors)\n\t\tapp.register(fastifyFormBody, { parser: (str) => qs.parse(str) })\n\t\tapp.register(fastifyHelmet, { crossOriginResourcePolicy: { policy: 'cross-origin' }, contentSecurityPolicy: false })\n\t\tapp.register(fastifyMultipart, {\n\t\t\tattachFieldsToBody: 'keyValues',\n\t\t\tthrowFileSizeLimit: false,\n\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\tonFile: async (f) => {\n\t\t\t\tconst buffer = await f.toBuffer()\n\t\t\t\tconst parsed: IncomingFile = {\n\t\t\t\t\tname: f.filename,\n\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\tsize: buffer.byteLength,\n\t\t\t\t\tisTruncated: f.file.truncated,\n\t\t\t\t\tdata: buffer,\n\t\t\t\t\tduration: await getMediaDuration(buffer),\n\t\t\t\t}\n\t\t\t\t// @ts-ignore\n\t\t\t\tf.value = parsed\n\t\t\t},\n\t\t})\n\t\t/* if (this.settings.slowdown.enabled) app.register(fastifySlowDown, {\n\t\t\ttimeWindow: this.settings.slowdown.periodInMs,\n\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\tdelay: this.settings.slowdown.delayInMs\n\t\t}) */\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.register(fastifyRateLimit, {\n\t\t\t\tmax: config.requests.rateLimit.limit,\n\t\t\t\ttimeWindow: config.requests.rateLimit.periodInMs,\n\t\t\t\terrorResponseBuilder: (_, context) => ({\n\t\t\t\t\tstatusCode: StatusCodes.TooManyRequests,\n\t\t\t\t\tmessage: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }]),\n\t\t\t\t}),\n\t\t\t})\n\t}\n}\n\nfunction excludeBufferKeys<T>(body: T) {\n\tif (typeof body !== 'object') return { body, files: {} }\n\tconst entries = Object.entries(body ?? {})\n\tconst isFile = (val: any) => (Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(val?.data))\n\tconst fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]])\n\tconst nonFileEntries = entries.filter(([_, value]) => !isFile(value))\n\treturn {\n\t\tbody: <T>Object.fromEntries(nonFileEntries),\n\t\tfiles: <Record<string, IncomingFile[]>>Object.fromEntries(fileEntries),\n\t}\n}\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _createStarExport(obj) { Object.keys(obj) .filter((key) => key !== "default" && key !== "__esModule") .forEach((key) => { if (exports.hasOwnProperty(key)) { return; } Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]}); }); }var _requireAuthUsercjs = require('./requireAuthUser.cjs'); _createStarExport(_requireAuthUsercjs);
2
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":"AAAA,ocAAc","file":"/home/runner/work/equipped/equipped/dist/cjs/server/middlewares/index.cjs","sourcesContent":["export * from './requireAuthUser'\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _createStarExport(obj) { Object.keys(obj) .filter((key) => key !== "default" && key !== "__esModule") .forEach((key) => { if (exports.hasOwnProperty(key)) { return; } Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]}); }); }var _requireAuthUsermincjs = require('./requireAuthUser.min.cjs'); _createStarExport(_requireAuthUsermincjs);
2
- //# sourceMappingURL=index.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":"AAAA,8cAAc","file":"/home/runner/work/equipped/equipped/dist/cjs/server/middlewares/index.min.cjs","sourcesContent":["export * from './requireAuthUser'\n"]}
@@ -1,22 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _indexcjs = require('../../errors/index.cjs');
2
- var _indexcjs3 = require('../requests-auth-methods/index.cjs');
3
- var _typescjs = require('../types.cjs');
4
- const requireAuthUser = (methods) => _typescjs.makeMiddleware.call(void 0,
5
- async (request) => {
6
- request.authUser = await _indexcjs3.BaseRequestAuthMethod.process(methods, request.headers);
7
- if (!request.authUser) throw new (0, _indexcjs.NotAuthenticatedError)();
8
- },
9
- (route) => {
10
- route.security ??= [];
11
- for (const method of methods) {
12
- const schemeName = method.routeSecuritySchemeName();
13
- if (schemeName) route.security.push({ [schemeName]: [] });
14
- }
15
- route.descriptions ??= [];
16
- route.descriptions.push("Requires a valid means of authentication.");
17
- }
18
- );
19
-
20
-
21
- exports.requireAuthUser = requireAuthUser;
22
- //# sourceMappingURL=requireAuthUser.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/middlewares/requireAuthUser.ts","/home/runner/work/equipped/equipped/dist/cjs/server/middlewares/requireAuthUser.cjs"],"names":[],"mappings":"AAAA,2HAAsC;AAEtC,+DAAsC;AACtC,wCAA+B;AAExB,MAAM,gBAAA,EAAkB,CAAC,OAAA,EAAA,GAC/B,sCAAA;AAAA,EACC,MAAA,CAAO,OAAA,EAAA,GAAY;AAClB,IAAA,OAAA,CAAQ,SAAA,EAAW,MAAM,gCAAA,CAAsB,OAAA,CAAQ,OAAA,EAAS,OAAA,CAAQ,OAAO,CAAA;AAC/E,IAAA,GAAA,CAAI,CAAC,OAAA,CAAQ,QAAA,EAAU,MAAM,IAAI,oCAAA,CAAsB,CAAA;AAAA,EACxD,CAAA;AAAA,EACA,CAAC,KAAA,EAAA,GAAU;AACV,IAAA,KAAA,CAAM,SAAA,IAAa,CAAC,CAAA;AACpB,IAAA,IAAA,CAAA,MAAW,OAAA,GAAU,OAAA,EAAS;AAC7B,MAAA,MAAM,WAAA,EAAa,MAAA,CAAO,uBAAA,CAAwB,CAAA;AAClD,MAAA,GAAA,CAAI,UAAA,EAAY,KAAA,CAAM,QAAA,CAAS,IAAA,CAAK,EAAE,CAAC,UAAU,CAAA,EAAG,CAAC,EAAE,CAAC,CAAA;AAAA,IACzD;AAEA,IAAA,KAAA,CAAM,aAAA,IAAiB,CAAC,CAAA;AACxB,IAAA,KAAA,CAAM,YAAA,CAAa,IAAA,CAAK,2CAA2C,CAAA;AAAA,EACpE;AACD,CAAA;ACHD;AACE;AACF,0CAAC","file":"/home/runner/work/equipped/equipped/dist/cjs/server/middlewares/requireAuthUser.cjs","sourcesContent":["import { NotAuthenticatedError } from '../../errors'\nimport type { AuthUser } from '../../types'\nimport { BaseRequestAuthMethod } from '../requests-auth-methods'\nimport { makeMiddleware } from '../types'\n\nexport const requireAuthUser = (methods: BaseRequestAuthMethod<AuthUser>[]) =>\n\tmakeMiddleware(\n\t\tasync (request) => {\n\t\t\trequest.authUser = await BaseRequestAuthMethod.process(methods, request.headers)\n\t\t\tif (!request.authUser) throw new NotAuthenticatedError()\n\t\t},\n\t\t(route) => {\n\t\t\troute.security ??= []\n\t\t\tfor (const method of methods) {\n\t\t\t\tconst schemeName = method.routeSecuritySchemeName()\n\t\t\t\tif (schemeName) route.security.push({ [schemeName]: [] })\n\t\t\t}\n\n\t\t\troute.descriptions ??= []\n\t\t\troute.descriptions.push('Requires a valid means of authentication.')\n\t\t},\n\t)\n",null]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _indexmincjs = require('../../errors/index.min.cjs');var _indexmincjs3 = require('../requests-auth-methods/index.min.cjs');var _typesmincjs = require('../types.min.cjs');const u=t=>_typesmincjs.makeMiddleware.call(void 0, async e=>{if(e.authUser=await _indexmincjs3.BaseRequestAuthMethod.process(t,e.headers),!e.authUser)throw new _indexmincjs.NotAuthenticatedError},e=>{e.security??=[];for(const s of t){const r=s.routeSecuritySchemeName();r&&e.security.push({[r]:[]})}e.descriptions??=[],e.descriptions.push("Requires a valid means of authentication.")});exports.requireAuthUser = u;
2
- //# sourceMappingURL=requireAuthUser.min.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/server/middlewares/requireAuthUser.ts"],"names":["makeMiddleware","request","route","method","methods","schemeName"],"mappings":"AAAA,kIAES,sEACAA,+CAKa,MAA4B,CAAA,CAAA,CAAA,EAAA,yCAAA,MAAyB,CAAA,EAAA,CAAA,EAAO,CAAA,CAC3E,CAACC,QAAQ,CAAA,MAAU,mCAAA,CAAM,OAE7BC,CAAAA,CAAAA,CAAU,CACVA,CAAAA,OAAM,CAAA,CAAA,CAAA,CAAA,CAAa,QACnB,CAAA,MAAWC,IAAUC,kCAAS,CAC7B,CAAA,CAAA,EAAA,CAAA,CAAMC,CAAAA,QAAoB,GAAA,CAAA,CAAA,CAAA,GAAA,CAAA,MAAA,EAAA,GACtBA,CAAAA,CAAAA,CAAYH,MAAM,CAAA,CAAA,CAAA,CAAA,uBAGjB,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,QACA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,YAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YAAA,CAAA,IAAA,CAAA,2CAE1B,CAAA,CAAA,CAAA,CAAA,4BAAA","file":"/home/runner/work/equipped/equipped/dist/cjs/server/middlewares/requireAuthUser.min.cjs","sourcesContent":["import { NotAuthenticatedError } from '../../errors'\nimport type { AuthUser } from '../../types'\nimport { BaseRequestAuthMethod } from '../requests-auth-methods'\nimport { makeMiddleware } from '../types'\n\nexport const requireAuthUser = (methods: BaseRequestAuthMethod<AuthUser>[]) =>\n\tmakeMiddleware(\n\t\tasync (request) => {\n\t\t\trequest.authUser = await BaseRequestAuthMethod.process(methods, request.headers)\n\t\t\tif (!request.authUser) throw new NotAuthenticatedError()\n\t\t},\n\t\t(route) => {\n\t\t\troute.security ??= []\n\t\t\tfor (const method of methods) {\n\t\t\t\tconst schemeName = method.routeSecuritySchemeName()\n\t\t\t\tif (schemeName) route.security.push({ [schemeName]: [] })\n\t\t\t}\n\n\t\t\troute.descriptions ??= []\n\t\t\troute.descriptions.push('Requires a valid means of authentication.')\n\t\t},\n\t)\n"]}
@@ -1,191 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); 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 _jsonschematoopenapischema = require('@openapi-contrib/json-schema-to-openapi-schema');
2
- var _valleyed = require('valleyed');
3
- var _indexcjs = require('../instance/index.cjs');
4
- var _routescjs = require('./routes.cjs');
5
- class OpenApi {
6
- constructor(config) {
7
- this.config = config;
8
- const instance = _indexcjs.Instance.get();
9
- const { app } = instance.settings;
10
- this.#baseOpenapiDoc = {
11
- openapi: "3.0.0",
12
- info: {
13
- title: `${app.name} ${instance.id}`,
14
- version: _nullishCoalesce(config.openapi.docsVersion, () => ( ""))
15
- },
16
- servers: _optionalChain([config, 'access', _ => _.openapi, 'access', _2 => _2.docsBaseUrl, 'optionalAccess', _3 => _3.map, 'call', _4 => _4((url) => ({ url }))]),
17
- paths: {},
18
- components: {
19
- schemas: {},
20
- securitySchemes: {
21
- Authorization: {
22
- type: "apiKey",
23
- name: "authorization",
24
- in: "header"
25
- },
26
- RefreshToken: {
27
- type: "apiKey",
28
- name: "x-refresh-token",
29
- in: "header"
30
- },
31
- ApiKey: {
32
- type: "apiKey",
33
- name: "x-api-key",
34
- in: "header"
35
- }
36
- }
37
- },
38
- tags: [],
39
- "x-tagGroups": []
40
- };
41
- }
42
- #registeredTags = {};
43
- #registeredTagGroups = {};
44
- #baseOpenapiDoc;
45
- cleanPath(path) {
46
- let cleaned = path.replace(/(\/\s*)+/g, "/");
47
- if (!cleaned.startsWith("/")) cleaned = `/${cleaned}`;
48
- if (cleaned !== "/" && cleaned.endsWith("/")) cleaned = cleaned.slice(0, -1);
49
- return cleaned;
50
- }
51
- async register(route, def) {
52
- if (route.hide) return;
53
- const tag = this.#buildTag(_nullishCoalesce(route.groups, () => ( [])));
54
- const cleanPath = this.cleanPath(route.path);
55
- const operationId = `(${route.method.toUpperCase()}) ${cleanPath}`;
56
- await this.#addRouteToOpenApiDoc(cleanPath, route.method.toLowerCase(), def, {
57
- operationId,
58
- summary: _nullishCoalesce(route.title, () => ( cleanPath)),
59
- description: _optionalChain([route, 'access', _5 => _5.descriptions, 'optionalAccess', _6 => _6.join, 'call', _7 => _7("\n\n")]),
60
- tags: tag ? [tag] : void 0,
61
- security: route.security
62
- });
63
- }
64
- async #addRouteToOpenApiDoc(path, method, def, methodObj) {
65
- if (_optionalChain([def, 'access', _8 => _8.response, 'access', _9 => _9.response, 'optionalAccess', _10 => _10.length])) {
66
- methodObj.responses ??= {};
67
- for (const resp of def.response.response) {
68
- methodObj.responses[resp.status] ??= { description: "", content: {} };
69
- const res = methodObj.responses[resp.status];
70
- res.content[resp.contentType] = { schema: await _jsonschematoopenapischema.convert.call(void 0, this.#visit(resp.schema)) };
71
- }
72
- }
73
- if (_optionalChain([def, 'access', _11 => _11.response, 'access', _12 => _12.responseHeaders, 'optionalAccess', _13 => _13.length])) {
74
- methodObj.responses ??= {};
75
- for (const resp of def.response.responseHeaders) {
76
- methodObj.responses[resp.status] ??= { description: "", content: {} };
77
- methodObj.responses[resp.status];
78
- const res = methodObj.responses[resp.status];
79
- res.headers = { schema: await _jsonschematoopenapischema.convert.call(void 0, this.#visit(resp.schema)) };
80
- }
81
- }
82
- if (def.request.body)
83
- methodObj.requestBody = {
84
- required: true,
85
- content: {
86
- "application/json": { schema: await _jsonschematoopenapischema.convert.call(void 0, this.#visit(def.request.body)) }
87
- }
88
- };
89
- const parameters = [];
90
- const addParams = async (location, schema) => {
91
- if (!schema) return;
92
- const flat = this.#flattenForParameters(schema);
93
- for (const schema2 of flat) {
94
- if (!schema2.properties) continue;
95
- for (const [name, value] of Object.entries(schema2.properties))
96
- parameters.push({
97
- name,
98
- in: location,
99
- schema: await _jsonschematoopenapischema.convert.call(void 0, this.#visit(value)),
100
- required: (schema2.required || []).includes(name)
101
- });
102
- }
103
- };
104
- await Promise.all([
105
- addParams("query", def.request.query),
106
- addParams("path", def.request.params),
107
- addParams("header", def.request.headers)
108
- ]);
109
- if (parameters.length) methodObj.parameters = parameters;
110
- const base = this.#baseOpenapiDoc;
111
- if (!base.paths) base.paths = {};
112
- if (!base.paths[path]) base.paths[path] = {};
113
- base.paths[path][method] = methodObj;
114
- }
115
- router() {
116
- const jsonPath = "/openapi.json";
117
- const router = new (0, _routescjs.Router)({ path: _nullishCoalesce(this.config.openapi.docsPath, () => ( "/")), hide: true });
118
- router.get("/index.html")((req) => req.res({ body: this.#html(`.${jsonPath}`), contentType: "text/html" }));
119
- router.get(jsonPath)((req) => req.res({ body: this.#baseOpenapiDoc }));
120
- return router;
121
- }
122
- #flattenForParameters(node) {
123
- const { allOf, oneOf, anyOf, ...schema } = node;
124
- if (allOf) return allOf.flatMap((n) => this.#flattenForParameters(n));
125
- return [schema];
126
- }
127
- #visit(node) {
128
- if (!node || typeof node !== "object") return node;
129
- if (typeof node.$refId === "string") {
130
- const { $refId: id, ...rest } = node;
131
- const res = this.#visit(rest);
132
- if (_optionalChain([this, 'access', _14 => _14.#baseOpenapiDoc, 'access', _15 => _15.components, 'optionalAccess', _16 => _16.schemas])) {
133
- this.#baseOpenapiDoc.components.schemas[id] = res;
134
- return { $ref: `#/components/schemas/${id}` };
135
- } else return res;
136
- }
137
- if (Array.isArray(node)) return node.map((n) => this.#visit(n));
138
- return Object.fromEntries(Object.entries(node).map(([key, value]) => [key, this.#visit(value)]));
139
- }
140
- #buildTag(groups) {
141
- if (!groups.length) return void 0;
142
- const parsed = groups.map((g) => typeof g === "string" ? { name: g } : g);
143
- const name = parsed.map((g) => g.name).join(" > ");
144
- const displayName = _nullishCoalesce(_optionalChain([parsed, 'access', _17 => _17.at, 'call', _18 => _18(-1), 'optionalAccess', _19 => _19.name]), () => ( ""));
145
- const description = parsed.map((g) => _nullishCoalesce(_optionalChain([g, 'access', _20 => _20.description, 'optionalAccess', _21 => _21.trim, 'call', _22 => _22()]), () => ( ""))).filter(Boolean).join("\n\n\n\n");
146
- if (!this.#registeredTags[name]) {
147
- this.#registeredTags[name] = true;
148
- this.#baseOpenapiDoc.tags.push({ name, "x-displayName": displayName, description });
149
- const tagGroups = parsed.slice(0, -1);
150
- const groupName = tagGroups.map((g) => g.name).join(" > ") || "default";
151
- if (!this.#registeredTagGroups[groupName]) {
152
- const group = { name: groupName, tags: [] };
153
- this.#baseOpenapiDoc["x-tagGroups"].push(group);
154
- this.#registeredTagGroups[groupName] = group;
155
- }
156
- this.#registeredTagGroups[groupName].tags = [.../* @__PURE__ */ new Set([...this.#registeredTagGroups[groupName].tags, name])];
157
- }
158
- return name;
159
- }
160
- #html(jsonPath) {
161
- const instance = _indexcjs.Instance.get();
162
- const title = _valleyed.capitalize.call(void 0, `${instance.settings.app.name} ${instance.id}`);
163
- return `
164
- <!doctype html>
165
- <html>
166
- <head>
167
- <title>${title}</title>
168
- <meta charset="utf-8" />
169
- <meta name="viewport" content="width=device-width, initial-scale=1" />
170
- <style>
171
- .darklight-reference {
172
- display: none;
173
- }
174
- </style>
175
- </head>
176
- <body>
177
- <script id="api-reference" data-url="${jsonPath}"></script>
178
- <script>
179
- const configuration = { theme: 'purple' };
180
- document.getElementById('api-reference').dataset.configuration = JSON.stringify(configuration);
181
- </script>
182
- <script src="https://cdn.jsdelivr.net/npm/@scalar/api-reference@1.38.0"></script>
183
- </body>
184
- </html>
185
- `;
186
- }
187
- }
188
-
189
-
190
- exports.OpenApi = OpenApi;
191
- //# sourceMappingURL=openapi.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/server/openapi.ts","/home/runner/work/equipped/equipped/dist/cjs/server/openapi.cjs"],"names":["schema"],"mappings":"AAAA,4wBAAwB;AAExB,oCAA4C;AAE5C,iDAAyB;AAEzB,yCAAuB;AAmBhB,MAAM,QAAQ;AAAA,EAKpB,WAAA,CAAoB,MAAA,EAAsB;AAAtB,IAAA,IAAA,CAAA,OAAA,EAAA,MAAA;AACnB,IAAA,MAAM,SAAA,EAAW,kBAAA,CAAS,GAAA,CAAI,CAAA;AAC9B,IAAA,MAAM,EAAE,IAAI,EAAA,EAAI,QAAA,CAAS,QAAA;AACzB,IAAA,IAAA,CAAK,CAAA,eAAA,EAAkB;AAAA,MACtB,OAAA,EAAS,OAAA;AAAA,MACT,IAAA,EAAM;AAAA,QACL,KAAA,EAAO,CAAA,EAAA;AACP,QAAA;AACD,MAAA;AACS,MAAA;AACD,MAAA;AACR,MAAA;AACC,QAAA;AACA,QAAA;AACC,UAAA;AACC,YAAA;AACA,YAAA;AACI,YAAA;AACL,UAAA;AACA,UAAA;AACC,YAAA;AACA,YAAA;AACI,YAAA;AACL,UAAA;AACA,UAAA;AACC,YAAA;AACA,YAAA;AACI,YAAA;AACL,UAAA;AACD,QAAA;AACD,MAAA;AACO,MAAA;AACP,MAAA;AACD,IAAA;AACD,EAAA;AAtCA,EAAA;AACA,EAAA;AACA,EAAA;AAsCU,EAAA;AACL,IAAA;AACC,IAAA;AACD,IAAA;AACG,IAAA;AACR,EAAA;AAEM,EAAA;AACK,IAAA;AAEE,IAAA;AAEN,IAAA;AACA,IAAA;AACK,IAAA;AACV,MAAA;AACS,MAAA;AACT,MAAA;AACM,MAAA;AACI,MAAA;AACV,IAAA;AACF,EAAA;AAEM,EAAA;AACG,IAAA;AACG,MAAA;AACV,MAAA;AACC,QAAA;AACM,QAAA;AACF,QAAA;AACL,MAAA;AACD,IAAA;AAEQ,IAAA;AACG,MAAA;AACV,MAAA;AACC,QAAA;AACA,QAAA;AACM,QAAA;AACF,QAAA;AACL,MAAA;AACD,IAAA;AAEQ,IAAA;AACG,MAAA;AACT,QAAA;AACA,QAAA;AACC,UAAA;AACD,QAAA;AACD,MAAA;AAEK,IAAA;AAEA,IAAA;AACA,MAAA;AACC,MAAA;AACN,MAAA;AACMA,QAAAA;AACL,QAAA;AACC,UAAA;AACC,YAAA;AACI,YAAA;AACJ,YAAA;AACA,YAAA;AACA,UAAA;AACH,MAAA;AACD,IAAA;AAEM,IAAA;AACK,MAAA;AACA,MAAA;AACA,MAAA;AACV,IAAA;AACG,IAAA;AAEE,IAAA;AACI,IAAA;AACA,IAAA;AACC,IAAA;AACZ,EAAA;AAES,EAAA;AACF,IAAA;AACA,IAAA;AACK,IAAA;AACA,IAAA;AACJ,IAAA;AACR,EAAA;AAEA,EAAA;AACS,IAAA;AACG,IAAA;AACH,IAAA;AACT,EAAA;AAEyB,EAAA;AACnB,IAAA;AACM,IAAA;AACF,MAAA;AACF,MAAA;AACG,MAAA;AACH,QAAA;AACE,QAAA;AACD,MAAA;AACR,IAAA;AAEU,IAAA;AACH,IAAA;AACR,EAAA;AAEU,EAAA;AACG,IAAA;AACN,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AAKI,IAAA;AACJ,MAAA;AACA,MAAA;AAEC,MAAA;AACA,MAAA;AACI,MAAA;AACH,QAAA;AACD,QAAA;AACA,QAAA;AACN,MAAA;AACK,MAAA;AACN,IAAA;AAEO,IAAA;AACR,EAAA;AAEM,EAAA;AACC,IAAA;AACA,IAAA;AACC,IAAA;AAAA;AAAA;AAAA;AAII,WAAA;AAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yCAAA;AAUiC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlD,EAAA;AACD;AC3CgB;AACA;AACA","file":"/home/runner/work/equipped/equipped/dist/cjs/server/openapi.cjs","sourcesContent":["import { convert } from '@openapi-contrib/json-schema-to-openapi-schema'\nimport type { OpenAPIV3_1 } from 'openapi-types'\nimport { capitalize, type JsonSchema } from 'valleyed'\n\nimport { Instance } from '../instance'\nimport type { ServerConfig } from './pipes'\nimport { Router } from './routes'\nimport type { Route } from './types'\n\ndeclare module 'openapi-types' {\n\tnamespace OpenAPIV3 {\n\t\tinterface Document {\n\t\t\t'x-tagGroups': { name: string; tags: string[] }[]\n\t\t}\n\t\tinterface TagObject {\n\t\t\t'x-displayName': string\n\t\t}\n\t}\n}\n\nexport type OpenApiSchemaDef = {\n\trequest: Partial<Record<'body' | 'query' | 'params' | 'headers' | 'response', JsonSchema>>\n\tresponse: Partial<Record<'response' | 'responseHeaders', { status: number; schema: JsonSchema; contentType: string }[]>>\n}\n\nexport class OpenApi {\n\t#registeredTags: Record<string, boolean> = {}\n\t#registeredTagGroups: Record<string, { name: string; tags: string[] }> = {}\n\t#baseOpenapiDoc: OpenAPIV3_1.Document\n\n\tconstructor(private config: ServerConfig) {\n\t\tconst instance = Instance.get()\n\t\tconst { app } = instance.settings\n\t\tthis.#baseOpenapiDoc = {\n\t\t\topenapi: '3.0.0',\n\t\t\tinfo: {\n\t\t\t\ttitle: `${app.name} ${instance.id}`,\n\t\t\t\tversion: config.openapi.docsVersion ?? '',\n\t\t\t},\n\t\t\tservers: config.openapi.docsBaseUrl?.map((url) => ({ url })),\n\t\t\tpaths: {},\n\t\t\tcomponents: {\n\t\t\t\tschemas: {},\n\t\t\t\tsecuritySchemes: {\n\t\t\t\t\tAuthorization: {\n\t\t\t\t\t\ttype: 'apiKey',\n\t\t\t\t\t\tname: 'authorization',\n\t\t\t\t\t\tin: 'header',\n\t\t\t\t\t},\n\t\t\t\t\tRefreshToken: {\n\t\t\t\t\t\ttype: 'apiKey',\n\t\t\t\t\t\tname: 'x-refresh-token',\n\t\t\t\t\t\tin: 'header',\n\t\t\t\t\t},\n\t\t\t\t\tApiKey: {\n\t\t\t\t\t\ttype: 'apiKey',\n\t\t\t\t\t\tname: 'x-api-key',\n\t\t\t\t\t\tin: 'header',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\ttags: [],\n\t\t\t'x-tagGroups': [],\n\t\t}\n\t}\n\n\tcleanPath(path: string) {\n\t\tlet cleaned = path.replace(/(\\/\\s*)+/g, '/')\n\t\tif (!cleaned.startsWith('/')) cleaned = `/${cleaned}`\n\t\tif (cleaned !== '/' && cleaned.endsWith('/')) cleaned = cleaned.slice(0, -1)\n\t\treturn cleaned\n\t}\n\n\tasync register(route: Route<any>, def: OpenApiSchemaDef) {\n\t\tif (route.hide) return\n\n\t\tconst tag = this.#buildTag(route.groups ?? [])\n\n\t\tconst cleanPath = this.cleanPath(route.path)\n\t\tconst operationId = `(${route.method.toUpperCase()}) ${cleanPath}`\n\t\tawait this.#addRouteToOpenApiDoc(cleanPath, route.method.toLowerCase(), def, {\n\t\t\toperationId,\n\t\t\tsummary: route.title ?? cleanPath,\n\t\t\tdescription: route.descriptions?.join('\\n\\n'),\n\t\t\ttags: tag ? [tag] : undefined,\n\t\t\tsecurity: route.security,\n\t\t})\n\t}\n\n\tasync #addRouteToOpenApiDoc(path: string, method: string, def: OpenApiSchemaDef, methodObj: OpenAPIV3_1.OperationObject) {\n\t\tif (def.response.response?.length) {\n\t\t\tmethodObj.responses ??= {}\n\t\t\tfor (const resp of def.response.response) {\n\t\t\t\tmethodObj.responses[resp.status] ??= { description: '', content: {} }\n\t\t\t\tconst res = methodObj.responses[resp.status] as OpenAPIV3_1.ResponseObject\n\t\t\t\tres.content![resp.contentType] = { schema: await convert(this.#visit(resp.schema)) }\n\t\t\t}\n\t\t}\n\n\t\tif (def.response.responseHeaders?.length) {\n\t\t\tmethodObj.responses ??= {}\n\t\t\tfor (const resp of def.response.responseHeaders) {\n\t\t\t\tmethodObj.responses[resp.status] ??= { description: '', content: {} }\n\t\t\t\tmethodObj.responses[resp.status] as OpenAPIV3_1.ResponseObject\n\t\t\t\tconst res = methodObj.responses[resp.status] as OpenAPIV3_1.ResponseObject\n\t\t\t\tres.headers = { schema: (await convert(this.#visit(resp.schema))) as any }\n\t\t\t}\n\t\t}\n\n\t\tif (def.request.body)\n\t\t\tmethodObj.requestBody = {\n\t\t\t\trequired: true,\n\t\t\t\tcontent: {\n\t\t\t\t\t'application/json': { schema: await convert(this.#visit(def.request.body)) },\n\t\t\t\t},\n\t\t\t}\n\n\t\tconst parameters: OpenAPIV3_1.ParameterObject[] = []\n\n\t\tconst addParams = async (location: 'query' | 'path' | 'header', schema: JsonSchema | undefined) => {\n\t\t\tif (!schema) return\n\t\t\tconst flat = this.#flattenForParameters(schema)\n\t\t\tfor (const schema of flat) {\n\t\t\t\tif (!schema.properties) continue\n\t\t\t\tfor (const [name, value] of Object.entries(schema.properties))\n\t\t\t\t\tparameters.push({\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tin: location,\n\t\t\t\t\t\tschema: await convert(this.#visit(value)),\n\t\t\t\t\t\trequired: (schema.required || []).includes(name),\n\t\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait Promise.all([\n\t\t\taddParams('query', def.request.query),\n\t\t\taddParams('path', def.request.params),\n\t\t\taddParams('header', def.request.headers),\n\t\t])\n\t\tif (parameters.length) methodObj.parameters = parameters\n\n\t\tconst base = this.#baseOpenapiDoc\n\t\tif (!base.paths) base.paths = {}\n\t\tif (!base.paths[path]) base.paths[path] = {}\n\t\tbase.paths[path]![method] = methodObj\n\t}\n\n\trouter() {\n\t\tconst jsonPath = '/openapi.json'\n\t\tconst router = new Router({ path: this.config.openapi.docsPath ?? '/', hide: true })\n\t\trouter.get('/index.html')((req) => req.res({ body: this.#html(`.${jsonPath}`), contentType: 'text/html' }))\n\t\trouter.get(jsonPath)((req) => req.res({ body: this.#baseOpenapiDoc }))\n\t\treturn router\n\t}\n\n\t#flattenForParameters(node: JsonSchema): JsonSchema[] {\n\t\tconst { allOf, oneOf, anyOf, ...schema } = node\n\t\tif (allOf) return allOf.flatMap((n) => this.#flattenForParameters(n))\n\t\treturn [schema]\n\t}\n\n\t#visit(node: JsonSchema) {\n\t\tif (!node || typeof node !== 'object') return node\n\t\tif (typeof node.$refId === 'string') {\n\t\t\tconst { $refId: id, ...rest } = node\n\t\t\tconst res = this.#visit(rest)\n\t\t\tif (this.#baseOpenapiDoc.components?.schemas) {\n\t\t\t\tthis.#baseOpenapiDoc.components.schemas[id] = res\n\t\t\t\treturn { $ref: `#/components/schemas/${id}` }\n\t\t\t} else return res\n\t\t}\n\n\t\tif (Array.isArray(node)) return node.map((n) => this.#visit(n)) as any\n\t\treturn Object.fromEntries(Object.entries(node).map(([key, value]) => [key, this.#visit(value as any)]))\n\t}\n\n\t#buildTag(groups: NonNullable<Route<any>['groups']>) {\n\t\tif (!groups.length) return undefined\n\t\tconst parsed = groups.map((g) => (typeof g === 'string' ? { name: g } : g))\n\t\tconst name = parsed.map((g) => g.name).join(' > ')\n\t\tconst displayName = parsed.at(-1)?.name ?? ''\n\t\tconst description = parsed\n\t\t\t.map((g) => g.description?.trim() ?? '')\n\t\t\t.filter(Boolean)\n\t\t\t.join('\\n\\n\\n\\n')\n\n\t\tif (!this.#registeredTags[name]) {\n\t\t\tthis.#registeredTags[name] = true\n\t\t\tthis.#baseOpenapiDoc.tags!.push({ name, 'x-displayName': displayName, description })\n\n\t\t\tconst tagGroups = parsed.slice(0, -1)\n\t\t\tconst groupName = tagGroups.map((g) => g.name).join(' > ') || 'default'\n\t\t\tif (!this.#registeredTagGroups[groupName]) {\n\t\t\t\tconst group = { name: groupName, tags: [] }\n\t\t\t\tthis.#baseOpenapiDoc['x-tagGroups'].push(group)\n\t\t\t\tthis.#registeredTagGroups[groupName] = group\n\t\t\t}\n\t\t\tthis.#registeredTagGroups[groupName].tags = [...new Set([...this.#registeredTagGroups[groupName].tags, name])]\n\t\t}\n\n\t\treturn name\n\t}\n\n\t#html(jsonPath: string) {\n\t\tconst instance = Instance.get()\n\t\tconst title = capitalize(`${instance.settings.app.name} ${instance.id}`)\n\t\treturn `\n<!doctype html>\n<html>\n <head>\n <title>${title}</title>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n\t<style>\n .darklight-reference {\n display: none;\n }\n </style>\n </head>\n <body>\n <script id=\"api-reference\" data-url=\"${jsonPath}\"></script>\n <script>\n const configuration = { theme: 'purple' };\n document.getElementById('api-reference').dataset.configuration = JSON.stringify(configuration);\n </script>\n <script src=\"https://cdn.jsdelivr.net/npm/@scalar/api-reference@1.38.0\"></script>\n </body>\n</html>\n`\n\t}\n}\n",null]}