xypriss 9.11.13 → 9.12.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 (1015) hide show
  1. package/README.md +6 -20
  2. package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js +11 -128
  3. package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
  4. package/dist/cjs/src/middleware/security-middleware.js +9 -478
  5. package/dist/cjs/src/middleware/security-middleware.js.map +1 -1
  6. package/dist/cjs/src/plugins/core/manager/PluginLoader.js +0 -4
  7. package/dist/cjs/src/plugins/core/manager/PluginLoader.js.map +1 -1
  8. package/dist/cjs/src/server/const/default.js +9 -12
  9. package/dist/cjs/src/server/const/default.js.map +1 -1
  10. package/dist/cjs/src/server/core/HttpServer.js +2 -0
  11. package/dist/cjs/src/server/core/HttpServer.js.map +1 -1
  12. package/dist/cjs/src/server/core/ResponseEnhancer.js +6 -6
  13. package/dist/cjs/src/server/core/ResponseEnhancer.js.map +1 -1
  14. package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +290 -2
  15. package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -1
  16. package/dist/cjs/src/server/core/XHSCBridge/index.js +13 -5
  17. package/dist/cjs/src/server/core/XHSCBridge/index.js.map +1 -1
  18. package/dist/cjs/src/server/core/XHSCProtocol.js +279 -103
  19. package/dist/cjs/src/server/core/XHSCProtocol.js.map +1 -1
  20. package/dist/cjs/src/server/core/http/RadixRouter.js +146 -0
  21. package/dist/cjs/src/server/core/http/RadixRouter.js.map +1 -0
  22. package/dist/cjs/src/xhsc/cluster/XHSCWorker.js +72 -8
  23. package/dist/cjs/src/xhsc/cluster/XHSCWorker.js.map +1 -1
  24. package/dist/cjs/src/xhsc/cluster/xbp.js +158 -25
  25. package/dist/cjs/src/xhsc/cluster/xbp.js.map +1 -1
  26. package/dist/diag_config.d.ts +2 -0
  27. package/dist/diag_config.d.ts.map +1 -0
  28. package/dist/diag_config.js +13 -0
  29. package/dist/diag_config.js.map +1 -0
  30. package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js +11 -128
  31. package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
  32. package/dist/esm/src/middleware/security-middleware.js +9 -478
  33. package/dist/esm/src/middleware/security-middleware.js.map +1 -1
  34. package/dist/esm/src/plugins/core/manager/PluginLoader.js +0 -4
  35. package/dist/esm/src/plugins/core/manager/PluginLoader.js.map +1 -1
  36. package/dist/esm/src/server/const/default.js +9 -12
  37. package/dist/esm/src/server/const/default.js.map +1 -1
  38. package/dist/esm/src/server/core/HttpServer.js +2 -0
  39. package/dist/esm/src/server/core/HttpServer.js.map +1 -1
  40. package/dist/esm/src/server/core/ResponseEnhancer.js +6 -6
  41. package/dist/esm/src/server/core/ResponseEnhancer.js.map +1 -1
  42. package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +290 -2
  43. package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -1
  44. package/dist/esm/src/server/core/XHSCBridge/index.js +13 -5
  45. package/dist/esm/src/server/core/XHSCBridge/index.js.map +1 -1
  46. package/dist/esm/src/server/core/XHSCProtocol.js +279 -103
  47. package/dist/esm/src/server/core/XHSCProtocol.js.map +1 -1
  48. package/dist/esm/src/server/core/http/RadixRouter.js +143 -0
  49. package/dist/esm/src/server/core/http/RadixRouter.js.map +1 -0
  50. package/dist/esm/src/xhsc/cluster/XHSCWorker.js +72 -8
  51. package/dist/esm/src/xhsc/cluster/XHSCWorker.js.map +1 -1
  52. package/dist/esm/src/xhsc/cluster/xbp.js +158 -25
  53. package/dist/esm/src/xhsc/cluster/xbp.js.map +1 -1
  54. package/dist/fix_docs.d.ts +2 -0
  55. package/dist/fix_docs.d.ts.map +1 -0
  56. package/dist/fix_docs.js +152 -0
  57. package/dist/fix_docs.js.map +1 -0
  58. package/dist/index.d.ts +53 -136
  59. package/dist/lib.d.ts +3 -0
  60. package/dist/lib.d.ts.map +1 -0
  61. package/dist/lib.js +10 -0
  62. package/dist/lib.js.map +1 -0
  63. package/dist/main.d.ts +2 -0
  64. package/dist/main.d.ts.map +1 -0
  65. package/dist/main.js +3 -0
  66. package/dist/main.js.map +1 -0
  67. package/dist/plugin.d.ts +2 -0
  68. package/dist/plugin.d.ts.map +1 -0
  69. package/dist/plugin.js +5 -0
  70. package/dist/plugin.js.map +1 -0
  71. package/dist/refactor_docs.d.ts +2 -0
  72. package/dist/refactor_docs.d.ts.map +1 -0
  73. package/dist/refactor_docs.js +48 -0
  74. package/dist/refactor_docs.js.map +1 -0
  75. package/dist/src/ConfigurationManager.d.ts +155 -0
  76. package/dist/src/ConfigurationManager.d.ts.map +1 -0
  77. package/dist/src/ConfigurationManager.js +379 -0
  78. package/dist/src/ConfigurationManager.js.map +1 -0
  79. package/dist/src/FiUp.d.ts +31 -0
  80. package/dist/src/FiUp.d.ts.map +1 -0
  81. package/dist/src/FiUp.js +79 -0
  82. package/dist/src/FiUp.js.map +1 -0
  83. package/dist/src/cache/CacheFactory.d.ts +163 -0
  84. package/dist/src/cache/CacheFactory.d.ts.map +1 -0
  85. package/dist/src/cache/CacheFactory.js +707 -0
  86. package/dist/src/cache/CacheFactory.js.map +1 -0
  87. package/dist/src/cache/index.d.ts +14 -0
  88. package/dist/src/cache/index.d.ts.map +1 -0
  89. package/dist/src/cache/index.js +13 -0
  90. package/dist/src/cache/index.js.map +1 -0
  91. package/dist/src/cache/type.d.ts +127 -0
  92. package/dist/src/cache/type.d.ts.map +1 -0
  93. package/dist/src/cache/type.js +2 -0
  94. package/dist/src/cache/type.js.map +1 -0
  95. package/dist/src/const.d.ts +138 -0
  96. package/dist/src/const.d.ts.map +1 -0
  97. package/dist/src/const.js +572 -0
  98. package/dist/src/const.js.map +1 -0
  99. package/dist/src/index.d.ts +67 -0
  100. package/dist/src/index.d.ts.map +1 -0
  101. package/dist/src/index.js +85 -0
  102. package/dist/src/index.js.map +1 -0
  103. package/dist/src/middleware/XJsonResponseHandler.d.ts +69 -0
  104. package/dist/src/middleware/XJsonResponseHandler.d.ts.map +1 -0
  105. package/dist/src/middleware/XJsonResponseHandler.js +175 -0
  106. package/dist/src/middleware/XJsonResponseHandler.js.map +1 -0
  107. package/dist/src/middleware/XemsSessionMiddleware.d.ts +8 -0
  108. package/dist/src/middleware/XemsSessionMiddleware.d.ts.map +1 -0
  109. package/dist/src/middleware/XemsSessionMiddleware.js +110 -0
  110. package/dist/src/middleware/XemsSessionMiddleware.js.map +1 -0
  111. package/dist/src/middleware/XyPrissMiddlewareAPI.d.ts +75 -0
  112. package/dist/src/middleware/XyPrissMiddlewareAPI.d.ts.map +1 -0
  113. package/dist/src/middleware/XyPrissMiddlewareAPI.js +284 -0
  114. package/dist/src/middleware/XyPrissMiddlewareAPI.js.map +1 -0
  115. package/dist/src/middleware/built-in/BuiltInMiddleware.d.ts +104 -0
  116. package/dist/src/middleware/built-in/BuiltInMiddleware.d.ts.map +1 -0
  117. package/dist/src/middleware/built-in/BuiltInMiddleware.js +295 -0
  118. package/dist/src/middleware/built-in/BuiltInMiddleware.js.map +1 -0
  119. package/dist/src/middleware/built-in/ConversionProxyMiddleware.d.ts +7 -0
  120. package/dist/src/middleware/built-in/ConversionProxyMiddleware.d.ts.map +1 -0
  121. package/dist/src/middleware/built-in/ConversionProxyMiddleware.js +48 -0
  122. package/dist/src/middleware/built-in/ConversionProxyMiddleware.js.map +1 -0
  123. package/dist/src/middleware/built-in/ResponseManipulationMiddleware.d.ts +11 -0
  124. package/dist/src/middleware/built-in/ResponseManipulationMiddleware.d.ts.map +1 -0
  125. package/dist/src/middleware/built-in/ResponseManipulationMiddleware.js +164 -0
  126. package/dist/src/middleware/built-in/ResponseManipulationMiddleware.js.map +1 -0
  127. package/dist/src/middleware/built-in/security/BrowserOnlyProtector.d.ts +106 -0
  128. package/dist/src/middleware/built-in/security/BrowserOnlyProtector.d.ts.map +1 -0
  129. package/dist/src/middleware/built-in/security/BrowserOnlyProtector.js +547 -0
  130. package/dist/src/middleware/built-in/security/BrowserOnlyProtector.js.map +1 -0
  131. package/dist/src/middleware/built-in/security/HoneypotTarpit.d.ts +225 -0
  132. package/dist/src/middleware/built-in/security/HoneypotTarpit.d.ts.map +1 -0
  133. package/dist/src/middleware/built-in/security/HoneypotTarpit.js +551 -0
  134. package/dist/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
  135. package/dist/src/middleware/built-in/security/MaliciousUrlScanner.d.ts +14 -0
  136. package/dist/src/middleware/built-in/security/MaliciousUrlScanner.d.ts.map +1 -0
  137. package/dist/src/middleware/built-in/security/MaliciousUrlScanner.js +71 -0
  138. package/dist/src/middleware/built-in/security/MaliciousUrlScanner.js.map +1 -0
  139. package/dist/src/middleware/built-in/security/MobileOnlyProtector.d.ts +122 -0
  140. package/dist/src/middleware/built-in/security/MobileOnlyProtector.d.ts.map +1 -0
  141. package/dist/src/middleware/built-in/security/MobileOnlyProtector.js +499 -0
  142. package/dist/src/middleware/built-in/security/MobileOnlyProtector.js.map +1 -0
  143. package/dist/src/middleware/built-in/security/RequestSignatureProtector.d.ts +128 -0
  144. package/dist/src/middleware/built-in/security/RequestSignatureProtector.d.ts.map +1 -0
  145. package/dist/src/middleware/built-in/security/RequestSignatureProtector.js +463 -0
  146. package/dist/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -0
  147. package/dist/src/middleware/built-in/security/TerminalOnlyProtector.d.ts +131 -0
  148. package/dist/src/middleware/built-in/security/TerminalOnlyProtector.d.ts.map +1 -0
  149. package/dist/src/middleware/built-in/security/TerminalOnlyProtector.js +473 -0
  150. package/dist/src/middleware/built-in/security/TerminalOnlyProtector.js.map +1 -0
  151. package/dist/src/middleware/built-in/security/UriNormalizer.d.ts +277 -0
  152. package/dist/src/middleware/built-in/security/UriNormalizer.d.ts.map +1 -0
  153. package/dist/src/middleware/built-in/security/UriNormalizer.js +388 -0
  154. package/dist/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
  155. package/dist/src/middleware/built-in/security/XyPrissCors.d.ts +12 -0
  156. package/dist/src/middleware/built-in/security/XyPrissCors.d.ts.map +1 -0
  157. package/dist/src/middleware/built-in/security/XyPrissCors.js +102 -0
  158. package/dist/src/middleware/built-in/security/XyPrissCors.js.map +1 -0
  159. package/dist/src/middleware/built-in/security/XyPrissHPP.d.ts +7 -0
  160. package/dist/src/middleware/built-in/security/XyPrissHPP.d.ts.map +1 -0
  161. package/dist/src/middleware/built-in/security/XyPrissHPP.js +48 -0
  162. package/dist/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
  163. package/dist/src/middleware/built-in/security/index.d.ts +15 -0
  164. package/dist/src/middleware/built-in/security/index.d.ts.map +1 -0
  165. package/dist/src/middleware/built-in/security/index.js +15 -0
  166. package/dist/src/middleware/built-in/security/index.js.map +1 -0
  167. package/dist/src/middleware/built-in/security/types.d.ts +147 -0
  168. package/dist/src/middleware/built-in/security/types.d.ts.map +1 -0
  169. package/dist/src/middleware/built-in/security/types.js +5 -0
  170. package/dist/src/middleware/built-in/security/types.js.map +1 -0
  171. package/dist/src/middleware/safe-json-middleware.d.ts +57 -0
  172. package/dist/src/middleware/safe-json-middleware.d.ts.map +1 -0
  173. package/dist/src/middleware/safe-json-middleware.js +150 -0
  174. package/dist/src/middleware/safe-json-middleware.js.map +1 -0
  175. package/dist/src/middleware/security-middleware.d.ts +91 -0
  176. package/dist/src/middleware/security-middleware.d.ts.map +1 -0
  177. package/dist/src/middleware/security-middleware.js +537 -0
  178. package/dist/src/middleware/security-middleware.js.map +1 -0
  179. package/dist/src/plugins/ServerPluginManager.d.ts +42 -0
  180. package/dist/src/plugins/ServerPluginManager.d.ts.map +1 -0
  181. package/dist/src/plugins/ServerPluginManager.js +148 -0
  182. package/dist/src/plugins/ServerPluginManager.js.map +1 -0
  183. package/dist/src/plugins/api/PluginAPI.d.ts +124 -0
  184. package/dist/src/plugins/api/PluginAPI.d.ts.map +1 -0
  185. package/dist/src/plugins/api/PluginAPI.js +344 -0
  186. package/dist/src/plugins/api/PluginAPI.js.map +1 -0
  187. package/dist/src/plugins/builtin/RouteOptimizationPlugin.d.ts +110 -0
  188. package/dist/src/plugins/builtin/RouteOptimizationPlugin.d.ts.map +1 -0
  189. package/dist/src/plugins/builtin/RouteOptimizationPlugin.js +416 -0
  190. package/dist/src/plugins/builtin/RouteOptimizationPlugin.js.map +1 -0
  191. package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.d.ts +135 -0
  192. package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.d.ts.map +1 -0
  193. package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js +566 -0
  194. package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js.map +1 -0
  195. package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.d.ts +33 -0
  196. package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.d.ts.map +1 -0
  197. package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.js +246 -0
  198. package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -0
  199. package/dist/src/plugins/builtin/xems/XemsPlugin.d.ts +169 -0
  200. package/dist/src/plugins/builtin/xems/XemsPlugin.d.ts.map +1 -0
  201. package/dist/src/plugins/builtin/xems/XemsPlugin.js +402 -0
  202. package/dist/src/plugins/builtin/xems/XemsPlugin.js.map +1 -0
  203. package/dist/src/plugins/builtin/xems/index.d.ts +2 -0
  204. package/dist/src/plugins/builtin/xems/index.d.ts.map +1 -0
  205. package/dist/src/plugins/builtin/xems/index.js +2 -0
  206. package/dist/src/plugins/builtin/xems/index.js.map +1 -0
  207. package/dist/src/plugins/const/OFFICIAL_PLUGINS.d.ts +2 -0
  208. package/dist/src/plugins/const/OFFICIAL_PLUGINS.d.ts.map +1 -0
  209. package/dist/src/plugins/const/OFFICIAL_PLUGINS.js +6 -0
  210. package/dist/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -0
  211. package/dist/src/plugins/const/PluginHookIds.d.ts +44 -0
  212. package/dist/src/plugins/const/PluginHookIds.d.ts.map +1 -0
  213. package/dist/src/plugins/const/PluginHookIds.js +185 -0
  214. package/dist/src/plugins/const/PluginHookIds.js.map +1 -0
  215. package/dist/src/plugins/const/PluginHookMetadataJson.d.ts +2 -0
  216. package/dist/src/plugins/const/PluginHookMetadataJson.d.ts.map +1 -0
  217. package/dist/src/plugins/const/PluginHookMetadataJson.js +6 -0
  218. package/dist/src/plugins/const/PluginHookMetadataJson.js.map +1 -0
  219. package/dist/src/plugins/const/XyprissTempDir.d.ts +23 -0
  220. package/dist/src/plugins/const/XyprissTempDir.d.ts.map +1 -0
  221. package/dist/src/plugins/const/XyprissTempDir.js +65 -0
  222. package/dist/src/plugins/const/XyprissTempDir.js.map +1 -0
  223. package/dist/src/plugins/const/getSysApi.d.ts +8 -0
  224. package/dist/src/plugins/const/getSysApi.d.ts.map +1 -0
  225. package/dist/src/plugins/const/getSysApi.js +10 -0
  226. package/dist/src/plugins/const/getSysApi.js.map +1 -0
  227. package/dist/src/plugins/core/PermissionManager.d.ts +46 -0
  228. package/dist/src/plugins/core/PermissionManager.d.ts.map +1 -0
  229. package/dist/src/plugins/core/PermissionManager.js +232 -0
  230. package/dist/src/plugins/core/PermissionManager.js.map +1 -0
  231. package/dist/src/plugins/core/XPluginManager.d.ts +110 -0
  232. package/dist/src/plugins/core/XPluginManager.d.ts.map +1 -0
  233. package/dist/src/plugins/core/XPluginManager.js +213 -0
  234. package/dist/src/plugins/core/XPluginManager.js.map +1 -0
  235. package/dist/src/plugins/core/manager/PluginHookRunner.d.ts +50 -0
  236. package/dist/src/plugins/core/manager/PluginHookRunner.d.ts.map +1 -0
  237. package/dist/src/plugins/core/manager/PluginHookRunner.js +104 -0
  238. package/dist/src/plugins/core/manager/PluginHookRunner.js.map +1 -0
  239. package/dist/src/plugins/core/manager/PluginInterceptor.d.ts +48 -0
  240. package/dist/src/plugins/core/manager/PluginInterceptor.d.ts.map +1 -0
  241. package/dist/src/plugins/core/manager/PluginInterceptor.js +196 -0
  242. package/dist/src/plugins/core/manager/PluginInterceptor.js.map +1 -0
  243. package/dist/src/plugins/core/manager/PluginLoader.d.ts +59 -0
  244. package/dist/src/plugins/core/manager/PluginLoader.d.ts.map +1 -0
  245. package/dist/src/plugins/core/manager/PluginLoader.js +203 -0
  246. package/dist/src/plugins/core/manager/PluginLoader.js.map +1 -0
  247. package/dist/src/plugins/core/manager/PluginManagement.d.ts +36 -0
  248. package/dist/src/plugins/core/manager/PluginManagement.d.ts.map +1 -0
  249. package/dist/src/plugins/core/manager/PluginManagement.js +132 -0
  250. package/dist/src/plugins/core/manager/PluginManagement.js.map +1 -0
  251. package/dist/src/plugins/core/manager/PluginRegistry.d.ts +47 -0
  252. package/dist/src/plugins/core/manager/PluginRegistry.d.ts.map +1 -0
  253. package/dist/src/plugins/core/manager/PluginRegistry.js +96 -0
  254. package/dist/src/plugins/core/manager/PluginRegistry.js.map +1 -0
  255. package/dist/src/plugins/core/manager/PluginSecurity.d.ts +71 -0
  256. package/dist/src/plugins/core/manager/PluginSecurity.d.ts.map +1 -0
  257. package/dist/src/plugins/core/manager/PluginSecurity.js +436 -0
  258. package/dist/src/plugins/core/manager/PluginSecurity.js.map +1 -0
  259. package/dist/src/plugins/route-optimization-plugin.d.ts +110 -0
  260. package/dist/src/plugins/route-optimization-plugin.d.ts.map +1 -0
  261. package/dist/src/plugins/route-optimization-plugin.js +416 -0
  262. package/dist/src/plugins/route-optimization-plugin.js.map +1 -0
  263. package/dist/src/plugins/types/PluginPermissions.d.ts +26 -0
  264. package/dist/src/plugins/types/PluginPermissions.d.ts.map +1 -0
  265. package/dist/src/plugins/types/PluginPermissions.js +10 -0
  266. package/dist/src/plugins/types/PluginPermissions.js.map +1 -0
  267. package/dist/src/plugins/types/PluginTypes.d.ts +312 -0
  268. package/dist/src/plugins/types/PluginTypes.d.ts.map +1 -0
  269. package/dist/src/plugins/types/PluginTypes.js +30 -0
  270. package/dist/src/plugins/types/PluginTypes.js.map +1 -0
  271. package/dist/src/plugins/types/index.d.ts +79 -0
  272. package/dist/src/plugins/types/index.d.ts.map +1 -0
  273. package/dist/src/plugins/types/index.js +2 -0
  274. package/dist/src/plugins/types/index.js.map +1 -0
  275. package/dist/src/quick-start.d.ts +9 -0
  276. package/dist/src/quick-start.d.ts.map +1 -0
  277. package/dist/src/quick-start.js +26 -0
  278. package/dist/src/quick-start.js.map +1 -0
  279. package/dist/src/schemas/plugingSchema.d.ts +18 -0
  280. package/dist/src/schemas/plugingSchema.d.ts.map +1 -0
  281. package/dist/src/schemas/plugingSchema.js +40 -0
  282. package/dist/src/schemas/plugingSchema.js.map +1 -0
  283. package/dist/src/server/FastServer/ComponentManager.d.ts +30 -0
  284. package/dist/src/server/FastServer/ComponentManager.d.ts.map +1 -0
  285. package/dist/src/server/FastServer/ComponentManager.js +86 -0
  286. package/dist/src/server/FastServer/ComponentManager.js.map +1 -0
  287. package/dist/src/server/FastServer/LogTracingMethods.d.ts +9 -0
  288. package/dist/src/server/FastServer/LogTracingMethods.d.ts.map +1 -0
  289. package/dist/src/server/FastServer/LogTracingMethods.js +31 -0
  290. package/dist/src/server/FastServer/LogTracingMethods.js.map +1 -0
  291. package/dist/src/server/FastServer/MiddlewareManager.d.ts +17 -0
  292. package/dist/src/server/FastServer/MiddlewareManager.d.ts.map +1 -0
  293. package/dist/src/server/FastServer/MiddlewareManager.js +64 -0
  294. package/dist/src/server/FastServer/MiddlewareManager.js.map +1 -0
  295. package/dist/src/server/FastServer/ShutdownManager.d.ts +16 -0
  296. package/dist/src/server/FastServer/ShutdownManager.d.ts.map +1 -0
  297. package/dist/src/server/FastServer/ShutdownManager.js +70 -0
  298. package/dist/src/server/FastServer/ShutdownManager.js.map +1 -0
  299. package/dist/src/server/FastServer/UploadManager.d.ts +13 -0
  300. package/dist/src/server/FastServer/UploadManager.d.ts.map +1 -0
  301. package/dist/src/server/FastServer/UploadManager.js +67 -0
  302. package/dist/src/server/FastServer/UploadManager.js.map +1 -0
  303. package/dist/src/server/FastServer/index.d.ts +50 -0
  304. package/dist/src/server/FastServer/index.d.ts.map +1 -0
  305. package/dist/src/server/FastServer/index.js +221 -0
  306. package/dist/src/server/FastServer/index.js.map +1 -0
  307. package/dist/src/server/ServerFactory.d.ts +94 -0
  308. package/dist/src/server/ServerFactory.d.ts.map +1 -0
  309. package/dist/src/server/ServerFactory.js +136 -0
  310. package/dist/src/server/ServerFactory.js.map +1 -0
  311. package/dist/src/server/components/fastapi/CacheManager.d.ts +64 -0
  312. package/dist/src/server/components/fastapi/CacheManager.d.ts.map +1 -0
  313. package/dist/src/server/components/fastapi/CacheManager.js +212 -0
  314. package/dist/src/server/components/fastapi/CacheManager.js.map +1 -0
  315. package/dist/src/server/components/fastapi/RedirectManager.d.ts +112 -0
  316. package/dist/src/server/components/fastapi/RedirectManager.d.ts.map +1 -0
  317. package/dist/src/server/components/fastapi/RedirectManager.js +432 -0
  318. package/dist/src/server/components/fastapi/RedirectManager.js.map +1 -0
  319. package/dist/src/server/components/fastapi/RequestProcessor.d.ts +34 -0
  320. package/dist/src/server/components/fastapi/RequestProcessor.d.ts.map +1 -0
  321. package/dist/src/server/components/fastapi/RequestProcessor.js +177 -0
  322. package/dist/src/server/components/fastapi/RequestProcessor.js.map +1 -0
  323. package/dist/src/server/components/fastapi/RouteManager.d.ts +43 -0
  324. package/dist/src/server/components/fastapi/RouteManager.d.ts.map +1 -0
  325. package/dist/src/server/components/fastapi/RouteManager.js +118 -0
  326. package/dist/src/server/components/fastapi/RouteManager.js.map +1 -0
  327. package/dist/src/server/components/fastapi/WorkerPoolComponent.d.ts +29 -0
  328. package/dist/src/server/components/fastapi/WorkerPoolComponent.d.ts.map +1 -0
  329. package/dist/src/server/components/fastapi/WorkerPoolComponent.js +77 -0
  330. package/dist/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
  331. package/dist/src/server/components/fastapi/console/ConsoleInterceptor.d.ts +54 -0
  332. package/dist/src/server/components/fastapi/console/ConsoleInterceptor.d.ts.map +1 -0
  333. package/dist/src/server/components/fastapi/console/ConsoleInterceptor.js +464 -0
  334. package/dist/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
  335. package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.d.ts +19 -0
  336. package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.d.ts.map +1 -0
  337. package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.js +22 -0
  338. package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
  339. package/dist/src/server/components/fastapi/console/types.d.ts +115 -0
  340. package/dist/src/server/components/fastapi/console/types.d.ts.map +1 -0
  341. package/dist/src/server/components/fastapi/console/types.js +31 -0
  342. package/dist/src/server/components/fastapi/console/types.js.map +1 -0
  343. package/dist/src/server/components/fastapi/templates/redirectTemp.d.ts +6 -0
  344. package/dist/src/server/components/fastapi/templates/redirectTemp.d.ts.map +1 -0
  345. package/dist/src/server/components/fastapi/templates/redirectTemp.js +98 -0
  346. package/dist/src/server/components/fastapi/templates/redirectTemp.js.map +1 -0
  347. package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.d.ts +96 -0
  348. package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.d.ts.map +1 -0
  349. package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.js +348 -0
  350. package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
  351. package/dist/src/server/components/fastapi/upload/FileUploadManager.d.ts +45 -0
  352. package/dist/src/server/components/fastapi/upload/FileUploadManager.d.ts.map +1 -0
  353. package/dist/src/server/components/fastapi/upload/FileUploadManager.js +234 -0
  354. package/dist/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
  355. package/dist/src/server/components/fastapi/upload/file-upload.d.ts +80 -0
  356. package/dist/src/server/components/fastapi/upload/file-upload.d.ts.map +1 -0
  357. package/dist/src/server/components/fastapi/upload/file-upload.js +246 -0
  358. package/dist/src/server/components/fastapi/upload/file-upload.js.map +1 -0
  359. package/dist/src/server/components/lifecycle/slcm.type.d.ts +36 -0
  360. package/dist/src/server/components/lifecycle/slcm.type.d.ts.map +1 -0
  361. package/dist/src/server/components/lifecycle/slcm.type.js +5 -0
  362. package/dist/src/server/components/lifecycle/slcm.type.js.map +1 -0
  363. package/dist/src/server/components/multi-server/MultiServerApp.d.ts +137 -0
  364. package/dist/src/server/components/multi-server/MultiServerApp.d.ts.map +1 -0
  365. package/dist/src/server/components/multi-server/MultiServerApp.js +574 -0
  366. package/dist/src/server/components/multi-server/MultiServerApp.js.map +1 -0
  367. package/dist/src/server/components/multi-server/MultiServerManager.d.ts +58 -0
  368. package/dist/src/server/components/multi-server/MultiServerManager.d.ts.map +1 -0
  369. package/dist/src/server/components/multi-server/MultiServerManager.js +363 -0
  370. package/dist/src/server/components/multi-server/MultiServerManager.js.map +1 -0
  371. package/dist/src/server/components/response-control/ResponseControlManager.d.ts +22 -0
  372. package/dist/src/server/components/response-control/ResponseControlManager.d.ts.map +1 -0
  373. package/dist/src/server/components/response-control/ResponseControlManager.js +60 -0
  374. package/dist/src/server/components/response-control/ResponseControlManager.js.map +1 -0
  375. package/dist/src/server/components/static/IXStaticSchem.d.ts +7 -0
  376. package/dist/src/server/components/static/IXStaticSchem.d.ts.map +1 -0
  377. package/dist/src/server/components/static/IXStaticSchem.js +25 -0
  378. package/dist/src/server/components/static/IXStaticSchem.js.map +1 -0
  379. package/dist/src/server/components/static/MetaCache.d.ts +15 -0
  380. package/dist/src/server/components/static/MetaCache.d.ts.map +1 -0
  381. package/dist/src/server/components/static/MetaCache.js +39 -0
  382. package/dist/src/server/components/static/MetaCache.js.map +1 -0
  383. package/dist/src/server/components/static/XStatic.d.ts +218 -0
  384. package/dist/src/server/components/static/XStatic.d.ts.map +1 -0
  385. package/dist/src/server/components/static/XStatic.js +388 -0
  386. package/dist/src/server/components/static/XStatic.js.map +1 -0
  387. package/dist/src/server/components/static/types.d.ts +34 -0
  388. package/dist/src/server/components/static/types.d.ts.map +1 -0
  389. package/dist/src/server/components/static/types.js +2 -0
  390. package/dist/src/server/components/static/types.js.map +1 -0
  391. package/dist/src/server/conf/networkConnectionConf.d.ts +20 -0
  392. package/dist/src/server/conf/networkConnectionConf.d.ts.map +1 -0
  393. package/dist/src/server/conf/networkConnectionConf.js +21 -0
  394. package/dist/src/server/conf/networkConnectionConf.js.map +1 -0
  395. package/dist/src/server/conf/proxyConfig.d.ts +24 -0
  396. package/dist/src/server/conf/proxyConfig.d.ts.map +1 -0
  397. package/dist/src/server/conf/proxyConfig.js +19 -0
  398. package/dist/src/server/conf/proxyConfig.js.map +1 -0
  399. package/dist/src/server/conf/rateLimitConfig.d.ts +29 -0
  400. package/dist/src/server/conf/rateLimitConfig.d.ts.map +1 -0
  401. package/dist/src/server/conf/rateLimitConfig.js +46 -0
  402. package/dist/src/server/conf/rateLimitConfig.js.map +1 -0
  403. package/dist/src/server/const/ExecutionPredictor_EP.const.d.ts +48 -0
  404. package/dist/src/server/const/ExecutionPredictor_EP.const.d.ts.map +1 -0
  405. package/dist/src/server/const/ExecutionPredictor_EP.const.js +68 -0
  406. package/dist/src/server/const/ExecutionPredictor_EP.const.js.map +1 -0
  407. package/dist/src/server/const/MIME_MAP.d.ts +2 -0
  408. package/dist/src/server/const/MIME_MAP.d.ts.map +1 -0
  409. package/dist/src/server/const/MIME_MAP.js +419 -0
  410. package/dist/src/server/const/MIME_MAP.js.map +1 -0
  411. package/dist/src/server/const/XHSC_SIGNATURE.d.ts +2 -0
  412. package/dist/src/server/const/XHSC_SIGNATURE.d.ts.map +1 -0
  413. package/dist/src/server/const/XHSC_SIGNATURE.js +3 -0
  414. package/dist/src/server/const/XHSC_SIGNATURE.js.map +1 -0
  415. package/dist/src/server/const/XRUNTIME-HEADER.d.ts +2 -0
  416. package/dist/src/server/const/XRUNTIME-HEADER.d.ts.map +1 -0
  417. package/dist/src/server/const/XRUNTIME-HEADER.js +2 -0
  418. package/dist/src/server/const/XRUNTIME-HEADER.js.map +1 -0
  419. package/dist/src/server/const/default.d.ts +10 -0
  420. package/dist/src/server/const/default.d.ts.map +1 -0
  421. package/dist/src/server/const/default.js +335 -0
  422. package/dist/src/server/const/default.js.map +1 -0
  423. package/dist/src/server/const/http.d.ts +13 -0
  424. package/dist/src/server/const/http.d.ts.map +1 -0
  425. package/dist/src/server/const/http.js +25 -0
  426. package/dist/src/server/const/http.js.map +1 -0
  427. package/dist/src/server/const/internalFlags.d.ts +6 -0
  428. package/dist/src/server/const/internalFlags.d.ts.map +1 -0
  429. package/dist/src/server/const/internalFlags.js +11 -0
  430. package/dist/src/server/const/internalFlags.js.map +1 -0
  431. package/dist/src/server/const/reStrategy.d.ts +3 -0
  432. package/dist/src/server/const/reStrategy.d.ts.map +1 -0
  433. package/dist/src/server/const/reStrategy.js +2 -0
  434. package/dist/src/server/const/reStrategy.js.map +1 -0
  435. package/dist/src/server/core/HttpServer.d.ts +58 -0
  436. package/dist/src/server/core/HttpServer.d.ts.map +1 -0
  437. package/dist/src/server/core/HttpServer.js +276 -0
  438. package/dist/src/server/core/HttpServer.js.map +1 -0
  439. package/dist/src/server/core/RequestApp.d.ts +42 -0
  440. package/dist/src/server/core/RequestApp.d.ts.map +1 -0
  441. package/dist/src/server/core/RequestApp.js +91 -0
  442. package/dist/src/server/core/RequestApp.js.map +1 -0
  443. package/dist/src/server/core/RequestEnhancer.d.ts +171 -0
  444. package/dist/src/server/core/RequestEnhancer.d.ts.map +1 -0
  445. package/dist/src/server/core/RequestEnhancer.js +330 -0
  446. package/dist/src/server/core/RequestEnhancer.js.map +1 -0
  447. package/dist/src/server/core/ResponseEnhancer.d.ts +320 -0
  448. package/dist/src/server/core/ResponseEnhancer.d.ts.map +1 -0
  449. package/dist/src/server/core/ResponseEnhancer.js +578 -0
  450. package/dist/src/server/core/ResponseEnhancer.js.map +1 -0
  451. package/dist/src/server/core/SendFileHandler.d.ts +12 -0
  452. package/dist/src/server/core/SendFileHandler.d.ts.map +1 -0
  453. package/dist/src/server/core/SendFileHandler.js +76 -0
  454. package/dist/src/server/core/SendFileHandler.js.map +1 -0
  455. package/dist/src/server/core/StartupProcessor.d.ts +35 -0
  456. package/dist/src/server/core/StartupProcessor.d.ts.map +1 -0
  457. package/dist/src/server/core/StartupProcessor.js +114 -0
  458. package/dist/src/server/core/StartupProcessor.js.map +1 -0
  459. package/dist/src/server/core/VirtualServer.d.ts +17 -0
  460. package/dist/src/server/core/VirtualServer.d.ts.map +1 -0
  461. package/dist/src/server/core/VirtualServer.js +28 -0
  462. package/dist/src/server/core/VirtualServer.js.map +1 -0
  463. package/dist/src/server/core/XHSCBridge/EngineManager.d.ts +17 -0
  464. package/dist/src/server/core/XHSCBridge/EngineManager.d.ts.map +1 -0
  465. package/dist/src/server/core/XHSCBridge/EngineManager.js +168 -0
  466. package/dist/src/server/core/XHSCBridge/EngineManager.js.map +1 -0
  467. package/dist/src/server/core/XHSCBridge/LogProcessor.d.ts +20 -0
  468. package/dist/src/server/core/XHSCBridge/LogProcessor.d.ts.map +1 -0
  469. package/dist/src/server/core/XHSCBridge/LogProcessor.js +124 -0
  470. package/dist/src/server/core/XHSCBridge/LogProcessor.js.map +1 -0
  471. package/dist/src/server/core/XHSCBridge/SocketManager.d.ts +20 -0
  472. package/dist/src/server/core/XHSCBridge/SocketManager.d.ts.map +1 -0
  473. package/dist/src/server/core/XHSCBridge/SocketManager.js +83 -0
  474. package/dist/src/server/core/XHSCBridge/SocketManager.js.map +1 -0
  475. package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.d.ts +2 -0
  476. package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.d.ts.map +1 -0
  477. package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.js +66 -0
  478. package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.js.map +1 -0
  479. package/dist/src/server/core/XHSCBridge/cmd/buildConversionArgs.d.ts +5 -0
  480. package/dist/src/server/core/XHSCBridge/cmd/buildConversionArgs.d.ts.map +1 -0
  481. package/dist/src/server/core/XHSCBridge/cmd/buildConversionArgs.js +32 -0
  482. package/dist/src/server/core/XHSCBridge/cmd/buildConversionArgs.js.map +1 -0
  483. package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.d.ts +2 -0
  484. package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.d.ts.map +1 -0
  485. package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.js +33 -0
  486. package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.js.map +1 -0
  487. package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.d.ts +2 -0
  488. package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.d.ts.map +1 -0
  489. package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js +49 -0
  490. package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js.map +1 -0
  491. package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.d.ts +2 -0
  492. package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.d.ts.map +1 -0
  493. package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js +44 -0
  494. package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js.map +1 -0
  495. package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.d.ts +2 -0
  496. package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.d.ts.map +1 -0
  497. package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.js +31 -0
  498. package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.js.map +1 -0
  499. package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.d.ts +61 -0
  500. package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.d.ts.map +1 -0
  501. package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +330 -0
  502. package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -0
  503. package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.d.ts +5 -0
  504. package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.d.ts.map +1 -0
  505. package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.js +37 -0
  506. package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.js.map +1 -0
  507. package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.d.ts +2 -0
  508. package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.d.ts.map +1 -0
  509. package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.js +24 -0
  510. package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.js.map +1 -0
  511. package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.d.ts +2 -0
  512. package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.d.ts.map +1 -0
  513. package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js +28 -0
  514. package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js.map +1 -0
  515. package/dist/src/server/core/XHSCBridge/index.d.ts +28 -0
  516. package/dist/src/server/core/XHSCBridge/index.d.ts.map +1 -0
  517. package/dist/src/server/core/XHSCBridge/index.js +102 -0
  518. package/dist/src/server/core/XHSCBridge/index.js.map +1 -0
  519. package/dist/src/server/core/XHSCProtocol.d.ts +156 -0
  520. package/dist/src/server/core/XHSCProtocol.d.ts.map +1 -0
  521. package/dist/src/server/core/XHSCProtocol.js +617 -0
  522. package/dist/src/server/core/XHSCProtocol.js.map +1 -0
  523. package/dist/src/server/core/XyDiagnosticsManager.d.ts +28 -0
  524. package/dist/src/server/core/XyDiagnosticsManager.d.ts.map +1 -0
  525. package/dist/src/server/core/XyDiagnosticsManager.js +74 -0
  526. package/dist/src/server/core/XyDiagnosticsManager.js.map +1 -0
  527. package/dist/src/server/core/XyLifecycleManager.d.ts +51 -0
  528. package/dist/src/server/core/XyLifecycleManager.d.ts.map +1 -0
  529. package/dist/src/server/core/XyLifecycleManager.js +230 -0
  530. package/dist/src/server/core/XyLifecycleManager.js.map +1 -0
  531. package/dist/src/server/core/XyModuleManager.d.ts +40 -0
  532. package/dist/src/server/core/XyModuleManager.d.ts.map +1 -0
  533. package/dist/src/server/core/XyModuleManager.js +124 -0
  534. package/dist/src/server/core/XyModuleManager.js.map +1 -0
  535. package/dist/src/server/core/XyRoutingManager.d.ts +42 -0
  536. package/dist/src/server/core/XyRoutingManager.d.ts.map +1 -0
  537. package/dist/src/server/core/XyRoutingManager.js +198 -0
  538. package/dist/src/server/core/XyRoutingManager.js.map +1 -0
  539. package/dist/src/server/core/XyServerCreator.d.ts +22 -0
  540. package/dist/src/server/core/XyServerCreator.d.ts.map +1 -0
  541. package/dist/src/server/core/XyServerCreator.js +121 -0
  542. package/dist/src/server/core/XyServerCreator.js.map +1 -0
  543. package/dist/src/server/core/XyprissApp.d.ts +208 -0
  544. package/dist/src/server/core/XyprissApp.d.ts.map +1 -0
  545. package/dist/src/server/core/XyprissApp.js +575 -0
  546. package/dist/src/server/core/XyprissApp.js.map +1 -0
  547. package/dist/src/server/core/http/BodyParser.d.ts +8 -0
  548. package/dist/src/server/core/http/BodyParser.d.ts.map +1 -0
  549. package/dist/src/server/core/http/BodyParser.js +43 -0
  550. package/dist/src/server/core/http/BodyParser.js.map +1 -0
  551. package/dist/src/server/core/http/HttpErrorHandler.d.ts +17 -0
  552. package/dist/src/server/core/http/HttpErrorHandler.d.ts.map +1 -0
  553. package/dist/src/server/core/http/HttpErrorHandler.js +49 -0
  554. package/dist/src/server/core/http/HttpErrorHandler.js.map +1 -0
  555. package/dist/src/server/core/http/RequestForwarder.d.ts +11 -0
  556. package/dist/src/server/core/http/RequestForwarder.d.ts.map +1 -0
  557. package/dist/src/server/core/http/RequestForwarder.js +41 -0
  558. package/dist/src/server/core/http/RequestForwarder.js.map +1 -0
  559. package/dist/src/server/core/http/RouteManager.d.ts +16 -0
  560. package/dist/src/server/core/http/RouteManager.d.ts.map +1 -0
  561. package/dist/src/server/core/http/RouteManager.js +103 -0
  562. package/dist/src/server/core/http/RouteManager.js.map +1 -0
  563. package/dist/src/server/core/request/XyRequestManager.d.ts +57 -0
  564. package/dist/src/server/core/request/XyRequestManager.d.ts.map +1 -0
  565. package/dist/src/server/core/request/XyRequestManager.js +226 -0
  566. package/dist/src/server/core/request/XyRequestManager.js.map +1 -0
  567. package/dist/src/server/handlers/NotFoundHandler.d.ts +25 -0
  568. package/dist/src/server/handlers/NotFoundHandler.d.ts.map +1 -0
  569. package/dist/src/server/handlers/NotFoundHandler.js +79 -0
  570. package/dist/src/server/handlers/NotFoundHandler.js.map +1 -0
  571. package/dist/src/server/handlers/templates/notFoundTemplate.d.ts +3 -0
  572. package/dist/src/server/handlers/templates/notFoundTemplate.d.ts.map +1 -0
  573. package/dist/src/server/handlers/templates/notFoundTemplate.js +396 -0
  574. package/dist/src/server/handlers/templates/notFoundTemplate.js.map +1 -0
  575. package/dist/src/server/middleware/MiddlewareManager.d.ts +64 -0
  576. package/dist/src/server/middleware/MiddlewareManager.d.ts.map +1 -0
  577. package/dist/src/server/middleware/MiddlewareManager.js +217 -0
  578. package/dist/src/server/middleware/MiddlewareManager.js.map +1 -0
  579. package/dist/src/server/routing/Router.d.ts +57 -0
  580. package/dist/src/server/routing/Router.d.ts.map +1 -0
  581. package/dist/src/server/routing/Router.js +173 -0
  582. package/dist/src/server/routing/Router.js.map +1 -0
  583. package/dist/src/server/routing/index.d.ts +16 -0
  584. package/dist/src/server/routing/index.d.ts.map +1 -0
  585. package/dist/src/server/routing/index.js +7 -0
  586. package/dist/src/server/routing/index.js.map +1 -0
  587. package/dist/src/server/routing/modules/XyGuard.d.ts +34 -0
  588. package/dist/src/server/routing/modules/XyGuard.d.ts.map +1 -0
  589. package/dist/src/server/routing/modules/XyGuard.js +30 -0
  590. package/dist/src/server/routing/modules/XyGuard.js.map +1 -0
  591. package/dist/src/server/routing/modules/constants.d.ts +5 -0
  592. package/dist/src/server/routing/modules/constants.d.ts.map +1 -0
  593. package/dist/src/server/routing/modules/constants.js +13 -0
  594. package/dist/src/server/routing/modules/constants.js.map +1 -0
  595. package/dist/src/server/routing/modules/groups.d.ts +14 -0
  596. package/dist/src/server/routing/modules/groups.d.ts.map +1 -0
  597. package/dist/src/server/routing/modules/groups.js +55 -0
  598. package/dist/src/server/routing/modules/groups.js.map +1 -0
  599. package/dist/src/server/routing/modules/helpers.d.ts +19 -0
  600. package/dist/src/server/routing/modules/helpers.d.ts.map +1 -0
  601. package/dist/src/server/routing/modules/helpers.js +164 -0
  602. package/dist/src/server/routing/modules/helpers.js.map +1 -0
  603. package/dist/src/server/routing/modules/middleware.d.ts +20 -0
  604. package/dist/src/server/routing/modules/middleware.d.ts.map +1 -0
  605. package/dist/src/server/routing/modules/middleware.js +185 -0
  606. package/dist/src/server/routing/modules/middleware.js.map +1 -0
  607. package/dist/src/server/routing/modules/path.d.ts +33 -0
  608. package/dist/src/server/routing/modules/path.d.ts.map +1 -0
  609. package/dist/src/server/routing/modules/path.js +125 -0
  610. package/dist/src/server/routing/modules/path.js.map +1 -0
  611. package/dist/src/server/routing/modules/registry.d.ts +29 -0
  612. package/dist/src/server/routing/modules/registry.d.ts.map +1 -0
  613. package/dist/src/server/routing/modules/registry.js +159 -0
  614. package/dist/src/server/routing/modules/registry.js.map +1 -0
  615. package/dist/src/server/routing/modules/types.d.ts +143 -0
  616. package/dist/src/server/routing/modules/types.d.ts.map +1 -0
  617. package/dist/src/server/routing/modules/types.js +2 -0
  618. package/dist/src/server/routing/modules/types.js.map +1 -0
  619. package/dist/src/server/service/Reload/exec/ExecutableBuilder.d.ts +67 -0
  620. package/dist/src/server/service/Reload/exec/ExecutableBuilder.d.ts.map +1 -0
  621. package/dist/src/server/service/Reload/exec/ExecutableBuilder.js +337 -0
  622. package/dist/src/server/service/Reload/exec/ExecutableBuilder.js.map +1 -0
  623. package/dist/src/server/service/Reload/exec/TypeScriptExecutor.d.ts +67 -0
  624. package/dist/src/server/service/Reload/exec/TypeScriptExecutor.d.ts.map +1 -0
  625. package/dist/src/server/service/Reload/exec/TypeScriptExecutor.js +337 -0
  626. package/dist/src/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
  627. package/dist/src/server/service/Reload/exec/build-executable.d.ts +9 -0
  628. package/dist/src/server/service/Reload/exec/build-executable.d.ts.map +1 -0
  629. package/dist/src/server/service/Reload/exec/build-executable.js +44 -0
  630. package/dist/src/server/service/Reload/exec/build-executable.js.map +1 -0
  631. package/dist/src/server/service/Reload/types/TSExecutor.type.d.ts +18 -0
  632. package/dist/src/server/service/Reload/types/TSExecutor.type.d.ts.map +1 -0
  633. package/dist/src/server/service/Reload/types/TSExecutor.type.js +2 -0
  634. package/dist/src/server/service/Reload/types/TSExecutor.type.js.map +1 -0
  635. package/dist/src/server/service/Reload/types/hotreloader.d.ts +21 -0
  636. package/dist/src/server/service/Reload/types/hotreloader.d.ts.map +1 -0
  637. package/dist/src/server/service/Reload/types/hotreloader.js +2 -0
  638. package/dist/src/server/service/Reload/types/hotreloader.js.map +1 -0
  639. package/dist/src/server/service/Reload/types/quickdev.type.d.ts +30 -0
  640. package/dist/src/server/service/Reload/types/quickdev.type.d.ts.map +1 -0
  641. package/dist/src/server/service/Reload/types/quickdev.type.js +2 -0
  642. package/dist/src/server/service/Reload/types/quickdev.type.js.map +1 -0
  643. package/dist/src/server/utils/ConfigLoader.d.ts +33 -0
  644. package/dist/src/server/utils/ConfigLoader.d.ts.map +1 -0
  645. package/dist/src/server/utils/ConfigLoader.js +182 -0
  646. package/dist/src/server/utils/ConfigLoader.js.map +1 -0
  647. package/dist/src/server/utils/MetaConfigRunner.d.ts +19 -0
  648. package/dist/src/server/utils/MetaConfigRunner.d.ts.map +1 -0
  649. package/dist/src/server/utils/MetaConfigRunner.js +84 -0
  650. package/dist/src/server/utils/MetaConfigRunner.js.map +1 -0
  651. package/dist/src/server/utils/PortManager.d.ts +61 -0
  652. package/dist/src/server/utils/PortManager.d.ts.map +1 -0
  653. package/dist/src/server/utils/PortManager.js +245 -0
  654. package/dist/src/server/utils/PortManager.js.map +1 -0
  655. package/dist/src/server/utils/WorkerModeHandler.d.ts +7 -0
  656. package/dist/src/server/utils/WorkerModeHandler.d.ts.map +1 -0
  657. package/dist/src/server/utils/WorkerModeHandler.js +60 -0
  658. package/dist/src/server/utils/WorkerModeHandler.js.map +1 -0
  659. package/dist/src/server/utils/es_modules.d.ts +3 -0
  660. package/dist/src/server/utils/es_modules.d.ts.map +1 -0
  661. package/dist/src/server/utils/es_modules.js +5 -0
  662. package/dist/src/server/utils/es_modules.js.map +1 -0
  663. package/dist/src/server/utils/forceClosePort.d.ts +100 -0
  664. package/dist/src/server/utils/forceClosePort.d.ts.map +1 -0
  665. package/dist/src/server/utils/forceClosePort.js +328 -0
  666. package/dist/src/server/utils/forceClosePort.js.map +1 -0
  667. package/dist/src/server/utils/internalFlagsFunctions.d.ts +71 -0
  668. package/dist/src/server/utils/internalFlagsFunctions.d.ts.map +1 -0
  669. package/dist/src/server/utils/internalFlagsFunctions.js +150 -0
  670. package/dist/src/server/utils/internalFlagsFunctions.js.map +1 -0
  671. package/dist/src/server/utils/shouldRegisterRouteOnServer.d.ts +6 -0
  672. package/dist/src/server/utils/shouldRegisterRouteOnServer.d.ts.map +1 -0
  673. package/dist/src/server/utils/shouldRegisterRouteOnServer.js +30 -0
  674. package/dist/src/server/utils/shouldRegisterRouteOnServer.js.map +1 -0
  675. package/dist/src/server/utils/wildcardMatcher.d.ts +30 -0
  676. package/dist/src/server/utils/wildcardMatcher.d.ts.map +1 -0
  677. package/dist/src/server/utils/wildcardMatcher.js +220 -0
  678. package/dist/src/server/utils/wildcardMatcher.js.map +1 -0
  679. package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.d.ts +3 -0
  680. package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.d.ts.map +1 -0
  681. package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.js +63 -0
  682. package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.js.map +1 -0
  683. package/dist/src/shared/logger/DEFAULT_PALETTE.d.ts +16 -0
  684. package/dist/src/shared/logger/DEFAULT_PALETTE.d.ts.map +1 -0
  685. package/dist/src/shared/logger/DEFAULT_PALETTE.js +16 -0
  686. package/dist/src/shared/logger/DEFAULT_PALETTE.js.map +1 -0
  687. package/dist/src/shared/logger/Logger.d.ts +95 -0
  688. package/dist/src/shared/logger/Logger.d.ts.map +1 -0
  689. package/dist/src/shared/logger/Logger.js +576 -0
  690. package/dist/src/shared/logger/Logger.js.map +1 -0
  691. package/dist/src/shared/logger/index.d.ts +2 -0
  692. package/dist/src/shared/logger/index.d.ts.map +1 -0
  693. package/dist/src/shared/logger/index.js +2 -0
  694. package/dist/src/shared/logger/index.js.map +1 -0
  695. package/dist/src/shared/logger/quickLogger.d.ts +19 -0
  696. package/dist/src/shared/logger/quickLogger.d.ts.map +1 -0
  697. package/dist/src/shared/logger/quickLogger.js +162 -0
  698. package/dist/src/shared/logger/quickLogger.js.map +1 -0
  699. package/dist/src/shared/types/index.d.ts +2 -0
  700. package/dist/src/shared/types/index.d.ts.map +1 -0
  701. package/dist/src/shared/types/index.js +2 -0
  702. package/dist/src/shared/types/index.js.map +1 -0
  703. package/dist/src/shared/types/logger.type.d.ts +46 -0
  704. package/dist/src/shared/types/logger.type.d.ts.map +1 -0
  705. package/dist/src/shared/types/logger.type.js +41 -0
  706. package/dist/src/shared/types/logger.type.js.map +1 -0
  707. package/dist/src/types/CpuMon.t.d.ts +43 -0
  708. package/dist/src/types/CpuMon.t.d.ts.map +1 -0
  709. package/dist/src/types/CpuMon.t.js +2 -0
  710. package/dist/src/types/CpuMon.t.js.map +1 -0
  711. package/dist/src/types/ExecutionPredictor.type.d.ts +25 -0
  712. package/dist/src/types/ExecutionPredictor.type.d.ts.map +1 -0
  713. package/dist/src/types/ExecutionPredictor.type.js +2 -0
  714. package/dist/src/types/ExecutionPredictor.type.js.map +1 -0
  715. package/dist/src/types/FiUp.type.d.ts +50 -0
  716. package/dist/src/types/FiUp.type.d.ts.map +1 -0
  717. package/dist/src/types/FiUp.type.js +2 -0
  718. package/dist/src/types/FiUp.type.js.map +1 -0
  719. package/dist/src/types/NotFoundConfig.d.ts +39 -0
  720. package/dist/src/types/NotFoundConfig.d.ts.map +1 -0
  721. package/dist/src/types/NotFoundConfig.js +82 -0
  722. package/dist/src/types/NotFoundConfig.js.map +1 -0
  723. package/dist/src/types/ReqPreCompiler.type.d.ts +49 -0
  724. package/dist/src/types/ReqPreCompiler.type.d.ts.map +1 -0
  725. package/dist/src/types/ReqPreCompiler.type.js +2 -0
  726. package/dist/src/types/ReqPreCompiler.type.js.map +1 -0
  727. package/dist/src/types/SendUtils.d.ts +79 -0
  728. package/dist/src/types/SendUtils.d.ts.map +1 -0
  729. package/dist/src/types/SendUtils.js +5 -0
  730. package/dist/src/types/SendUtils.js.map +1 -0
  731. package/dist/src/types/ServerOptions.d.ts +875 -0
  732. package/dist/src/types/ServerOptions.d.ts.map +1 -0
  733. package/dist/src/types/ServerOptions.js +4 -0
  734. package/dist/src/types/ServerOptions.js.map +1 -0
  735. package/dist/src/types/XyApp.type.d.ts +614 -0
  736. package/dist/src/types/XyApp.type.d.ts.map +1 -0
  737. package/dist/src/types/XyApp.type.js +2 -0
  738. package/dist/src/types/XyApp.type.js.map +1 -0
  739. package/dist/src/types/XyPrissRouter.types.d.ts +23 -0
  740. package/dist/src/types/XyPrissRouter.types.d.ts.map +1 -0
  741. package/dist/src/types/XyPrissRouter.types.js +2 -0
  742. package/dist/src/types/XyPrissRouter.types.js.map +1 -0
  743. package/dist/src/types/bun_cluster.t.d.ts +40 -0
  744. package/dist/src/types/bun_cluster.t.d.ts.map +1 -0
  745. package/dist/src/types/bun_cluster.t.js +2 -0
  746. package/dist/src/types/bun_cluster.t.js.map +1 -0
  747. package/dist/src/types/cluster.ipc.t.d.ts +141 -0
  748. package/dist/src/types/cluster.ipc.t.d.ts.map +1 -0
  749. package/dist/src/types/cluster.ipc.t.js +88 -0
  750. package/dist/src/types/cluster.ipc.t.js.map +1 -0
  751. package/dist/src/types/components/CacheManager.type.d.ts +8 -0
  752. package/dist/src/types/components/CacheManager.type.d.ts.map +1 -0
  753. package/dist/src/types/components/CacheManager.type.js +2 -0
  754. package/dist/src/types/components/CacheManager.type.js.map +1 -0
  755. package/dist/src/types/components/PlugingM.type.d.ts +8 -0
  756. package/dist/src/types/components/PlugingM.type.d.ts.map +1 -0
  757. package/dist/src/types/components/PlugingM.type.js +2 -0
  758. package/dist/src/types/components/PlugingM.type.js.map +1 -0
  759. package/dist/src/types/components/ReqProcessor.type.d.ts +7 -0
  760. package/dist/src/types/components/ReqProcessor.type.d.ts.map +1 -0
  761. package/dist/src/types/components/ReqProcessor.type.js +2 -0
  762. package/dist/src/types/components/ReqProcessor.type.js.map +1 -0
  763. package/dist/src/types/components/RouteM.type.d.ts +9 -0
  764. package/dist/src/types/components/RouteM.type.d.ts.map +1 -0
  765. package/dist/src/types/components/RouteM.type.js +2 -0
  766. package/dist/src/types/components/RouteM.type.js.map +1 -0
  767. package/dist/src/types/httpServer.type.d.ts +258 -0
  768. package/dist/src/types/httpServer.type.d.ts.map +1 -0
  769. package/dist/src/types/httpServer.type.js +25 -0
  770. package/dist/src/types/httpServer.type.js.map +1 -0
  771. package/dist/src/types/index.d.ts +228 -0
  772. package/dist/src/types/index.d.ts.map +1 -0
  773. package/dist/src/types/index.js +37 -0
  774. package/dist/src/types/index.js.map +1 -0
  775. package/dist/src/types/middleware-api.types.d.ts +180 -0
  776. package/dist/src/types/middleware-api.types.d.ts.map +1 -0
  777. package/dist/src/types/middleware-api.types.js +6 -0
  778. package/dist/src/types/middleware-api.types.js.map +1 -0
  779. package/dist/src/types/middlewareManager.types.d.ts +18 -0
  780. package/dist/src/types/middlewareManager.types.d.ts.map +1 -0
  781. package/dist/src/types/middlewareManager.types.js +2 -0
  782. package/dist/src/types/middlewareManager.types.js.map +1 -0
  783. package/dist/src/types/mod/cache.d.ts +417 -0
  784. package/dist/src/types/mod/cache.d.ts.map +1 -0
  785. package/dist/src/types/mod/cache.js +12 -0
  786. package/dist/src/types/mod/cache.js.map +1 -0
  787. package/dist/src/types/mod/core.d.ts +390 -0
  788. package/dist/src/types/mod/core.d.ts.map +1 -0
  789. package/dist/src/types/mod/core.js +2 -0
  790. package/dist/src/types/mod/core.js.map +1 -0
  791. package/dist/src/types/mod/monitoring.d.ts +473 -0
  792. package/dist/src/types/mod/monitoring.d.ts.map +1 -0
  793. package/dist/src/types/mod/monitoring.js +12 -0
  794. package/dist/src/types/mod/monitoring.js.map +1 -0
  795. package/dist/src/types/mod/performance.d.ts +370 -0
  796. package/dist/src/types/mod/performance.d.ts.map +1 -0
  797. package/dist/src/types/mod/performance.js +12 -0
  798. package/dist/src/types/mod/performance.js.map +1 -0
  799. package/dist/src/types/mod/routing.d.ts +385 -0
  800. package/dist/src/types/mod/routing.d.ts.map +1 -0
  801. package/dist/src/types/mod/routing.js +12 -0
  802. package/dist/src/types/mod/routing.js.map +1 -0
  803. package/dist/src/types/mod/security.d.ts +1370 -0
  804. package/dist/src/types/mod/security.d.ts.map +1 -0
  805. package/dist/src/types/mod/security.js +2 -0
  806. package/dist/src/types/mod/security.js.map +1 -0
  807. package/dist/src/types/perfomance.d.ts +37 -0
  808. package/dist/src/types/perfomance.d.ts.map +1 -0
  809. package/dist/src/types/perfomance.js +2 -0
  810. package/dist/src/types/perfomance.js.map +1 -0
  811. package/dist/src/types/types.d.ts +210 -0
  812. package/dist/src/types/types.d.ts.map +1 -0
  813. package/dist/src/types/types.js +21 -0
  814. package/dist/src/types/types.js.map +1 -0
  815. package/dist/src/types/xems.type.d.ts +84 -0
  816. package/dist/src/types/xems.type.d.ts.map +1 -0
  817. package/dist/src/types/xems.type.js +2 -0
  818. package/dist/src/types/xems.type.js.map +1 -0
  819. package/dist/src/utils/ConfigSyntaxParser.d.ts +59 -0
  820. package/dist/src/utils/ConfigSyntaxParser.d.ts.map +1 -0
  821. package/dist/src/utils/ConfigSyntaxParser.js +240 -0
  822. package/dist/src/utils/ConfigSyntaxParser.js.map +1 -0
  823. package/dist/src/utils/DotEnvLoader.d.ts +25 -0
  824. package/dist/src/utils/DotEnvLoader.d.ts.map +1 -0
  825. package/dist/src/utils/DotEnvLoader.js +69 -0
  826. package/dist/src/utils/DotEnvLoader.js.map +1 -0
  827. package/dist/src/utils/JsonUtils.d.ts +23 -0
  828. package/dist/src/utils/JsonUtils.d.ts.map +1 -0
  829. package/dist/src/utils/JsonUtils.js +29 -0
  830. package/dist/src/utils/JsonUtils.js.map +1 -0
  831. package/dist/src/utils/ProjectDiscovery.d.ts +61 -0
  832. package/dist/src/utils/ProjectDiscovery.d.ts.map +1 -0
  833. package/dist/src/utils/ProjectDiscovery.js +302 -0
  834. package/dist/src/utils/ProjectDiscovery.js.map +1 -0
  835. package/dist/src/utils/SecurityShield.d.ts +11 -0
  836. package/dist/src/utils/SecurityShield.d.ts.map +1 -0
  837. package/dist/src/utils/SecurityShield.js +57 -0
  838. package/dist/src/utils/SecurityShield.js.map +1 -0
  839. package/dist/src/utils/Send.d.ts +466 -0
  840. package/dist/src/utils/Send.d.ts.map +1 -0
  841. package/dist/src/utils/Send.js +619 -0
  842. package/dist/src/utils/Send.js.map +1 -0
  843. package/dist/src/utils/getIp.d.ts +53 -0
  844. package/dist/src/utils/getIp.d.ts.map +1 -0
  845. package/dist/src/utils/getIp.js +160 -0
  846. package/dist/src/utils/getIp.js.map +1 -0
  847. package/dist/src/utils/getMime.d.ts +52 -0
  848. package/dist/src/utils/getMime.d.ts.map +1 -0
  849. package/dist/src/utils/getMime.js +90 -0
  850. package/dist/src/utils/getMime.js.map +1 -0
  851. package/dist/src/utils/mergeWithDefaults.d.ts +92 -0
  852. package/dist/src/utils/mergeWithDefaults.d.ts.map +1 -0
  853. package/dist/src/utils/mergeWithDefaults.js +172 -0
  854. package/dist/src/utils/mergeWithDefaults.js.map +1 -0
  855. package/dist/src/utils/mimeUtils.d.ts +10 -0
  856. package/dist/src/utils/mimeUtils.d.ts.map +1 -0
  857. package/dist/src/utils/mimeUtils.js +14 -0
  858. package/dist/src/utils/mimeUtils.js.map +1 -0
  859. package/dist/src/xhsc/EnvApi.d.ts +310 -0
  860. package/dist/src/xhsc/EnvApi.d.ts.map +1 -0
  861. package/dist/src/xhsc/EnvApi.js +556 -0
  862. package/dist/src/xhsc/EnvApi.js.map +1 -0
  863. package/dist/src/xhsc/FSApi.d.ts +21 -0
  864. package/dist/src/xhsc/FSApi.d.ts.map +1 -0
  865. package/dist/src/xhsc/FSApi.js +49 -0
  866. package/dist/src/xhsc/FSApi.js.map +1 -0
  867. package/dist/src/xhsc/OSApi.d.ts +195 -0
  868. package/dist/src/xhsc/OSApi.d.ts.map +1 -0
  869. package/dist/src/xhsc/OSApi.js +220 -0
  870. package/dist/src/xhsc/OSApi.js.map +1 -0
  871. package/dist/src/xhsc/PathApi.d.ts +305 -0
  872. package/dist/src/xhsc/PathApi.d.ts.map +1 -0
  873. package/dist/src/xhsc/PathApi.js +389 -0
  874. package/dist/src/xhsc/PathApi.js.map +1 -0
  875. package/dist/src/xhsc/System.d.ts +126 -0
  876. package/dist/src/xhsc/System.d.ts.map +1 -0
  877. package/dist/src/xhsc/System.js +58 -0
  878. package/dist/src/xhsc/System.js.map +1 -0
  879. package/dist/src/xhsc/UtilsApi.d.ts +45 -0
  880. package/dist/src/xhsc/UtilsApi.d.ts.map +1 -0
  881. package/dist/src/xhsc/UtilsApi.js +47 -0
  882. package/dist/src/xhsc/UtilsApi.js.map +1 -0
  883. package/dist/src/xhsc/VarsApi.d.ts +81 -0
  884. package/dist/src/xhsc/VarsApi.d.ts.map +1 -0
  885. package/dist/src/xhsc/VarsApi.js +175 -0
  886. package/dist/src/xhsc/VarsApi.js.map +1 -0
  887. package/dist/src/xhsc/XyPrissCache.d.ts +36 -0
  888. package/dist/src/xhsc/XyPrissCache.d.ts.map +1 -0
  889. package/dist/src/xhsc/XyPrissCache.js +66 -0
  890. package/dist/src/xhsc/XyPrissCache.js.map +1 -0
  891. package/dist/src/xhsc/XyPrissRunner.d.ts +48 -0
  892. package/dist/src/xhsc/XyPrissRunner.d.ts.map +1 -0
  893. package/dist/src/xhsc/XyPrissRunner.js +395 -0
  894. package/dist/src/xhsc/XyPrissRunner.js.map +1 -0
  895. package/dist/src/xhsc/api/env/env.d.ts +227 -0
  896. package/dist/src/xhsc/api/env/env.d.ts.map +1 -0
  897. package/dist/src/xhsc/api/env/env.js +84 -0
  898. package/dist/src/xhsc/api/env/env.js.map +1 -0
  899. package/dist/src/xhsc/cluster/XHSCWorker.d.ts +95 -0
  900. package/dist/src/xhsc/cluster/XHSCWorker.d.ts.map +1 -0
  901. package/dist/src/xhsc/cluster/XHSCWorker.js +319 -0
  902. package/dist/src/xhsc/cluster/XHSCWorker.js.map +1 -0
  903. package/dist/src/xhsc/cluster/xbp.d.ts +87 -0
  904. package/dist/src/xhsc/cluster/xbp.d.ts.map +1 -0
  905. package/dist/src/xhsc/cluster/xbp.js +366 -0
  906. package/dist/src/xhsc/cluster/xbp.js.map +1 -0
  907. package/dist/src/xhsc/cmdr.d.ts +9 -0
  908. package/dist/src/xhsc/cmdr.d.ts.map +1 -0
  909. package/dist/src/xhsc/cmdr.js +2 -0
  910. package/dist/src/xhsc/cmdr.js.map +1 -0
  911. package/dist/src/xhsc/fs/FSArchive.d.ts +55 -0
  912. package/dist/src/xhsc/fs/FSArchive.d.ts.map +1 -0
  913. package/dist/src/xhsc/fs/FSArchive.js +66 -0
  914. package/dist/src/xhsc/fs/FSArchive.js.map +1 -0
  915. package/dist/src/xhsc/fs/FSBase.d.ts +14 -0
  916. package/dist/src/xhsc/fs/FSBase.d.ts.map +1 -0
  917. package/dist/src/xhsc/fs/FSBase.js +15 -0
  918. package/dist/src/xhsc/fs/FSBase.js.map +1 -0
  919. package/dist/src/xhsc/fs/FSCore.d.ts +416 -0
  920. package/dist/src/xhsc/fs/FSCore.d.ts.map +1 -0
  921. package/dist/src/xhsc/fs/FSCore.js +522 -0
  922. package/dist/src/xhsc/fs/FSCore.js.map +1 -0
  923. package/dist/src/xhsc/fs/FSExtended.d.ts +212 -0
  924. package/dist/src/xhsc/fs/FSExtended.d.ts.map +1 -0
  925. package/dist/src/xhsc/fs/FSExtended.js +303 -0
  926. package/dist/src/xhsc/fs/FSExtended.js.map +1 -0
  927. package/dist/src/xhsc/fs/FSHelpers.d.ts +381 -0
  928. package/dist/src/xhsc/fs/FSHelpers.d.ts.map +1 -0
  929. package/dist/src/xhsc/fs/FSHelpers.js +501 -0
  930. package/dist/src/xhsc/fs/FSHelpers.js.map +1 -0
  931. package/dist/src/xhsc/fs/FSSearch.d.ts +77 -0
  932. package/dist/src/xhsc/fs/FSSearch.d.ts.map +1 -0
  933. package/dist/src/xhsc/fs/FSSearch.js +95 -0
  934. package/dist/src/xhsc/fs/FSSearch.js.map +1 -0
  935. package/dist/src/xhsc/fs/FSWatch.d.ts +107 -0
  936. package/dist/src/xhsc/fs/FSWatch.d.ts.map +1 -0
  937. package/dist/src/xhsc/fs/FSWatch.js +136 -0
  938. package/dist/src/xhsc/fs/FSWatch.js.map +1 -0
  939. package/dist/src/xhsc/fs/FileHandle.d.ts +40 -0
  940. package/dist/src/xhsc/fs/FileHandle.d.ts.map +1 -0
  941. package/dist/src/xhsc/fs/FileHandle.js +107 -0
  942. package/dist/src/xhsc/fs/FileHandle.js.map +1 -0
  943. package/dist/src/xhsc/ipc/XHSCDirectIPC.d.ts +24 -0
  944. package/dist/src/xhsc/ipc/XHSCDirectIPC.d.ts.map +1 -0
  945. package/dist/src/xhsc/ipc/XHSCDirectIPC.js +110 -0
  946. package/dist/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
  947. package/dist/src/xhsc/types.d.ts +268 -0
  948. package/dist/src/xhsc/types.d.ts.map +1 -0
  949. package/dist/src/xhsc/types.js +8 -0
  950. package/dist/src/xhsc/types.js.map +1 -0
  951. package/dist/src/xhsc/utils/ArrayUtils.d.ts +38 -0
  952. package/dist/src/xhsc/utils/ArrayUtils.d.ts.map +1 -0
  953. package/dist/src/xhsc/utils/ArrayUtils.js +63 -0
  954. package/dist/src/xhsc/utils/ArrayUtils.js.map +1 -0
  955. package/dist/src/xhsc/utils/AsyncUtils.d.ts +437 -0
  956. package/dist/src/xhsc/utils/AsyncUtils.d.ts.map +1 -0
  957. package/dist/src/xhsc/utils/AsyncUtils.js +578 -0
  958. package/dist/src/xhsc/utils/AsyncUtils.js.map +1 -0
  959. package/dist/src/xhsc/utils/DateUtils.d.ts +649 -0
  960. package/dist/src/xhsc/utils/DateUtils.d.ts.map +1 -0
  961. package/dist/src/xhsc/utils/DateUtils.js +956 -0
  962. package/dist/src/xhsc/utils/DateUtils.js.map +1 -0
  963. package/dist/src/xhsc/utils/Discovery.d.ts +41 -0
  964. package/dist/src/xhsc/utils/Discovery.d.ts.map +1 -0
  965. package/dist/src/xhsc/utils/Discovery.js +108 -0
  966. package/dist/src/xhsc/utils/Discovery.js.map +1 -0
  967. package/dist/src/xhsc/utils/FunctionUtils.d.ts +15 -0
  968. package/dist/src/xhsc/utils/FunctionUtils.d.ts.map +1 -0
  969. package/dist/src/xhsc/utils/FunctionUtils.js +25 -0
  970. package/dist/src/xhsc/utils/FunctionUtils.js.map +1 -0
  971. package/dist/src/xhsc/utils/IdUtils.d.ts +14 -0
  972. package/dist/src/xhsc/utils/IdUtils.d.ts.map +1 -0
  973. package/dist/src/xhsc/utils/IdUtils.js +17 -0
  974. package/dist/src/xhsc/utils/IdUtils.js.map +1 -0
  975. package/dist/src/xhsc/utils/NumberUtils.d.ts +59 -0
  976. package/dist/src/xhsc/utils/NumberUtils.d.ts.map +1 -0
  977. package/dist/src/xhsc/utils/NumberUtils.js +75 -0
  978. package/dist/src/xhsc/utils/NumberUtils.js.map +1 -0
  979. package/dist/src/xhsc/utils/ObjectUtils.d.ts +96 -0
  980. package/dist/src/xhsc/utils/ObjectUtils.d.ts.map +1 -0
  981. package/dist/src/xhsc/utils/ObjectUtils.js +136 -0
  982. package/dist/src/xhsc/utils/ObjectUtils.js.map +1 -0
  983. package/dist/src/xhsc/utils/Platform.d.ts +29 -0
  984. package/dist/src/xhsc/utils/Platform.d.ts.map +1 -0
  985. package/dist/src/xhsc/utils/Platform.js +47 -0
  986. package/dist/src/xhsc/utils/Platform.js.map +1 -0
  987. package/dist/src/xhsc/utils/StringUtils.d.ts +105 -0
  988. package/dist/src/xhsc/utils/StringUtils.d.ts.map +1 -0
  989. package/dist/src/xhsc/utils/StringUtils.js +141 -0
  990. package/dist/src/xhsc/utils/StringUtils.js.map +1 -0
  991. package/dist/src/xhsc/utils/ValidationUtils.d.ts +33 -0
  992. package/dist/src/xhsc/utils/ValidationUtils.d.ts.map +1 -0
  993. package/dist/src/xhsc/utils/ValidationUtils.js +45 -0
  994. package/dist/src/xhsc/utils/ValidationUtils.js.map +1 -0
  995. package/dist/src/xhsc.d.ts +49 -0
  996. package/dist/src/xhsc.d.ts.map +1 -0
  997. package/dist/src/xhsc.js +263 -0
  998. package/dist/src/xhsc.js.map +1 -0
  999. package/dist/test_finish.d.ts +2 -0
  1000. package/dist/test_finish.d.ts.map +1 -0
  1001. package/dist/test_finish.js +10 -0
  1002. package/dist/test_finish.js.map +1 -0
  1003. package/dist/test_parser_optimizations.d.ts +2 -0
  1004. package/dist/test_parser_optimizations.d.ts.map +1 -0
  1005. package/dist/test_parser_optimizations.js +22 -0
  1006. package/dist/test_parser_optimizations.js.map +1 -0
  1007. package/dist/test_regex.d.ts +2 -0
  1008. package/dist/test_regex.d.ts.map +1 -0
  1009. package/dist/test_regex.js +20 -0
  1010. package/dist/test_regex.js.map +1 -0
  1011. package/dist/test_server.d.ts +2 -0
  1012. package/dist/test_server.d.ts.map +1 -0
  1013. package/dist/test_server.js +23 -0
  1014. package/dist/test_server.js.map +1 -0
  1015. package/package.json +3 -6
@@ -0,0 +1,53 @@
1
+ /***************************************************************************
2
+ * XyPrissJS - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ *
9
+ * This License governs the use, modification, and distribution of software
10
+ * provided by NEHONIX under its open source projects.
11
+ * NEHONIX is committed to fostering collaborative innovation while strictly
12
+ * protecting its intellectual property rights.
13
+ * Violation of any term of this License will result in immediate termination of all granted rights
14
+ * and may subject the violator to legal action.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
17
+ * INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
18
+ * AND NON-INFRINGEMENT.
19
+ * IN NO EVENT SHALL NEHONIX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
20
+ * OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THE SOFTWARE,
21
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
22
+ *
23
+ ***************************************************************************** */
24
+ import { XyPrisRequest } from "../types/httpServer.type";
25
+ /** Result enriched with metadata for observability / debugging. */
26
+ export interface GetIpResult {
27
+ /** Resolved IP address (IPv4 or IPv6, normalised). */
28
+ ip: string;
29
+ /** Header / source that provided the IP. */
30
+ source: IpSource;
31
+ }
32
+ export type IpSource = "cf-connecting-ip" | "true-client-ip" | "x-real-ip" | "x-forwarded-for" | "forwarded" | "x-client-ip" | "x-cluster-client-ip" | "req.ip" | "socket" | "fallback";
33
+ /**
34
+ * Robustly extracts the **real** client IP from a request.
35
+ *
36
+ * Resolution order (most-specific / trustworthy first):
37
+ * 1. `CF-Connecting-IP` – Cloudflare; single, authoritative value
38
+ * 2. `True-Client-IP` – Akamai / Cloudflare enterprise
39
+ * 3. `X-Real-IP` – Nginx single-proxy setups
40
+ * 4. `X-Client-IP` – Some load balancers / Apache mod_remoteip
41
+ * 5. `X-Cluster-Client-IP` – Rackspace, some Nginx configs
42
+ * 6. `Forwarded` – RFC 7239 standard header
43
+ * 7. `X-Forwarded-For` – De-facto standard (picks first public IP)
44
+ * 8. `req.ip` – XyPrisRequest parsed value
45
+ * 9. `socket.remoteAddress` – Raw TCP socket
46
+ * 10. `"127.0.0.1"` – Ultimate fallback (never throws)
47
+ *
48
+ * @param req - The request object (XyPrisRequest-compatible).
49
+ * @param enriched - When `true`, returns `{ ip, source }` for observability.
50
+ */
51
+ export declare function getIp(req: XyPrisRequest): string;
52
+ export declare function getIp(req: XyPrisRequest, enriched: true): GetIpResult;
53
+ //# sourceMappingURL=getIp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIp.d.ts","sourceRoot":"","sources":["../../../src/utils/getIp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;iFAsBiF;AAIjF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAIzD,mEAAmE;AACnE,MAAM,WAAW,WAAW;IACxB,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,MAAM,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,MAAM,QAAQ,GACd,kBAAkB,GAClB,gBAAgB,GAChB,WAAW,GACX,iBAAiB,GACjB,WAAW,GACX,aAAa,GACb,qBAAqB,GACrB,QAAQ,GACR,QAAQ,GACR,UAAU,CAAC;AAuGjB;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC;AAClD,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,GAAG,WAAW,CAAC"}
@@ -0,0 +1,160 @@
1
+ /***************************************************************************
2
+ * XyPrissJS - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ *
9
+ * This License governs the use, modification, and distribution of software
10
+ * provided by NEHONIX under its open source projects.
11
+ * NEHONIX is committed to fostering collaborative innovation while strictly
12
+ * protecting its intellectual property rights.
13
+ * Violation of any term of this License will result in immediate termination of all granted rights
14
+ * and may subject the violator to legal action.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
17
+ * INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
18
+ * AND NON-INFRINGEMENT.
19
+ * IN NO EVENT SHALL NEHONIX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
20
+ * OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THE SOFTWARE,
21
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
22
+ *
23
+ ***************************************************************************** */
24
+ // ─── Constants ────────────────────────────────────────────────────────────────
25
+ /** Regex that validates a raw IPv4 or IPv6 string (no port, no brackets). */
26
+ const IPV4_RE = /^(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/;
27
+ const IPV6_RE = /^[\da-f:]+$/i;
28
+ /** Private / loopback ranges we never want to return as the *real* client IP. */
29
+ const PRIVATE_RANGES = [
30
+ /^127\./, // 127.0.0.0/8 – loopback
31
+ /^10\./, // 10.0.0.0/8 – RFC 1918
32
+ /^172\.(1[6-9]|2\d|3[01])\./, // 172.16.0.0/12 – RFC 1918
33
+ /^192\.168\./, // 192.168.0.0/16 – RFC 1918
34
+ /^169\.254\./, // 169.254.0.0/16 – link-local
35
+ /^::1$/, // IPv6 loopback
36
+ /^fe80:/i, // IPv6 link-local
37
+ /^fc|^fd/i, // IPv6 unique local
38
+ ];
39
+ const FALLBACK_IP = "127.0.0.1";
40
+ // ─── Helpers ──────────────────────────────────────────────────────────────────
41
+ /**
42
+ * Strips an IPv6-mapped IPv4 prefix ("::ffff:") and surrounding brackets.
43
+ * "::ffff:1.2.3.4" → "1.2.3.4"
44
+ * "[::1]" → "::1"
45
+ */
46
+ function normaliseIp(raw) {
47
+ let ip = raw.trim();
48
+ // Strip brackets used in URLs: [::1]:3000 → ::1
49
+ if (ip.startsWith("[")) {
50
+ ip = ip.replace(/^\[([^\]]+)\].*$/, "$1");
51
+ }
52
+ // Strip port from IPv4: 1.2.3.4:3000 → 1.2.3.4
53
+ const v4WithPort = ip.match(/^(\d{1,3}(?:\.\d{1,3}){3}):\d+$/);
54
+ if (v4WithPort)
55
+ ip = v4WithPort[1];
56
+ // Strip IPv6-mapped IPv4 prefix
57
+ if (/^::ffff:/i.test(ip))
58
+ ip = ip.slice(7);
59
+ return ip;
60
+ }
61
+ /** Returns true only for syntactically valid, non-private IPv4 / IPv6. */
62
+ function isValidPublicIp(raw) {
63
+ const ip = normaliseIp(raw);
64
+ if (!ip)
65
+ return false;
66
+ const isIpv4 = IPV4_RE.test(ip);
67
+ const isIpv6 = !isIpv4 && IPV6_RE.test(ip);
68
+ if (!isIpv4 && !isIpv6)
69
+ return false;
70
+ return !PRIVATE_RANGES.some((re) => re.test(ip));
71
+ }
72
+ /** Safely reads a header value – returns undefined for missing / empty. */
73
+ function header(headers, name) {
74
+ const val = headers[name.toLowerCase()];
75
+ if (!val)
76
+ return undefined;
77
+ const str = Array.isArray(val) ? val[0] : val;
78
+ return str?.trim() || undefined;
79
+ }
80
+ /**
81
+ * Parses the RFC 7239 `Forwarded` header.
82
+ * `Forwarded: for=1.2.3.4;proto=https, for=5.6.7.8`
83
+ * → ["1.2.3.4", "5.6.7.8"]
84
+ */
85
+ function parseForwardedHeader(value) {
86
+ return value
87
+ .split(",")
88
+ .map((part) => {
89
+ const match = part.match(/for=["[]?([^\]",;]+)/i);
90
+ return match ? normaliseIp(match[1]) : "";
91
+ })
92
+ .filter(Boolean);
93
+ }
94
+ /**
95
+ * Given a comma-separated (or array) `X-Forwarded-For` header,
96
+ * returns the first *valid public* IP, or the first entry as fallback.
97
+ */
98
+ function pickFromXff(raw) {
99
+ const entries = (Array.isArray(raw) ? raw.flatMap((v) => v.split(",")) : raw.split(",")).map((s) => normaliseIp(s));
100
+ // Prefer first valid public IP (leftmost = original client in standard chains)
101
+ const pub = entries.find(isValidPublicIp);
102
+ if (pub)
103
+ return pub;
104
+ // Accept first private IP rather than nothing (intranet / dev env)
105
+ const first = entries[0];
106
+ return first && (IPV4_RE.test(first) || IPV6_RE.test(first))
107
+ ? first
108
+ : undefined;
109
+ }
110
+ export function getIp(req, enriched) {
111
+ const headers = (req.headers ?? {});
112
+ const resolve = (ip, source) => {
113
+ const normalised = normaliseIp(ip);
114
+ return enriched ? { ip: normalised, source } : normalised;
115
+ };
116
+ // 1. CF-Connecting-IP
117
+ const cfIp = header(headers, "cf-connecting-ip");
118
+ if (cfIp)
119
+ return resolve(cfIp, "cf-connecting-ip");
120
+ // 2. True-Client-IP
121
+ const trueClientIp = header(headers, "true-client-ip");
122
+ if (trueClientIp)
123
+ return resolve(trueClientIp, "true-client-ip");
124
+ // 3. X-Real-IP
125
+ const xRealIp = header(headers, "x-real-ip");
126
+ if (xRealIp)
127
+ return resolve(xRealIp, "x-real-ip");
128
+ // 4. X-Client-IP
129
+ const xClientIp = header(headers, "x-client-ip");
130
+ if (xClientIp)
131
+ return resolve(xClientIp, "x-client-ip");
132
+ // 5. X-Cluster-Client-IP
133
+ const xClusterIp = header(headers, "x-cluster-client-ip");
134
+ if (xClusterIp)
135
+ return resolve(xClusterIp, "x-cluster-client-ip");
136
+ // 6. Forwarded (RFC 7239)
137
+ const forwarded = header(headers, "forwarded");
138
+ if (forwarded) {
139
+ const [first] = parseForwardedHeader(forwarded);
140
+ if (first)
141
+ return resolve(first, "forwarded");
142
+ }
143
+ // 7. X-Forwarded-For
144
+ const xForwardedFor = headers["x-forwarded-for"];
145
+ if (xForwardedFor) {
146
+ const picked = pickFromXff(xForwardedFor);
147
+ if (picked)
148
+ return resolve(picked, "x-forwarded-for");
149
+ }
150
+ // 8. req.ip (framework-level, e.g. XyPrisRequest with trust proxy)
151
+ if (req.ip)
152
+ return resolve(req.ip, "req.ip");
153
+ // 9. Raw socket
154
+ const socketAddr = req.socket?.remoteAddress;
155
+ if (socketAddr)
156
+ return resolve(socketAddr, "socket");
157
+ // 10. Last-resort fallback
158
+ return resolve(FALLBACK_IP, "fallback");
159
+ }
160
+ //# sourceMappingURL=getIp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIp.js","sourceRoot":"","sources":["../../../src/utils/getIp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /***************************************************************************
2
+ * XyPriss - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ ****************************************************************************/
9
+ /**
10
+ * Resolves a single MIME type from a file extension.
11
+ *
12
+ * @param ext - The file extension (e.g., '.png' or 'jpg').
13
+ * @returns The corresponding MIME type or 'application/octet-stream' if unknown.
14
+ */
15
+ export declare const getMime: (ext: string) => string;
16
+ /**
17
+ * Advanced utility to resolve multiple MIME types from file extensions.
18
+ *
19
+ * This helper is designed to simplify server configurations, particularly for
20
+ * 'fileUpload' and security policies, by allowing developers to specify
21
+ * human-readable extensions instead of complex MIME strings.
22
+ *
23
+ * FEATURES:
24
+ * - Supports single extensions or arrays.
25
+ * - Automatically normalizes extensions (handles missing dots).
26
+ * - Deduplicates results to ensure a clean MIME array.
27
+ * - Can fall back to global 'fileUpload.allowedExtensions' if no argument is provided.
28
+ *
29
+ * @param extensions - A single extension (e.g., '.png') or an array (e.g., ['.jpg', '.pdf']).
30
+ * If omitted, the function attempts to read from global configuration.
31
+ * @returns A unique array of resolved MIME types.
32
+ *
33
+ * @example
34
+ * // 1. Map an array of extensions for file upload configuration
35
+ * const uploadConfig = {
36
+ * allowedMimeTypes: getMimes(['.png', '.jpg', '.jpeg', '.webp'])
37
+ * };
38
+ * // Result: ['image/png', 'image/jpeg', 'image/webp']
39
+ *
40
+ * @example
41
+ * // 2. Map a single extension
42
+ * const mimes = getMimes('.pdf');
43
+ * // Result: ['application/pdf']
44
+ *
45
+ * @example
46
+ * // 3. Automatic detection from xypriss.config.json
47
+ * // If config has: { "fileUpload": { "allowedExtensions": [".zip", ".rar"] } }
48
+ * const mimes = getMimes();
49
+ * // Result: ['application/zip', 'application/vnd.rar']
50
+ */
51
+ export declare const getMimes: (extensions?: string | string[]) => string[];
52
+ //# sourceMappingURL=getMime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMime.d.ts","sourceRoot":"","sources":["../../../src/utils/getMime.ts"],"names":[],"mappings":"AAAA;;;;;;;8EAO8E;AAK9E;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,KAAG,MAMrC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAa,MAAM,GAAG,MAAM,EAAE,KAAG,MAAM,EA4B/D,CAAC"}
@@ -0,0 +1,90 @@
1
+ /***************************************************************************
2
+ * XyPriss - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ ****************************************************************************/
9
+ import { MIME_MAP } from "../server/const/MIME_MAP";
10
+ import { __cfg__ } from "../ConfigurationManager";
11
+ /**
12
+ * Resolves a single MIME type from a file extension.
13
+ *
14
+ * @param ext - The file extension (e.g., '.png' or 'jpg').
15
+ * @returns The corresponding MIME type or 'application/octet-stream' if unknown.
16
+ */
17
+ export const getMime = (ext) => {
18
+ if (!ext)
19
+ return "application/octet-stream";
20
+ const normalized = ext.startsWith(".")
21
+ ? ext.toLowerCase()
22
+ : `.${ext.toLowerCase()}`;
23
+ return MIME_MAP?.[normalized] || "application/octet-stream";
24
+ };
25
+ /**
26
+ * Advanced utility to resolve multiple MIME types from file extensions.
27
+ *
28
+ * This helper is designed to simplify server configurations, particularly for
29
+ * 'fileUpload' and security policies, by allowing developers to specify
30
+ * human-readable extensions instead of complex MIME strings.
31
+ *
32
+ * FEATURES:
33
+ * - Supports single extensions or arrays.
34
+ * - Automatically normalizes extensions (handles missing dots).
35
+ * - Deduplicates results to ensure a clean MIME array.
36
+ * - Can fall back to global 'fileUpload.allowedExtensions' if no argument is provided.
37
+ *
38
+ * @param extensions - A single extension (e.g., '.png') or an array (e.g., ['.jpg', '.pdf']).
39
+ * If omitted, the function attempts to read from global configuration.
40
+ * @returns A unique array of resolved MIME types.
41
+ *
42
+ * @example
43
+ * // 1. Map an array of extensions for file upload configuration
44
+ * const uploadConfig = {
45
+ * allowedMimeTypes: getMimes(['.png', '.jpg', '.jpeg', '.webp'])
46
+ * };
47
+ * // Result: ['image/png', 'image/jpeg', 'image/webp']
48
+ *
49
+ * @example
50
+ * // 2. Map a single extension
51
+ * const mimes = getMimes('.pdf');
52
+ * // Result: ['application/pdf']
53
+ *
54
+ * @example
55
+ * // 3. Automatic detection from xypriss.config.json
56
+ * // If config has: { "fileUpload": { "allowedExtensions": [".zip", ".rar"] } }
57
+ * const mimes = getMimes();
58
+ * // Result: ['application/zip', 'application/vnd.rar']
59
+ */
60
+ export const getMimes = (extensions) => {
61
+ let targetExts = [];
62
+ if (extensions) {
63
+ targetExts = Array.isArray(extensions) ? extensions : [extensions];
64
+ }
65
+ else {
66
+ // Fallback to global framework configuration if available
67
+ try {
68
+ const uMimeConfig = __cfg__.get("fileUpload")?.allowedExtensions;
69
+ if (Array.isArray(uMimeConfig)) {
70
+ targetExts = uMimeConfig;
71
+ }
72
+ }
73
+ catch (e) {
74
+ // Config might not be initialized yet in early-loading contexts
75
+ return [];
76
+ }
77
+ }
78
+ if (targetExts.length === 0)
79
+ return [];
80
+ const mimeSet = new Set();
81
+ for (const ext of targetExts) {
82
+ if (!ext)
83
+ continue;
84
+ const mime = getMime(ext);
85
+ if (mime)
86
+ mimeSet.add(mime);
87
+ }
88
+ return Array.from(mimeSet);
89
+ };
90
+ //# sourceMappingURL=getMime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMime.js","sourceRoot":"","sources":["../../../src/utils/getMime.ts"],"names":[],"mappings":"AAAA;;;;;;;8EAO8E;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAU,EAAE;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,0BAA0B,CAAC;IAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAClC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE;QACnB,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;IAC9B,OAAO,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,0BAA0B,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,UAA8B,EAAY,EAAE;IACjE,IAAI,UAAU,GAAa,EAAE,CAAC;IAE9B,IAAI,UAAU,EAAE,CAAC;QACb,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACJ,0DAA0D;QAC1D,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC;YACjE,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7B,UAAU,GAAG,WAAW,CAAC;YAC7B,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,gEAAgE;YAChE,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC"}
@@ -0,0 +1,92 @@
1
+ /***************************************************************************
2
+ * XyPrissJS - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ *
9
+ * This License governs the use, modification, and distribution of software
10
+ * provided by NEHONIX under its open source projects.
11
+ * NEHONIX is committed to fostering collaborative innovation while strictly
12
+ * protecting its intellectual property rights.
13
+ * Violation of any term of this License will result in immediate termination of all granted rights
14
+ * and may subject the violator to legal action.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
17
+ * INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
18
+ * AND NON-INFRINGEMENT.
19
+ * IN NO EVENT SHALL NEHONIX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
20
+ * OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THE SOFTWARE,
21
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
22
+ *
23
+ ***************************************************************************** */
24
+ export type ArrayStrategy = "replace" | "concat" | "merge";
25
+ export interface MergeOptions {
26
+ /**
27
+ * How to handle arrays when both `defaults` and `userOptions` have an
28
+ * array at tme key.
29
+ * - `"replace"` (default) — user array wins entirely.
30
+ * - `"concat"` — `[...defaultArray, ...userArray]`.
31
+ * - `"merge"` — element-wise: recurse for plain-object items,
32
+ * otherwise use the user element (or the default
33
+ * element when the user array is shorter).
34
+ */
35
+ arrayStrategy?: ArrayStrategy;
36
+ }
37
+ /**
38
+ * mergeWithDefaults — Smart config merge utility
39
+ *
40
+ * Unlike `{ ...defaults, ...userOptions }` (shallow spread), this utility:
41
+ *
42
+ * 1. **User-provided keys always win** — a key present in `userOptions` (even
43
+ * if its value is `false`, `null`, `0`, or `""`) is NEVER overridden by a
44
+ * default. Only truly absent keys fall back to the default.
45
+ *
46
+ * 2. **Deep merge for plain objects** — nested objects are merged recursively
47
+ * at any depth, so that `userOptions.rateLimit.max` doesn't wipe out
48
+ * `defaults.rateLimit.windowMs`.
49
+ *
50
+ * 3. **No mutation** — returns a new object; inputs are untouched.
51
+ *
52
+ * 4. **Circular reference protection** — cycles are detected and broken
53
+ * (the circular reference is replaced by `undefined`).
54
+ *
55
+ * 5. **Prototype pollution protection** — dangerous keys (`__proto__`,
56
+ * `constructor`, `prototype`) are silently ignored.
57
+ *
58
+ * 6. **Array strategy** — configurable via `options.arrayStrategy`:
59
+ * - `"replace"` (default) — user array fully replaces the default array.
60
+ * - `"concat"` — arrays are concatenated (defaults first).
61
+ * - `"merge"` — elements are merged index-by-index (plain
62
+ * objects recurse, primitives use user value).
63
+ *
64
+ * 7. **Symbol keys** — included in the merge alongside string keys.
65
+ *
66
+ * ### Example
67
+ * ```ts
68
+ * const defaults = {
69
+ * origin: true,
70
+ * credentials: false,
71
+ * maxAge: 86400,
72
+ * rateLimit: { max: 100, windowMs: 60_000 },
73
+ * };
74
+ * const user = {
75
+ * credentials: true,
76
+ * origin: ["http://localhost:5173"],
77
+ * rateLimit: { max: 50 }, // windowMs falls back to default
78
+ * };
79
+ *
80
+ * mergeWithDefaults(defaults, user);
81
+ * // → {
82
+ * // origin: ["http://localhost:5173"],
83
+ * // credentials: true,
84
+ * // maxAge: 86400,
85
+ * // rateLimit: { max: 50, windowMs: 60_000 },
86
+ * // }
87
+ * ```
88
+ */
89
+ export declare function mergeWithDefaults<T extends Record<string | symbol, any>>(defaults: T, userOptions: Partial<T> | undefined | null, options?: MergeOptions,
90
+ /** @internal — tracks visited objects to break circular refs */
91
+ _seen?: WeakSet<object>): T;
92
+ //# sourceMappingURL=mergeWithDefaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeWithDefaults.d.ts","sourceRoot":"","sources":["../../../src/utils/mergeWithDefaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;iFAsBiF;AAMjF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,YAAY;IACzB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CACjC;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,EACpE,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,EAC1C,OAAO,GAAE,YAAiB;AAC1B,gEAAgE;AAChE,KAAK,GAAE,OAAO,CAAC,MAAM,CAAiB,GACvC,CAAC,CAqDH"}
@@ -0,0 +1,172 @@
1
+ /***************************************************************************
2
+ * XyPrissJS - Fast And Secure
3
+ *
4
+ * @author Nehonix
5
+ * @license Nehonix OSL (NOSL)
6
+ *
7
+ * Copyright (c) 2025 Nehonix. All rights reserved.
8
+ *
9
+ * This License governs the use, modification, and distribution of software
10
+ * provided by NEHONIX under its open source projects.
11
+ * NEHONIX is committed to fostering collaborative innovation while strictly
12
+ * protecting its intellectual property rights.
13
+ * Violation of any term of this License will result in immediate termination of all granted rights
14
+ * and may subject the violator to legal action.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
17
+ * INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
18
+ * AND NON-INFRINGEMENT.
19
+ * IN NO EVENT SHALL NEHONIX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
20
+ * OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THE SOFTWARE,
21
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
22
+ *
23
+ ***************************************************************************** */
24
+ // ---------------------------------------------------------------------------
25
+ // Implementation
26
+ // ---------------------------------------------------------------------------
27
+ /** Keys that must never be written to avoid prototype pollution. */
28
+ const BLOCKED_KEYS = new Set(["__proto__", "constructor", "prototype"]);
29
+ /**
30
+ * mergeWithDefaults — Smart config merge utility
31
+ *
32
+ * Unlike `{ ...defaults, ...userOptions }` (shallow spread), this utility:
33
+ *
34
+ * 1. **User-provided keys always win** — a key present in `userOptions` (even
35
+ * if its value is `false`, `null`, `0`, or `""`) is NEVER overridden by a
36
+ * default. Only truly absent keys fall back to the default.
37
+ *
38
+ * 2. **Deep merge for plain objects** — nested objects are merged recursively
39
+ * at any depth, so that `userOptions.rateLimit.max` doesn't wipe out
40
+ * `defaults.rateLimit.windowMs`.
41
+ *
42
+ * 3. **No mutation** — returns a new object; inputs are untouched.
43
+ *
44
+ * 4. **Circular reference protection** — cycles are detected and broken
45
+ * (the circular reference is replaced by `undefined`).
46
+ *
47
+ * 5. **Prototype pollution protection** — dangerous keys (`__proto__`,
48
+ * `constructor`, `prototype`) are silently ignored.
49
+ *
50
+ * 6. **Array strategy** — configurable via `options.arrayStrategy`:
51
+ * - `"replace"` (default) — user array fully replaces the default array.
52
+ * - `"concat"` — arrays are concatenated (defaults first).
53
+ * - `"merge"` — elements are merged index-by-index (plain
54
+ * objects recurse, primitives use user value).
55
+ *
56
+ * 7. **Symbol keys** — included in the merge alongside string keys.
57
+ *
58
+ * ### Example
59
+ * ```ts
60
+ * const defaults = {
61
+ * origin: true,
62
+ * credentials: false,
63
+ * maxAge: 86400,
64
+ * rateLimit: { max: 100, windowMs: 60_000 },
65
+ * };
66
+ * const user = {
67
+ * credentials: true,
68
+ * origin: ["http://localhost:5173"],
69
+ * rateLimit: { max: 50 }, // windowMs falls back to default
70
+ * };
71
+ *
72
+ * mergeWithDefaults(defaults, user);
73
+ * // → {
74
+ * // origin: ["http://localhost:5173"],
75
+ * // credentials: true,
76
+ * // maxAge: 86400,
77
+ * // rateLimit: { max: 50, windowMs: 60_000 },
78
+ * // }
79
+ * ```
80
+ */
81
+ export function mergeWithDefaults(defaults, userOptions, options = {},
82
+ /** @internal — tracks visited objects to break circular refs */
83
+ _seen = new WeakSet()) {
84
+ if (!userOptions)
85
+ return shallowClone(defaults);
86
+ // Guard against circular structures
87
+ if (_seen.has(userOptions))
88
+ return shallowClone(defaults);
89
+ _seen.add(userOptions);
90
+ const result = shallowClone(defaults);
91
+ const arrayStrategy = options.arrayStrategy ?? "replace";
92
+ // Merge both string and symbol keys from userOptions
93
+ const keys = [
94
+ ...Object.keys(userOptions),
95
+ ...Object.getOwnPropertySymbols(userOptions),
96
+ ];
97
+ for (const key of keys) {
98
+ // Prototype pollution guard (only relevant for string keys)
99
+ if (typeof key === "string" && BLOCKED_KEYS.has(key))
100
+ continue;
101
+ const userVal = userOptions[key];
102
+ const defaultVal = defaults[key];
103
+ // Honour `undefined` as "not provided" — let default win
104
+ if (userVal === undefined)
105
+ continue;
106
+ if (isPlainObject(userVal) && isPlainObject(defaultVal)) {
107
+ // Both sides are plain objects → recurse
108
+ result[key] = mergeWithDefaults(defaultVal, userVal, options, _seen);
109
+ }
110
+ else if (Array.isArray(userVal) &&
111
+ Array.isArray(defaultVal) &&
112
+ arrayStrategy !== "replace") {
113
+ result[key] = mergeArrays(defaultVal, userVal, arrayStrategy, options, _seen);
114
+ }
115
+ else {
116
+ // Primitive, array (replace strategy), class instance, null, etc.
117
+ result[key] = userVal;
118
+ }
119
+ }
120
+ return result;
121
+ }
122
+ // ---------------------------------------------------------------------------
123
+ // Helpers
124
+ // ---------------------------------------------------------------------------
125
+ /** Merges two arrays according to the chosen strategy. */
126
+ function mergeArrays(defaultArr, userArr, strategy, options, seen) {
127
+ if (strategy === "concat") {
128
+ return [...defaultArr, ...userArr];
129
+ }
130
+ // "merge" — element-wise
131
+ const length = Math.max(defaultArr.length, userArr.length);
132
+ const merged = [];
133
+ for (let i = 0; i < length; i++) {
134
+ const dItem = defaultArr[i];
135
+ const uItem = userArr[i];
136
+ if (i >= userArr.length) {
137
+ // User array is shorter — keep default element
138
+ merged.push(dItem);
139
+ }
140
+ else if (i >= defaultArr.length) {
141
+ // Default array is shorter — take user element as-is
142
+ merged.push(uItem);
143
+ }
144
+ else if (isPlainObject(uItem) && isPlainObject(dItem)) {
145
+ merged.push(mergeWithDefaults(dItem, uItem, options, seen));
146
+ }
147
+ else {
148
+ // Primitive or non-plain-object — user wins
149
+ merged.push(uItem !== undefined ? uItem : dItem);
150
+ }
151
+ }
152
+ return merged;
153
+ }
154
+ /** Shallow-clones an object preserving both string and symbol own keys. */
155
+ function shallowClone(obj) {
156
+ const clone = Object.create(Object.getPrototypeOf(obj));
157
+ for (const key of Object.getOwnPropertyNames(obj)) {
158
+ clone[key] = obj[key];
159
+ }
160
+ for (const sym of Object.getOwnPropertySymbols(obj)) {
161
+ clone[sym] = obj[sym];
162
+ }
163
+ return clone;
164
+ }
165
+ /** Returns `true` for plain `{}` objects (not arrays, not class instances). */
166
+ function isPlainObject(value) {
167
+ if (typeof value !== "object" || value === null)
168
+ return false;
169
+ const proto = Object.getPrototypeOf(value);
170
+ return proto === Object.prototype || proto === null;
171
+ }
172
+ //# sourceMappingURL=mergeWithDefaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeWithDefaults.js","sourceRoot":"","sources":["../../../src/utils/mergeWithDefaults.ts"],"names":[],"mappings":"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"}