@mionjs/router 0.8.10 → 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.
- package/.dist/cjs/.mion/types/A0Qb_D32xQCR.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_D32xQCR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_D5PMNNO.cjs +17 -0
- package/.dist/cjs/.mion/types/A0Qb_D5PMNNO.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_E1CjDEA.cjs +36 -0
- package/.dist/cjs/.mion/types/A0Qb_E1CjDEA.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_EYEglde.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_EYEglde.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_EyHLuYw.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_EyHLuYw.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_G42dZdW.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_G42dZdW.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_HSE8icr.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_HSE8icr.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_HXAy3Lx.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_HXAy3Lx.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_JJrCj9i.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_JJrCj9i.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_KDyf2Fa.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_KDyf2Fa.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_L3mQkaR.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_L3mQkaR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_RAudOr2.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_RAudOr2.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_TRnIbow.cjs +17 -0
- package/.dist/cjs/.mion/types/A0Qb_TRnIbow.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_UOI3bXq.cjs +17 -0
- package/.dist/cjs/.mion/types/A0Qb_UOI3bXq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_VsWxRKn.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_VsWxRKn.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_ZTKzxQG.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_ZTKzxQG.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_b4tYK8X.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_b4tYK8X.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_deFq9zY.cjs +26 -0
- package/.dist/cjs/.mion/types/A0Qb_deFq9zY.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_fMIJ1JT.cjs +14 -0
- package/.dist/cjs/.mion/types/A0Qb_fMIJ1JT.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_g17turq.cjs +13 -0
- package/.dist/cjs/.mion/types/A0Qb_g17turq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_hqa3Nzs.cjs +14 -0
- package/.dist/cjs/.mion/types/A0Qb_hqa3Nzs.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_iKPrxW9.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_iKPrxW9.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_jLtJ5Kv.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_jLtJ5Kv.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_kibOHkN.cjs +14 -0
- package/.dist/cjs/.mion/types/A0Qb_kibOHkN.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_kz5ne4c.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_kz5ne4c.cjs.map +1 -0
- package/.dist/cjs/.mion/types/A0Qb_pzBRrJb.cjs +16 -0
- package/.dist/cjs/.mion/types/A0Qb_pzBRrJb.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_EYEglde.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_EYEglde.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_EyHLuYw.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_EyHLuYw.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_HSE8icr.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_HSE8icr.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_HXAy3Lx.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_HXAy3Lx.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_JJrCj9i.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_JJrCj9i.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_KDyf2Fa.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_KDyf2Fa.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_L3mQkaR.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_L3mQkaR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_RAudOr2.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_RAudOr2.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_TRnIbow.cjs +17 -0
- package/.dist/cjs/.mion/types/Eq2V_TRnIbow.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_UOI3bXq.cjs +17 -0
- package/.dist/cjs/.mion/types/Eq2V_UOI3bXq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_VsWxRKn.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_VsWxRKn.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_ZTKzxQG.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_ZTKzxQG.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_b4tYK8X.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_b4tYK8X.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_deFq9zY.cjs +26 -0
- package/.dist/cjs/.mion/types/Eq2V_deFq9zY.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_g17turq.cjs +13 -0
- package/.dist/cjs/.mion/types/Eq2V_g17turq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_iKPrxW9.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_iKPrxW9.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_jLtJ5Kv.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_jLtJ5Kv.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_kz5ne4c.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_kz5ne4c.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Eq2V_pzBRrJb.cjs +16 -0
- package/.dist/cjs/.mion/types/Eq2V_pzBRrJb.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_D32xQCR.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_D32xQCR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_D5PMNNO.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_D5PMNNO.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_E1CjDEA.cjs +32 -0
- package/.dist/cjs/.mion/types/Ky89_E1CjDEA.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_EYEglde.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_EYEglde.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_EyHLuYw.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_EyHLuYw.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_G42dZdW.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_G42dZdW.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_HSE8icr.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_HSE8icr.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_JJrCj9i.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_JJrCj9i.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_KDyf2Fa.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_KDyf2Fa.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_L3mQkaR.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_L3mQkaR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_RAudOr2.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_RAudOr2.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_TRnIbow.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_TRnIbow.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_UOI3bXq.cjs +17 -0
- package/.dist/cjs/.mion/types/Ky89_UOI3bXq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_ZTKzxQG.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_ZTKzxQG.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_b4tYK8X.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_b4tYK8X.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_deFq9zY.cjs +26 -0
- package/.dist/cjs/.mion/types/Ky89_deFq9zY.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_fMIJ1JT.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_fMIJ1JT.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_g17turq.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_g17turq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_hqa3Nzs.cjs +14 -0
- package/.dist/cjs/.mion/types/Ky89_hqa3Nzs.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_iKPrxW9.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_iKPrxW9.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_jLtJ5Kv.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_jLtJ5Kv.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_kibOHkN.cjs +13 -0
- package/.dist/cjs/.mion/types/Ky89_kibOHkN.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_kz5ne4c.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_kz5ne4c.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Ky89_pzBRrJb.cjs +16 -0
- package/.dist/cjs/.mion/types/Ky89_pzBRrJb.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_D32xQCR.cjs +23 -0
- package/.dist/cjs/.mion/types/OBOg_D32xQCR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_D5PMNNO.cjs +18 -0
- package/.dist/cjs/.mion/types/OBOg_D5PMNNO.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_E1CjDEA.cjs +18 -0
- package/.dist/cjs/.mion/types/OBOg_E1CjDEA.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_G42dZdW.cjs +18 -0
- package/.dist/cjs/.mion/types/OBOg_G42dZdW.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_LKYfhxm.cjs +18 -0
- package/.dist/cjs/.mion/types/OBOg_LKYfhxm.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_fMIJ1JT.cjs +18 -0
- package/.dist/cjs/.mion/types/OBOg_fMIJ1JT.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_g17turq.cjs +17 -0
- package/.dist/cjs/.mion/types/OBOg_g17turq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_hqa3Nzs.cjs +17 -0
- package/.dist/cjs/.mion/types/OBOg_hqa3Nzs.cjs.map +1 -0
- package/.dist/cjs/.mion/types/OBOg_kibOHkN.cjs +17 -0
- package/.dist/cjs/.mion/types/OBOg_kibOHkN.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_D32xQCR.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_D32xQCR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_D5PMNNO.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_D5PMNNO.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_E1CjDEA.cjs +29 -0
- package/.dist/cjs/.mion/types/Xhuv_E1CjDEA.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_EYEglde.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_EYEglde.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_EyHLuYw.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_EyHLuYw.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_G42dZdW.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_G42dZdW.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_HSE8icr.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_HSE8icr.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_HXAy3Lx.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_HXAy3Lx.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_JJrCj9i.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_JJrCj9i.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_KDyf2Fa.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_KDyf2Fa.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_L3mQkaR.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_L3mQkaR.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_LKYfhxm.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_LKYfhxm.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_RAudOr2.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_RAudOr2.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_TRnIbow.cjs +17 -0
- package/.dist/cjs/.mion/types/Xhuv_TRnIbow.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_UOI3bXq.cjs +17 -0
- package/.dist/cjs/.mion/types/Xhuv_UOI3bXq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_VsWxRKn.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_VsWxRKn.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_ZTKzxQG.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_ZTKzxQG.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_ZgsWs6s.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_ZgsWs6s.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_b4tYK8X.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_b4tYK8X.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_deFq9zY.cjs +26 -0
- package/.dist/cjs/.mion/types/Xhuv_deFq9zY.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_fMIJ1JT.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_fMIJ1JT.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_g17turq.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_g17turq.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_hqa3Nzs.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_hqa3Nzs.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_iKPrxW9.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_iKPrxW9.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_jLtJ5Kv.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_jLtJ5Kv.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_kibOHkN.cjs +13 -0
- package/.dist/cjs/.mion/types/Xhuv_kibOHkN.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_kz5ne4c.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_kz5ne4c.cjs.map +1 -0
- package/.dist/cjs/.mion/types/Xhuv_pzBRrJb.cjs +16 -0
- package/.dist/cjs/.mion/types/Xhuv_pzBRrJb.cjs.map +1 -0
- package/.dist/cjs/.mion/types/mzca_fMIJ1JT.cjs +14 -0
- package/.dist/cjs/.mion/types/mzca_fMIJ1JT.cjs.map +1 -0
- package/.dist/cjs/.mion/types/mzca_hqa3Nzs.cjs +14 -0
- package/.dist/cjs/.mion/types/mzca_hqa3Nzs.cjs.map +1 -0
- package/.dist/cjs/.mion/types/mzca_kibOHkN.cjs +14 -0
- package/.dist/cjs/.mion/types/mzca_kibOHkN.cjs.map +1 -0
- package/.dist/cjs/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.cjs +14 -0
- package/.dist/cjs/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.cjs.map +1 -0
- package/.dist/cjs/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.cjs +14 -0
- package/.dist/cjs/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.cjs.map +1 -0
- package/.dist/cjs/.mion/types/rt/C7ezVBCtGn.cjs +498 -0
- package/.dist/cjs/.mion/types/rt/C7ezVBCtGn.cjs.map +1 -0
- package/.dist/cjs/.mion/types/rt/VIdAjpHu1X.cjs +526 -0
- package/.dist/cjs/.mion/types/rt/VIdAjpHu1X.cjs.map +1 -0
- package/.dist/cjs/.mion/types/rt/eF4wQzU6Fd.cjs +876 -0
- package/.dist/cjs/.mion/types/rt/eF4wQzU6Fd.cjs.map +1 -0
- package/.dist/cjs/.mion/types/rt/shared/JQEexHbHMp.cjs +467 -0
- package/.dist/cjs/.mion/types/rt/shared/JQEexHbHMp.cjs.map +1 -0
- package/.dist/cjs/.mion/types/rt/shared/connsmWgsp.cjs +1475 -0
- package/.dist/cjs/.mion/types/rt/shared/connsmWgsp.cjs.map +1 -0
- package/.dist/cjs/index.cjs +115 -153
- package/.dist/cjs/index.d.ts +5 -4
- package/.dist/cjs/middlewares.cjs +5 -0
- package/.dist/cjs/middlewares.d.ts +3 -0
- package/.dist/cjs/src/batches.cjs +332 -0
- package/.dist/cjs/src/batches.cjs.map +1 -0
- package/.dist/cjs/src/batches.d.ts +22 -0
- package/.dist/cjs/src/callContext.cjs +72 -116
- package/.dist/cjs/src/callContext.cjs.map +1 -1
- package/.dist/cjs/src/callContext.d.ts +5 -8
- package/.dist/cjs/src/constants.cjs +22 -41
- package/.dist/cjs/src/constants.cjs.map +1 -1
- package/.dist/cjs/src/constants.d.ts +1 -7
- package/.dist/cjs/src/dispatch.cjs +227 -129
- package/.dist/cjs/src/dispatch.cjs.map +1 -1
- package/.dist/cjs/src/dispatch.d.ts +8 -2
- package/.dist/cjs/src/lib/bodyLimit.cjs +37 -0
- package/.dist/cjs/src/lib/bodyLimit.cjs.map +1 -0
- package/.dist/cjs/src/lib/bodyLimit.d.ts +5 -0
- package/.dist/cjs/src/lib/bodyReader.cjs +79 -0
- package/.dist/cjs/src/lib/bodyReader.cjs.map +1 -0
- package/.dist/cjs/src/lib/bodyReader.d.ts +10 -0
- package/.dist/cjs/src/lib/dispatchError.cjs +77 -34
- package/.dist/cjs/src/lib/dispatchError.cjs.map +1 -1
- package/.dist/cjs/src/lib/dispatchError.d.ts +6 -2
- package/.dist/cjs/src/lib/handlers.cjs +91 -44
- package/.dist/cjs/src/lib/handlers.cjs.map +1 -1
- package/.dist/cjs/src/lib/handlers.d.ts +14 -9
- package/.dist/cjs/src/lib/headers.cjs +172 -55
- package/.dist/cjs/src/lib/headers.cjs.map +1 -1
- package/.dist/cjs/src/lib/headers.d.ts +40 -1
- package/.dist/cjs/src/lib/queryBody.cjs +25 -29
- package/.dist/cjs/src/lib/queryBody.cjs.map +1 -1
- package/.dist/cjs/src/lib/queryBody.d.ts +0 -1
- package/.dist/cjs/src/lib/reflection.cjs +78 -371
- package/.dist/cjs/src/lib/reflection.cjs.map +1 -1
- package/.dist/cjs/src/lib/reflection.d.ts +12 -9
- package/.dist/cjs/src/lib/remoteMethods.cjs +104 -104
- package/.dist/cjs/src/lib/remoteMethods.cjs.map +1 -1
- package/.dist/cjs/src/lib/remoteMethods.d.ts +4 -4
- package/.dist/cjs/src/lib/urlQuery.cjs +24 -0
- package/.dist/cjs/src/lib/urlQuery.cjs.map +1 -0
- package/.dist/cjs/src/lib/urlQuery.d.ts +2 -0
- package/.dist/cjs/src/middlewares/fetchMetadata.cjs +99 -0
- package/.dist/cjs/src/middlewares/fetchMetadata.cjs.map +1 -0
- package/.dist/cjs/src/middlewares/fetchMetadata.d.ts +15 -0
- package/.dist/cjs/src/middlewares/syncRoutes.cjs +67 -0
- package/.dist/cjs/src/middlewares/syncRoutes.cjs.map +1 -0
- package/.dist/cjs/src/middlewares/syncRoutes.d.ts +12 -0
- package/.dist/cjs/src/router.cjs +506 -432
- package/.dist/cjs/src/router.cjs.map +1 -1
- package/.dist/cjs/src/router.d.ts +27 -19
- package/.dist/cjs/src/routes/errors.routes.cjs +81 -46
- package/.dist/cjs/src/routes/errors.routes.cjs.map +1 -1
- package/.dist/cjs/src/routes/errors.routes.d.ts +14 -3
- package/.dist/cjs/src/routes/serializer.routes.cjs +107 -176
- package/.dist/cjs/src/routes/serializer.routes.cjs.map +1 -1
- package/.dist/cjs/src/routes/serializer.routes.d.ts +3 -3
- package/.dist/cjs/src/types/context.cjs +0 -31
- package/.dist/cjs/src/types/context.d.ts +13 -21
- package/.dist/cjs/src/types/definitions.cjs +0 -15
- package/.dist/cjs/src/types/definitions.d.ts +32 -20
- package/.dist/cjs/src/types/general.cjs +0 -14
- package/.dist/cjs/src/types/general.d.ts +15 -15
- package/.dist/cjs/src/types/guards.cjs +31 -38
- package/.dist/cjs/src/types/guards.cjs.map +1 -1
- package/.dist/cjs/src/types/guards.d.ts +7 -7
- package/.dist/cjs/src/types/handlers.cjs +0 -13
- package/.dist/cjs/src/types/handlers.d.ts +8 -5
- package/.dist/cjs/src/types/mionRouter.cjs +0 -0
- package/.dist/cjs/src/types/mionRouter.d.ts +44 -0
- package/.dist/cjs/src/types/parser.cjs +0 -0
- package/.dist/cjs/src/types/parser.d.ts +43 -0
- package/.dist/cjs/src/types/publicMethods.cjs +0 -24
- package/.dist/cjs/src/types/publicMethods.d.ts +65 -25
- package/.dist/cjs/src/types/remoteMethods.cjs +0 -25
- package/.dist/cjs/src/types/remoteMethods.d.ts +49 -29
- package/.dist/cjs/src/types/resolvedOptions.cjs +0 -0
- package/.dist/cjs/src/types/resolvedOptions.d.ts +28 -0
- package/.dist/esm/.mion/types/A0Qb_D32xQCR.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_D32xQCR.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_D5PMNNO.js +17 -0
- package/.dist/esm/.mion/types/A0Qb_D5PMNNO.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_E1CjDEA.js +36 -0
- package/.dist/esm/.mion/types/A0Qb_E1CjDEA.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_EYEglde.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_EYEglde.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_EyHLuYw.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_EyHLuYw.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_G42dZdW.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_G42dZdW.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_HSE8icr.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_HSE8icr.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_HXAy3Lx.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_HXAy3Lx.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_JJrCj9i.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_JJrCj9i.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_KDyf2Fa.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_KDyf2Fa.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_L3mQkaR.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_L3mQkaR.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_RAudOr2.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_RAudOr2.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_TRnIbow.js +17 -0
- package/.dist/esm/.mion/types/A0Qb_TRnIbow.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_UOI3bXq.js +17 -0
- package/.dist/esm/.mion/types/A0Qb_UOI3bXq.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_VsWxRKn.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_VsWxRKn.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_ZTKzxQG.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_ZTKzxQG.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_b4tYK8X.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_b4tYK8X.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_deFq9zY.js +26 -0
- package/.dist/esm/.mion/types/A0Qb_deFq9zY.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_fMIJ1JT.js +14 -0
- package/.dist/esm/.mion/types/A0Qb_fMIJ1JT.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_g17turq.js +13 -0
- package/.dist/esm/.mion/types/A0Qb_g17turq.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_hqa3Nzs.js +14 -0
- package/.dist/esm/.mion/types/A0Qb_hqa3Nzs.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_iKPrxW9.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_iKPrxW9.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_jLtJ5Kv.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_jLtJ5Kv.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_kibOHkN.js +14 -0
- package/.dist/esm/.mion/types/A0Qb_kibOHkN.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_kz5ne4c.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_kz5ne4c.js.map +1 -0
- package/.dist/esm/.mion/types/A0Qb_pzBRrJb.js +16 -0
- package/.dist/esm/.mion/types/A0Qb_pzBRrJb.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_EYEglde.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_EYEglde.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_EyHLuYw.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_EyHLuYw.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_HSE8icr.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_HSE8icr.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_HXAy3Lx.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_HXAy3Lx.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_JJrCj9i.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_JJrCj9i.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_KDyf2Fa.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_KDyf2Fa.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_L3mQkaR.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_L3mQkaR.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_RAudOr2.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_RAudOr2.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_TRnIbow.js +17 -0
- package/.dist/esm/.mion/types/Eq2V_TRnIbow.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_UOI3bXq.js +17 -0
- package/.dist/esm/.mion/types/Eq2V_UOI3bXq.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_VsWxRKn.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_VsWxRKn.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_ZTKzxQG.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_ZTKzxQG.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_b4tYK8X.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_b4tYK8X.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_deFq9zY.js +26 -0
- package/.dist/esm/.mion/types/Eq2V_deFq9zY.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_g17turq.js +13 -0
- package/.dist/esm/.mion/types/Eq2V_g17turq.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_iKPrxW9.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_iKPrxW9.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_jLtJ5Kv.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_jLtJ5Kv.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_kz5ne4c.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_kz5ne4c.js.map +1 -0
- package/.dist/esm/.mion/types/Eq2V_pzBRrJb.js +16 -0
- package/.dist/esm/.mion/types/Eq2V_pzBRrJb.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_D32xQCR.js +16 -0
- package/.dist/esm/.mion/types/Ky89_D32xQCR.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_D5PMNNO.js +16 -0
- package/.dist/esm/.mion/types/Ky89_D5PMNNO.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_E1CjDEA.js +32 -0
- package/.dist/esm/.mion/types/Ky89_E1CjDEA.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_EYEglde.js +16 -0
- package/.dist/esm/.mion/types/Ky89_EYEglde.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_EyHLuYw.js +16 -0
- package/.dist/esm/.mion/types/Ky89_EyHLuYw.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_G42dZdW.js +16 -0
- package/.dist/esm/.mion/types/Ky89_G42dZdW.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_HSE8icr.js +16 -0
- package/.dist/esm/.mion/types/Ky89_HSE8icr.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_JJrCj9i.js +13 -0
- package/.dist/esm/.mion/types/Ky89_JJrCj9i.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_KDyf2Fa.js +16 -0
- package/.dist/esm/.mion/types/Ky89_KDyf2Fa.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_L3mQkaR.js +13 -0
- package/.dist/esm/.mion/types/Ky89_L3mQkaR.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_RAudOr2.js +13 -0
- package/.dist/esm/.mion/types/Ky89_RAudOr2.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_TRnIbow.js +13 -0
- package/.dist/esm/.mion/types/Ky89_TRnIbow.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_UOI3bXq.js +17 -0
- package/.dist/esm/.mion/types/Ky89_UOI3bXq.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_ZTKzxQG.js +16 -0
- package/.dist/esm/.mion/types/Ky89_ZTKzxQG.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_b4tYK8X.js +16 -0
- package/.dist/esm/.mion/types/Ky89_b4tYK8X.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_deFq9zY.js +26 -0
- package/.dist/esm/.mion/types/Ky89_deFq9zY.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_fMIJ1JT.js +13 -0
- package/.dist/esm/.mion/types/Ky89_fMIJ1JT.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_g17turq.js +13 -0
- package/.dist/esm/.mion/types/Ky89_g17turq.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_hqa3Nzs.js +14 -0
- package/.dist/esm/.mion/types/Ky89_hqa3Nzs.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_iKPrxW9.js +16 -0
- package/.dist/esm/.mion/types/Ky89_iKPrxW9.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_jLtJ5Kv.js +16 -0
- package/.dist/esm/.mion/types/Ky89_jLtJ5Kv.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_kibOHkN.js +13 -0
- package/.dist/esm/.mion/types/Ky89_kibOHkN.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_kz5ne4c.js +16 -0
- package/.dist/esm/.mion/types/Ky89_kz5ne4c.js.map +1 -0
- package/.dist/esm/.mion/types/Ky89_pzBRrJb.js +16 -0
- package/.dist/esm/.mion/types/Ky89_pzBRrJb.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_D32xQCR.js +23 -0
- package/.dist/esm/.mion/types/OBOg_D32xQCR.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_D5PMNNO.js +18 -0
- package/.dist/esm/.mion/types/OBOg_D5PMNNO.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_E1CjDEA.js +18 -0
- package/.dist/esm/.mion/types/OBOg_E1CjDEA.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_G42dZdW.js +18 -0
- package/.dist/esm/.mion/types/OBOg_G42dZdW.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_LKYfhxm.js +18 -0
- package/.dist/esm/.mion/types/OBOg_LKYfhxm.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_fMIJ1JT.js +18 -0
- package/.dist/esm/.mion/types/OBOg_fMIJ1JT.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_g17turq.js +17 -0
- package/.dist/esm/.mion/types/OBOg_g17turq.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_hqa3Nzs.js +17 -0
- package/.dist/esm/.mion/types/OBOg_hqa3Nzs.js.map +1 -0
- package/.dist/esm/.mion/types/OBOg_kibOHkN.js +17 -0
- package/.dist/esm/.mion/types/OBOg_kibOHkN.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_D32xQCR.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_D32xQCR.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_D5PMNNO.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_D5PMNNO.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_E1CjDEA.js +29 -0
- package/.dist/esm/.mion/types/Xhuv_E1CjDEA.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_EYEglde.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_EYEglde.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_EyHLuYw.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_EyHLuYw.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_G42dZdW.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_G42dZdW.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_HSE8icr.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_HSE8icr.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_HXAy3Lx.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_HXAy3Lx.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_JJrCj9i.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_JJrCj9i.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_KDyf2Fa.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_KDyf2Fa.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_L3mQkaR.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_L3mQkaR.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_LKYfhxm.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_LKYfhxm.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_RAudOr2.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_RAudOr2.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_TRnIbow.js +17 -0
- package/.dist/esm/.mion/types/Xhuv_TRnIbow.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_UOI3bXq.js +17 -0
- package/.dist/esm/.mion/types/Xhuv_UOI3bXq.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_VsWxRKn.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_VsWxRKn.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_ZTKzxQG.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_ZTKzxQG.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_ZgsWs6s.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_ZgsWs6s.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_b4tYK8X.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_b4tYK8X.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_deFq9zY.js +26 -0
- package/.dist/esm/.mion/types/Xhuv_deFq9zY.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_fMIJ1JT.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_fMIJ1JT.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_g17turq.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_g17turq.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_hqa3Nzs.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_hqa3Nzs.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_iKPrxW9.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_iKPrxW9.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_jLtJ5Kv.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_jLtJ5Kv.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_kibOHkN.js +13 -0
- package/.dist/esm/.mion/types/Xhuv_kibOHkN.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_kz5ne4c.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_kz5ne4c.js.map +1 -0
- package/.dist/esm/.mion/types/Xhuv_pzBRrJb.js +16 -0
- package/.dist/esm/.mion/types/Xhuv_pzBRrJb.js.map +1 -0
- package/.dist/esm/.mion/types/mzca_fMIJ1JT.js +14 -0
- package/.dist/esm/.mion/types/mzca_fMIJ1JT.js.map +1 -0
- package/.dist/esm/.mion/types/mzca_hqa3Nzs.js +14 -0
- package/.dist/esm/.mion/types/mzca_hqa3Nzs.js.map +1 -0
- package/.dist/esm/.mion/types/mzca_kibOHkN.js +14 -0
- package/.dist/esm/.mion/types/mzca_kibOHkN.js.map +1 -0
- package/.dist/esm/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.js +14 -0
- package/.dist/esm/.mion/types/pf/@mionjs/run-types/rXVwGkGDX08BsQ.js.map +1 -0
- package/.dist/esm/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.js +14 -0
- package/.dist/esm/.mion/types/pf/@mionjs/run-types/tfRjnFZVF8lqI_.js.map +1 -0
- package/.dist/esm/.mion/types/rt/C7ezVBCtGn.js +495 -0
- package/.dist/esm/.mion/types/rt/C7ezVBCtGn.js.map +1 -0
- package/.dist/esm/.mion/types/rt/VIdAjpHu1X.js +521 -0
- package/.dist/esm/.mion/types/rt/VIdAjpHu1X.js.map +1 -0
- package/.dist/esm/.mion/types/rt/eF4wQzU6Fd.js +873 -0
- package/.dist/esm/.mion/types/rt/eF4wQzU6Fd.js.map +1 -0
- package/.dist/esm/.mion/types/rt/shared/JQEexHbHMp.js +467 -0
- package/.dist/esm/.mion/types/rt/shared/JQEexHbHMp.js.map +1 -0
- package/.dist/esm/.mion/types/rt/shared/connsmWgsp.js +1475 -0
- package/.dist/esm/.mion/types/rt/shared/connsmWgsp.js.map +1 -0
- package/.dist/esm/index.d.ts +5 -4
- package/.dist/esm/index.js +11 -145
- package/.dist/esm/middlewares.d.ts +3 -0
- package/.dist/esm/middlewares.js +3 -0
- package/.dist/esm/src/batches.d.ts +22 -0
- package/.dist/esm/src/batches.js +321 -0
- package/.dist/esm/src/batches.js.map +1 -0
- package/.dist/esm/src/callContext.d.ts +5 -8
- package/.dist/esm/src/callContext.js +70 -118
- package/.dist/esm/src/callContext.js.map +1 -1
- package/.dist/esm/src/constants.d.ts +1 -7
- package/.dist/esm/src/constants.js +22 -44
- package/.dist/esm/src/constants.js.map +1 -1
- package/.dist/esm/src/dispatch.d.ts +8 -2
- package/.dist/esm/src/dispatch.js +223 -131
- package/.dist/esm/src/dispatch.js.map +1 -1
- package/.dist/esm/src/lib/bodyLimit.d.ts +5 -0
- package/.dist/esm/src/lib/bodyLimit.js +35 -0
- package/.dist/esm/src/lib/bodyLimit.js.map +1 -0
- package/.dist/esm/src/lib/bodyReader.d.ts +10 -0
- package/.dist/esm/src/lib/bodyReader.js +76 -0
- package/.dist/esm/src/lib/bodyReader.js.map +1 -0
- package/.dist/esm/src/lib/dispatchError.d.ts +6 -2
- package/.dist/esm/src/lib/dispatchError.js +72 -36
- package/.dist/esm/src/lib/dispatchError.js.map +1 -1
- package/.dist/esm/src/lib/handlers.d.ts +14 -9
- package/.dist/esm/src/lib/handlers.js +85 -48
- package/.dist/esm/src/lib/handlers.js.map +1 -1
- package/.dist/esm/src/lib/headers.d.ts +40 -1
- package/.dist/esm/src/lib/headers.js +167 -57
- package/.dist/esm/src/lib/headers.js.map +1 -1
- package/.dist/esm/src/lib/queryBody.d.ts +0 -1
- package/.dist/esm/src/lib/queryBody.js +26 -31
- package/.dist/esm/src/lib/queryBody.js.map +1 -1
- package/.dist/esm/src/lib/reflection.d.ts +12 -9
- package/.dist/esm/src/lib/reflection.js +75 -351
- package/.dist/esm/src/lib/reflection.js.map +1 -1
- package/.dist/esm/src/lib/remoteMethods.d.ts +4 -4
- package/.dist/esm/src/lib/remoteMethods.js +105 -111
- package/.dist/esm/src/lib/remoteMethods.js.map +1 -1
- package/.dist/esm/src/lib/urlQuery.d.ts +2 -0
- package/.dist/esm/src/lib/urlQuery.js +23 -0
- package/.dist/esm/src/lib/urlQuery.js.map +1 -0
- package/.dist/esm/src/middlewares/fetchMetadata.d.ts +15 -0
- package/.dist/esm/src/middlewares/fetchMetadata.js +97 -0
- package/.dist/esm/src/middlewares/fetchMetadata.js.map +1 -0
- package/.dist/esm/src/middlewares/syncRoutes.d.ts +12 -0
- package/.dist/esm/src/middlewares/syncRoutes.js +66 -0
- package/.dist/esm/src/middlewares/syncRoutes.js.map +1 -0
- package/.dist/esm/src/router.d.ts +27 -19
- package/.dist/esm/src/router.js +477 -449
- package/.dist/esm/src/router.js.map +1 -1
- package/.dist/esm/src/routes/errors.routes.d.ts +14 -3
- package/.dist/esm/src/routes/errors.routes.js +80 -48
- package/.dist/esm/src/routes/errors.routes.js.map +1 -1
- package/.dist/esm/src/routes/serializer.routes.d.ts +3 -3
- package/.dist/esm/src/routes/serializer.routes.js +107 -179
- package/.dist/esm/src/routes/serializer.routes.js.map +1 -1
- package/.dist/esm/src/types/context.d.ts +13 -21
- package/.dist/esm/src/types/context.js +0 -31
- package/.dist/esm/src/types/definitions.d.ts +32 -20
- package/.dist/esm/src/types/definitions.js +0 -15
- package/.dist/esm/src/types/general.d.ts +15 -15
- package/.dist/esm/src/types/general.js +0 -14
- package/.dist/esm/src/types/guards.d.ts +7 -7
- package/.dist/esm/src/types/guards.js +27 -46
- package/.dist/esm/src/types/guards.js.map +1 -1
- package/.dist/esm/src/types/handlers.d.ts +8 -5
- package/.dist/esm/src/types/handlers.js +0 -13
- package/.dist/esm/src/types/mionRouter.d.ts +44 -0
- package/.dist/esm/src/types/mionRouter.js +0 -0
- package/.dist/esm/src/types/parser.d.ts +43 -0
- package/.dist/esm/src/types/parser.js +0 -0
- package/.dist/esm/src/types/publicMethods.d.ts +65 -25
- package/.dist/esm/src/types/publicMethods.js +0 -24
- package/.dist/esm/src/types/remoteMethods.d.ts +49 -29
- package/.dist/esm/src/types/remoteMethods.js +0 -25
- package/.dist/esm/src/types/resolvedOptions.d.ts +28 -0
- package/.dist/esm/src/types/resolvedOptions.js +0 -0
- package/LICENSE +1 -1
- package/README.md +6 -6
- package/package.json +21 -24
- package/.dist/cjs/index.cjs.map +0 -1
- package/.dist/cjs/index.d.ts.map +0 -1
- package/.dist/cjs/src/aot/aotCacheLoader.cjs +0 -11
- package/.dist/cjs/src/aot/aotCacheLoader.cjs.map +0 -1
- package/.dist/cjs/src/aot/aotCacheLoader.d.ts +0 -2
- package/.dist/cjs/src/aot/aotCacheLoader.d.ts.map +0 -1
- package/.dist/cjs/src/callContext.d.ts.map +0 -1
- package/.dist/cjs/src/constants.d.ts.map +0 -1
- package/.dist/cjs/src/defaultRoutes.cjs +0 -16
- package/.dist/cjs/src/defaultRoutes.cjs.map +0 -1
- package/.dist/cjs/src/defaultRoutes.d.ts +0 -4
- package/.dist/cjs/src/defaultRoutes.d.ts.map +0 -1
- package/.dist/cjs/src/dispatch.d.ts.map +0 -1
- package/.dist/cjs/src/lib/aotEmitter.cjs +0 -74
- package/.dist/cjs/src/lib/aotEmitter.cjs.map +0 -1
- package/.dist/cjs/src/lib/aotEmitter.d.ts +0 -24
- package/.dist/cjs/src/lib/aotEmitter.d.ts.map +0 -1
- package/.dist/cjs/src/lib/dispatchError.d.ts.map +0 -1
- package/.dist/cjs/src/lib/handlers.d.ts.map +0 -1
- package/.dist/cjs/src/lib/headers.d.ts.map +0 -1
- package/.dist/cjs/src/lib/methodsCache.cjs +0 -55
- package/.dist/cjs/src/lib/methodsCache.cjs.map +0 -1
- package/.dist/cjs/src/lib/methodsCache.d.ts +0 -12
- package/.dist/cjs/src/lib/methodsCache.d.ts.map +0 -1
- package/.dist/cjs/src/lib/queryBody.d.ts.map +0 -1
- package/.dist/cjs/src/lib/reflection.d.ts.map +0 -1
- package/.dist/cjs/src/lib/remoteMethods.d.ts.map +0 -1
- package/.dist/cjs/src/lib/test/aotEmitter-test-router.cjs +0 -24
- package/.dist/cjs/src/lib/test/aotEmitter-test-router.cjs.map +0 -1
- package/.dist/cjs/src/lib/test/aotEmitter-test-router.d.ts +0 -5
- package/.dist/cjs/src/lib/test/aotEmitter-test-router.d.ts.map +0 -1
- package/.dist/cjs/src/router.d.ts.map +0 -1
- package/.dist/cjs/src/routes/client.routes.cjs +0 -76
- package/.dist/cjs/src/routes/client.routes.cjs.map +0 -1
- package/.dist/cjs/src/routes/client.routes.d.ts +0 -20
- package/.dist/cjs/src/routes/client.routes.d.ts.map +0 -1
- package/.dist/cjs/src/routes/errors.routes.d.ts.map +0 -1
- package/.dist/cjs/src/routes/mion.routes.cjs +0 -13
- package/.dist/cjs/src/routes/mion.routes.cjs.map +0 -1
- package/.dist/cjs/src/routes/mion.routes.d.ts +0 -10
- package/.dist/cjs/src/routes/mion.routes.d.ts.map +0 -1
- package/.dist/cjs/src/routes/serializer.routes.d.ts.map +0 -1
- package/.dist/cjs/src/routesFlow.cjs +0 -227
- package/.dist/cjs/src/routesFlow.cjs.map +0 -1
- package/.dist/cjs/src/routesFlow.d.ts +0 -8
- package/.dist/cjs/src/routesFlow.d.ts.map +0 -1
- package/.dist/cjs/src/types/context.cjs.map +0 -1
- package/.dist/cjs/src/types/context.d.ts.map +0 -1
- package/.dist/cjs/src/types/definitions.cjs.map +0 -1
- package/.dist/cjs/src/types/definitions.d.ts.map +0 -1
- package/.dist/cjs/src/types/general.cjs.map +0 -1
- package/.dist/cjs/src/types/general.d.ts.map +0 -1
- package/.dist/cjs/src/types/guards.d.ts.map +0 -1
- package/.dist/cjs/src/types/handlers.cjs.map +0 -1
- package/.dist/cjs/src/types/handlers.d.ts.map +0 -1
- package/.dist/cjs/src/types/publicMethods.cjs.map +0 -1
- package/.dist/cjs/src/types/publicMethods.d.ts.map +0 -1
- package/.dist/cjs/src/types/remoteMethods.cjs.map +0 -1
- package/.dist/cjs/src/types/remoteMethods.d.ts.map +0 -1
- package/.dist/esm/index.d.ts.map +0 -1
- package/.dist/esm/index.js.map +0 -1
- package/.dist/esm/src/aot/aotCacheLoader.d.ts +0 -2
- package/.dist/esm/src/aot/aotCacheLoader.d.ts.map +0 -1
- package/.dist/esm/src/aot/aotCacheLoader.js +0 -11
- package/.dist/esm/src/aot/aotCacheLoader.js.map +0 -1
- package/.dist/esm/src/callContext.d.ts.map +0 -1
- package/.dist/esm/src/constants.d.ts.map +0 -1
- package/.dist/esm/src/defaultRoutes.d.ts +0 -4
- package/.dist/esm/src/defaultRoutes.d.ts.map +0 -1
- package/.dist/esm/src/defaultRoutes.js +0 -16
- package/.dist/esm/src/defaultRoutes.js.map +0 -1
- package/.dist/esm/src/dispatch.d.ts.map +0 -1
- package/.dist/esm/src/lib/aotEmitter.d.ts +0 -24
- package/.dist/esm/src/lib/aotEmitter.d.ts.map +0 -1
- package/.dist/esm/src/lib/aotEmitter.js +0 -74
- package/.dist/esm/src/lib/aotEmitter.js.map +0 -1
- package/.dist/esm/src/lib/dispatchError.d.ts.map +0 -1
- package/.dist/esm/src/lib/handlers.d.ts.map +0 -1
- package/.dist/esm/src/lib/headers.d.ts.map +0 -1
- package/.dist/esm/src/lib/methodsCache.d.ts +0 -12
- package/.dist/esm/src/lib/methodsCache.d.ts.map +0 -1
- package/.dist/esm/src/lib/methodsCache.js +0 -56
- package/.dist/esm/src/lib/methodsCache.js.map +0 -1
- package/.dist/esm/src/lib/queryBody.d.ts.map +0 -1
- package/.dist/esm/src/lib/reflection.d.ts.map +0 -1
- package/.dist/esm/src/lib/remoteMethods.d.ts.map +0 -1
- package/.dist/esm/src/lib/test/aotEmitter-test-router.d.ts +0 -5
- package/.dist/esm/src/lib/test/aotEmitter-test-router.d.ts.map +0 -1
- package/.dist/esm/src/lib/test/aotEmitter-test-router.js +0 -24
- package/.dist/esm/src/lib/test/aotEmitter-test-router.js.map +0 -1
- package/.dist/esm/src/router.d.ts.map +0 -1
- package/.dist/esm/src/routes/client.routes.d.ts +0 -20
- package/.dist/esm/src/routes/client.routes.d.ts.map +0 -1
- package/.dist/esm/src/routes/client.routes.js +0 -76
- package/.dist/esm/src/routes/client.routes.js.map +0 -1
- package/.dist/esm/src/routes/errors.routes.d.ts.map +0 -1
- package/.dist/esm/src/routes/mion.routes.d.ts +0 -10
- package/.dist/esm/src/routes/mion.routes.d.ts.map +0 -1
- package/.dist/esm/src/routes/mion.routes.js +0 -13
- package/.dist/esm/src/routes/mion.routes.js.map +0 -1
- package/.dist/esm/src/routes/serializer.routes.d.ts.map +0 -1
- package/.dist/esm/src/routesFlow.d.ts +0 -8
- package/.dist/esm/src/routesFlow.d.ts.map +0 -1
- package/.dist/esm/src/routesFlow.js +0 -227
- package/.dist/esm/src/routesFlow.js.map +0 -1
- package/.dist/esm/src/types/context.d.ts.map +0 -1
- package/.dist/esm/src/types/context.js.map +0 -1
- package/.dist/esm/src/types/definitions.d.ts.map +0 -1
- package/.dist/esm/src/types/definitions.js.map +0 -1
- package/.dist/esm/src/types/general.d.ts.map +0 -1
- package/.dist/esm/src/types/general.js.map +0 -1
- package/.dist/esm/src/types/guards.d.ts.map +0 -1
- package/.dist/esm/src/types/handlers.d.ts.map +0 -1
- package/.dist/esm/src/types/handlers.js.map +0 -1
- package/.dist/esm/src/types/publicMethods.d.ts.map +0 -1
- package/.dist/esm/src/types/publicMethods.js.map +0 -1
- package/.dist/esm/src/types/remoteMethods.d.ts.map +0 -1
- package/.dist/esm/src/types/remoteMethods.js.map +0 -1
- package/index.ts +0 -29
- package/src/aot/aotCacheLoader.ts +0 -15
- package/src/callContext.ts +0 -193
- package/src/constants.ts +0 -45
- package/src/defaultRoutes.ts +0 -37
- package/src/dispatch.ts +0 -204
- package/src/lib/aotEmitter.ts +0 -140
- package/src/lib/dispatchError.ts +0 -60
- package/src/lib/handlers.ts +0 -75
- package/src/lib/headers.ts +0 -102
- package/src/lib/methodsCache.ts +0 -72
- package/src/lib/queryBody.ts +0 -40
- package/src/lib/reflection.ts +0 -517
- package/src/lib/remoteMethods.ts +0 -180
- package/src/lib/test/aotEmitter-test-router.ts +0 -40
- package/src/router.ts +0 -656
- package/src/routes/client.routes.ts +0 -108
- package/src/routes/errors.routes.ts +0 -51
- package/src/routes/mion.routes.ts +0 -11
- package/src/routes/serializer.routes.ts +0 -225
- package/src/routesFlow.ts +0 -320
- package/src/types/context.ts +0 -119
- package/src/types/definitions.ts +0 -53
- package/src/types/general.ts +0 -84
- package/src/types/guards.ts +0 -71
- package/src/types/handlers.ts +0 -49
- package/src/types/publicMethods.ts +0 -83
- package/src/types/remoteMethods.ts +0 -54
package/.dist/esm/src/router.js
CHANGED
|
@@ -1,484 +1,512 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { isAnyMiddlewareDef, isExecutable, isHeadersMiddlewareDef, isMiddlewareDef, isPublicExecutable, isRawMiddlewareDef, isRoute, isRoutes } from "./types/guards.js";
|
|
2
|
+
import { DEFAULT_ROUTE_OPTIONS, JSON_CONTENT_TYPE } from "./constants.js";
|
|
3
|
+
import { assertCompiledParser, getHandlerReflection, getRawMethodReflection } from "./lib/reflection.js";
|
|
4
|
+
import { resolveChainMaxBodySize } from "./lib/bodyLimit.js";
|
|
5
|
+
import { capBatchBodySizes, clearBatches, getMaxBatchBodySize, refreshBatchChainBodyLimits } from "./batches.js";
|
|
6
|
+
import { callerForType } from "./dispatch.js";
|
|
7
|
+
import { getOnEveryCall, headersMiddleware, isOnDemandMiddleware, middleware, mionInternalRouteIds, mutation, query, rawMiddleware, route } from "./lib/handlers.js";
|
|
8
|
+
import { serializerMiddlewares } from "./routes/serializer.routes.js";
|
|
6
9
|
import { getPublicApi, resetRemoteMethodsMetadata } from "./lib/remoteMethods.js";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
10
|
+
import { batchNotFoundMiddleware, mionErrorsRoutes, notFoundMiddleware } from "./routes/errors.routes.js";
|
|
11
|
+
import { BUILD_VERSION_HEADER, DEFAULT_MAX_BODY_SIZE, HandlerType, MION_BATCH_KEY, MION_ROUTES, getENV, getOrCreateGlobal, getRoutePath, getRouterItemId, isTestEnv, isUnsafePropertyName, resetRoutesCache, resolveParser, routesCache, setErrorOptions } from "@mionjs/core";
|
|
12
|
+
//#region src/router.ts
|
|
13
|
+
var flatRouter = getOrCreateGlobal("mion.router.flatRouter", () => /* @__PURE__ */ new Map());
|
|
14
|
+
/** mion's two not-found chains (an unknown path, an unknown batch id) are NOT routes and not in the
|
|
15
|
+
* router above: each is the global middleware behind a first member that throws, and is rebuilt on
|
|
16
|
+
* every registration because that middleware is. */
|
|
17
|
+
var notFoundChains = getOrCreateGlobal("mion.router.notFoundChains", () => /* @__PURE__ */ new Map());
|
|
18
|
+
var middlewaresById = getOrCreateGlobal("mion.router.middlewaresById", () => /* @__PURE__ */ new Map());
|
|
19
|
+
var routesById = getOrCreateGlobal("mion.router.routesById", () => /* @__PURE__ */ new Map());
|
|
20
|
+
var rawMiddlewaresById = getOrCreateGlobal("mion.router.rawMiddlewaresById", () => /* @__PURE__ */ new Map());
|
|
21
|
+
var middlewareNames = getOrCreateGlobal("mion.router.middlewareNames", () => /* @__PURE__ */ new Set());
|
|
22
|
+
var routeNames = getOrCreateGlobal("mion.router.routeNames", () => /* @__PURE__ */ new Set());
|
|
23
|
+
var complexity = 0;
|
|
24
|
+
var routerOptions = { ...DEFAULT_ROUTE_OPTIONS };
|
|
25
|
+
var isRouterInitialized = false;
|
|
26
|
+
var isRouterCreated = false;
|
|
27
|
+
var allExecutablesIds;
|
|
28
|
+
var platformConfig;
|
|
29
|
+
/** Merged by initRouter, read per request. */
|
|
30
|
+
var responseDefaults = mergeResponseDefaults({});
|
|
31
|
+
/** Sent by mionFetchMetadata; unset with `apiVersionCheck` off, a pinned header or no build version. */
|
|
32
|
+
var buildVersion;
|
|
33
|
+
/** The adapter's `maxBodySize` under its `maxBodySizeCap`, settled by setPlatformConfig (the default with no adapter). */
|
|
34
|
+
var platformMaxBodySize = DEFAULT_MAX_BODY_SIZE;
|
|
35
|
+
/** Run before and after every middleware or route set through `mion.initRoutes` */
|
|
36
|
+
var defaultStartMiddlewares = { mionDeserializeRequest: serializerMiddlewares.mionDeserializeRequest };
|
|
37
|
+
var defaultEndMiddlewares = { mionSerializeResponse: serializerMiddlewares.mionSerializeResponse };
|
|
38
|
+
var startMiddlewaresDef = { ...defaultStartMiddlewares };
|
|
39
|
+
var endMiddlewaresDef = { ...defaultEndMiddlewares };
|
|
40
|
+
var startMiddlewares = [];
|
|
41
|
+
var endMiddlewares = [];
|
|
42
|
+
var getRouteExecutionChain = (path) => flatRouter.get(path);
|
|
43
|
+
/** The chain that answers an unknown path or an unknown batch id, by its `MION_ROUTES` id. */
|
|
44
|
+
var getNotFoundExecutionChain = (id) => notFoundChains.get(id);
|
|
45
|
+
var getRouteEntries = () => flatRouter.entries();
|
|
46
|
+
var geRoutesSize = () => flatRouter.size;
|
|
47
|
+
var getRouteExecutable = (id) => routesById.get(id);
|
|
48
|
+
var getMiddlewareExecutable = (id) => middlewaresById.get(id);
|
|
49
|
+
var getMiddlewaresSize = () => middlewaresById.size;
|
|
50
|
+
var getComplexity = () => complexity;
|
|
51
|
+
var getRouterOptions = () => routerOptions;
|
|
52
|
+
/** The version mionFetchMetadata sends in `x-build-version`. */
|
|
53
|
+
var getBuildVersion = () => buildVersion;
|
|
54
|
+
/** The headers every response starts with: every adapter reads it per request. */
|
|
55
|
+
var getResponseDefaults = () => responseDefaults;
|
|
56
|
+
var getAnyExecutable = (id) => routesById.get(id) || middlewaresById.get(id) || rawMiddlewaresById.get(id);
|
|
57
|
+
/** Called automatically by platform adapters: the adapter's `maxBodySize` and `maxBodySizeCap` are
|
|
58
|
+
* settled here, once, so no request reads the config. */
|
|
44
59
|
function setPlatformConfig(config) {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
60
|
+
platformConfig = config;
|
|
61
|
+
const published = config.maxBodySize;
|
|
62
|
+
platformMaxBodySize = Math.min(typeof published === "number" ? published : DEFAULT_MAX_BODY_SIZE, readMaxBodySizeCap(config) ?? Infinity);
|
|
63
|
+
if (isRouterInitialized) applyMaxBodySizeCap();
|
|
64
|
+
refreshChainBodyLimits();
|
|
65
|
+
}
|
|
66
|
+
var getPlatformConfig = () => platformConfig;
|
|
67
|
+
var devHost = getOrCreateGlobal("mion.router.devHost", () => ({
|
|
68
|
+
ownsSocket: false,
|
|
69
|
+
handler: void 0
|
|
70
|
+
}));
|
|
71
|
+
/** Set by a dev host that owns the socket (the mion vite plugin) BEFORE it loads the server entry, so whatever
|
|
72
|
+
* platform adapter the entry starts registers its routes and hands over its handler instead of listening. */
|
|
73
|
+
function setHostOwnsSocket(ownsSocket) {
|
|
74
|
+
devHost.ownsSocket = ownsSocket;
|
|
75
|
+
if (!ownsSocket) devHost.handler = void 0;
|
|
76
|
+
}
|
|
77
|
+
var hostOwnsSocket = () => devHost.ownsSocket;
|
|
78
|
+
/** Every platform adapter calls it on start; true means a dev host owns the socket and the adapter must not listen. */
|
|
79
|
+
function handOverToHost(handler) {
|
|
80
|
+
if (devHost.ownsSocket) devHost.handler = handler;
|
|
81
|
+
return devHost.ownsSocket;
|
|
54
82
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
83
|
+
var getHostRequestHandler = () => devHost.handler;
|
|
84
|
+
var resetRouter = () => {
|
|
85
|
+
flatRouter.clear();
|
|
86
|
+
notFoundChains.clear();
|
|
87
|
+
middlewaresById.clear();
|
|
88
|
+
routesById.clear();
|
|
89
|
+
rawMiddlewaresById.clear();
|
|
90
|
+
middlewareNames.clear();
|
|
91
|
+
routeNames.clear();
|
|
92
|
+
complexity = 0;
|
|
93
|
+
routerOptions = { ...DEFAULT_ROUTE_OPTIONS };
|
|
94
|
+
startMiddlewaresDef = { ...defaultStartMiddlewares };
|
|
95
|
+
endMiddlewaresDef = { ...defaultEndMiddlewares };
|
|
96
|
+
startMiddlewares = [];
|
|
97
|
+
endMiddlewares = [];
|
|
98
|
+
isRouterInitialized = false;
|
|
99
|
+
isRouterCreated = false;
|
|
100
|
+
allExecutablesIds = void 0;
|
|
101
|
+
platformConfig = void 0;
|
|
102
|
+
responseDefaults = mergeResponseDefaults({});
|
|
103
|
+
buildVersion = void 0;
|
|
104
|
+
platformMaxBodySize = DEFAULT_MAX_BODY_SIZE;
|
|
105
|
+
resetRemoteMethodsMetadata();
|
|
106
|
+
resetRoutesCache();
|
|
107
|
+
clearBatches();
|
|
77
108
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
109
|
+
/** The ONE way to initialize the router and to declare routes and middlewares: the options are written once
|
|
110
|
+
* and carried BY TYPE into every helper the factory returns, so a handler's `ctx.shared` is typed from
|
|
111
|
+
* `contextDataFactory` and router-wide defaults can be read at build time. The helpers are plain closures
|
|
112
|
+
* (no `this`), so destructuring them is fine. Create the router once per app: a second call throws until
|
|
113
|
+
* `resetRouter()` (tests) clears it. */
|
|
114
|
+
function createMionRouter(opts) {
|
|
115
|
+
if (isRouterCreated) throw new Error("createMionRouter has already been called: create the router once per app (resetRouter() clears it in tests)");
|
|
116
|
+
isRouterCreated = true;
|
|
117
|
+
const options = Object.freeze({ ...opts });
|
|
118
|
+
return {
|
|
119
|
+
options,
|
|
120
|
+
route,
|
|
121
|
+
query,
|
|
122
|
+
mutation,
|
|
123
|
+
middleware,
|
|
124
|
+
headersMiddleware,
|
|
125
|
+
rawMiddleware,
|
|
126
|
+
initRoutes(routes, buildVersion) {
|
|
127
|
+
initRouter(options, buildVersion);
|
|
128
|
+
const api = registerRoutes(routes);
|
|
129
|
+
if (platformConfig) applyMaxBodySizeCap();
|
|
130
|
+
refreshChainBodyLimits();
|
|
131
|
+
return api;
|
|
132
|
+
}
|
|
133
|
+
};
|
|
83
134
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
135
|
+
/** Once per app; `resetRouter()` clears it. */
|
|
136
|
+
function initRouter(opts, version) {
|
|
137
|
+
if (isRouterInitialized) throw new Error("Router has already been initialized");
|
|
138
|
+
routerOptions = {
|
|
139
|
+
...routerOptions,
|
|
140
|
+
...opts
|
|
141
|
+
};
|
|
142
|
+
responseDefaults = mergeResponseDefaults(routerOptions.responseHeaders);
|
|
143
|
+
const isPinned = responseDefaults[BUILD_VERSION_HEADER] !== void 0;
|
|
144
|
+
buildVersion = routerOptions.apiVersionCheck && !isPinned && version || void 0;
|
|
145
|
+
validateSharedDataFactory(routerOptions);
|
|
146
|
+
Object.freeze(routerOptions);
|
|
147
|
+
setErrorOptions(routerOptions);
|
|
148
|
+
isRouterInitialized = true;
|
|
149
|
+
registerRoutes({ ...mionErrorsRoutes });
|
|
150
|
+
if (!isTestEnv()) console.log("mion router initialized", { routerOptions });
|
|
96
151
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
return {};
|
|
152
|
+
function registerRoutes(routes) {
|
|
153
|
+
if (!isRouterInitialized) throw new Error("the router must be initialized first");
|
|
154
|
+
startMiddlewares = getExecutablesFromMiddlewaresCollection(startMiddlewaresDef);
|
|
155
|
+
endMiddlewares = getExecutablesFromMiddlewaresCollection(endMiddlewaresDef);
|
|
156
|
+
recursiveFlatRoutes(routes, [], [], [], 0);
|
|
157
|
+
buildNotFoundChains();
|
|
158
|
+
allExecutablesIds = void 0;
|
|
159
|
+
if (shouldFullGenerateSpec()) return getPublicApi(routes);
|
|
160
|
+
return {};
|
|
108
161
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
162
|
+
/** Adds middlewares at the start of the ExecutionChain, before the existing start middlewares by default */
|
|
163
|
+
function addStartMiddlewares(middlewaresDef, appendBeforeExisting = true) {
|
|
164
|
+
if (isRouterInitialized) throw new Error("Can not add start middlewares after the router has been initialized");
|
|
165
|
+
if (appendBeforeExisting) {
|
|
166
|
+
startMiddlewaresDef = {
|
|
167
|
+
...middlewaresDef,
|
|
168
|
+
...startMiddlewaresDef
|
|
169
|
+
};
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
startMiddlewaresDef = {
|
|
173
|
+
...startMiddlewaresDef,
|
|
174
|
+
...middlewaresDef
|
|
175
|
+
};
|
|
116
176
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
177
|
+
/** Adds middlewares at the end of the ExecutionChain, after the existing end middlewares by default */
|
|
178
|
+
function addEndMiddlewares(middlewaresDef, prependAfterExisting = true) {
|
|
179
|
+
if (isRouterInitialized) throw new Error("Can not add end middlewares after the router has been initialized");
|
|
180
|
+
if (prependAfterExisting) {
|
|
181
|
+
endMiddlewaresDef = {
|
|
182
|
+
...endMiddlewaresDef,
|
|
183
|
+
...middlewaresDef
|
|
184
|
+
};
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
endMiddlewaresDef = {
|
|
188
|
+
...middlewaresDef,
|
|
189
|
+
...endMiddlewaresDef
|
|
190
|
+
};
|
|
124
191
|
}
|
|
125
192
|
function isPrivateDefinition(entry, id) {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
function isPrivateExecutable(executable) {
|
|
138
|
-
if (executable.type === HandlerType.rawMiddleFn) return true;
|
|
139
|
-
if (executable.type === HandlerType.route) return false;
|
|
140
|
-
const hasPublicParams = !!executable.paramNames?.length;
|
|
141
|
-
const hasHeaderParams = !!executable.headersParam?.headerNames?.length;
|
|
142
|
-
return !hasPublicParams && !hasHeaderParams && !executable.hasReturnData;
|
|
193
|
+
if (isRoute(entry)) return false;
|
|
194
|
+
if (isRawMiddlewareDef(entry)) return true;
|
|
195
|
+
try {
|
|
196
|
+
const executable = getMiddlewareExecutable(id) || getRouteExecutable(id);
|
|
197
|
+
if (!executable) throw new Error(`Route or Middleware ${id} not found. Please check you have called mion.initRoutes first.`);
|
|
198
|
+
return !isPublicExecutable(executable);
|
|
199
|
+
} catch {
|
|
200
|
+
return false;
|
|
201
|
+
}
|
|
143
202
|
}
|
|
144
203
|
function getTotalExecutables() {
|
|
145
|
-
|
|
204
|
+
return routesById.size + middlewaresById.size + rawMiddlewaresById.size;
|
|
146
205
|
}
|
|
147
206
|
function getAllExecutablesIds() {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
207
|
+
if (allExecutablesIds) return allExecutablesIds;
|
|
208
|
+
allExecutablesIds = [
|
|
209
|
+
...routesById.keys(),
|
|
210
|
+
...middlewaresById.keys(),
|
|
211
|
+
...rawMiddlewaresById.keys()
|
|
212
|
+
];
|
|
213
|
+
return allExecutablesIds;
|
|
151
214
|
}
|
|
152
215
|
function shouldFullGenerateSpec() {
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
function getRouteExecutableFromPath(path) {
|
|
156
|
-
const executionChain = flatRouter.get(path);
|
|
157
|
-
if (!executionChain) {
|
|
158
|
-
return getAnyExecutable(MION_ROUTES.notFound);
|
|
159
|
-
}
|
|
160
|
-
return executionChain.methods[executionChain.routeIndex];
|
|
161
|
-
}
|
|
162
|
-
async function loadAOTCaches() {
|
|
163
|
-
const loader = await import("./aot/aotCacheLoader.js");
|
|
164
|
-
return loader.loadRouterAOTCaches();
|
|
216
|
+
return routerOptions.getPublicRoutesData || getENV("GENERATE_ROUTER_SPEC") === "true";
|
|
165
217
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
218
|
+
/** Flattens the routes object into a list of Executable objects. `currentPointer` is the position in that
|
|
219
|
+
* object (i.e. ['users', 'get']); `preMiddlewares` / `postMiddlewares` are the middlewares one level up, before
|
|
220
|
+
* and after that position. */
|
|
221
|
+
function recursiveFlatRoutes(routes, currentPointer = [], preMiddlewares = [], postMiddlewares = [], nestLevel = 0) {
|
|
222
|
+
if (nestLevel > 10) throw new Error("Too many nested routes, you can only nest routes ${MAX_ROUTE_NESTING} levels");
|
|
223
|
+
const entries = Object.entries(routes);
|
|
224
|
+
if (entries.length === 0) throw new Error(`Invalid route: ${currentPointer.length ? joinPath(...currentPointer) : "*"}. Can Not define empty routes`);
|
|
225
|
+
let minus1Props = null;
|
|
226
|
+
for (let index = 0; index < entries.length; index++) {
|
|
227
|
+
const [key, item] = entries[index];
|
|
228
|
+
const newPointer = [...currentPointer, key];
|
|
229
|
+
let routeEntry;
|
|
230
|
+
if (typeof key !== "string" || !isNaN(key)) throw new Error(`Invalid route: ${joinPath(...newPointer)}. Numeric route names are not allowed`);
|
|
231
|
+
if (key.includes(",")) throw new Error(`Invalid route: ${joinPath(...newPointer)}. Route names cannot contain commas.`);
|
|
232
|
+
if (isUnsafePropertyName(key)) throw new Error(`Invalid route: ${joinPath(...newPointer)}. '${key}' is not a valid route name.`);
|
|
233
|
+
if (key === MION_BATCH_KEY) throw new Error(`Invalid route: ${joinPath(...newPointer)}. '${MION_BATCH_KEY}' is a reserved mion route name.`);
|
|
234
|
+
if (isAnyMiddlewareDef(item)) {
|
|
235
|
+
if (nestLevel === 0 && (Object.hasOwn(startMiddlewaresDef, key) || Object.hasOwn(endMiddlewaresDef, key))) throw new Error(`Invalid middleware: ${joinPath(...newPointer)}. '${key}' is a reserved mion middleware name.`);
|
|
236
|
+
if (isOnDemandMiddleware(item) && (nestLevel !== 0 || entries.slice(0, index).some(([, entry]) => !isAnyMiddlewareDef(entry)))) throw new Error(`Invalid middleware: ${joinPath(...newPointer)}. Place '${key}' at the root of your routes, before any route or group.`);
|
|
237
|
+
routeEntry = getExecutableFromAnyMiddleware(item, newPointer, nestLevel);
|
|
238
|
+
if (middlewareNames.has(routeEntry.id)) throw new Error(`Invalid middleware: ${joinPath(...newPointer)}. Naming collision, duplicated middleware.`);
|
|
239
|
+
middlewareNames.add(routeEntry.id);
|
|
240
|
+
} else if (isRoute(item)) {
|
|
241
|
+
routeEntry = getExecutableFromRoute(item, newPointer, nestLevel);
|
|
242
|
+
if (routeNames.has(routeEntry.id)) throw new Error(`Invalid route: ${joinPath(...newPointer)}. Naming collision, duplicated route`);
|
|
243
|
+
routeNames.add(routeEntry.id);
|
|
244
|
+
} else if (isRoutes(item)) routeEntry = {
|
|
245
|
+
pathPointer: newPointer,
|
|
246
|
+
routes: item
|
|
247
|
+
};
|
|
248
|
+
else {
|
|
249
|
+
const itemType = typeof item;
|
|
250
|
+
throw new Error(`Invalid route: ${joinPath(...newPointer)}. Type <${itemType}> is not a valid route.`);
|
|
251
|
+
}
|
|
252
|
+
minus1Props = recursiveCreateExecutionChain(routeEntry, newPointer, preMiddlewares, postMiddlewares, nestLevel, index, entries, minus1Props);
|
|
253
|
+
complexity++;
|
|
254
|
+
}
|
|
170
255
|
}
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
binaryMiddlewares,
|
|
216
|
-
nestLevel,
|
|
217
|
-
index,
|
|
218
|
-
entries,
|
|
219
|
-
minus1Props
|
|
220
|
-
);
|
|
221
|
-
complexity++;
|
|
222
|
-
}
|
|
256
|
+
function recursiveCreateExecutionChain(routeEntry, currentPointer, preMiddlewares, postMiddlewares, nestLevel, index, routeKeyedEntries, minus1Props) {
|
|
257
|
+
const props = getRouteEntryProperties(getEntry(index - 1, routeKeyedEntries), routeEntry, getEntry(index + 1, routeKeyedEntries));
|
|
258
|
+
if (props.isBetweenRoutes && minus1Props) {
|
|
259
|
+
props.preLevelMiddlewares = minus1Props.preLevelMiddlewares;
|
|
260
|
+
props.postLevelMiddlewares = minus1Props.postLevelMiddlewares;
|
|
261
|
+
} else for (let i = 0; i < routeKeyedEntries.length; i++) {
|
|
262
|
+
const [k, entry] = routeKeyedEntries[i];
|
|
263
|
+
complexity++;
|
|
264
|
+
if (!isAnyMiddlewareDef(entry)) continue;
|
|
265
|
+
const executable = getExecutableFromAnyMiddleware(entry, [...currentPointer.slice(0, -1), k], nestLevel);
|
|
266
|
+
if (i < index) props.preLevelMiddlewares.push(executable);
|
|
267
|
+
if (i > index) props.postLevelMiddlewares.push(executable);
|
|
268
|
+
}
|
|
269
|
+
const isExec = isExecutable(routeEntry);
|
|
270
|
+
if (isExec && props.isRoute) {
|
|
271
|
+
const path = getRoutePath(routeEntry.pointer, routerOptions);
|
|
272
|
+
const routeMethod = routeEntry;
|
|
273
|
+
const levelMethods = [
|
|
274
|
+
...preMiddlewares,
|
|
275
|
+
...props.preLevelMiddlewares,
|
|
276
|
+
routeEntry,
|
|
277
|
+
...props.postLevelMiddlewares,
|
|
278
|
+
...postMiddlewares
|
|
279
|
+
];
|
|
280
|
+
const methods = [
|
|
281
|
+
...startMiddlewares,
|
|
282
|
+
...levelMethods,
|
|
283
|
+
...endMiddlewares
|
|
284
|
+
];
|
|
285
|
+
const maxBodySize = mionInternalRouteIds.has(routeMethod.id) ? routeMethod.options.maxBodySize : resolveChainMaxBodySize(methods, routeMethod, routerOptions);
|
|
286
|
+
if (maxBodySize !== void 0) routeMethod.options.maxBodySize = maxBodySize;
|
|
287
|
+
const executionChain = {
|
|
288
|
+
routeIndex: startMiddlewares.length + preMiddlewares.length + props.preLevelMiddlewares.length,
|
|
289
|
+
methods,
|
|
290
|
+
path,
|
|
291
|
+
declaredBodySize: maxBodySize,
|
|
292
|
+
maxBodySize: maxBodySize ?? platformMaxBodySize,
|
|
293
|
+
readsBody: true
|
|
294
|
+
};
|
|
295
|
+
const middlewareIds = getPublicMiddlewareIds(levelMethods);
|
|
296
|
+
if (middlewareIds.length) routeMethod.middlewareIds = middlewareIds;
|
|
297
|
+
flatRouter.set(path, executionChain);
|
|
298
|
+
} else if (!isExec) recursiveFlatRoutes(routeEntry.routes, routeEntry.pathPointer, [...preMiddlewares, ...props.preLevelMiddlewares], [...props.postLevelMiddlewares, ...postMiddlewares], nestLevel + 1);
|
|
299
|
+
return props;
|
|
223
300
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
if (isExec && props.isRoute) {
|
|
244
|
-
const path = getRoutePath(routeEntry.pointer, routerOptions);
|
|
245
|
-
const routeMethod = routeEntry;
|
|
246
|
-
const levelMethods = [
|
|
247
|
-
...preMiddleFns,
|
|
248
|
-
...props.preLevelMiddleFns,
|
|
249
|
-
routeEntry,
|
|
250
|
-
...props.postLevelMiddleFns,
|
|
251
|
-
...postMiddleFns
|
|
252
|
-
];
|
|
253
|
-
const methods = [...startMiddleFns, ...levelMethods, ...endMiddleFns];
|
|
254
|
-
const executionChain = {
|
|
255
|
-
routeIndex: startMiddleFns.length + preMiddleFns.length + props.preLevelMiddleFns.length,
|
|
256
|
-
methods,
|
|
257
|
-
serializer: getSerializerCodeFromMode(routeMethod.options.serializer)
|
|
258
|
-
};
|
|
259
|
-
const middleFnIds = getPublicMiddleFnIds(methods);
|
|
260
|
-
if (middleFnIds.length) routeMethod.middleFnIds = middleFnIds;
|
|
261
|
-
flatRouter.set(path, executionChain);
|
|
262
|
-
if (routeMethod.options.serializer === "binary") {
|
|
263
|
-
for (const method of methods) {
|
|
264
|
-
if (method.type === HandlerType.middleFn || method.type === HandlerType.headersMiddleFn) {
|
|
265
|
-
binaryMiddlewares.add(method.id);
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
} else if (!isExec) {
|
|
270
|
-
await recursiveFlatRoutes(
|
|
271
|
-
routeEntry.routes,
|
|
272
|
-
routeEntry.pathPointer,
|
|
273
|
-
[...preMiddleFns, ...props.preLevelMiddleFns],
|
|
274
|
-
[...props.postLevelMiddleFns, ...postMiddleFns],
|
|
275
|
-
binaryMiddlewares,
|
|
276
|
-
nestLevel + 1
|
|
277
|
-
);
|
|
278
|
-
}
|
|
279
|
-
return props;
|
|
301
|
+
/** The thrower goes first so the dispatcher skips every later non-`alwaysRun` member; body size is the platform's. */
|
|
302
|
+
function buildNotFoundChains() {
|
|
303
|
+
notFoundChains.clear();
|
|
304
|
+
const throwers = [[MION_ROUTES.notFound, notFoundMiddleware], [MION_ROUTES.batchNotFound, batchNotFoundMiddleware]];
|
|
305
|
+
for (const [id, middlewareDef] of throwers) {
|
|
306
|
+
const methods = [
|
|
307
|
+
getExecutableFromRawMiddleware(middlewareDef, [id], 0),
|
|
308
|
+
...startMiddlewares,
|
|
309
|
+
...endMiddlewares
|
|
310
|
+
];
|
|
311
|
+
notFoundChains.set(id, {
|
|
312
|
+
routeIndex: -1,
|
|
313
|
+
methods,
|
|
314
|
+
path: void 0,
|
|
315
|
+
declaredBodySize: void 0,
|
|
316
|
+
maxBodySize: platformMaxBodySize,
|
|
317
|
+
readsBody: false
|
|
318
|
+
});
|
|
319
|
+
}
|
|
280
320
|
}
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
321
|
+
function getExecutableFromAnyMiddleware(middleware, middlewarePointer, nestLevel) {
|
|
322
|
+
if (isRawMiddlewareDef(middleware)) return getExecutableFromRawMiddleware(middleware, middlewarePointer, nestLevel);
|
|
323
|
+
return getExecutableFromMiddleware(middleware, middlewarePointer, nestLevel);
|
|
284
324
|
}
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
addToPersistedMethods(middleFnId, executable);
|
|
319
|
-
}
|
|
320
|
-
middleFnsById.set(middleFnId, executable);
|
|
321
|
-
routesCache.setMethodJitFns(middleFnId, executable);
|
|
322
|
-
return executable;
|
|
325
|
+
function getExecutableFromMiddleware(middleware, middlewarePointer, nestLevel) {
|
|
326
|
+
const isHeader = isHeadersMiddlewareDef(middleware);
|
|
327
|
+
const middlewareId = getRouterItemId(middlewarePointer);
|
|
328
|
+
const existing = middlewaresById.get(middlewareId);
|
|
329
|
+
if (existing) return existing;
|
|
330
|
+
let executable;
|
|
331
|
+
{
|
|
332
|
+
const parser = resolveParser(middleware.options?.parser, routerOptions.parser, middlewareId);
|
|
333
|
+
const reflectionData = getHandlerReflection(middleware, middlewareId, routerOptions, middleware.options ?? {}, isHeader);
|
|
334
|
+
assertCompiledParser(middlewareId, parser, reflectionData);
|
|
335
|
+
const middlewareType = isHeader ? HandlerType.headersMiddleware : HandlerType.middleware;
|
|
336
|
+
executable = {
|
|
337
|
+
id: middlewareId,
|
|
338
|
+
type: middlewareType,
|
|
339
|
+
nestLevel,
|
|
340
|
+
handler: middleware.handler,
|
|
341
|
+
pointer: middlewarePointer,
|
|
342
|
+
methodCaller: isOnDemandMiddleware(middleware) ? onDemandCaller(callerForType(middlewareType), getOnEveryCall(middleware)) : callerForType(middlewareType),
|
|
343
|
+
alwaysRun: !!middleware.options?.alwaysRun,
|
|
344
|
+
quotedId: JSON.stringify(middlewareId),
|
|
345
|
+
...reflectionData,
|
|
346
|
+
options: {
|
|
347
|
+
alwaysRun: !!middleware.options?.alwaysRun,
|
|
348
|
+
description: middleware.options?.description,
|
|
349
|
+
parser,
|
|
350
|
+
sanitizeParams: middleware.options?.sanitizeParams ?? routerOptions.sanitizeParams
|
|
351
|
+
}
|
|
352
|
+
};
|
|
353
|
+
if (middleware.options?.maxBodySize !== void 0) executable.options.maxBodySize = middleware.options.maxBodySize;
|
|
354
|
+
}
|
|
355
|
+
middlewaresById.set(middlewareId, executable);
|
|
356
|
+
routesCache.setMethodJitFns(middlewareId, executable);
|
|
357
|
+
return executable;
|
|
323
358
|
}
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
id: middleFnId,
|
|
331
|
-
type: HandlerType.rawMiddleFn,
|
|
332
|
-
nestLevel,
|
|
333
|
-
handler: middleFn.handler,
|
|
334
|
-
pointer: middleFnPointer,
|
|
335
|
-
...reflectionData,
|
|
336
|
-
options: {
|
|
337
|
-
runOnError: !!middleFn.options?.runOnError,
|
|
338
|
-
validateParams: false,
|
|
339
|
-
validateReturn: false,
|
|
340
|
-
description: middleFn.options?.description
|
|
341
|
-
}
|
|
342
|
-
};
|
|
343
|
-
rawMiddleFnsById.set(middleFnId, executable);
|
|
344
|
-
routesCache.setMethodJitFns(middleFnId, executable);
|
|
345
|
-
return executable;
|
|
359
|
+
/** An absent slot skips the params pipeline; the answer is the same only because such a middleware's params are optional. */
|
|
360
|
+
function onDemandCaller(caller, onEveryCall) {
|
|
361
|
+
return (context, executable, request, ...rest) => {
|
|
362
|
+
onEveryCall?.(context);
|
|
363
|
+
return request.body[executable.id] === void 0 ? void 0 : caller(context, executable, request, ...rest);
|
|
364
|
+
};
|
|
346
365
|
}
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
366
|
+
function getExecutableFromRawMiddleware(middleware, middlewarePointer, nestLevel) {
|
|
367
|
+
const middlewareId = getRouterItemId(middlewarePointer);
|
|
368
|
+
const existing = rawMiddlewaresById.get(middlewareId);
|
|
369
|
+
if (existing) return existing;
|
|
370
|
+
const reflectionData = getRawMethodReflection(middleware.handler, middlewareId, routerOptions);
|
|
371
|
+
const executable = {
|
|
372
|
+
id: middlewareId,
|
|
373
|
+
type: HandlerType.rawMiddleware,
|
|
374
|
+
nestLevel,
|
|
375
|
+
handler: middleware.handler,
|
|
376
|
+
pointer: middlewarePointer,
|
|
377
|
+
methodCaller: callerForType(HandlerType.rawMiddleware),
|
|
378
|
+
alwaysRun: !!middleware.options?.alwaysRun,
|
|
379
|
+
quotedId: JSON.stringify(middlewareId),
|
|
380
|
+
...reflectionData,
|
|
381
|
+
options: {
|
|
382
|
+
alwaysRun: !!middleware.options?.alwaysRun,
|
|
383
|
+
description: middleware.options?.description
|
|
384
|
+
}
|
|
385
|
+
};
|
|
386
|
+
rawMiddlewaresById.set(middlewareId, executable);
|
|
387
|
+
routesCache.setMethodJitFns(middlewareId, executable);
|
|
388
|
+
return executable;
|
|
352
389
|
}
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
strictTypes: route.options?.strictTypes ?? routerOptions.strictTypes
|
|
386
|
-
}
|
|
387
|
-
};
|
|
388
|
-
addToPersistedMethods(routeId, executable);
|
|
389
|
-
}
|
|
390
|
-
routesById.set(routeId, executable);
|
|
391
|
-
routesCache.setMethodJitFns(routeId, executable);
|
|
392
|
-
return executable;
|
|
390
|
+
function getExecutableFromRoute(route, routePointer, nestLevel) {
|
|
391
|
+
const routeId = getRouterItemId(routePointer);
|
|
392
|
+
const existing = routesById.get(routeId);
|
|
393
|
+
if (existing) return existing;
|
|
394
|
+
let executable;
|
|
395
|
+
{
|
|
396
|
+
const parser = resolveParser(route.options?.parser, routerOptions.parser, routeId);
|
|
397
|
+
const reflectionData = getHandlerReflection(route, routeId, routerOptions, route.options ?? {}, false);
|
|
398
|
+
assertCompiledParser(routeId, parser, reflectionData);
|
|
399
|
+
executable = {
|
|
400
|
+
id: routeId,
|
|
401
|
+
type: HandlerType.route,
|
|
402
|
+
nestLevel,
|
|
403
|
+
handler: route.handler,
|
|
404
|
+
pointer: routePointer,
|
|
405
|
+
methodCaller: callerForType(HandlerType.route),
|
|
406
|
+
alwaysRun: false,
|
|
407
|
+
quotedId: JSON.stringify(routeId),
|
|
408
|
+
...reflectionData,
|
|
409
|
+
options: {
|
|
410
|
+
alwaysRun: false,
|
|
411
|
+
description: route.options?.description,
|
|
412
|
+
parser,
|
|
413
|
+
isMutation: route.options?.isMutation,
|
|
414
|
+
sanitizeParams: route.options?.sanitizeParams ?? routerOptions.sanitizeParams
|
|
415
|
+
}
|
|
416
|
+
};
|
|
417
|
+
if (route.options?.maxBodySize !== void 0) executable.options.maxBodySize = route.options.maxBodySize;
|
|
418
|
+
}
|
|
419
|
+
routesById.set(routeId, executable);
|
|
420
|
+
routesCache.setMethodJitFns(routeId, executable);
|
|
421
|
+
return executable;
|
|
393
422
|
}
|
|
394
|
-
function
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
return ids;
|
|
423
|
+
function getPublicMiddlewareIds(methods) {
|
|
424
|
+
return methods.filter((exec) => isPublicExecutable(exec)).map((exec) => getRouterItemId(exec.pointer)).filter((mfId) => {
|
|
425
|
+
if (mionInternalRouteIds.has(mfId)) return false;
|
|
426
|
+
const exec = getMiddlewareExecutable(mfId);
|
|
427
|
+
return exec && isPublicExecutable(exec);
|
|
428
|
+
});
|
|
401
429
|
}
|
|
402
430
|
function getEntry(index, keyEntryList) {
|
|
403
|
-
|
|
431
|
+
return keyEntryList[index]?.[1];
|
|
404
432
|
}
|
|
405
433
|
function getRouteEntryProperties(minus1, zero, plus1) {
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
434
|
+
const minus1IsRoute = minus1 && isRoute(minus1);
|
|
435
|
+
const zeroIsRoute = zero.type === HandlerType.route;
|
|
436
|
+
const plus1IsRoute = plus1 && isRoute(plus1);
|
|
437
|
+
const isExec = !!zero.handler;
|
|
438
|
+
return {
|
|
439
|
+
isBetweenRoutes: minus1IsRoute && zeroIsRoute && plus1IsRoute,
|
|
440
|
+
isExecutable: isExec,
|
|
441
|
+
isRoute: zeroIsRoute,
|
|
442
|
+
preLevelMiddlewares: [],
|
|
443
|
+
postLevelMiddlewares: []
|
|
444
|
+
};
|
|
417
445
|
}
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
results.push(await getExecutableFromMiddleFn(middleFn, [key], 0));
|
|
425
|
-
} else {
|
|
426
|
-
throw new Error(`Invalid middleFn: ${key}. Invalid middleFn definition`);
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
return results;
|
|
446
|
+
function getExecutablesFromMiddlewaresCollection(middlewaresDef) {
|
|
447
|
+
const results = [];
|
|
448
|
+
for (const [key, middleware] of Object.entries(middlewaresDef)) if (isRawMiddlewareDef(middleware)) results.push(getExecutableFromRawMiddleware(middleware, [key], 0));
|
|
449
|
+
else if (isHeadersMiddlewareDef(middleware) || isMiddlewareDef(middleware)) results.push(getExecutableFromMiddleware(middleware, [key], 0));
|
|
450
|
+
else throw new Error(`Invalid middleware: ${key}. Invalid middleware definition`);
|
|
451
|
+
return results;
|
|
430
452
|
}
|
|
431
453
|
function validateSharedDataFactory(opts) {
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
throw new Error("contextDataFactory must return a plain object with at least one property");
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
function getSerializerCodeFromMode(mode) {
|
|
439
|
-
switch (mode) {
|
|
440
|
-
case "binary":
|
|
441
|
-
return SerializerModes.binary;
|
|
442
|
-
case "stringifyJson":
|
|
443
|
-
return SerializerModes.stringifyJson;
|
|
444
|
-
case "optimistic":
|
|
445
|
-
return SerializerModes.stringifyJson;
|
|
446
|
-
case "json":
|
|
447
|
-
default:
|
|
448
|
-
return SerializerModes.json;
|
|
449
|
-
}
|
|
454
|
+
if (!opts?.contextDataFactory) return;
|
|
455
|
+
const testSharedData = opts.contextDataFactory();
|
|
456
|
+
if (typeof testSharedData !== "object" || Array.isArray(testSharedData) || testSharedData === null || Object.keys(testSharedData).length === 0) throw new Error("contextDataFactory must return a plain object with at least one property");
|
|
450
457
|
}
|
|
458
|
+
/** Hand-rolled: Node's 'path' module is not available in edge runtimes. */
|
|
451
459
|
function joinPath(...parts) {
|
|
452
|
-
|
|
460
|
+
return parts.filter(Boolean).join("/");
|
|
453
461
|
}
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
462
|
+
/** What a route takes when its own option is unset and its types cannot say: the adapter's `maxBodySize`,
|
|
463
|
+
* published with its config at start, else the shared default (a router driven with no adapter, as in tests). */
|
|
464
|
+
var getPlatformMaxBodySize = () => platformMaxBodySize;
|
|
465
|
+
/** The platform's own request ceiling, when the adapter published one. */
|
|
466
|
+
var getPlatformRequestCap = () => readMaxBodySizeCap(platformConfig);
|
|
467
|
+
/** The largest limit any registered route or batch resolves to: what a platform with ONE native,
|
|
468
|
+
* server-wide read limit (bun) starts with, so it never refuses a body a route allows. */
|
|
469
|
+
function getMaxRouteBodySize() {
|
|
470
|
+
let largest = getPlatformMaxBodySize();
|
|
471
|
+
for (const chain of flatRouter.values()) largest = Math.max(largest, chain.maxBodySize);
|
|
472
|
+
return Math.max(largest, getMaxBatchBodySize());
|
|
473
|
+
}
|
|
474
|
+
/** The platform's own request ceiling the adapter published, in bytes; undefined means none. */
|
|
475
|
+
function readMaxBodySizeCap(config) {
|
|
476
|
+
const cap = config?.maxBodySizeCap;
|
|
477
|
+
return typeof cap === "number" ? cap : void 0;
|
|
478
|
+
}
|
|
479
|
+
/** A limit above the platform's ceiling would promise a size the platform refuses before mion ever runs,
|
|
480
|
+
* so it is brought down. Applied once, when the adapter has published its config AND the routes are
|
|
481
|
+
* registered, whichever comes last. */
|
|
482
|
+
function applyMaxBodySizeCap() {
|
|
483
|
+
const cap = readMaxBodySizeCap(platformConfig);
|
|
484
|
+
if (cap === void 0) return;
|
|
485
|
+
for (const chain of flatRouter.values()) {
|
|
486
|
+
if (chain.declaredBodySize === void 0 || chain.declaredBodySize <= cap) continue;
|
|
487
|
+
chain.declaredBodySize = cap;
|
|
488
|
+
const route = chain.methods[chain.routeIndex];
|
|
489
|
+
if (route.options.maxBodySize !== void 0) route.options.maxBodySize = cap;
|
|
490
|
+
}
|
|
491
|
+
capBatchBodySizes(cap);
|
|
492
|
+
}
|
|
493
|
+
/** `maxBodySize` caches two inputs that both move after a chain is built: the cap above lowers what a
|
|
494
|
+
* chain declared, and `setPlatformConfig` replaces the fallback the chains that declared nothing read.
|
|
495
|
+
* Missing a refresh refuses bodies a route allows, or allows bodies past the platform's ceiling. */
|
|
496
|
+
function refreshChainBodyLimits() {
|
|
497
|
+
for (const chain of flatRouter.values()) chain.maxBodySize = chain.declaredBodySize ?? platformMaxBodySize;
|
|
498
|
+
for (const chain of notFoundChains.values()) chain.maxBodySize = chain.declaredBodySize ?? platformMaxBodySize;
|
|
499
|
+
refreshBatchChainBodyLimits(platformMaxBodySize);
|
|
500
|
+
}
|
|
501
|
+
/** `server` first so the option can replace it, `content-type` last so it cannot; lowercased, or `Headers` would
|
|
502
|
+
* append a name repeated in another case. */
|
|
503
|
+
function mergeResponseDefaults(responseHeaders) {
|
|
504
|
+
const merged = { server: "mionjs" };
|
|
505
|
+
for (const name in responseHeaders) merged[name.toLowerCase()] = responseHeaders[name];
|
|
506
|
+
merged["content-type"] = JSON_CONTENT_TYPE;
|
|
507
|
+
return merged;
|
|
508
|
+
}
|
|
509
|
+
//#endregion
|
|
510
|
+
export { addEndMiddlewares, addStartMiddlewares, createMionRouter, endMiddlewares, geRoutesSize, getAllExecutablesIds, getAnyExecutable, getBuildVersion, getComplexity, getExecutableFromMiddleware, getExecutableFromRawMiddleware, getExecutableFromRoute, getHostRequestHandler, getMaxRouteBodySize, getMiddlewareExecutable, getMiddlewaresSize, getNotFoundExecutionChain, getPlatformConfig, getPlatformMaxBodySize, getPlatformRequestCap, getResponseDefaults, getRouteEntries, getRouteExecutable, getRouteExecutionChain, getRouterOptions, getTotalExecutables, handOverToHost, hostOwnsSocket, isPrivateDefinition, resetRouter, setHostOwnsSocket, setPlatformConfig, shouldFullGenerateSpec, startMiddlewares };
|
|
511
|
+
|
|
512
|
+
//# sourceMappingURL=router.js.map
|