@mionjs/router 0.8.8 → 0.13.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 (771) hide show
  1. package/.dist/cjs/.mion/types/A0Qb_D32xQCR.cjs +16 -0
  2. package/.dist/cjs/.mion/types/A0Qb_D32xQCR.cjs.map +1 -0
  3. package/.dist/cjs/.mion/types/A0Qb_D5PMNNO.cjs +17 -0
  4. package/.dist/cjs/.mion/types/A0Qb_D5PMNNO.cjs.map +1 -0
  5. package/.dist/cjs/.mion/types/A0Qb_E1CjDEA.cjs +36 -0
  6. package/.dist/cjs/.mion/types/A0Qb_E1CjDEA.cjs.map +1 -0
  7. package/.dist/cjs/.mion/types/A0Qb_EYEglde.cjs +16 -0
  8. package/.dist/cjs/.mion/types/A0Qb_EYEglde.cjs.map +1 -0
  9. package/.dist/cjs/.mion/types/A0Qb_EyHLuYw.cjs +16 -0
  10. package/.dist/cjs/.mion/types/A0Qb_EyHLuYw.cjs.map +1 -0
  11. package/.dist/cjs/.mion/types/A0Qb_G42dZdW.cjs +16 -0
  12. package/.dist/cjs/.mion/types/A0Qb_G42dZdW.cjs.map +1 -0
  13. package/.dist/cjs/.mion/types/A0Qb_HSE8icr.cjs +16 -0
  14. package/.dist/cjs/.mion/types/A0Qb_HSE8icr.cjs.map +1 -0
  15. package/.dist/cjs/.mion/types/A0Qb_HXAy3Lx.cjs +13 -0
  16. package/.dist/cjs/.mion/types/A0Qb_HXAy3Lx.cjs.map +1 -0
  17. package/.dist/cjs/.mion/types/A0Qb_JJrCj9i.cjs +13 -0
  18. package/.dist/cjs/.mion/types/A0Qb_JJrCj9i.cjs.map +1 -0
  19. package/.dist/cjs/.mion/types/A0Qb_KDyf2Fa.cjs +16 -0
  20. package/.dist/cjs/.mion/types/A0Qb_KDyf2Fa.cjs.map +1 -0
  21. package/.dist/cjs/.mion/types/A0Qb_L3mQkaR.cjs +13 -0
  22. package/.dist/cjs/.mion/types/A0Qb_L3mQkaR.cjs.map +1 -0
  23. package/.dist/cjs/.mion/types/A0Qb_RAudOr2.cjs +13 -0
  24. package/.dist/cjs/.mion/types/A0Qb_RAudOr2.cjs.map +1 -0
  25. package/.dist/cjs/.mion/types/A0Qb_TRnIbow.cjs +17 -0
  26. package/.dist/cjs/.mion/types/A0Qb_TRnIbow.cjs.map +1 -0
  27. package/.dist/cjs/.mion/types/A0Qb_UOI3bXq.cjs +17 -0
  28. package/.dist/cjs/.mion/types/A0Qb_UOI3bXq.cjs.map +1 -0
  29. package/.dist/cjs/.mion/types/A0Qb_VsWxRKn.cjs +13 -0
  30. package/.dist/cjs/.mion/types/A0Qb_VsWxRKn.cjs.map +1 -0
  31. package/.dist/cjs/.mion/types/A0Qb_ZTKzxQG.cjs +16 -0
  32. package/.dist/cjs/.mion/types/A0Qb_ZTKzxQG.cjs.map +1 -0
  33. package/.dist/cjs/.mion/types/A0Qb_b4tYK8X.cjs +16 -0
  34. package/.dist/cjs/.mion/types/A0Qb_b4tYK8X.cjs.map +1 -0
  35. package/.dist/cjs/.mion/types/A0Qb_deFq9zY.cjs +26 -0
  36. package/.dist/cjs/.mion/types/A0Qb_deFq9zY.cjs.map +1 -0
  37. package/.dist/cjs/.mion/types/A0Qb_fMIJ1JT.cjs +14 -0
  38. package/.dist/cjs/.mion/types/A0Qb_fMIJ1JT.cjs.map +1 -0
  39. package/.dist/cjs/.mion/types/A0Qb_g17turq.cjs +13 -0
  40. package/.dist/cjs/.mion/types/A0Qb_g17turq.cjs.map +1 -0
  41. package/.dist/cjs/.mion/types/A0Qb_hqa3Nzs.cjs +14 -0
  42. package/.dist/cjs/.mion/types/A0Qb_hqa3Nzs.cjs.map +1 -0
  43. package/.dist/cjs/.mion/types/A0Qb_iKPrxW9.cjs +16 -0
  44. package/.dist/cjs/.mion/types/A0Qb_iKPrxW9.cjs.map +1 -0
  45. package/.dist/cjs/.mion/types/A0Qb_jLtJ5Kv.cjs +16 -0
  46. package/.dist/cjs/.mion/types/A0Qb_jLtJ5Kv.cjs.map +1 -0
  47. package/.dist/cjs/.mion/types/A0Qb_kibOHkN.cjs +14 -0
  48. package/.dist/cjs/.mion/types/A0Qb_kibOHkN.cjs.map +1 -0
  49. package/.dist/cjs/.mion/types/A0Qb_kz5ne4c.cjs +16 -0
  50. package/.dist/cjs/.mion/types/A0Qb_kz5ne4c.cjs.map +1 -0
  51. package/.dist/cjs/.mion/types/A0Qb_pzBRrJb.cjs +16 -0
  52. package/.dist/cjs/.mion/types/A0Qb_pzBRrJb.cjs.map +1 -0
  53. package/.dist/cjs/.mion/types/Eq2V_EYEglde.cjs +16 -0
  54. package/.dist/cjs/.mion/types/Eq2V_EYEglde.cjs.map +1 -0
  55. package/.dist/cjs/.mion/types/Eq2V_EyHLuYw.cjs +16 -0
  56. package/.dist/cjs/.mion/types/Eq2V_EyHLuYw.cjs.map +1 -0
  57. package/.dist/cjs/.mion/types/Eq2V_HSE8icr.cjs +16 -0
  58. package/.dist/cjs/.mion/types/Eq2V_HSE8icr.cjs.map +1 -0
  59. package/.dist/cjs/.mion/types/Eq2V_HXAy3Lx.cjs +13 -0
  60. package/.dist/cjs/.mion/types/Eq2V_HXAy3Lx.cjs.map +1 -0
  61. package/.dist/cjs/.mion/types/Eq2V_JJrCj9i.cjs +13 -0
  62. package/.dist/cjs/.mion/types/Eq2V_JJrCj9i.cjs.map +1 -0
  63. package/.dist/cjs/.mion/types/Eq2V_KDyf2Fa.cjs +16 -0
  64. package/.dist/cjs/.mion/types/Eq2V_KDyf2Fa.cjs.map +1 -0
  65. package/.dist/cjs/.mion/types/Eq2V_L3mQkaR.cjs +13 -0
  66. package/.dist/cjs/.mion/types/Eq2V_L3mQkaR.cjs.map +1 -0
  67. package/.dist/cjs/.mion/types/Eq2V_RAudOr2.cjs +13 -0
  68. package/.dist/cjs/.mion/types/Eq2V_RAudOr2.cjs.map +1 -0
  69. package/.dist/cjs/.mion/types/Eq2V_TRnIbow.cjs +17 -0
  70. package/.dist/cjs/.mion/types/Eq2V_TRnIbow.cjs.map +1 -0
  71. package/.dist/cjs/.mion/types/Eq2V_UOI3bXq.cjs +17 -0
  72. package/.dist/cjs/.mion/types/Eq2V_UOI3bXq.cjs.map +1 -0
  73. package/.dist/cjs/.mion/types/Eq2V_VsWxRKn.cjs +13 -0
  74. package/.dist/cjs/.mion/types/Eq2V_VsWxRKn.cjs.map +1 -0
  75. package/.dist/cjs/.mion/types/Eq2V_ZTKzxQG.cjs +16 -0
  76. package/.dist/cjs/.mion/types/Eq2V_ZTKzxQG.cjs.map +1 -0
  77. package/.dist/cjs/.mion/types/Eq2V_b4tYK8X.cjs +16 -0
  78. package/.dist/cjs/.mion/types/Eq2V_b4tYK8X.cjs.map +1 -0
  79. package/.dist/cjs/.mion/types/Eq2V_deFq9zY.cjs +26 -0
  80. package/.dist/cjs/.mion/types/Eq2V_deFq9zY.cjs.map +1 -0
  81. package/.dist/cjs/.mion/types/Eq2V_g17turq.cjs +13 -0
  82. package/.dist/cjs/.mion/types/Eq2V_g17turq.cjs.map +1 -0
  83. package/.dist/cjs/.mion/types/Eq2V_iKPrxW9.cjs +16 -0
  84. package/.dist/cjs/.mion/types/Eq2V_iKPrxW9.cjs.map +1 -0
  85. package/.dist/cjs/.mion/types/Eq2V_jLtJ5Kv.cjs +16 -0
  86. package/.dist/cjs/.mion/types/Eq2V_jLtJ5Kv.cjs.map +1 -0
  87. package/.dist/cjs/.mion/types/Eq2V_kz5ne4c.cjs +16 -0
  88. package/.dist/cjs/.mion/types/Eq2V_kz5ne4c.cjs.map +1 -0
  89. package/.dist/cjs/.mion/types/Eq2V_pzBRrJb.cjs +16 -0
  90. package/.dist/cjs/.mion/types/Eq2V_pzBRrJb.cjs.map +1 -0
  91. package/.dist/cjs/.mion/types/Ky89_D32xQCR.cjs +16 -0
  92. package/.dist/cjs/.mion/types/Ky89_D32xQCR.cjs.map +1 -0
  93. package/.dist/cjs/.mion/types/Ky89_D5PMNNO.cjs +16 -0
  94. package/.dist/cjs/.mion/types/Ky89_D5PMNNO.cjs.map +1 -0
  95. package/.dist/cjs/.mion/types/Ky89_E1CjDEA.cjs +32 -0
  96. package/.dist/cjs/.mion/types/Ky89_E1CjDEA.cjs.map +1 -0
  97. package/.dist/cjs/.mion/types/Ky89_EYEglde.cjs +16 -0
  98. package/.dist/cjs/.mion/types/Ky89_EYEglde.cjs.map +1 -0
  99. package/.dist/cjs/.mion/types/Ky89_EyHLuYw.cjs +16 -0
  100. package/.dist/cjs/.mion/types/Ky89_EyHLuYw.cjs.map +1 -0
  101. package/.dist/cjs/.mion/types/Ky89_G42dZdW.cjs +16 -0
  102. package/.dist/cjs/.mion/types/Ky89_G42dZdW.cjs.map +1 -0
  103. package/.dist/cjs/.mion/types/Ky89_HSE8icr.cjs +16 -0
  104. package/.dist/cjs/.mion/types/Ky89_HSE8icr.cjs.map +1 -0
  105. package/.dist/cjs/.mion/types/Ky89_JJrCj9i.cjs +13 -0
  106. package/.dist/cjs/.mion/types/Ky89_JJrCj9i.cjs.map +1 -0
  107. package/.dist/cjs/.mion/types/Ky89_KDyf2Fa.cjs +16 -0
  108. package/.dist/cjs/.mion/types/Ky89_KDyf2Fa.cjs.map +1 -0
  109. package/.dist/cjs/.mion/types/Ky89_L3mQkaR.cjs +13 -0
  110. package/.dist/cjs/.mion/types/Ky89_L3mQkaR.cjs.map +1 -0
  111. package/.dist/cjs/.mion/types/Ky89_RAudOr2.cjs +13 -0
  112. package/.dist/cjs/.mion/types/Ky89_RAudOr2.cjs.map +1 -0
  113. package/.dist/cjs/.mion/types/Ky89_TRnIbow.cjs +13 -0
  114. package/.dist/cjs/.mion/types/Ky89_TRnIbow.cjs.map +1 -0
  115. package/.dist/cjs/.mion/types/Ky89_UOI3bXq.cjs +17 -0
  116. package/.dist/cjs/.mion/types/Ky89_UOI3bXq.cjs.map +1 -0
  117. package/.dist/cjs/.mion/types/Ky89_ZTKzxQG.cjs +16 -0
  118. package/.dist/cjs/.mion/types/Ky89_ZTKzxQG.cjs.map +1 -0
  119. package/.dist/cjs/.mion/types/Ky89_b4tYK8X.cjs +16 -0
  120. package/.dist/cjs/.mion/types/Ky89_b4tYK8X.cjs.map +1 -0
  121. package/.dist/cjs/.mion/types/Ky89_deFq9zY.cjs +26 -0
  122. package/.dist/cjs/.mion/types/Ky89_deFq9zY.cjs.map +1 -0
  123. package/.dist/cjs/.mion/types/Ky89_fMIJ1JT.cjs +13 -0
  124. package/.dist/cjs/.mion/types/Ky89_fMIJ1JT.cjs.map +1 -0
  125. package/.dist/cjs/.mion/types/Ky89_g17turq.cjs +13 -0
  126. package/.dist/cjs/.mion/types/Ky89_g17turq.cjs.map +1 -0
  127. package/.dist/cjs/.mion/types/Ky89_hqa3Nzs.cjs +14 -0
  128. package/.dist/cjs/.mion/types/Ky89_hqa3Nzs.cjs.map +1 -0
  129. package/.dist/cjs/.mion/types/Ky89_iKPrxW9.cjs +16 -0
  130. package/.dist/cjs/.mion/types/Ky89_iKPrxW9.cjs.map +1 -0
  131. package/.dist/cjs/.mion/types/Ky89_jLtJ5Kv.cjs +16 -0
  132. package/.dist/cjs/.mion/types/Ky89_jLtJ5Kv.cjs.map +1 -0
  133. package/.dist/cjs/.mion/types/Ky89_kibOHkN.cjs +13 -0
  134. package/.dist/cjs/.mion/types/Ky89_kibOHkN.cjs.map +1 -0
  135. package/.dist/cjs/.mion/types/Ky89_kz5ne4c.cjs +16 -0
  136. package/.dist/cjs/.mion/types/Ky89_kz5ne4c.cjs.map +1 -0
  137. package/.dist/cjs/.mion/types/Ky89_pzBRrJb.cjs +16 -0
  138. package/.dist/cjs/.mion/types/Ky89_pzBRrJb.cjs.map +1 -0
  139. package/.dist/cjs/.mion/types/OBOg_D32xQCR.cjs +23 -0
  140. package/.dist/cjs/.mion/types/OBOg_D32xQCR.cjs.map +1 -0
  141. package/.dist/cjs/.mion/types/OBOg_D5PMNNO.cjs +18 -0
  142. package/.dist/cjs/.mion/types/OBOg_D5PMNNO.cjs.map +1 -0
  143. package/.dist/cjs/.mion/types/OBOg_E1CjDEA.cjs +18 -0
  144. package/.dist/cjs/.mion/types/OBOg_E1CjDEA.cjs.map +1 -0
  145. package/.dist/cjs/.mion/types/OBOg_G42dZdW.cjs +18 -0
  146. package/.dist/cjs/.mion/types/OBOg_G42dZdW.cjs.map +1 -0
  147. package/.dist/cjs/.mion/types/OBOg_LKYfhxm.cjs +18 -0
  148. package/.dist/cjs/.mion/types/OBOg_LKYfhxm.cjs.map +1 -0
  149. package/.dist/cjs/.mion/types/OBOg_fMIJ1JT.cjs +18 -0
  150. package/.dist/cjs/.mion/types/OBOg_fMIJ1JT.cjs.map +1 -0
  151. package/.dist/cjs/.mion/types/OBOg_g17turq.cjs +17 -0
  152. package/.dist/cjs/.mion/types/OBOg_g17turq.cjs.map +1 -0
  153. package/.dist/cjs/.mion/types/OBOg_hqa3Nzs.cjs +17 -0
  154. package/.dist/cjs/.mion/types/OBOg_hqa3Nzs.cjs.map +1 -0
  155. package/.dist/cjs/.mion/types/OBOg_kibOHkN.cjs +17 -0
  156. package/.dist/cjs/.mion/types/OBOg_kibOHkN.cjs.map +1 -0
  157. package/.dist/cjs/.mion/types/Xhuv_D32xQCR.cjs +16 -0
  158. package/.dist/cjs/.mion/types/Xhuv_D32xQCR.cjs.map +1 -0
  159. package/.dist/cjs/.mion/types/Xhuv_D5PMNNO.cjs +16 -0
  160. package/.dist/cjs/.mion/types/Xhuv_D5PMNNO.cjs.map +1 -0
  161. package/.dist/cjs/.mion/types/Xhuv_E1CjDEA.cjs +29 -0
  162. package/.dist/cjs/.mion/types/Xhuv_E1CjDEA.cjs.map +1 -0
  163. package/.dist/cjs/.mion/types/Xhuv_EYEglde.cjs +16 -0
  164. package/.dist/cjs/.mion/types/Xhuv_EYEglde.cjs.map +1 -0
  165. package/.dist/cjs/.mion/types/Xhuv_EyHLuYw.cjs +16 -0
  166. package/.dist/cjs/.mion/types/Xhuv_EyHLuYw.cjs.map +1 -0
  167. package/.dist/cjs/.mion/types/Xhuv_G42dZdW.cjs +16 -0
  168. package/.dist/cjs/.mion/types/Xhuv_G42dZdW.cjs.map +1 -0
  169. package/.dist/cjs/.mion/types/Xhuv_HSE8icr.cjs +16 -0
  170. package/.dist/cjs/.mion/types/Xhuv_HSE8icr.cjs.map +1 -0
  171. package/.dist/cjs/.mion/types/Xhuv_HXAy3Lx.cjs +13 -0
  172. package/.dist/cjs/.mion/types/Xhuv_HXAy3Lx.cjs.map +1 -0
  173. package/.dist/cjs/.mion/types/Xhuv_JJrCj9i.cjs +13 -0
  174. package/.dist/cjs/.mion/types/Xhuv_JJrCj9i.cjs.map +1 -0
  175. package/.dist/cjs/.mion/types/Xhuv_KDyf2Fa.cjs +16 -0
  176. package/.dist/cjs/.mion/types/Xhuv_KDyf2Fa.cjs.map +1 -0
  177. package/.dist/cjs/.mion/types/Xhuv_L3mQkaR.cjs +13 -0
  178. package/.dist/cjs/.mion/types/Xhuv_L3mQkaR.cjs.map +1 -0
  179. package/.dist/cjs/.mion/types/Xhuv_LKYfhxm.cjs +13 -0
  180. package/.dist/cjs/.mion/types/Xhuv_LKYfhxm.cjs.map +1 -0
  181. package/.dist/cjs/.mion/types/Xhuv_RAudOr2.cjs +13 -0
  182. package/.dist/cjs/.mion/types/Xhuv_RAudOr2.cjs.map +1 -0
  183. package/.dist/cjs/.mion/types/Xhuv_TRnIbow.cjs +17 -0
  184. package/.dist/cjs/.mion/types/Xhuv_TRnIbow.cjs.map +1 -0
  185. package/.dist/cjs/.mion/types/Xhuv_UOI3bXq.cjs +17 -0
  186. package/.dist/cjs/.mion/types/Xhuv_UOI3bXq.cjs.map +1 -0
  187. package/.dist/cjs/.mion/types/Xhuv_VsWxRKn.cjs +13 -0
  188. package/.dist/cjs/.mion/types/Xhuv_VsWxRKn.cjs.map +1 -0
  189. package/.dist/cjs/.mion/types/Xhuv_ZTKzxQG.cjs +16 -0
  190. package/.dist/cjs/.mion/types/Xhuv_ZTKzxQG.cjs.map +1 -0
  191. package/.dist/cjs/.mion/types/Xhuv_ZgsWs6s.cjs +13 -0
  192. package/.dist/cjs/.mion/types/Xhuv_ZgsWs6s.cjs.map +1 -0
  193. package/.dist/cjs/.mion/types/Xhuv_b4tYK8X.cjs +16 -0
  194. package/.dist/cjs/.mion/types/Xhuv_b4tYK8X.cjs.map +1 -0
  195. package/.dist/cjs/.mion/types/Xhuv_deFq9zY.cjs +26 -0
  196. package/.dist/cjs/.mion/types/Xhuv_deFq9zY.cjs.map +1 -0
  197. package/.dist/cjs/.mion/types/Xhuv_fMIJ1JT.cjs +16 -0
  198. package/.dist/cjs/.mion/types/Xhuv_fMIJ1JT.cjs.map +1 -0
  199. package/.dist/cjs/.mion/types/Xhuv_g17turq.cjs +13 -0
  200. package/.dist/cjs/.mion/types/Xhuv_g17turq.cjs.map +1 -0
  201. package/.dist/cjs/.mion/types/Xhuv_hqa3Nzs.cjs +13 -0
  202. package/.dist/cjs/.mion/types/Xhuv_hqa3Nzs.cjs.map +1 -0
  203. package/.dist/cjs/.mion/types/Xhuv_iKPrxW9.cjs +16 -0
  204. package/.dist/cjs/.mion/types/Xhuv_iKPrxW9.cjs.map +1 -0
  205. package/.dist/cjs/.mion/types/Xhuv_jLtJ5Kv.cjs +16 -0
  206. package/.dist/cjs/.mion/types/Xhuv_jLtJ5Kv.cjs.map +1 -0
  207. package/.dist/cjs/.mion/types/Xhuv_kibOHkN.cjs +13 -0
  208. package/.dist/cjs/.mion/types/Xhuv_kibOHkN.cjs.map +1 -0
  209. package/.dist/cjs/.mion/types/Xhuv_kz5ne4c.cjs +16 -0
  210. package/.dist/cjs/.mion/types/Xhuv_kz5ne4c.cjs.map +1 -0
  211. package/.dist/cjs/.mion/types/Xhuv_pzBRrJb.cjs +16 -0
  212. package/.dist/cjs/.mion/types/Xhuv_pzBRrJb.cjs.map +1 -0
  213. package/.dist/cjs/.mion/types/mzca_fMIJ1JT.cjs +14 -0
  214. package/.dist/cjs/.mion/types/mzca_fMIJ1JT.cjs.map +1 -0
  215. package/.dist/cjs/.mion/types/mzca_hqa3Nzs.cjs +14 -0
  216. package/.dist/cjs/.mion/types/mzca_hqa3Nzs.cjs.map +1 -0
  217. package/.dist/cjs/.mion/types/mzca_kibOHkN.cjs +14 -0
  218. package/.dist/cjs/.mion/types/mzca_kibOHkN.cjs.map +1 -0
  219. package/.dist/cjs/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.cjs +14 -0
  220. package/.dist/cjs/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.cjs.map +1 -0
  221. package/.dist/cjs/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.cjs +14 -0
  222. package/.dist/cjs/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.cjs.map +1 -0
  223. package/.dist/cjs/.mion/types/rt/C7ezVBCtGn.cjs +498 -0
  224. package/.dist/cjs/.mion/types/rt/C7ezVBCtGn.cjs.map +1 -0
  225. package/.dist/cjs/.mion/types/rt/VIdAjpHu1X.cjs +526 -0
  226. package/.dist/cjs/.mion/types/rt/VIdAjpHu1X.cjs.map +1 -0
  227. package/.dist/cjs/.mion/types/rt/eF4wQzU6Fd.cjs +876 -0
  228. package/.dist/cjs/.mion/types/rt/eF4wQzU6Fd.cjs.map +1 -0
  229. package/.dist/cjs/.mion/types/rt/shared/JQEexHbHMp.cjs +467 -0
  230. package/.dist/cjs/.mion/types/rt/shared/JQEexHbHMp.cjs.map +1 -0
  231. package/.dist/cjs/.mion/types/rt/shared/connsmWgsp.cjs +1475 -0
  232. package/.dist/cjs/.mion/types/rt/shared/connsmWgsp.cjs.map +1 -0
  233. package/.dist/cjs/index.cjs +115 -153
  234. package/.dist/cjs/index.d.ts +5 -4
  235. package/.dist/cjs/middlewares.cjs +5 -0
  236. package/.dist/cjs/middlewares.d.ts +3 -0
  237. package/.dist/cjs/src/batches.cjs +332 -0
  238. package/.dist/cjs/src/batches.cjs.map +1 -0
  239. package/.dist/cjs/src/batches.d.ts +22 -0
  240. package/.dist/cjs/src/callContext.cjs +72 -116
  241. package/.dist/cjs/src/callContext.cjs.map +1 -1
  242. package/.dist/cjs/src/callContext.d.ts +5 -8
  243. package/.dist/cjs/src/constants.cjs +22 -41
  244. package/.dist/cjs/src/constants.cjs.map +1 -1
  245. package/.dist/cjs/src/constants.d.ts +1 -7
  246. package/.dist/cjs/src/dispatch.cjs +227 -129
  247. package/.dist/cjs/src/dispatch.cjs.map +1 -1
  248. package/.dist/cjs/src/dispatch.d.ts +8 -2
  249. package/.dist/cjs/src/lib/bodyLimit.cjs +37 -0
  250. package/.dist/cjs/src/lib/bodyLimit.cjs.map +1 -0
  251. package/.dist/cjs/src/lib/bodyLimit.d.ts +5 -0
  252. package/.dist/cjs/src/lib/bodyReader.cjs +79 -0
  253. package/.dist/cjs/src/lib/bodyReader.cjs.map +1 -0
  254. package/.dist/cjs/src/lib/bodyReader.d.ts +10 -0
  255. package/.dist/cjs/src/lib/dispatchError.cjs +77 -34
  256. package/.dist/cjs/src/lib/dispatchError.cjs.map +1 -1
  257. package/.dist/cjs/src/lib/dispatchError.d.ts +6 -2
  258. package/.dist/cjs/src/lib/handlers.cjs +91 -44
  259. package/.dist/cjs/src/lib/handlers.cjs.map +1 -1
  260. package/.dist/cjs/src/lib/handlers.d.ts +14 -9
  261. package/.dist/cjs/src/lib/headers.cjs +172 -55
  262. package/.dist/cjs/src/lib/headers.cjs.map +1 -1
  263. package/.dist/cjs/src/lib/headers.d.ts +40 -1
  264. package/.dist/cjs/src/lib/queryBody.cjs +25 -29
  265. package/.dist/cjs/src/lib/queryBody.cjs.map +1 -1
  266. package/.dist/cjs/src/lib/queryBody.d.ts +0 -1
  267. package/.dist/cjs/src/lib/reflection.cjs +78 -371
  268. package/.dist/cjs/src/lib/reflection.cjs.map +1 -1
  269. package/.dist/cjs/src/lib/reflection.d.ts +12 -9
  270. package/.dist/cjs/src/lib/remoteMethods.cjs +104 -104
  271. package/.dist/cjs/src/lib/remoteMethods.cjs.map +1 -1
  272. package/.dist/cjs/src/lib/remoteMethods.d.ts +4 -4
  273. package/.dist/cjs/src/lib/urlQuery.cjs +24 -0
  274. package/.dist/cjs/src/lib/urlQuery.cjs.map +1 -0
  275. package/.dist/cjs/src/lib/urlQuery.d.ts +2 -0
  276. package/.dist/cjs/src/middlewares/fetchMetadata.cjs +99 -0
  277. package/.dist/cjs/src/middlewares/fetchMetadata.cjs.map +1 -0
  278. package/.dist/cjs/src/middlewares/fetchMetadata.d.ts +15 -0
  279. package/.dist/cjs/src/middlewares/syncRoutes.cjs +67 -0
  280. package/.dist/cjs/src/middlewares/syncRoutes.cjs.map +1 -0
  281. package/.dist/cjs/src/middlewares/syncRoutes.d.ts +12 -0
  282. package/.dist/cjs/src/router.cjs +506 -432
  283. package/.dist/cjs/src/router.cjs.map +1 -1
  284. package/.dist/cjs/src/router.d.ts +27 -19
  285. package/.dist/cjs/src/routes/errors.routes.cjs +81 -46
  286. package/.dist/cjs/src/routes/errors.routes.cjs.map +1 -1
  287. package/.dist/cjs/src/routes/errors.routes.d.ts +14 -3
  288. package/.dist/cjs/src/routes/serializer.routes.cjs +107 -176
  289. package/.dist/cjs/src/routes/serializer.routes.cjs.map +1 -1
  290. package/.dist/cjs/src/routes/serializer.routes.d.ts +3 -3
  291. package/.dist/cjs/src/types/context.cjs +0 -31
  292. package/.dist/cjs/src/types/context.d.ts +13 -21
  293. package/.dist/cjs/src/types/definitions.cjs +0 -15
  294. package/.dist/cjs/src/types/definitions.d.ts +32 -20
  295. package/.dist/cjs/src/types/general.cjs +0 -14
  296. package/.dist/cjs/src/types/general.d.ts +15 -15
  297. package/.dist/cjs/src/types/guards.cjs +31 -38
  298. package/.dist/cjs/src/types/guards.cjs.map +1 -1
  299. package/.dist/cjs/src/types/guards.d.ts +7 -7
  300. package/.dist/cjs/src/types/handlers.cjs +0 -13
  301. package/.dist/cjs/src/types/handlers.d.ts +8 -5
  302. package/.dist/cjs/src/types/mionRouter.cjs +0 -0
  303. package/.dist/cjs/src/types/mionRouter.d.ts +44 -0
  304. package/.dist/cjs/src/types/parser.cjs +0 -0
  305. package/.dist/cjs/src/types/parser.d.ts +43 -0
  306. package/.dist/cjs/src/types/publicMethods.cjs +0 -24
  307. package/.dist/cjs/src/types/publicMethods.d.ts +65 -25
  308. package/.dist/cjs/src/types/remoteMethods.cjs +0 -25
  309. package/.dist/cjs/src/types/remoteMethods.d.ts +49 -29
  310. package/.dist/cjs/src/types/resolvedOptions.cjs +0 -0
  311. package/.dist/cjs/src/types/resolvedOptions.d.ts +28 -0
  312. package/.dist/esm/.mion/types/A0Qb_D32xQCR.js +16 -0
  313. package/.dist/esm/.mion/types/A0Qb_D32xQCR.js.map +1 -0
  314. package/.dist/esm/.mion/types/A0Qb_D5PMNNO.js +17 -0
  315. package/.dist/esm/.mion/types/A0Qb_D5PMNNO.js.map +1 -0
  316. package/.dist/esm/.mion/types/A0Qb_E1CjDEA.js +36 -0
  317. package/.dist/esm/.mion/types/A0Qb_E1CjDEA.js.map +1 -0
  318. package/.dist/esm/.mion/types/A0Qb_EYEglde.js +16 -0
  319. package/.dist/esm/.mion/types/A0Qb_EYEglde.js.map +1 -0
  320. package/.dist/esm/.mion/types/A0Qb_EyHLuYw.js +16 -0
  321. package/.dist/esm/.mion/types/A0Qb_EyHLuYw.js.map +1 -0
  322. package/.dist/esm/.mion/types/A0Qb_G42dZdW.js +16 -0
  323. package/.dist/esm/.mion/types/A0Qb_G42dZdW.js.map +1 -0
  324. package/.dist/esm/.mion/types/A0Qb_HSE8icr.js +16 -0
  325. package/.dist/esm/.mion/types/A0Qb_HSE8icr.js.map +1 -0
  326. package/.dist/esm/.mion/types/A0Qb_HXAy3Lx.js +13 -0
  327. package/.dist/esm/.mion/types/A0Qb_HXAy3Lx.js.map +1 -0
  328. package/.dist/esm/.mion/types/A0Qb_JJrCj9i.js +13 -0
  329. package/.dist/esm/.mion/types/A0Qb_JJrCj9i.js.map +1 -0
  330. package/.dist/esm/.mion/types/A0Qb_KDyf2Fa.js +16 -0
  331. package/.dist/esm/.mion/types/A0Qb_KDyf2Fa.js.map +1 -0
  332. package/.dist/esm/.mion/types/A0Qb_L3mQkaR.js +13 -0
  333. package/.dist/esm/.mion/types/A0Qb_L3mQkaR.js.map +1 -0
  334. package/.dist/esm/.mion/types/A0Qb_RAudOr2.js +13 -0
  335. package/.dist/esm/.mion/types/A0Qb_RAudOr2.js.map +1 -0
  336. package/.dist/esm/.mion/types/A0Qb_TRnIbow.js +17 -0
  337. package/.dist/esm/.mion/types/A0Qb_TRnIbow.js.map +1 -0
  338. package/.dist/esm/.mion/types/A0Qb_UOI3bXq.js +17 -0
  339. package/.dist/esm/.mion/types/A0Qb_UOI3bXq.js.map +1 -0
  340. package/.dist/esm/.mion/types/A0Qb_VsWxRKn.js +13 -0
  341. package/.dist/esm/.mion/types/A0Qb_VsWxRKn.js.map +1 -0
  342. package/.dist/esm/.mion/types/A0Qb_ZTKzxQG.js +16 -0
  343. package/.dist/esm/.mion/types/A0Qb_ZTKzxQG.js.map +1 -0
  344. package/.dist/esm/.mion/types/A0Qb_b4tYK8X.js +16 -0
  345. package/.dist/esm/.mion/types/A0Qb_b4tYK8X.js.map +1 -0
  346. package/.dist/esm/.mion/types/A0Qb_deFq9zY.js +26 -0
  347. package/.dist/esm/.mion/types/A0Qb_deFq9zY.js.map +1 -0
  348. package/.dist/esm/.mion/types/A0Qb_fMIJ1JT.js +14 -0
  349. package/.dist/esm/.mion/types/A0Qb_fMIJ1JT.js.map +1 -0
  350. package/.dist/esm/.mion/types/A0Qb_g17turq.js +13 -0
  351. package/.dist/esm/.mion/types/A0Qb_g17turq.js.map +1 -0
  352. package/.dist/esm/.mion/types/A0Qb_hqa3Nzs.js +14 -0
  353. package/.dist/esm/.mion/types/A0Qb_hqa3Nzs.js.map +1 -0
  354. package/.dist/esm/.mion/types/A0Qb_iKPrxW9.js +16 -0
  355. package/.dist/esm/.mion/types/A0Qb_iKPrxW9.js.map +1 -0
  356. package/.dist/esm/.mion/types/A0Qb_jLtJ5Kv.js +16 -0
  357. package/.dist/esm/.mion/types/A0Qb_jLtJ5Kv.js.map +1 -0
  358. package/.dist/esm/.mion/types/A0Qb_kibOHkN.js +14 -0
  359. package/.dist/esm/.mion/types/A0Qb_kibOHkN.js.map +1 -0
  360. package/.dist/esm/.mion/types/A0Qb_kz5ne4c.js +16 -0
  361. package/.dist/esm/.mion/types/A0Qb_kz5ne4c.js.map +1 -0
  362. package/.dist/esm/.mion/types/A0Qb_pzBRrJb.js +16 -0
  363. package/.dist/esm/.mion/types/A0Qb_pzBRrJb.js.map +1 -0
  364. package/.dist/esm/.mion/types/Eq2V_EYEglde.js +16 -0
  365. package/.dist/esm/.mion/types/Eq2V_EYEglde.js.map +1 -0
  366. package/.dist/esm/.mion/types/Eq2V_EyHLuYw.js +16 -0
  367. package/.dist/esm/.mion/types/Eq2V_EyHLuYw.js.map +1 -0
  368. package/.dist/esm/.mion/types/Eq2V_HSE8icr.js +16 -0
  369. package/.dist/esm/.mion/types/Eq2V_HSE8icr.js.map +1 -0
  370. package/.dist/esm/.mion/types/Eq2V_HXAy3Lx.js +13 -0
  371. package/.dist/esm/.mion/types/Eq2V_HXAy3Lx.js.map +1 -0
  372. package/.dist/esm/.mion/types/Eq2V_JJrCj9i.js +13 -0
  373. package/.dist/esm/.mion/types/Eq2V_JJrCj9i.js.map +1 -0
  374. package/.dist/esm/.mion/types/Eq2V_KDyf2Fa.js +16 -0
  375. package/.dist/esm/.mion/types/Eq2V_KDyf2Fa.js.map +1 -0
  376. package/.dist/esm/.mion/types/Eq2V_L3mQkaR.js +13 -0
  377. package/.dist/esm/.mion/types/Eq2V_L3mQkaR.js.map +1 -0
  378. package/.dist/esm/.mion/types/Eq2V_RAudOr2.js +13 -0
  379. package/.dist/esm/.mion/types/Eq2V_RAudOr2.js.map +1 -0
  380. package/.dist/esm/.mion/types/Eq2V_TRnIbow.js +17 -0
  381. package/.dist/esm/.mion/types/Eq2V_TRnIbow.js.map +1 -0
  382. package/.dist/esm/.mion/types/Eq2V_UOI3bXq.js +17 -0
  383. package/.dist/esm/.mion/types/Eq2V_UOI3bXq.js.map +1 -0
  384. package/.dist/esm/.mion/types/Eq2V_VsWxRKn.js +13 -0
  385. package/.dist/esm/.mion/types/Eq2V_VsWxRKn.js.map +1 -0
  386. package/.dist/esm/.mion/types/Eq2V_ZTKzxQG.js +16 -0
  387. package/.dist/esm/.mion/types/Eq2V_ZTKzxQG.js.map +1 -0
  388. package/.dist/esm/.mion/types/Eq2V_b4tYK8X.js +16 -0
  389. package/.dist/esm/.mion/types/Eq2V_b4tYK8X.js.map +1 -0
  390. package/.dist/esm/.mion/types/Eq2V_deFq9zY.js +26 -0
  391. package/.dist/esm/.mion/types/Eq2V_deFq9zY.js.map +1 -0
  392. package/.dist/esm/.mion/types/Eq2V_g17turq.js +13 -0
  393. package/.dist/esm/.mion/types/Eq2V_g17turq.js.map +1 -0
  394. package/.dist/esm/.mion/types/Eq2V_iKPrxW9.js +16 -0
  395. package/.dist/esm/.mion/types/Eq2V_iKPrxW9.js.map +1 -0
  396. package/.dist/esm/.mion/types/Eq2V_jLtJ5Kv.js +16 -0
  397. package/.dist/esm/.mion/types/Eq2V_jLtJ5Kv.js.map +1 -0
  398. package/.dist/esm/.mion/types/Eq2V_kz5ne4c.js +16 -0
  399. package/.dist/esm/.mion/types/Eq2V_kz5ne4c.js.map +1 -0
  400. package/.dist/esm/.mion/types/Eq2V_pzBRrJb.js +16 -0
  401. package/.dist/esm/.mion/types/Eq2V_pzBRrJb.js.map +1 -0
  402. package/.dist/esm/.mion/types/Ky89_D32xQCR.js +16 -0
  403. package/.dist/esm/.mion/types/Ky89_D32xQCR.js.map +1 -0
  404. package/.dist/esm/.mion/types/Ky89_D5PMNNO.js +16 -0
  405. package/.dist/esm/.mion/types/Ky89_D5PMNNO.js.map +1 -0
  406. package/.dist/esm/.mion/types/Ky89_E1CjDEA.js +32 -0
  407. package/.dist/esm/.mion/types/Ky89_E1CjDEA.js.map +1 -0
  408. package/.dist/esm/.mion/types/Ky89_EYEglde.js +16 -0
  409. package/.dist/esm/.mion/types/Ky89_EYEglde.js.map +1 -0
  410. package/.dist/esm/.mion/types/Ky89_EyHLuYw.js +16 -0
  411. package/.dist/esm/.mion/types/Ky89_EyHLuYw.js.map +1 -0
  412. package/.dist/esm/.mion/types/Ky89_G42dZdW.js +16 -0
  413. package/.dist/esm/.mion/types/Ky89_G42dZdW.js.map +1 -0
  414. package/.dist/esm/.mion/types/Ky89_HSE8icr.js +16 -0
  415. package/.dist/esm/.mion/types/Ky89_HSE8icr.js.map +1 -0
  416. package/.dist/esm/.mion/types/Ky89_JJrCj9i.js +13 -0
  417. package/.dist/esm/.mion/types/Ky89_JJrCj9i.js.map +1 -0
  418. package/.dist/esm/.mion/types/Ky89_KDyf2Fa.js +16 -0
  419. package/.dist/esm/.mion/types/Ky89_KDyf2Fa.js.map +1 -0
  420. package/.dist/esm/.mion/types/Ky89_L3mQkaR.js +13 -0
  421. package/.dist/esm/.mion/types/Ky89_L3mQkaR.js.map +1 -0
  422. package/.dist/esm/.mion/types/Ky89_RAudOr2.js +13 -0
  423. package/.dist/esm/.mion/types/Ky89_RAudOr2.js.map +1 -0
  424. package/.dist/esm/.mion/types/Ky89_TRnIbow.js +13 -0
  425. package/.dist/esm/.mion/types/Ky89_TRnIbow.js.map +1 -0
  426. package/.dist/esm/.mion/types/Ky89_UOI3bXq.js +17 -0
  427. package/.dist/esm/.mion/types/Ky89_UOI3bXq.js.map +1 -0
  428. package/.dist/esm/.mion/types/Ky89_ZTKzxQG.js +16 -0
  429. package/.dist/esm/.mion/types/Ky89_ZTKzxQG.js.map +1 -0
  430. package/.dist/esm/.mion/types/Ky89_b4tYK8X.js +16 -0
  431. package/.dist/esm/.mion/types/Ky89_b4tYK8X.js.map +1 -0
  432. package/.dist/esm/.mion/types/Ky89_deFq9zY.js +26 -0
  433. package/.dist/esm/.mion/types/Ky89_deFq9zY.js.map +1 -0
  434. package/.dist/esm/.mion/types/Ky89_fMIJ1JT.js +13 -0
  435. package/.dist/esm/.mion/types/Ky89_fMIJ1JT.js.map +1 -0
  436. package/.dist/esm/.mion/types/Ky89_g17turq.js +13 -0
  437. package/.dist/esm/.mion/types/Ky89_g17turq.js.map +1 -0
  438. package/.dist/esm/.mion/types/Ky89_hqa3Nzs.js +14 -0
  439. package/.dist/esm/.mion/types/Ky89_hqa3Nzs.js.map +1 -0
  440. package/.dist/esm/.mion/types/Ky89_iKPrxW9.js +16 -0
  441. package/.dist/esm/.mion/types/Ky89_iKPrxW9.js.map +1 -0
  442. package/.dist/esm/.mion/types/Ky89_jLtJ5Kv.js +16 -0
  443. package/.dist/esm/.mion/types/Ky89_jLtJ5Kv.js.map +1 -0
  444. package/.dist/esm/.mion/types/Ky89_kibOHkN.js +13 -0
  445. package/.dist/esm/.mion/types/Ky89_kibOHkN.js.map +1 -0
  446. package/.dist/esm/.mion/types/Ky89_kz5ne4c.js +16 -0
  447. package/.dist/esm/.mion/types/Ky89_kz5ne4c.js.map +1 -0
  448. package/.dist/esm/.mion/types/Ky89_pzBRrJb.js +16 -0
  449. package/.dist/esm/.mion/types/Ky89_pzBRrJb.js.map +1 -0
  450. package/.dist/esm/.mion/types/OBOg_D32xQCR.js +23 -0
  451. package/.dist/esm/.mion/types/OBOg_D32xQCR.js.map +1 -0
  452. package/.dist/esm/.mion/types/OBOg_D5PMNNO.js +18 -0
  453. package/.dist/esm/.mion/types/OBOg_D5PMNNO.js.map +1 -0
  454. package/.dist/esm/.mion/types/OBOg_E1CjDEA.js +18 -0
  455. package/.dist/esm/.mion/types/OBOg_E1CjDEA.js.map +1 -0
  456. package/.dist/esm/.mion/types/OBOg_G42dZdW.js +18 -0
  457. package/.dist/esm/.mion/types/OBOg_G42dZdW.js.map +1 -0
  458. package/.dist/esm/.mion/types/OBOg_LKYfhxm.js +18 -0
  459. package/.dist/esm/.mion/types/OBOg_LKYfhxm.js.map +1 -0
  460. package/.dist/esm/.mion/types/OBOg_fMIJ1JT.js +18 -0
  461. package/.dist/esm/.mion/types/OBOg_fMIJ1JT.js.map +1 -0
  462. package/.dist/esm/.mion/types/OBOg_g17turq.js +17 -0
  463. package/.dist/esm/.mion/types/OBOg_g17turq.js.map +1 -0
  464. package/.dist/esm/.mion/types/OBOg_hqa3Nzs.js +17 -0
  465. package/.dist/esm/.mion/types/OBOg_hqa3Nzs.js.map +1 -0
  466. package/.dist/esm/.mion/types/OBOg_kibOHkN.js +17 -0
  467. package/.dist/esm/.mion/types/OBOg_kibOHkN.js.map +1 -0
  468. package/.dist/esm/.mion/types/Xhuv_D32xQCR.js +16 -0
  469. package/.dist/esm/.mion/types/Xhuv_D32xQCR.js.map +1 -0
  470. package/.dist/esm/.mion/types/Xhuv_D5PMNNO.js +16 -0
  471. package/.dist/esm/.mion/types/Xhuv_D5PMNNO.js.map +1 -0
  472. package/.dist/esm/.mion/types/Xhuv_E1CjDEA.js +29 -0
  473. package/.dist/esm/.mion/types/Xhuv_E1CjDEA.js.map +1 -0
  474. package/.dist/esm/.mion/types/Xhuv_EYEglde.js +16 -0
  475. package/.dist/esm/.mion/types/Xhuv_EYEglde.js.map +1 -0
  476. package/.dist/esm/.mion/types/Xhuv_EyHLuYw.js +16 -0
  477. package/.dist/esm/.mion/types/Xhuv_EyHLuYw.js.map +1 -0
  478. package/.dist/esm/.mion/types/Xhuv_G42dZdW.js +16 -0
  479. package/.dist/esm/.mion/types/Xhuv_G42dZdW.js.map +1 -0
  480. package/.dist/esm/.mion/types/Xhuv_HSE8icr.js +16 -0
  481. package/.dist/esm/.mion/types/Xhuv_HSE8icr.js.map +1 -0
  482. package/.dist/esm/.mion/types/Xhuv_HXAy3Lx.js +13 -0
  483. package/.dist/esm/.mion/types/Xhuv_HXAy3Lx.js.map +1 -0
  484. package/.dist/esm/.mion/types/Xhuv_JJrCj9i.js +13 -0
  485. package/.dist/esm/.mion/types/Xhuv_JJrCj9i.js.map +1 -0
  486. package/.dist/esm/.mion/types/Xhuv_KDyf2Fa.js +16 -0
  487. package/.dist/esm/.mion/types/Xhuv_KDyf2Fa.js.map +1 -0
  488. package/.dist/esm/.mion/types/Xhuv_L3mQkaR.js +13 -0
  489. package/.dist/esm/.mion/types/Xhuv_L3mQkaR.js.map +1 -0
  490. package/.dist/esm/.mion/types/Xhuv_LKYfhxm.js +13 -0
  491. package/.dist/esm/.mion/types/Xhuv_LKYfhxm.js.map +1 -0
  492. package/.dist/esm/.mion/types/Xhuv_RAudOr2.js +13 -0
  493. package/.dist/esm/.mion/types/Xhuv_RAudOr2.js.map +1 -0
  494. package/.dist/esm/.mion/types/Xhuv_TRnIbow.js +17 -0
  495. package/.dist/esm/.mion/types/Xhuv_TRnIbow.js.map +1 -0
  496. package/.dist/esm/.mion/types/Xhuv_UOI3bXq.js +17 -0
  497. package/.dist/esm/.mion/types/Xhuv_UOI3bXq.js.map +1 -0
  498. package/.dist/esm/.mion/types/Xhuv_VsWxRKn.js +13 -0
  499. package/.dist/esm/.mion/types/Xhuv_VsWxRKn.js.map +1 -0
  500. package/.dist/esm/.mion/types/Xhuv_ZTKzxQG.js +16 -0
  501. package/.dist/esm/.mion/types/Xhuv_ZTKzxQG.js.map +1 -0
  502. package/.dist/esm/.mion/types/Xhuv_ZgsWs6s.js +13 -0
  503. package/.dist/esm/.mion/types/Xhuv_ZgsWs6s.js.map +1 -0
  504. package/.dist/esm/.mion/types/Xhuv_b4tYK8X.js +16 -0
  505. package/.dist/esm/.mion/types/Xhuv_b4tYK8X.js.map +1 -0
  506. package/.dist/esm/.mion/types/Xhuv_deFq9zY.js +26 -0
  507. package/.dist/esm/.mion/types/Xhuv_deFq9zY.js.map +1 -0
  508. package/.dist/esm/.mion/types/Xhuv_fMIJ1JT.js +16 -0
  509. package/.dist/esm/.mion/types/Xhuv_fMIJ1JT.js.map +1 -0
  510. package/.dist/esm/.mion/types/Xhuv_g17turq.js +13 -0
  511. package/.dist/esm/.mion/types/Xhuv_g17turq.js.map +1 -0
  512. package/.dist/esm/.mion/types/Xhuv_hqa3Nzs.js +13 -0
  513. package/.dist/esm/.mion/types/Xhuv_hqa3Nzs.js.map +1 -0
  514. package/.dist/esm/.mion/types/Xhuv_iKPrxW9.js +16 -0
  515. package/.dist/esm/.mion/types/Xhuv_iKPrxW9.js.map +1 -0
  516. package/.dist/esm/.mion/types/Xhuv_jLtJ5Kv.js +16 -0
  517. package/.dist/esm/.mion/types/Xhuv_jLtJ5Kv.js.map +1 -0
  518. package/.dist/esm/.mion/types/Xhuv_kibOHkN.js +13 -0
  519. package/.dist/esm/.mion/types/Xhuv_kibOHkN.js.map +1 -0
  520. package/.dist/esm/.mion/types/Xhuv_kz5ne4c.js +16 -0
  521. package/.dist/esm/.mion/types/Xhuv_kz5ne4c.js.map +1 -0
  522. package/.dist/esm/.mion/types/Xhuv_pzBRrJb.js +16 -0
  523. package/.dist/esm/.mion/types/Xhuv_pzBRrJb.js.map +1 -0
  524. package/.dist/esm/.mion/types/mzca_fMIJ1JT.js +14 -0
  525. package/.dist/esm/.mion/types/mzca_fMIJ1JT.js.map +1 -0
  526. package/.dist/esm/.mion/types/mzca_hqa3Nzs.js +14 -0
  527. package/.dist/esm/.mion/types/mzca_hqa3Nzs.js.map +1 -0
  528. package/.dist/esm/.mion/types/mzca_kibOHkN.js +14 -0
  529. package/.dist/esm/.mion/types/mzca_kibOHkN.js.map +1 -0
  530. package/.dist/esm/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.js +14 -0
  531. package/.dist/esm/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.js.map +1 -0
  532. package/.dist/esm/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.js +14 -0
  533. package/.dist/esm/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.js.map +1 -0
  534. package/.dist/esm/.mion/types/rt/C7ezVBCtGn.js +495 -0
  535. package/.dist/esm/.mion/types/rt/C7ezVBCtGn.js.map +1 -0
  536. package/.dist/esm/.mion/types/rt/VIdAjpHu1X.js +521 -0
  537. package/.dist/esm/.mion/types/rt/VIdAjpHu1X.js.map +1 -0
  538. package/.dist/esm/.mion/types/rt/eF4wQzU6Fd.js +873 -0
  539. package/.dist/esm/.mion/types/rt/eF4wQzU6Fd.js.map +1 -0
  540. package/.dist/esm/.mion/types/rt/shared/JQEexHbHMp.js +467 -0
  541. package/.dist/esm/.mion/types/rt/shared/JQEexHbHMp.js.map +1 -0
  542. package/.dist/esm/.mion/types/rt/shared/connsmWgsp.js +1475 -0
  543. package/.dist/esm/.mion/types/rt/shared/connsmWgsp.js.map +1 -0
  544. package/.dist/esm/index.d.ts +5 -4
  545. package/.dist/esm/index.js +11 -145
  546. package/.dist/esm/middlewares.d.ts +3 -0
  547. package/.dist/esm/middlewares.js +3 -0
  548. package/.dist/esm/src/batches.d.ts +22 -0
  549. package/.dist/esm/src/batches.js +321 -0
  550. package/.dist/esm/src/batches.js.map +1 -0
  551. package/.dist/esm/src/callContext.d.ts +5 -8
  552. package/.dist/esm/src/callContext.js +70 -118
  553. package/.dist/esm/src/callContext.js.map +1 -1
  554. package/.dist/esm/src/constants.d.ts +1 -7
  555. package/.dist/esm/src/constants.js +22 -44
  556. package/.dist/esm/src/constants.js.map +1 -1
  557. package/.dist/esm/src/dispatch.d.ts +8 -2
  558. package/.dist/esm/src/dispatch.js +223 -131
  559. package/.dist/esm/src/dispatch.js.map +1 -1
  560. package/.dist/esm/src/lib/bodyLimit.d.ts +5 -0
  561. package/.dist/esm/src/lib/bodyLimit.js +35 -0
  562. package/.dist/esm/src/lib/bodyLimit.js.map +1 -0
  563. package/.dist/esm/src/lib/bodyReader.d.ts +10 -0
  564. package/.dist/esm/src/lib/bodyReader.js +76 -0
  565. package/.dist/esm/src/lib/bodyReader.js.map +1 -0
  566. package/.dist/esm/src/lib/dispatchError.d.ts +6 -2
  567. package/.dist/esm/src/lib/dispatchError.js +72 -36
  568. package/.dist/esm/src/lib/dispatchError.js.map +1 -1
  569. package/.dist/esm/src/lib/handlers.d.ts +14 -9
  570. package/.dist/esm/src/lib/handlers.js +85 -48
  571. package/.dist/esm/src/lib/handlers.js.map +1 -1
  572. package/.dist/esm/src/lib/headers.d.ts +40 -1
  573. package/.dist/esm/src/lib/headers.js +167 -57
  574. package/.dist/esm/src/lib/headers.js.map +1 -1
  575. package/.dist/esm/src/lib/queryBody.d.ts +0 -1
  576. package/.dist/esm/src/lib/queryBody.js +26 -31
  577. package/.dist/esm/src/lib/queryBody.js.map +1 -1
  578. package/.dist/esm/src/lib/reflection.d.ts +12 -9
  579. package/.dist/esm/src/lib/reflection.js +75 -351
  580. package/.dist/esm/src/lib/reflection.js.map +1 -1
  581. package/.dist/esm/src/lib/remoteMethods.d.ts +4 -4
  582. package/.dist/esm/src/lib/remoteMethods.js +105 -111
  583. package/.dist/esm/src/lib/remoteMethods.js.map +1 -1
  584. package/.dist/esm/src/lib/urlQuery.d.ts +2 -0
  585. package/.dist/esm/src/lib/urlQuery.js +23 -0
  586. package/.dist/esm/src/lib/urlQuery.js.map +1 -0
  587. package/.dist/esm/src/middlewares/fetchMetadata.d.ts +15 -0
  588. package/.dist/esm/src/middlewares/fetchMetadata.js +97 -0
  589. package/.dist/esm/src/middlewares/fetchMetadata.js.map +1 -0
  590. package/.dist/esm/src/middlewares/syncRoutes.d.ts +12 -0
  591. package/.dist/esm/src/middlewares/syncRoutes.js +66 -0
  592. package/.dist/esm/src/middlewares/syncRoutes.js.map +1 -0
  593. package/.dist/esm/src/router.d.ts +27 -19
  594. package/.dist/esm/src/router.js +477 -449
  595. package/.dist/esm/src/router.js.map +1 -1
  596. package/.dist/esm/src/routes/errors.routes.d.ts +14 -3
  597. package/.dist/esm/src/routes/errors.routes.js +80 -48
  598. package/.dist/esm/src/routes/errors.routes.js.map +1 -1
  599. package/.dist/esm/src/routes/serializer.routes.d.ts +3 -3
  600. package/.dist/esm/src/routes/serializer.routes.js +107 -179
  601. package/.dist/esm/src/routes/serializer.routes.js.map +1 -1
  602. package/.dist/esm/src/types/context.d.ts +13 -21
  603. package/.dist/esm/src/types/context.js +0 -31
  604. package/.dist/esm/src/types/definitions.d.ts +32 -20
  605. package/.dist/esm/src/types/definitions.js +0 -15
  606. package/.dist/esm/src/types/general.d.ts +15 -15
  607. package/.dist/esm/src/types/general.js +0 -14
  608. package/.dist/esm/src/types/guards.d.ts +7 -7
  609. package/.dist/esm/src/types/guards.js +27 -46
  610. package/.dist/esm/src/types/guards.js.map +1 -1
  611. package/.dist/esm/src/types/handlers.d.ts +8 -5
  612. package/.dist/esm/src/types/handlers.js +0 -13
  613. package/.dist/esm/src/types/mionRouter.d.ts +44 -0
  614. package/.dist/esm/src/types/mionRouter.js +0 -0
  615. package/.dist/esm/src/types/parser.d.ts +43 -0
  616. package/.dist/esm/src/types/parser.js +0 -0
  617. package/.dist/esm/src/types/publicMethods.d.ts +65 -25
  618. package/.dist/esm/src/types/publicMethods.js +0 -24
  619. package/.dist/esm/src/types/remoteMethods.d.ts +49 -29
  620. package/.dist/esm/src/types/remoteMethods.js +0 -25
  621. package/.dist/esm/src/types/resolvedOptions.d.ts +28 -0
  622. package/.dist/esm/src/types/resolvedOptions.js +0 -0
  623. package/LICENSE +1 -1
  624. package/README.md +6 -6
  625. package/package.json +21 -24
  626. package/.dist/cjs/index.cjs.map +0 -1
  627. package/.dist/cjs/index.d.ts.map +0 -1
  628. package/.dist/cjs/src/aot/aotCacheLoader.cjs +0 -11
  629. package/.dist/cjs/src/aot/aotCacheLoader.cjs.map +0 -1
  630. package/.dist/cjs/src/aot/aotCacheLoader.d.ts +0 -2
  631. package/.dist/cjs/src/aot/aotCacheLoader.d.ts.map +0 -1
  632. package/.dist/cjs/src/callContext.d.ts.map +0 -1
  633. package/.dist/cjs/src/constants.d.ts.map +0 -1
  634. package/.dist/cjs/src/defaultRoutes.cjs +0 -16
  635. package/.dist/cjs/src/defaultRoutes.cjs.map +0 -1
  636. package/.dist/cjs/src/defaultRoutes.d.ts +0 -4
  637. package/.dist/cjs/src/defaultRoutes.d.ts.map +0 -1
  638. package/.dist/cjs/src/dispatch.d.ts.map +0 -1
  639. package/.dist/cjs/src/lib/aotEmitter.cjs +0 -74
  640. package/.dist/cjs/src/lib/aotEmitter.cjs.map +0 -1
  641. package/.dist/cjs/src/lib/aotEmitter.d.ts +0 -24
  642. package/.dist/cjs/src/lib/aotEmitter.d.ts.map +0 -1
  643. package/.dist/cjs/src/lib/dispatchError.d.ts.map +0 -1
  644. package/.dist/cjs/src/lib/handlers.d.ts.map +0 -1
  645. package/.dist/cjs/src/lib/headers.d.ts.map +0 -1
  646. package/.dist/cjs/src/lib/methodsCache.cjs +0 -55
  647. package/.dist/cjs/src/lib/methodsCache.cjs.map +0 -1
  648. package/.dist/cjs/src/lib/methodsCache.d.ts +0 -12
  649. package/.dist/cjs/src/lib/methodsCache.d.ts.map +0 -1
  650. package/.dist/cjs/src/lib/queryBody.d.ts.map +0 -1
  651. package/.dist/cjs/src/lib/reflection.d.ts.map +0 -1
  652. package/.dist/cjs/src/lib/remoteMethods.d.ts.map +0 -1
  653. package/.dist/cjs/src/lib/test/aotEmitter-test-router.cjs +0 -24
  654. package/.dist/cjs/src/lib/test/aotEmitter-test-router.cjs.map +0 -1
  655. package/.dist/cjs/src/lib/test/aotEmitter-test-router.d.ts +0 -5
  656. package/.dist/cjs/src/lib/test/aotEmitter-test-router.d.ts.map +0 -1
  657. package/.dist/cjs/src/router.d.ts.map +0 -1
  658. package/.dist/cjs/src/routes/client.routes.cjs +0 -76
  659. package/.dist/cjs/src/routes/client.routes.cjs.map +0 -1
  660. package/.dist/cjs/src/routes/client.routes.d.ts +0 -20
  661. package/.dist/cjs/src/routes/client.routes.d.ts.map +0 -1
  662. package/.dist/cjs/src/routes/errors.routes.d.ts.map +0 -1
  663. package/.dist/cjs/src/routes/mion.routes.cjs +0 -13
  664. package/.dist/cjs/src/routes/mion.routes.cjs.map +0 -1
  665. package/.dist/cjs/src/routes/mion.routes.d.ts +0 -10
  666. package/.dist/cjs/src/routes/mion.routes.d.ts.map +0 -1
  667. package/.dist/cjs/src/routes/serializer.routes.d.ts.map +0 -1
  668. package/.dist/cjs/src/routesFlow.cjs +0 -227
  669. package/.dist/cjs/src/routesFlow.cjs.map +0 -1
  670. package/.dist/cjs/src/routesFlow.d.ts +0 -8
  671. package/.dist/cjs/src/routesFlow.d.ts.map +0 -1
  672. package/.dist/cjs/src/types/context.cjs.map +0 -1
  673. package/.dist/cjs/src/types/context.d.ts.map +0 -1
  674. package/.dist/cjs/src/types/definitions.cjs.map +0 -1
  675. package/.dist/cjs/src/types/definitions.d.ts.map +0 -1
  676. package/.dist/cjs/src/types/general.cjs.map +0 -1
  677. package/.dist/cjs/src/types/general.d.ts.map +0 -1
  678. package/.dist/cjs/src/types/guards.d.ts.map +0 -1
  679. package/.dist/cjs/src/types/handlers.cjs.map +0 -1
  680. package/.dist/cjs/src/types/handlers.d.ts.map +0 -1
  681. package/.dist/cjs/src/types/publicMethods.cjs.map +0 -1
  682. package/.dist/cjs/src/types/publicMethods.d.ts.map +0 -1
  683. package/.dist/cjs/src/types/remoteMethods.cjs.map +0 -1
  684. package/.dist/cjs/src/types/remoteMethods.d.ts.map +0 -1
  685. package/.dist/esm/index.d.ts.map +0 -1
  686. package/.dist/esm/index.js.map +0 -1
  687. package/.dist/esm/src/aot/aotCacheLoader.d.ts +0 -2
  688. package/.dist/esm/src/aot/aotCacheLoader.d.ts.map +0 -1
  689. package/.dist/esm/src/aot/aotCacheLoader.js +0 -11
  690. package/.dist/esm/src/aot/aotCacheLoader.js.map +0 -1
  691. package/.dist/esm/src/callContext.d.ts.map +0 -1
  692. package/.dist/esm/src/constants.d.ts.map +0 -1
  693. package/.dist/esm/src/defaultRoutes.d.ts +0 -4
  694. package/.dist/esm/src/defaultRoutes.d.ts.map +0 -1
  695. package/.dist/esm/src/defaultRoutes.js +0 -16
  696. package/.dist/esm/src/defaultRoutes.js.map +0 -1
  697. package/.dist/esm/src/dispatch.d.ts.map +0 -1
  698. package/.dist/esm/src/lib/aotEmitter.d.ts +0 -24
  699. package/.dist/esm/src/lib/aotEmitter.d.ts.map +0 -1
  700. package/.dist/esm/src/lib/aotEmitter.js +0 -74
  701. package/.dist/esm/src/lib/aotEmitter.js.map +0 -1
  702. package/.dist/esm/src/lib/dispatchError.d.ts.map +0 -1
  703. package/.dist/esm/src/lib/handlers.d.ts.map +0 -1
  704. package/.dist/esm/src/lib/headers.d.ts.map +0 -1
  705. package/.dist/esm/src/lib/methodsCache.d.ts +0 -12
  706. package/.dist/esm/src/lib/methodsCache.d.ts.map +0 -1
  707. package/.dist/esm/src/lib/methodsCache.js +0 -56
  708. package/.dist/esm/src/lib/methodsCache.js.map +0 -1
  709. package/.dist/esm/src/lib/queryBody.d.ts.map +0 -1
  710. package/.dist/esm/src/lib/reflection.d.ts.map +0 -1
  711. package/.dist/esm/src/lib/remoteMethods.d.ts.map +0 -1
  712. package/.dist/esm/src/lib/test/aotEmitter-test-router.d.ts +0 -5
  713. package/.dist/esm/src/lib/test/aotEmitter-test-router.d.ts.map +0 -1
  714. package/.dist/esm/src/lib/test/aotEmitter-test-router.js +0 -24
  715. package/.dist/esm/src/lib/test/aotEmitter-test-router.js.map +0 -1
  716. package/.dist/esm/src/router.d.ts.map +0 -1
  717. package/.dist/esm/src/routes/client.routes.d.ts +0 -20
  718. package/.dist/esm/src/routes/client.routes.d.ts.map +0 -1
  719. package/.dist/esm/src/routes/client.routes.js +0 -76
  720. package/.dist/esm/src/routes/client.routes.js.map +0 -1
  721. package/.dist/esm/src/routes/errors.routes.d.ts.map +0 -1
  722. package/.dist/esm/src/routes/mion.routes.d.ts +0 -10
  723. package/.dist/esm/src/routes/mion.routes.d.ts.map +0 -1
  724. package/.dist/esm/src/routes/mion.routes.js +0 -13
  725. package/.dist/esm/src/routes/mion.routes.js.map +0 -1
  726. package/.dist/esm/src/routes/serializer.routes.d.ts.map +0 -1
  727. package/.dist/esm/src/routesFlow.d.ts +0 -8
  728. package/.dist/esm/src/routesFlow.d.ts.map +0 -1
  729. package/.dist/esm/src/routesFlow.js +0 -227
  730. package/.dist/esm/src/routesFlow.js.map +0 -1
  731. package/.dist/esm/src/types/context.d.ts.map +0 -1
  732. package/.dist/esm/src/types/context.js.map +0 -1
  733. package/.dist/esm/src/types/definitions.d.ts.map +0 -1
  734. package/.dist/esm/src/types/definitions.js.map +0 -1
  735. package/.dist/esm/src/types/general.d.ts.map +0 -1
  736. package/.dist/esm/src/types/general.js.map +0 -1
  737. package/.dist/esm/src/types/guards.d.ts.map +0 -1
  738. package/.dist/esm/src/types/handlers.d.ts.map +0 -1
  739. package/.dist/esm/src/types/handlers.js.map +0 -1
  740. package/.dist/esm/src/types/publicMethods.d.ts.map +0 -1
  741. package/.dist/esm/src/types/publicMethods.js.map +0 -1
  742. package/.dist/esm/src/types/remoteMethods.d.ts.map +0 -1
  743. package/.dist/esm/src/types/remoteMethods.js.map +0 -1
  744. package/index.ts +0 -29
  745. package/src/aot/aotCacheLoader.ts +0 -15
  746. package/src/callContext.ts +0 -193
  747. package/src/constants.ts +0 -45
  748. package/src/defaultRoutes.ts +0 -37
  749. package/src/dispatch.ts +0 -204
  750. package/src/lib/aotEmitter.ts +0 -140
  751. package/src/lib/dispatchError.ts +0 -60
  752. package/src/lib/handlers.ts +0 -75
  753. package/src/lib/headers.ts +0 -102
  754. package/src/lib/methodsCache.ts +0 -72
  755. package/src/lib/queryBody.ts +0 -40
  756. package/src/lib/reflection.ts +0 -517
  757. package/src/lib/remoteMethods.ts +0 -180
  758. package/src/lib/test/aotEmitter-test-router.ts +0 -40
  759. package/src/router.ts +0 -656
  760. package/src/routes/client.routes.ts +0 -108
  761. package/src/routes/errors.routes.ts +0 -51
  762. package/src/routes/mion.routes.ts +0 -11
  763. package/src/routes/serializer.routes.ts +0 -225
  764. package/src/routesFlow.ts +0 -320
  765. package/src/types/context.ts +0 -119
  766. package/src/types/definitions.ts +0 -53
  767. package/src/types/general.ts +0 -84
  768. package/src/types/guards.ts +0 -71
  769. package/src/types/handlers.ts +0 -49
  770. package/src/types/publicMethods.ts +0 -83
  771. package/src/types/remoteMethods.ts +0 -54
@@ -1,64 +1,181 @@
1
- "use strict";
2
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- class MionHeadersImpl {
4
- constructor(headers) {
5
- this.headers = headers;
6
- }
7
- append(name, value) {
8
- const nl = name.toLowerCase();
9
- const existing = this.headers[nl];
10
- const headerValue = toSingleHeader(value);
11
- if (existing) {
12
- this.headers[nl] = `${existing}, ${headerValue}`;
13
- } else {
14
- this.headers[nl] = headerValue;
15
- }
16
- }
17
- delete(name) {
18
- const nl = name.toLowerCase();
19
- delete this.headers[nl];
20
- }
21
- get(name) {
22
- const nl = name.toLowerCase();
23
- return this.headers[nl];
24
- }
25
- set(name, value) {
26
- const ln = name.toLowerCase();
27
- this.headers[ln] = value;
28
- }
29
- has(name) {
30
- const nl = name.toLowerCase();
31
- return !!this.headers[nl];
32
- }
33
- entries() {
34
- return new Map(Object.entries(this.headers)).entries();
35
- }
36
- keys() {
37
- return new Map(Object.entries(this.headers)).keys();
38
- }
39
- values() {
40
- return new Map(Object.entries(this.headers)).values();
41
- }
2
+ require("../constants.cjs");
3
+ const require_src_router = require("../router.cjs");
4
+ //#region src/lib/headers.ts
5
+ var PROTO_KEY = "__proto__";
6
+ /** Case-insensitive HTTP headers, like the fetch Headers API but optimized for performance.
7
+ * https://developer.mozilla.org/en-US/docs/Web/API/Headers */
8
+ var MionHeadersImpl = class {
9
+ headers;
10
+ /** Read by the response headers pool only; request headers ignore it. */
11
+ unused = true;
12
+ constructor(headers) {
13
+ this.headers = headers;
14
+ }
15
+ append(name, value) {
16
+ this.unused = false;
17
+ const nl = name.toLowerCase();
18
+ if (nl === PROTO_KEY) return;
19
+ const existing = readHeader(this.headers, nl);
20
+ const headerValue = toSingleHeader(value);
21
+ if (existing) this.headers[nl] = `${existing}, ${headerValue}`;
22
+ else this.headers[nl] = headerValue;
23
+ }
24
+ delete(name) {
25
+ this.unused = false;
26
+ delete this.headers[name.toLowerCase()];
27
+ }
28
+ get(name) {
29
+ return readHeader(this.headers, name.toLowerCase());
30
+ }
31
+ set(name, value) {
32
+ this.unused = false;
33
+ const ln = name.toLowerCase();
34
+ if (ln === PROTO_KEY) return;
35
+ this.headers[ln] = value;
36
+ }
37
+ has(name) {
38
+ return !!readHeader(this.headers, name.toLowerCase());
39
+ }
40
+ entries() {
41
+ return Object.entries(this.headers).map(([name, value]) => [name, joined(value)]).values();
42
+ }
43
+ keys() {
44
+ return new Map(Object.entries(this.headers)).keys();
45
+ }
46
+ values() {
47
+ return Object.values(this.headers).map(joined).values();
48
+ }
49
+ };
50
+ /** Response headers over a copy of the defaults, for an adapter that answers from a header record (uws, aws). */
51
+ var RecordResponseHeaders = class extends MionHeadersImpl {
52
+ defaults;
53
+ constructor(defaults) {
54
+ super({ ...defaults });
55
+ this.defaults = defaults;
56
+ }
57
+ /** Keeps a repeated name's values apart, never joined: the adapter writes them its own way. */
58
+ append(name, value) {
59
+ this.unused = false;
60
+ const key = name.toLowerCase();
61
+ if (key === PROTO_KEY) return;
62
+ const current = this.headers[key];
63
+ if (Array.isArray(current)) current.push(value);
64
+ else if (typeof current === "string" && current) this.headers[key] = [current, value];
65
+ else this.headers[key] = value;
66
+ }
67
+ /** Walks the headers with no pair array per header; a repeated name gives its values apart. */
68
+ forEach(visit) {
69
+ for (const name in this.headers) visit(name, this.headers[name]);
70
+ }
71
+ };
72
+ /** The response headers of the fetch adapters (bun, cloudflare, vercel). */
73
+ var FetchResponseHeaders = class {
74
+ defaults;
75
+ /** What the reply hands to `Response`, which copies it. */
76
+ native = new Headers();
77
+ unused = true;
78
+ constructor(defaults) {
79
+ this.defaults = defaults;
80
+ for (const name in defaults) this.native.set(name, defaults[name]);
81
+ }
82
+ set(name, value) {
83
+ this.unused = false;
84
+ this.native.set(name, value);
85
+ }
86
+ append(name, value) {
87
+ this.unused = false;
88
+ this.native.append(name, value);
89
+ }
90
+ delete(name) {
91
+ this.unused = false;
92
+ this.native.delete(name);
93
+ }
94
+ get(name) {
95
+ return this.native.get(name);
96
+ }
97
+ has(name) {
98
+ return this.native.has(name);
99
+ }
100
+ entries() {
101
+ return this.native.entries();
102
+ }
103
+ keys() {
104
+ return this.native.keys();
105
+ }
106
+ values() {
107
+ return this.native.values();
108
+ }
109
+ };
110
+ var MAX_UNUSED_HEADERS = 256;
111
+ var unusedRecordHeaders = [];
112
+ var unusedFetchHeaders = [];
113
+ var newRecordHeaders = (defaults) => new RecordResponseHeaders(defaults);
114
+ var newFetchHeaders = (defaults) => new FetchResponseHeaders(defaults);
115
+ /** Response headers holding the defaults and nothing else, from the pool or new. */
116
+ var getDefaultHeaders = () => takeUnused(unusedRecordHeaders, newRecordHeaders);
117
+ /** Like `getDefaultHeaders`, over a native `Headers` for the fetch adapters. */
118
+ var getDefaultFetchHeaders = () => takeUnused(unusedFetchHeaders, newFetchHeaders);
119
+ /** Gives headers back once the reply is sent; written ones are dropped. */
120
+ var releaseHeaders = (headers) => giveBackUnused(unusedRecordHeaders, headers);
121
+ function takeUnused(pool, create) {
122
+ const defaults = require_src_router.getResponseDefaults();
123
+ const headers = pool.pop();
124
+ if (headers?.defaults === defaults) return headers;
125
+ pool.length = 0;
126
+ return create(defaults);
42
127
  }
128
+ function giveBackUnused(pool, headers) {
129
+ if (headers.unused && pool.length < MAX_UNUSED_HEADERS) pool.push(headers);
130
+ }
131
+ function replyFetch(mionResp, headers) {
132
+ if (!headers.unused || mionResp.contentType !== "application/json; charset=utf-8") headers.set("content-type", mionResp.contentType);
133
+ const response = Response.json(mionResp.body, {
134
+ status: mionResp.statusCode,
135
+ headers: headers.native
136
+ });
137
+ giveBackUnused(unusedFetchHeaders, headers);
138
+ return response;
139
+ }
140
+ /** A fetch-like (not identical) Headers object over a header record, for an incoming request carrying its
141
+ * headers as an object: IncomingMessage.headers, ApiGatewayEvent.headers.
142
+ * https://developer.mozilla.org/en-US/docs/Web/API/Headers */
43
143
  function headersFromRecord(headersObj, skipToLower = false) {
44
- const headers = parseHeaders(headersObj, skipToLower);
45
- return new MionHeadersImpl(headers);
144
+ return new MionHeadersImpl(parseHeaders(headersObj, skipToLower));
145
+ }
146
+ /** A header value, or undefined for a name the record does not carry as an own string (a prototype
147
+ * hit is a function or an object). A platform record may hold an array (node's `set-cookie`). */
148
+ function readHeader(headers, lowerName) {
149
+ const value = headers[lowerName];
150
+ if (typeof value === "string") return value;
151
+ return Array.isArray(value) ? value.join(", ") : void 0;
152
+ }
153
+ function joined(value) {
154
+ return Array.isArray(value) ? value.join(", ") : value;
46
155
  }
47
156
  function toSingleHeader(value) {
48
- if (Array.isArray(value)) return value.join(", ");
49
- return value;
157
+ if (Array.isArray(value)) return value.join(", ");
158
+ return value;
50
159
  }
51
160
  function parseHeaders(headersObj, skipToLower = false) {
52
- if (skipToLower) return headersObj;
53
- const entries = Object.entries(headersObj);
54
- const headers = {};
55
- for (let i = 0; i < entries.length; i++) {
56
- const [name, value] = entries[i];
57
- if (!value) continue;
58
- const ln = name.toLowerCase();
59
- headers[ln] = toSingleHeader(value);
60
- }
61
- return headers;
161
+ if (skipToLower) return headersObj;
162
+ const entries = Object.entries(headersObj);
163
+ const headers = Object.create(null);
164
+ for (let i = 0; i < entries.length; i++) {
165
+ const [name, value] = entries[i];
166
+ if (!value) continue;
167
+ const ln = name.toLowerCase();
168
+ headers[ln] = toSingleHeader(value);
169
+ }
170
+ return headers;
62
171
  }
172
+ //#endregion
173
+ exports.FetchResponseHeaders = FetchResponseHeaders;
174
+ exports.RecordResponseHeaders = RecordResponseHeaders;
175
+ exports.getDefaultFetchHeaders = getDefaultFetchHeaders;
176
+ exports.getDefaultHeaders = getDefaultHeaders;
63
177
  exports.headersFromRecord = headersFromRecord;
64
- //# sourceMappingURL=headers.cjs.map
178
+ exports.releaseHeaders = releaseHeaders;
179
+ exports.replyFetch = replyFetch;
180
+
181
+ //# sourceMappingURL=headers.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"headers.cjs","sources":["../../../../src/lib/headers.ts"],"sourcesContent":["/* ########\n * 2022 mion\n * Author: Ma-jerez\n * License: MIT\n * The software is provided \"as is\", without warranty of any kind.\n * ######## */\n\nimport type {MionHeaders} from '../types/context.ts';\n\n// ############# PUBLIC METHODS #############\n\ntype HeadersRecord = Record<string, string>;\n\n/**\n * Reusable class for managing HTTP headers with case-insensitive access\n * Similar to the fetch Headers API but optimized for performance\n * https://developer.mozilla.org/en-US/docs/Web/API/Headers\n */\nclass MionHeadersImpl implements MionHeaders {\n constructor(private headers: HeadersRecord) {}\n\n append(name: string, value: string): void {\n const nl = name.toLowerCase();\n const existing = this.headers[nl];\n const headerValue = toSingleHeader(value);\n if (existing) {\n this.headers[nl] = `${existing}, ${headerValue}`;\n } else {\n this.headers[nl] = headerValue;\n }\n }\n\n delete(name: string): void {\n const nl = name.toLowerCase();\n delete this.headers[nl];\n }\n\n get(name: string): string | undefined | null {\n const nl = name.toLowerCase();\n return this.headers[nl];\n }\n\n set(name: string, value: string): void {\n const ln = name.toLowerCase();\n this.headers[ln] = value as string;\n }\n\n has(name: string): boolean {\n const nl = name.toLowerCase();\n return !!this.headers[nl];\n }\n\n entries(): IterableIterator<[string, string]> {\n return new Map(Object.entries(this.headers)).entries();\n }\n\n keys(): IterableIterator<string> {\n return new Map(Object.entries(this.headers)).keys();\n }\n\n values(): IterableIterator<string> {\n return new Map(Object.entries(this.headers)).values();\n }\n}\n\n/**\n * Return a Headers Like object from a Headers Record structure (Record<string, string | string[]>)\n * Returned Headers object is similar to the fetch Headers object but not exactly the same\n * https://developer.mozilla.org/en-US/docs/Web/API/Headers\n *\n * This is optimized to avoid creating the Headers Map if it's not strictly needed.\n * ie. for incoming header that only use get method, the Headers object is never created and instead the HeadersRecord is used directly.\n *\n * This function can be used to create a Headers object from incoming request that has the headers in an object structure.\n * ie IncomingMessage.headers or ApiGatewayEvent.headers\n *\n * @param headersObj\n * @returns\n */\nexport function headersFromRecord(headersObj: Record<string, string>, skipToLower = false): MionHeaders {\n // lazy load headers map\n const headers = parseHeaders(headersObj, skipToLower);\n return new MionHeadersImpl(headers);\n}\n\nfunction toSingleHeader(value: string | number): string {\n if (Array.isArray(value)) return value.join(', ');\n return value as string;\n}\n\nfunction parseHeaders(headersObj: Record<string, string>, skipToLower = false): HeadersRecord {\n if (skipToLower) return headersObj;\n const entries = Object.entries(headersObj);\n const headers: HeadersRecord = {};\n for (let i = 0; i < entries.length; i++) {\n const [name, value] = entries[i];\n if (!value) continue;\n const ln = name.toLowerCase();\n headers[ln] = toSingleHeader(value);\n }\n return headers;\n}\n"],"names":[],"mappings":";;AAkBA,MAAM,gBAAuC;AAAA,EACzC,YAAoB,SAAwB;AAAxB,SAAA,UAAA;AAAA,EAAyB;AAAA,EAE7C,OAAO,MAAc,OAAqB;AACtC,UAAM,KAAK,KAAK,YAAA;AAChB,UAAM,WAAW,KAAK,QAAQ,EAAE;AAChC,UAAM,cAAc,eAAe,KAAK;AACxC,QAAI,UAAU;AACV,WAAK,QAAQ,EAAE,IAAI,GAAG,QAAQ,KAAK,WAAW;AAAA,IAClD,OAAO;AACH,WAAK,QAAQ,EAAE,IAAI;AAAA,IACvB;AAAA,EACJ;AAAA,EAEA,OAAO,MAAoB;AACvB,UAAM,KAAK,KAAK,YAAA;AAChB,WAAO,KAAK,QAAQ,EAAE;AAAA,EAC1B;AAAA,EAEA,IAAI,MAAyC;AACzC,UAAM,KAAK,KAAK,YAAA;AAChB,WAAO,KAAK,QAAQ,EAAE;AAAA,EAC1B;AAAA,EAEA,IAAI,MAAc,OAAqB;AACnC,UAAM,KAAK,KAAK,YAAA;AAChB,SAAK,QAAQ,EAAE,IAAI;AAAA,EACvB;AAAA,EAEA,IAAI,MAAuB;AACvB,UAAM,KAAK,KAAK,YAAA;AAChB,WAAO,CAAC,CAAC,KAAK,QAAQ,EAAE;AAAA,EAC5B;AAAA,EAEA,UAA8C;AAC1C,WAAO,IAAI,IAAI,OAAO,QAAQ,KAAK,OAAO,CAAC,EAAE,QAAA;AAAA,EACjD;AAAA,EAEA,OAAiC;AAC7B,WAAO,IAAI,IAAI,OAAO,QAAQ,KAAK,OAAO,CAAC,EAAE,KAAA;AAAA,EACjD;AAAA,EAEA,SAAmC;AAC/B,WAAO,IAAI,IAAI,OAAO,QAAQ,KAAK,OAAO,CAAC,EAAE,OAAA;AAAA,EACjD;AACJ;AAgBO,SAAS,kBAAkB,YAAoC,cAAc,OAAoB;AAEpG,QAAM,UAAU,aAAa,YAAY,WAAW;AACpD,SAAO,IAAI,gBAAgB,OAAO;AACtC;AAEA,SAAS,eAAe,OAAgC;AACpD,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO,MAAM,KAAK,IAAI;AAChD,SAAO;AACX;AAEA,SAAS,aAAa,YAAoC,cAAc,OAAsB;AAC1F,MAAI,YAAa,QAAO;AACxB,QAAM,UAAU,OAAO,QAAQ,UAAU;AACzC,QAAM,UAAyB,CAAA;AAC/B,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;AACrC,UAAM,CAAC,MAAM,KAAK,IAAI,QAAQ,CAAC;AAC/B,QAAI,CAAC,MAAO;AACZ,UAAM,KAAK,KAAK,YAAA;AAChB,YAAQ,EAAE,IAAI,eAAe,KAAK;AAAA,EACtC;AACA,SAAO;AACX;;"}
1
+ {"version":3,"file":"headers.cjs","names":[],"sources":["../../../../src/lib/headers.ts"],"sourcesContent":["/* ########\n * 2022 mion\n * Author: Ma-jerez\n * License: MIT\n * The software is provided \"as is\", without warranty of any kind.\n * ######## */\n\nimport type {MionHeaders, MionResponse, PooledHeaders, ResponseDefaults} from '../types/context.ts';\nimport {JSON_CONTENT_TYPE} from '../constants.ts';\nimport {getResponseDefaults} from '../router.ts';\n\n// ############# PUBLIC METHODS #############\n\n// an array for a name appended twice on response headers (node's request record may hold one too)\ntype HeadersRecord = Record<string, string | string[]>;\n\nconst PROTO_KEY = '__proto__';\n\n/** Case-insensitive HTTP headers, like the fetch Headers API but optimized for performance.\n * https://developer.mozilla.org/en-US/docs/Web/API/Headers */\nclass MionHeadersImpl implements MionHeaders {\n // The record may be a plain object handed over by the platform (node's IncomingMessage.headers is one),\n // where `constructor` or `toString` would be \"found\" on the prototype chain. A prototype hit is never a\n // string, so a read checks the VALUE's type: cheaper than an own-key check per read (14 vs 23 ns).\n // `__proto__` is never written: on a plain object that assignment swaps the prototype.\n /** Read by the response headers pool only; request headers ignore it. */\n unused = true;\n\n constructor(protected headers: HeadersRecord) {}\n\n append(name: string, value: string): void {\n this.unused = false;\n const nl = name.toLowerCase();\n if (nl === PROTO_KEY) return;\n const existing = readHeader(this.headers, nl);\n const headerValue = toSingleHeader(value);\n if (existing) {\n this.headers[nl] = `${existing}, ${headerValue}`;\n } else {\n this.headers[nl] = headerValue;\n }\n }\n\n delete(name: string): void {\n this.unused = false;\n delete this.headers[name.toLowerCase()];\n }\n\n get(name: string): string | undefined | null {\n return readHeader(this.headers, name.toLowerCase());\n }\n\n set(name: string, value: string): void {\n this.unused = false;\n const ln = name.toLowerCase();\n if (ln === PROTO_KEY) return;\n this.headers[ln] = value as string;\n }\n\n has(name: string): boolean {\n return !!readHeader(this.headers, name.toLowerCase());\n }\n\n entries(): IterableIterator<[string, string]> {\n return Object.entries(this.headers)\n .map(([name, value]): [string, string] => [name, joined(value)])\n .values();\n }\n\n keys(): IterableIterator<string> {\n return new Map(Object.entries(this.headers)).keys();\n }\n\n values(): IterableIterator<string> {\n return Object.values(this.headers).map(joined).values();\n }\n}\n\n/** Response headers over a copy of the defaults, for an adapter that answers from a header record (uws, aws). */\nexport class RecordResponseHeaders extends MionHeadersImpl implements PooledHeaders {\n constructor(readonly defaults: ResponseDefaults) {\n super({...defaults});\n }\n\n /** Keeps a repeated name's values apart, never joined: the adapter writes them its own way. */\n append(name: string, value: string): void {\n this.unused = false;\n const key = name.toLowerCase();\n if (key === PROTO_KEY) return;\n const current = this.headers[key] as unknown;\n // an empty earlier value counts as absent, and so does a prototype hit such as `constructor`\n if (Array.isArray(current)) current.push(value);\n else if (typeof current === 'string' && current) this.headers[key] = [current, value];\n else this.headers[key] = value;\n }\n\n /** Walks the headers with no pair array per header; a repeated name gives its values apart. */\n forEach(visit: (name: string, value: string | string[]) => void): void {\n for (const name in this.headers) visit(name, this.headers[name]);\n }\n}\n\n/** The response headers of the fetch adapters (bun, cloudflare, vercel). */\nexport class FetchResponseHeaders implements PooledHeaders {\n /** What the reply hands to `Response`, which copies it. */\n readonly native = new Headers();\n unused = true;\n\n constructor(readonly defaults: ResponseDefaults) {\n // one set per name beats building from a record\n for (const name in defaults) this.native.set(name, defaults[name]);\n }\n\n set(name: string, value: string): void {\n this.unused = false;\n this.native.set(name, value);\n }\n append(name: string, value: string): void {\n this.unused = false;\n this.native.append(name, value);\n }\n delete(name: string): void {\n this.unused = false;\n this.native.delete(name);\n }\n get(name: string): string | null {\n return this.native.get(name);\n }\n has(name: string): boolean {\n return this.native.has(name);\n }\n entries(): IterableIterator<[string, string]> {\n return this.native.entries();\n }\n keys(): IterableIterator<string> {\n return this.native.keys();\n }\n values(): IterableIterator<string> {\n return this.native.values();\n }\n}\n\n// Pools of unwritten response headers: one serves exactly one request and comes back only if still unused.\nconst MAX_UNUSED_HEADERS = 256;\nconst unusedRecordHeaders: RecordResponseHeaders[] = [];\nconst unusedFetchHeaders: FetchResponseHeaders[] = [];\nconst newRecordHeaders = (defaults: ResponseDefaults) => new RecordResponseHeaders(defaults);\nconst newFetchHeaders = (defaults: ResponseDefaults) => new FetchResponseHeaders(defaults);\n\n/** Response headers holding the defaults and nothing else, from the pool or new. */\nexport const getDefaultHeaders = (): RecordResponseHeaders => takeUnused(unusedRecordHeaders, newRecordHeaders);\n\n/** Like `getDefaultHeaders`, over a native `Headers` for the fetch adapters. */\nexport const getDefaultFetchHeaders = (): FetchResponseHeaders => takeUnused(unusedFetchHeaders, newFetchHeaders);\n\n/** Gives headers back once the reply is sent; written ones are dropped. */\nexport const releaseHeaders = (headers: RecordResponseHeaders): void => giveBackUnused(unusedRecordHeaders, headers);\n\nfunction takeUnused<Pooled extends PooledHeaders>(pool: Pooled[], create: (defaults: ResponseDefaults) => Pooled): Pooled {\n const defaults = getResponseDefaults();\n const headers = pool.pop();\n if (headers?.defaults === defaults) return headers;\n // the router restarted: pooled headers carry the old defaults\n pool.length = 0;\n return create(defaults);\n}\n\nfunction giveBackUnused<Pooled extends PooledHeaders>(pool: Pooled[], headers: Pooled): void {\n if (headers.unused && pool.length < MAX_UNUSED_HEADERS) pool.push(headers);\n}\n\nexport function replyFetch(mionResp: MionResponse, headers: FetchResponseHeaders): Response {\n // last, so a handler never replaces it; unused headers already hold the JSON one\n if (!headers.unused || mionResp.contentType !== JSON_CONTENT_TYPE) headers.set('content-type', mionResp.contentType);\n // Response copies its headers, so unused ones serve the next request\n const response = Response.json(mionResp.body, {status: mionResp.statusCode, headers: headers.native});\n giveBackUnused(unusedFetchHeaders, headers);\n return response;\n}\n\n/** A fetch-like (not identical) Headers object over a header record, for an incoming request carrying its\n * headers as an object: IncomingMessage.headers, ApiGatewayEvent.headers.\n * https://developer.mozilla.org/en-US/docs/Web/API/Headers */\nexport function headersFromRecord(headersObj: Record<string, string>, skipToLower = false): MionHeaders {\n const headers = parseHeaders(headersObj, skipToLower);\n return new MionHeadersImpl(headers);\n}\n\n/** A header value, or undefined for a name the record does not carry as an own string (a prototype\n * hit is a function or an object). A platform record may hold an array (node's `set-cookie`). */\nfunction readHeader(headers: HeadersRecord, lowerName: string): string | undefined {\n const value = headers[lowerName] as unknown;\n if (typeof value === 'string') return value;\n return Array.isArray(value) ? value.join(', ') : undefined;\n}\n\nfunction joined(value: string | string[]): string {\n return Array.isArray(value) ? value.join(', ') : value;\n}\n\nfunction toSingleHeader(value: string | number): string {\n if (Array.isArray(value)) return value.join(', ');\n return value as string;\n}\n\nfunction parseHeaders(headersObj: Record<string, string>, skipToLower = false): HeadersRecord {\n if (skipToLower) return headersObj;\n const entries = Object.entries(headersObj);\n // null-prototype: header names come off the wire\n const headers: HeadersRecord = Object.create(null);\n for (let i = 0; i < entries.length; i++) {\n const [name, value] = entries[i];\n if (!value) continue;\n const ln = name.toLowerCase();\n headers[ln] = toSingleHeader(value);\n }\n return headers;\n}\n"],"mappings":"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"}
@@ -1,3 +1,42 @@
1
- import { MionHeaders } from '../types/context.ts';
1
+ import { MionHeaders, MionResponse, PooledHeaders, ResponseDefaults } from '../types/context.ts';
2
+ type HeadersRecord = Record<string, string | string[]>;
3
+ declare class MionHeadersImpl implements MionHeaders {
4
+ protected headers: HeadersRecord;
5
+ unused: boolean;
6
+ constructor(headers: HeadersRecord);
7
+ append(name: string, value: string): void;
8
+ delete(name: string): void;
9
+ get(name: string): string | undefined | null;
10
+ set(name: string, value: string): void;
11
+ has(name: string): boolean;
12
+ entries(): IterableIterator<[string, string]>;
13
+ keys(): IterableIterator<string>;
14
+ values(): IterableIterator<string>;
15
+ }
16
+ export declare class RecordResponseHeaders extends MionHeadersImpl implements PooledHeaders {
17
+ readonly defaults: ResponseDefaults;
18
+ constructor(defaults: ResponseDefaults);
19
+ append(name: string, value: string): void;
20
+ forEach(visit: (name: string, value: string | string[]) => void): void;
21
+ }
22
+ export declare class FetchResponseHeaders implements PooledHeaders {
23
+ readonly defaults: ResponseDefaults;
24
+ readonly native: import('undici-types').Headers;
25
+ unused: boolean;
26
+ constructor(defaults: ResponseDefaults);
27
+ set(name: string, value: string): void;
28
+ append(name: string, value: string): void;
29
+ delete(name: string): void;
30
+ get(name: string): string | null;
31
+ has(name: string): boolean;
32
+ entries(): IterableIterator<[string, string]>;
33
+ keys(): IterableIterator<string>;
34
+ values(): IterableIterator<string>;
35
+ }
36
+ export declare const getDefaultHeaders: () => RecordResponseHeaders;
37
+ export declare const getDefaultFetchHeaders: () => FetchResponseHeaders;
38
+ export declare const releaseHeaders: (headers: RecordResponseHeaders) => void;
39
+ export declare function replyFetch(mionResp: MionResponse, headers: FetchResponseHeaders): Response;
2
40
  export declare function headersFromRecord(headersObj: Record<string, string>, skipToLower?: boolean): MionHeaders;
41
+ export {};
3
42
  //# sourceMappingURL=headers.d.ts.map
@@ -1,34 +1,30 @@
1
- "use strict";
2
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const core = require("@mionjs/core");
4
- const __ΩQueryBodyResult = ["rawBody", "SerializerCode", "bodyType", "QueryBodyResult", 'P&4!"w"4#Mw$y'];
2
+ const require_src_lib_urlQuery = require("./urlQuery.cjs");
3
+ let _mionjs_core = require("@mionjs/core");
4
+ //#region src/lib/queryBody.ts
5
5
  function decodeQueryBody(urlQuery, rawBody) {
6
- if (rawBody)
7
- return void 0;
8
- if (!urlQuery)
9
- return void 0;
10
- const dataValue = extractDataParam(urlQuery);
11
- if (!dataValue)
12
- return void 0;
13
- return {
14
- rawBody: core.fromBase64Url(dataValue),
15
- bodyType: core.SerializerModes.stringifyJson
16
- };
6
+ if (rawBody) return void 0;
7
+ if (!urlQuery) return void 0;
8
+ const dataValue = require_src_lib_urlQuery.findMionQueryParam(urlQuery, "data");
9
+ if (!dataValue) return void 0;
10
+ try {
11
+ return {
12
+ rawBody: (0, _mionjs_core.fromBase64Url)(dataValue),
13
+ bodyType: _mionjs_core.SerializerModes.stringifyJson
14
+ };
15
+ } catch (err) {
16
+ throw invalidQueryBody(err);
17
+ }
17
18
  }
18
- decodeQueryBody.__type = ["urlQuery", "rawBody", () => __ΩQueryBodyResult, "decodeQueryBody", 'PP&-J2!#2"Pn#-J/$'];
19
- function extractDataParam(urlQuery) {
20
- if (urlQuery.startsWith("data=")) {
21
- const ampIndex2 = urlQuery.indexOf("&", 5);
22
- return ampIndex2 === -1 ? urlQuery.slice(5) : urlQuery.slice(5, ampIndex2);
23
- }
24
- const idx = urlQuery.indexOf("&data=");
25
- if (idx === -1)
26
- return void 0;
27
- const start = idx + 6;
28
- const ampIndex = urlQuery.indexOf("&", start);
29
- return ampIndex === -1 ? urlQuery.slice(start) : urlQuery.slice(start, ampIndex);
19
+ function invalidQueryBody(originalError) {
20
+ return new _mionjs_core.FatalError({
21
+ statusCode: _mionjs_core.StatusCodes.UNEXPECTED_ERROR,
22
+ type: "invalid-query-body",
23
+ publicMessage: "Invalid query body: the data parameter is not base64url encoded.",
24
+ originalError
25
+ });
30
26
  }
31
- extractDataParam.__type = ["urlQuery", "extractDataParam", 'P&2!P&-J/"'];
32
- exports.__ΩQueryBodyResult = __ΩQueryBodyResult;
27
+ //#endregion
33
28
  exports.decodeQueryBody = decodeQueryBody;
34
- //# sourceMappingURL=queryBody.cjs.map
29
+
30
+ //# sourceMappingURL=queryBody.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryBody.cjs","sources":["../../../../src/lib/queryBody.ts"],"sourcesContent":["/* ########\n * 2025 mion\n * Author: Ma-jerez\n * License: MIT\n * The software is provided \"as is\", without warranty of any kind.\n * ######## */\n\nimport {fromBase64Url, SerializerModes} from '@mionjs/core';\nimport type {SerializerCode} from '@mionjs/core';\n\n/** Result of decoding a base64url query body from ?data= */\nexport interface QueryBodyResult {\n rawBody: string;\n bodyType: SerializerCode;\n}\n\n/** Detects and decodes base64url-encoded request body from ?data= query param.\n * Returns decoded body + bodyType if found, undefined otherwise. */\nexport function decodeQueryBody(urlQuery: string | undefined, rawBody: unknown): QueryBodyResult | undefined {\n if (rawBody) return undefined;\n if (!urlQuery) return undefined;\n const dataValue = extractDataParam(urlQuery);\n if (!dataValue) return undefined;\n return {\n rawBody: fromBase64Url(dataValue),\n bodyType: SerializerModes.stringifyJson,\n };\n}\n\nfunction extractDataParam(urlQuery: string): string | undefined {\n if (urlQuery.startsWith('data=')) {\n const ampIndex = urlQuery.indexOf('&', 5);\n return ampIndex === -1 ? urlQuery.slice(5) : urlQuery.slice(5, ampIndex);\n }\n const idx = urlQuery.indexOf('&data=');\n if (idx === -1) return undefined;\n const start = idx + 6;\n const ampIndex = urlQuery.indexOf('&', start);\n return ampIndex === -1 ? urlQuery.slice(start) : urlQuery.slice(start, ampIndex);\n}\n"],"names":["fromBase64Url","SerializerModes","ampIndex"],"mappings":";;;;AAkBM,SAAU,gBAAgB,UAA8B,SAAgB;AAC1E,MAAI;AAAS,WAAO;AACpB,MAAI,CAAC;AAAU,WAAO;AACtB,QAAM,YAAY,iBAAiB,QAAQ;AAC3C,MAAI,CAAC;AAAW,WAAO;AACvB,SAAO;AAAA,IACH,SAASA,KAAAA,cAAc,SAAS;AAAA,IAChC,UAAUC,KAAAA,gBAAgB;AAAA,EAAA;AAElC;;AAEA,SAAS,iBAAiB,UAAgB;AACtC,MAAI,SAAS,WAAW,OAAO,GAAG;AAC9B,UAAMC,YAAW,SAAS,QAAQ,KAAK,CAAC;AACxC,WAAOA,cAAa,KAAK,SAAS,MAAM,CAAC,IAAI,SAAS,MAAM,GAAGA,SAAQ;AAAA,EAC3E;AACA,QAAM,MAAM,SAAS,QAAQ,QAAQ;AACrC,MAAI,QAAQ;AAAI,WAAO;AACvB,QAAM,QAAQ,MAAM;AACpB,QAAM,WAAW,SAAS,QAAQ,KAAK,KAAK;AAC5C,SAAO,aAAa,KAAK,SAAS,MAAM,KAAK,IAAI,SAAS,MAAM,OAAO,QAAQ;AACnF;;;;"}
1
+ {"version":3,"file":"queryBody.cjs","names":[],"sources":["../../../../src/lib/queryBody.ts"],"sourcesContent":["/* ########\n * 2025 mion\n * Author: Ma-jerez\n * License: MIT\n * The software is provided \"as is\", without warranty of any kind.\n * ######## */\n\nimport {fromBase64Url, FatalError, RpcError, SerializerModes, StatusCodes} from '@mionjs/core';\nimport type {SerializerCode} from '@mionjs/core';\nimport {findMionQueryParam} from './urlQuery.ts';\n\n// `atob` throws a raw InvalidCharacterError on anything that is not base64, and one `GET /route?data=!`\n// used to take the node and uws processes down with an unhandled rejection. No pre-check: a regex over\n// the value doubled the cost of every query-body request (85 to 170 ns) to refuse what `atob` refuses.\n\nexport interface QueryBodyResult {\n rawBody: string;\n bodyType: SerializerCode;\n}\n\nexport function decodeQueryBody(urlQuery: string | undefined, rawBody: unknown): QueryBodyResult | undefined {\n if (rawBody) return undefined;\n if (!urlQuery) return undefined;\n const dataValue = findMionQueryParam(urlQuery, 'data');\n if (!dataValue) return undefined;\n try {\n return {rawBody: fromBase64Url(dataValue), bodyType: SerializerModes.stringifyJson};\n } catch (err) {\n throw invalidQueryBody(err);\n }\n}\n\nfunction invalidQueryBody(originalError?: unknown): RpcError<'invalid-query-body'> {\n return new FatalError({\n statusCode: StatusCodes.UNEXPECTED_ERROR,\n type: 'invalid-query-body',\n publicMessage: 'Invalid query body: the data parameter is not base64url encoded.',\n originalError: originalError as Error | undefined,\n });\n}\n"],"mappings":";;;;AAoBA,SAAgB,gBAAgB,UAA8B,SAA+C;CAC3G,IAAI,SAAS,OAAO,KAAA;CACpB,IAAI,CAAC,UAAU,OAAO,KAAA;CACtB,MAAM,YAAY,yBAAA,mBAAmB,UAAU,MAAM;CACrD,IAAI,CAAC,WAAW,OAAO,KAAA;CACvB,IAAI;EACF,OAAO;GAAC,UAAA,GAAA,aAAA,eAAuB,SAAS;GAAG,UAAU,aAAA,gBAAgB;EAAa;CACpF,SAAS,KAAK;EACZ,MAAM,iBAAiB,GAAG;CAC5B;AACF;AAEA,SAAS,iBAAiB,eAAyD;CACjF,OAAO,IAAI,aAAA,WAAW;EACpB,YAAY,aAAA,YAAY;EACxB,MAAM;EACN,eAAe;EACA;CACjB,CAAC;AACH"}
@@ -4,5 +4,4 @@ export interface QueryBodyResult {
4
4
  bodyType: SerializerCode;
5
5
  }
6
6
  export declare function decodeQueryBody(urlQuery: string | undefined, rawBody: unknown): QueryBodyResult | undefined;
7
- export declare type __ΩQueryBodyResult = any[];
8
7
  //# sourceMappingURL=queryBody.d.ts.map