xypriss 9.9.6 → 9.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/dist/cjs/src/index.js +2 -0
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js +47 -1
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -1
- package/dist/cjs/src/plugins/core/PermissionManager.js +4 -4
- package/dist/cjs/src/plugins/core/PermissionManager.js.map +1 -1
- package/dist/cjs/src/server/components/static/IXStaticSchem.js +30 -0
- package/dist/cjs/src/server/components/static/IXStaticSchem.js.map +1 -0
- package/dist/cjs/src/server/components/static/MetaCache.js +43 -0
- package/dist/cjs/src/server/components/static/MetaCache.js.map +1 -0
- package/dist/cjs/src/server/components/static/XStatic.js +356 -0
- package/dist/cjs/src/server/components/static/XStatic.js.map +1 -0
- package/dist/cjs/src/server/const/default.js +1 -0
- package/dist/cjs/src/server/const/default.js.map +1 -1
- package/dist/cjs/src/server/core/HttpServer.js +17 -5
- package/dist/cjs/src/server/core/HttpServer.js.map +1 -1
- package/dist/cjs/src/server/core/SendFileHandler.js +22 -129
- package/dist/cjs/src/server/core/SendFileHandler.js.map +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js +3 -0
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js.map +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildStaticArgs.js +41 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildStaticArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/index.js +1 -1
- package/dist/cjs/src/server/core/XHSCBridge/index.js.map +1 -1
- package/dist/cjs/src/server/core/XHSCProtocol.js +14 -0
- package/dist/cjs/src/server/core/XHSCProtocol.js.map +1 -1
- package/dist/cjs/src/server/core/XyprissApp.js +0 -3
- package/dist/cjs/src/server/core/XyprissApp.js.map +1 -1
- package/dist/cjs/src/server/core/http/RouteManager.js +0 -10
- package/dist/cjs/src/server/core/http/RouteManager.js.map +1 -1
- package/dist/cjs/src/server/core/request/XyRequestManager.js +1 -1
- package/dist/cjs/src/server/core/request/XyRequestManager.js.map +1 -1
- package/dist/cjs/src/utils/SecurityShield.js +56 -0
- package/dist/cjs/src/utils/SecurityShield.js.map +1 -0
- package/dist/cjs/src/xhsc/OSApi.js +100 -15
- package/dist/cjs/src/xhsc/OSApi.js.map +1 -1
- package/dist/cjs/src/xhsc/cluster/XHSCWorker.js +15 -0
- package/dist/cjs/src/xhsc/cluster/XHSCWorker.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSArchive.js +28 -17
- package/dist/cjs/src/xhsc/fs/FSArchive.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSCore.js +163 -47
- package/dist/cjs/src/xhsc/fs/FSCore.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSExtended.js +131 -39
- package/dist/cjs/src/xhsc/fs/FSExtended.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSHelpers.js +254 -47
- package/dist/cjs/src/xhsc/fs/FSHelpers.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSSearch.js +42 -18
- package/dist/cjs/src/xhsc/fs/FSSearch.js.map +1 -1
- package/dist/cjs/src/xhsc/fs/FSWatch.js +38 -15
- package/dist/cjs/src/xhsc/fs/FSWatch.js.map +1 -1
- package/dist/cjs/src/xhsc.js +5 -3
- package/dist/cjs/src/xhsc.js.map +1 -1
- package/dist/diag_config.d.ts +2 -0
- package/dist/diag_config.d.ts.map +1 -0
- package/dist/diag_config.js +13 -0
- package/dist/diag_config.js.map +1 -0
- package/dist/esm/src/index.js +1 -0
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js +47 -1
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -1
- package/dist/esm/src/plugins/core/PermissionManager.js +4 -4
- package/dist/esm/src/plugins/core/PermissionManager.js.map +1 -1
- package/dist/esm/src/server/components/static/IXStaticSchem.js +28 -0
- package/dist/esm/src/server/components/static/IXStaticSchem.js.map +1 -0
- package/dist/esm/src/server/components/static/MetaCache.js +41 -0
- package/dist/esm/src/server/components/static/MetaCache.js.map +1 -0
- package/dist/esm/src/server/components/static/XStatic.js +354 -0
- package/dist/esm/src/server/components/static/XStatic.js.map +1 -0
- package/dist/esm/src/server/const/default.js +1 -0
- package/dist/esm/src/server/const/default.js.map +1 -1
- package/dist/esm/src/server/core/HttpServer.js +17 -5
- package/dist/esm/src/server/core/HttpServer.js.map +1 -1
- package/dist/esm/src/server/core/SendFileHandler.js +22 -129
- package/dist/esm/src/server/core/SendFileHandler.js.map +1 -1
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js +3 -0
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js.map +1 -1
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildStaticArgs.js +39 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildStaticArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/index.js +1 -1
- package/dist/esm/src/server/core/XHSCBridge/index.js.map +1 -1
- package/dist/esm/src/server/core/XHSCProtocol.js +14 -0
- package/dist/esm/src/server/core/XHSCProtocol.js.map +1 -1
- package/dist/esm/src/server/core/XyprissApp.js +0 -3
- package/dist/esm/src/server/core/XyprissApp.js.map +1 -1
- package/dist/esm/src/server/core/http/RouteManager.js +0 -10
- package/dist/esm/src/server/core/http/RouteManager.js.map +1 -1
- package/dist/esm/src/server/core/request/XyRequestManager.js +1 -1
- package/dist/esm/src/server/core/request/XyRequestManager.js.map +1 -1
- package/dist/esm/src/utils/SecurityShield.js +54 -0
- package/dist/esm/src/utils/SecurityShield.js.map +1 -0
- package/dist/esm/src/xhsc/OSApi.js +100 -15
- package/dist/esm/src/xhsc/OSApi.js.map +1 -1
- package/dist/esm/src/xhsc/cluster/XHSCWorker.js +15 -0
- package/dist/esm/src/xhsc/cluster/XHSCWorker.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSArchive.js +28 -17
- package/dist/esm/src/xhsc/fs/FSArchive.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSCore.js +163 -47
- package/dist/esm/src/xhsc/fs/FSCore.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSExtended.js +131 -39
- package/dist/esm/src/xhsc/fs/FSExtended.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSHelpers.js +254 -47
- package/dist/esm/src/xhsc/fs/FSHelpers.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSSearch.js +42 -18
- package/dist/esm/src/xhsc/fs/FSSearch.js.map +1 -1
- package/dist/esm/src/xhsc/fs/FSWatch.js +38 -15
- package/dist/esm/src/xhsc/fs/FSWatch.js.map +1 -1
- package/dist/esm/src/xhsc.js +5 -3
- package/dist/esm/src/xhsc.js.map +1 -1
- package/dist/fix_docs.d.ts +2 -0
- package/dist/fix_docs.d.ts.map +1 -0
- package/dist/fix_docs.js +152 -0
- package/dist/fix_docs.js.map +1 -0
- package/dist/index.d.ts +1108 -207
- package/dist/lib.d.ts +3 -0
- package/dist/lib.d.ts.map +1 -0
- package/dist/lib.js +10 -0
- package/dist/lib.js.map +1 -0
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +3 -0
- package/dist/main.js.map +1 -0
- package/dist/plugin.d.ts +2 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +5 -0
- package/dist/plugin.js.map +1 -0
- package/dist/refactor_docs.d.ts +2 -0
- package/dist/refactor_docs.d.ts.map +1 -0
- package/dist/refactor_docs.js +48 -0
- package/dist/refactor_docs.js.map +1 -0
- package/dist/src/ConfigurationManager.d.ts +150 -0
- package/dist/src/ConfigurationManager.d.ts.map +1 -0
- package/dist/src/ConfigurationManager.js +366 -0
- package/dist/src/ConfigurationManager.js.map +1 -0
- package/dist/src/FiUp.d.ts +31 -0
- package/dist/src/FiUp.d.ts.map +1 -0
- package/dist/src/FiUp.js +79 -0
- package/dist/src/FiUp.js.map +1 -0
- package/dist/src/cache/CacheFactory.d.ts +163 -0
- package/dist/src/cache/CacheFactory.d.ts.map +1 -0
- package/dist/src/cache/CacheFactory.js +707 -0
- package/dist/src/cache/CacheFactory.js.map +1 -0
- package/dist/src/cache/index.d.ts +14 -0
- package/dist/src/cache/index.d.ts.map +1 -0
- package/dist/src/cache/index.js +13 -0
- package/dist/src/cache/index.js.map +1 -0
- package/dist/src/cache/type.d.ts +127 -0
- package/dist/src/cache/type.d.ts.map +1 -0
- package/dist/src/cache/type.js +2 -0
- package/dist/src/cache/type.js.map +1 -0
- package/dist/src/const.d.ts +138 -0
- package/dist/src/const.d.ts.map +1 -0
- package/dist/src/const.js +572 -0
- package/dist/src/const.js.map +1 -0
- package/dist/src/index.d.ts +66 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +84 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/middleware/XJsonResponseHandler.d.ts +69 -0
- package/dist/src/middleware/XJsonResponseHandler.d.ts.map +1 -0
- package/dist/src/middleware/XJsonResponseHandler.js +175 -0
- package/dist/src/middleware/XJsonResponseHandler.js.map +1 -0
- package/dist/src/middleware/XemsSessionMiddleware.d.ts +8 -0
- package/dist/src/middleware/XemsSessionMiddleware.d.ts.map +1 -0
- package/dist/src/middleware/XemsSessionMiddleware.js +110 -0
- package/dist/src/middleware/XemsSessionMiddleware.js.map +1 -0
- package/dist/src/middleware/XyPrissMiddlewareAPI.d.ts +75 -0
- package/dist/src/middleware/XyPrissMiddlewareAPI.d.ts.map +1 -0
- package/dist/src/middleware/XyPrissMiddlewareAPI.js +284 -0
- package/dist/src/middleware/XyPrissMiddlewareAPI.js.map +1 -0
- package/dist/src/middleware/built-in/BuiltInMiddleware.d.ts +99 -0
- package/dist/src/middleware/built-in/BuiltInMiddleware.d.ts.map +1 -0
- package/dist/src/middleware/built-in/BuiltInMiddleware.js +404 -0
- package/dist/src/middleware/built-in/BuiltInMiddleware.js.map +1 -0
- package/dist/src/middleware/built-in/ResponseManipulationMiddleware.d.ts +11 -0
- package/dist/src/middleware/built-in/ResponseManipulationMiddleware.d.ts.map +1 -0
- package/dist/src/middleware/built-in/ResponseManipulationMiddleware.js +164 -0
- package/dist/src/middleware/built-in/ResponseManipulationMiddleware.js.map +1 -0
- package/dist/src/middleware/built-in/security/BrowserOnlyProtector.d.ts +106 -0
- package/dist/src/middleware/built-in/security/BrowserOnlyProtector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/BrowserOnlyProtector.js +547 -0
- package/dist/src/middleware/built-in/security/BrowserOnlyProtector.js.map +1 -0
- package/dist/src/middleware/built-in/security/CommandInjectionDetector.d.ts +40 -0
- package/dist/src/middleware/built-in/security/CommandInjectionDetector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/CommandInjectionDetector.js +212 -0
- package/dist/src/middleware/built-in/security/CommandInjectionDetector.js.map +1 -0
- package/dist/src/middleware/built-in/security/HoneypotTarpit.d.ts +204 -0
- package/dist/src/middleware/built-in/security/HoneypotTarpit.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/HoneypotTarpit.js +505 -0
- package/dist/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
- package/dist/src/middleware/built-in/security/LDAPInjectionDetector.d.ts +17 -0
- package/dist/src/middleware/built-in/security/LDAPInjectionDetector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/LDAPInjectionDetector.js +93 -0
- package/dist/src/middleware/built-in/security/LDAPInjectionDetector.js.map +1 -0
- package/dist/src/middleware/built-in/security/MobileOnlyProtector.d.ts +122 -0
- package/dist/src/middleware/built-in/security/MobileOnlyProtector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/MobileOnlyProtector.js +499 -0
- package/dist/src/middleware/built-in/security/MobileOnlyProtector.js.map +1 -0
- package/dist/src/middleware/built-in/security/PathTraversalDetector.d.ts +44 -0
- package/dist/src/middleware/built-in/security/PathTraversalDetector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/PathTraversalDetector.js +209 -0
- package/dist/src/middleware/built-in/security/PathTraversalDetector.js.map +1 -0
- package/dist/src/middleware/built-in/security/RequestSignatureProtector.d.ts +128 -0
- package/dist/src/middleware/built-in/security/RequestSignatureProtector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/RequestSignatureProtector.js +463 -0
- package/dist/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -0
- package/dist/src/middleware/built-in/security/SQLInjectionDetector.d.ts +66 -0
- package/dist/src/middleware/built-in/security/SQLInjectionDetector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/SQLInjectionDetector.js +414 -0
- package/dist/src/middleware/built-in/security/SQLInjectionDetector.js.map +1 -0
- package/dist/src/middleware/built-in/security/TerminalOnlyProtector.d.ts +131 -0
- package/dist/src/middleware/built-in/security/TerminalOnlyProtector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/TerminalOnlyProtector.js +473 -0
- package/dist/src/middleware/built-in/security/TerminalOnlyProtector.js.map +1 -0
- package/dist/src/middleware/built-in/security/UriNormalizer.d.ts +277 -0
- package/dist/src/middleware/built-in/security/UriNormalizer.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/UriNormalizer.js +388 -0
- package/dist/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
- package/dist/src/middleware/built-in/security/XXEProtector.d.ts +36 -0
- package/dist/src/middleware/built-in/security/XXEProtector.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/XXEProtector.js +172 -0
- package/dist/src/middleware/built-in/security/XXEProtector.js.map +1 -0
- package/dist/src/middleware/built-in/security/XyPrissCors.d.ts +12 -0
- package/dist/src/middleware/built-in/security/XyPrissCors.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/XyPrissCors.js +94 -0
- package/dist/src/middleware/built-in/security/XyPrissCors.js.map +1 -0
- package/dist/src/middleware/built-in/security/XyPrissHPP.d.ts +7 -0
- package/dist/src/middleware/built-in/security/XyPrissHPP.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/XyPrissHPP.js +48 -0
- package/dist/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
- package/dist/src/middleware/built-in/security/index.d.ts +20 -0
- package/dist/src/middleware/built-in/security/index.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/index.js +20 -0
- package/dist/src/middleware/built-in/security/index.js.map +1 -0
- package/dist/src/middleware/built-in/security/types.d.ts +147 -0
- package/dist/src/middleware/built-in/security/types.d.ts.map +1 -0
- package/dist/src/middleware/built-in/security/types.js +5 -0
- package/dist/src/middleware/built-in/security/types.js.map +1 -0
- package/dist/src/middleware/safe-json-middleware.d.ts +57 -0
- package/dist/src/middleware/safe-json-middleware.d.ts.map +1 -0
- package/dist/src/middleware/safe-json-middleware.js +150 -0
- package/dist/src/middleware/safe-json-middleware.js.map +1 -0
- package/dist/src/middleware/security-middleware.d.ts +147 -0
- package/dist/src/middleware/security-middleware.d.ts.map +1 -0
- package/dist/src/middleware/security-middleware.js +1026 -0
- package/dist/src/middleware/security-middleware.js.map +1 -0
- package/dist/src/plugins/ServerPluginManager.d.ts +43 -0
- package/dist/src/plugins/ServerPluginManager.d.ts.map +1 -0
- package/dist/src/plugins/ServerPluginManager.js +148 -0
- package/dist/src/plugins/ServerPluginManager.js.map +1 -0
- package/dist/src/plugins/api/PluginAPI.d.ts +108 -0
- package/dist/src/plugins/api/PluginAPI.d.ts.map +1 -0
- package/dist/src/plugins/api/PluginAPI.js +253 -0
- package/dist/src/plugins/api/PluginAPI.js.map +1 -0
- package/dist/src/plugins/builtin/RouteOptimizationPlugin.d.ts +111 -0
- package/dist/src/plugins/builtin/RouteOptimizationPlugin.d.ts.map +1 -0
- package/dist/src/plugins/builtin/RouteOptimizationPlugin.js +416 -0
- package/dist/src/plugins/builtin/RouteOptimizationPlugin.js.map +1 -0
- package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.d.ts +136 -0
- package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.d.ts.map +1 -0
- package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js +566 -0
- package/dist/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js.map +1 -0
- package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.d.ts +33 -0
- package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.d.ts.map +1 -0
- package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.js +246 -0
- package/dist/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -0
- package/dist/src/plugins/builtin/xems/XemsPlugin.d.ts +169 -0
- package/dist/src/plugins/builtin/xems/XemsPlugin.d.ts.map +1 -0
- package/dist/src/plugins/builtin/xems/XemsPlugin.js +402 -0
- package/dist/src/plugins/builtin/xems/XemsPlugin.js.map +1 -0
- package/dist/src/plugins/builtin/xems/index.d.ts +2 -0
- package/dist/src/plugins/builtin/xems/index.d.ts.map +1 -0
- package/dist/src/plugins/builtin/xems/index.js +2 -0
- package/dist/src/plugins/builtin/xems/index.js.map +1 -0
- package/dist/src/plugins/const/OFFICIAL_PLUGINS.d.ts +2 -0
- package/dist/src/plugins/const/OFFICIAL_PLUGINS.d.ts.map +1 -0
- package/dist/src/plugins/const/OFFICIAL_PLUGINS.js +6 -0
- package/dist/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -0
- package/dist/src/plugins/const/PluginHookIds.d.ts +44 -0
- package/dist/src/plugins/const/PluginHookIds.d.ts.map +1 -0
- package/dist/src/plugins/const/PluginHookIds.js +185 -0
- package/dist/src/plugins/const/PluginHookIds.js.map +1 -0
- package/dist/src/plugins/const/PluginHookMetadataJson.d.ts +2 -0
- package/dist/src/plugins/const/PluginHookMetadataJson.d.ts.map +1 -0
- package/dist/src/plugins/const/PluginHookMetadataJson.js +6 -0
- package/dist/src/plugins/const/PluginHookMetadataJson.js.map +1 -0
- package/dist/src/plugins/const/XyprissTempDir.d.ts +30 -0
- package/dist/src/plugins/const/XyprissTempDir.d.ts.map +1 -0
- package/dist/src/plugins/const/XyprissTempDir.js +73 -0
- package/dist/src/plugins/const/XyprissTempDir.js.map +1 -0
- package/dist/src/plugins/core/PermissionManager.d.ts +46 -0
- package/dist/src/plugins/core/PermissionManager.d.ts.map +1 -0
- package/dist/src/plugins/core/PermissionManager.js +232 -0
- package/dist/src/plugins/core/PermissionManager.js.map +1 -0
- package/dist/src/plugins/core/XPluginManager.d.ts +110 -0
- package/dist/src/plugins/core/XPluginManager.d.ts.map +1 -0
- package/dist/src/plugins/core/XPluginManager.js +212 -0
- package/dist/src/plugins/core/XPluginManager.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginHookRunner.d.ts +50 -0
- package/dist/src/plugins/core/manager/PluginHookRunner.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginHookRunner.js +104 -0
- package/dist/src/plugins/core/manager/PluginHookRunner.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginInterceptor.d.ts +48 -0
- package/dist/src/plugins/core/manager/PluginInterceptor.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginInterceptor.js +196 -0
- package/dist/src/plugins/core/manager/PluginInterceptor.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginLoader.d.ts +59 -0
- package/dist/src/plugins/core/manager/PluginLoader.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginLoader.js +207 -0
- package/dist/src/plugins/core/manager/PluginLoader.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginManagement.d.ts +36 -0
- package/dist/src/plugins/core/manager/PluginManagement.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginManagement.js +132 -0
- package/dist/src/plugins/core/manager/PluginManagement.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginRegistry.d.ts +47 -0
- package/dist/src/plugins/core/manager/PluginRegistry.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginRegistry.js +96 -0
- package/dist/src/plugins/core/manager/PluginRegistry.js.map +1 -0
- package/dist/src/plugins/core/manager/PluginSecurity.d.ts +63 -0
- package/dist/src/plugins/core/manager/PluginSecurity.d.ts.map +1 -0
- package/dist/src/plugins/core/manager/PluginSecurity.js +417 -0
- package/dist/src/plugins/core/manager/PluginSecurity.js.map +1 -0
- package/dist/src/plugins/route-optimization-plugin.d.ts +111 -0
- package/dist/src/plugins/route-optimization-plugin.d.ts.map +1 -0
- package/dist/src/plugins/route-optimization-plugin.js +416 -0
- package/dist/src/plugins/route-optimization-plugin.js.map +1 -0
- package/dist/src/plugins/types/PluginPermissions.d.ts +26 -0
- package/dist/src/plugins/types/PluginPermissions.d.ts.map +1 -0
- package/dist/src/plugins/types/PluginPermissions.js +10 -0
- package/dist/src/plugins/types/PluginPermissions.js.map +1 -0
- package/dist/src/plugins/types/PluginTypes.d.ts +205 -0
- package/dist/src/plugins/types/PluginTypes.d.ts.map +1 -0
- package/dist/src/plugins/types/PluginTypes.js +30 -0
- package/dist/src/plugins/types/PluginTypes.js.map +1 -0
- package/dist/src/plugins/types/index.d.ts +79 -0
- package/dist/src/plugins/types/index.d.ts.map +1 -0
- package/dist/src/plugins/types/index.js +2 -0
- package/dist/src/plugins/types/index.js.map +1 -0
- package/dist/src/quick-start.d.ts +9 -0
- package/dist/src/quick-start.d.ts.map +1 -0
- package/dist/src/quick-start.js +26 -0
- package/dist/src/quick-start.js.map +1 -0
- package/dist/src/schemas/plugingSchema.d.ts +18 -0
- package/dist/src/schemas/plugingSchema.d.ts.map +1 -0
- package/dist/src/schemas/plugingSchema.js +40 -0
- package/dist/src/schemas/plugingSchema.js.map +1 -0
- package/dist/src/server/FastServer/ComponentManager.d.ts +32 -0
- package/dist/src/server/FastServer/ComponentManager.d.ts.map +1 -0
- package/dist/src/server/FastServer/ComponentManager.js +89 -0
- package/dist/src/server/FastServer/ComponentManager.js.map +1 -0
- package/dist/src/server/FastServer/LogTracingMethods.d.ts +9 -0
- package/dist/src/server/FastServer/LogTracingMethods.d.ts.map +1 -0
- package/dist/src/server/FastServer/LogTracingMethods.js +31 -0
- package/dist/src/server/FastServer/LogTracingMethods.js.map +1 -0
- package/dist/src/server/FastServer/MiddlewareManager.d.ts +17 -0
- package/dist/src/server/FastServer/MiddlewareManager.d.ts.map +1 -0
- package/dist/src/server/FastServer/MiddlewareManager.js +57 -0
- package/dist/src/server/FastServer/MiddlewareManager.js.map +1 -0
- package/dist/src/server/FastServer/ShutdownManager.d.ts +16 -0
- package/dist/src/server/FastServer/ShutdownManager.d.ts.map +1 -0
- package/dist/src/server/FastServer/ShutdownManager.js +70 -0
- package/dist/src/server/FastServer/ShutdownManager.js.map +1 -0
- package/dist/src/server/FastServer/UploadManager.d.ts +13 -0
- package/dist/src/server/FastServer/UploadManager.d.ts.map +1 -0
- package/dist/src/server/FastServer/UploadManager.js +67 -0
- package/dist/src/server/FastServer/UploadManager.js.map +1 -0
- package/dist/src/server/FastServer/index.d.ts +51 -0
- package/dist/src/server/FastServer/index.d.ts.map +1 -0
- package/dist/src/server/FastServer/index.js +222 -0
- package/dist/src/server/FastServer/index.js.map +1 -0
- package/dist/src/server/ServerFactory.d.ts +94 -0
- package/dist/src/server/ServerFactory.d.ts.map +1 -0
- package/dist/src/server/ServerFactory.js +129 -0
- package/dist/src/server/ServerFactory.js.map +1 -0
- package/dist/src/server/components/fastapi/CacheManager.d.ts +64 -0
- package/dist/src/server/components/fastapi/CacheManager.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/CacheManager.js +212 -0
- package/dist/src/server/components/fastapi/CacheManager.js.map +1 -0
- package/dist/src/server/components/fastapi/MonitoringManager.d.ts +43 -0
- package/dist/src/server/components/fastapi/MonitoringManager.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/MonitoringManager.js +186 -0
- package/dist/src/server/components/fastapi/MonitoringManager.js.map +1 -0
- package/dist/src/server/components/fastapi/RedirectManager.d.ts +112 -0
- package/dist/src/server/components/fastapi/RedirectManager.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/RedirectManager.js +432 -0
- package/dist/src/server/components/fastapi/RedirectManager.js.map +1 -0
- package/dist/src/server/components/fastapi/RequestProcessor.d.ts +34 -0
- package/dist/src/server/components/fastapi/RequestProcessor.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/RequestProcessor.js +177 -0
- package/dist/src/server/components/fastapi/RequestProcessor.js.map +1 -0
- package/dist/src/server/components/fastapi/RouteManager.d.ts +43 -0
- package/dist/src/server/components/fastapi/RouteManager.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/RouteManager.js +118 -0
- package/dist/src/server/components/fastapi/RouteManager.js.map +1 -0
- package/dist/src/server/components/fastapi/WorkerPoolComponent.d.ts +29 -0
- package/dist/src/server/components/fastapi/WorkerPoolComponent.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/WorkerPoolComponent.js +77 -0
- package/dist/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
- package/dist/src/server/components/fastapi/console/ConsoleInterceptor.d.ts +54 -0
- package/dist/src/server/components/fastapi/console/ConsoleInterceptor.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/console/ConsoleInterceptor.js +464 -0
- package/dist/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
- package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.d.ts +19 -0
- package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.js +22 -0
- package/dist/src/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
- package/dist/src/server/components/fastapi/console/types.d.ts +115 -0
- package/dist/src/server/components/fastapi/console/types.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/console/types.js +31 -0
- package/dist/src/server/components/fastapi/console/types.js.map +1 -0
- package/dist/src/server/components/fastapi/templates/redirectTemp.d.ts +6 -0
- package/dist/src/server/components/fastapi/templates/redirectTemp.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/templates/redirectTemp.js +98 -0
- package/dist/src/server/components/fastapi/templates/redirectTemp.js.map +1 -0
- package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.d.ts +96 -0
- package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.js +348 -0
- package/dist/src/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
- package/dist/src/server/components/fastapi/upload/FileUploadManager.d.ts +45 -0
- package/dist/src/server/components/fastapi/upload/FileUploadManager.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/upload/FileUploadManager.js +234 -0
- package/dist/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
- package/dist/src/server/components/fastapi/upload/file-upload.d.ts +80 -0
- package/dist/src/server/components/fastapi/upload/file-upload.d.ts.map +1 -0
- package/dist/src/server/components/fastapi/upload/file-upload.js +246 -0
- package/dist/src/server/components/fastapi/upload/file-upload.js.map +1 -0
- package/dist/src/server/components/lifecycle/slcm.type.d.ts +38 -0
- package/dist/src/server/components/lifecycle/slcm.type.d.ts.map +1 -0
- package/dist/src/server/components/lifecycle/slcm.type.js +5 -0
- package/dist/src/server/components/lifecycle/slcm.type.js.map +1 -0
- package/dist/src/server/components/multi-server/MultiServerApp.d.ts +137 -0
- package/dist/src/server/components/multi-server/MultiServerApp.d.ts.map +1 -0
- package/dist/src/server/components/multi-server/MultiServerApp.js +573 -0
- package/dist/src/server/components/multi-server/MultiServerApp.js.map +1 -0
- package/dist/src/server/components/multi-server/MultiServerManager.d.ts +58 -0
- package/dist/src/server/components/multi-server/MultiServerManager.d.ts.map +1 -0
- package/dist/src/server/components/multi-server/MultiServerManager.js +365 -0
- package/dist/src/server/components/multi-server/MultiServerManager.js.map +1 -0
- package/dist/src/server/components/static/XStatic.d.ts +42 -0
- package/dist/src/server/components/static/XStatic.d.ts.map +1 -0
- package/dist/src/server/components/static/XStatic.js +125 -0
- package/dist/src/server/components/static/XStatic.js.map +1 -0
- package/dist/src/server/conf/networkConnectionConf.d.ts +20 -0
- package/dist/src/server/conf/networkConnectionConf.d.ts.map +1 -0
- package/dist/src/server/conf/networkConnectionConf.js +21 -0
- package/dist/src/server/conf/networkConnectionConf.js.map +1 -0
- package/dist/src/server/conf/proxyConfig.d.ts +24 -0
- package/dist/src/server/conf/proxyConfig.d.ts.map +1 -0
- package/dist/src/server/conf/proxyConfig.js +19 -0
- package/dist/src/server/conf/proxyConfig.js.map +1 -0
- package/dist/src/server/conf/rateLimitConfig.d.ts +29 -0
- package/dist/src/server/conf/rateLimitConfig.d.ts.map +1 -0
- package/dist/src/server/conf/rateLimitConfig.js +46 -0
- package/dist/src/server/conf/rateLimitConfig.js.map +1 -0
- package/dist/src/server/const/ExecutionPredictor_EP.const.d.ts +48 -0
- package/dist/src/server/const/ExecutionPredictor_EP.const.d.ts.map +1 -0
- package/dist/src/server/const/ExecutionPredictor_EP.const.js +68 -0
- package/dist/src/server/const/ExecutionPredictor_EP.const.js.map +1 -0
- package/dist/src/server/const/MIME_MAP.d.ts +2 -0
- package/dist/src/server/const/MIME_MAP.d.ts.map +1 -0
- package/dist/src/server/const/MIME_MAP.js +419 -0
- package/dist/src/server/const/MIME_MAP.js.map +1 -0
- package/dist/src/server/const/XHSC_SIGNATURE.d.ts +2 -0
- package/dist/src/server/const/XHSC_SIGNATURE.d.ts.map +1 -0
- package/dist/src/server/const/XHSC_SIGNATURE.js +3 -0
- package/dist/src/server/const/XHSC_SIGNATURE.js.map +1 -0
- package/dist/src/server/const/XRUNTIME-HEADER.d.ts +2 -0
- package/dist/src/server/const/XRUNTIME-HEADER.d.ts.map +1 -0
- package/dist/src/server/const/XRUNTIME-HEADER.js +2 -0
- package/dist/src/server/const/XRUNTIME-HEADER.js.map +1 -0
- package/dist/src/server/const/default.d.ts +10 -0
- package/dist/src/server/const/default.d.ts.map +1 -0
- package/dist/src/server/const/default.js +335 -0
- package/dist/src/server/const/default.js.map +1 -0
- package/dist/src/server/const/http.d.ts +13 -0
- package/dist/src/server/const/http.d.ts.map +1 -0
- package/dist/src/server/const/http.js +25 -0
- package/dist/src/server/const/http.js.map +1 -0
- package/dist/src/server/const/internalFlags.d.ts +7 -0
- package/dist/src/server/const/internalFlags.d.ts.map +1 -0
- package/dist/src/server/const/internalFlags.js +7 -0
- package/dist/src/server/const/internalFlags.js.map +1 -0
- package/dist/src/server/core/HttpServer.d.ts +62 -0
- package/dist/src/server/core/HttpServer.d.ts.map +1 -0
- package/dist/src/server/core/HttpServer.js +251 -0
- package/dist/src/server/core/HttpServer.js.map +1 -0
- package/dist/src/server/core/RequestApp.d.ts +42 -0
- package/dist/src/server/core/RequestApp.d.ts.map +1 -0
- package/dist/src/server/core/RequestApp.js +91 -0
- package/dist/src/server/core/RequestApp.js.map +1 -0
- package/dist/src/server/core/RequestEnhancer.d.ts +174 -0
- package/dist/src/server/core/RequestEnhancer.d.ts.map +1 -0
- package/dist/src/server/core/RequestEnhancer.js +330 -0
- package/dist/src/server/core/RequestEnhancer.js.map +1 -0
- package/dist/src/server/core/ResponseEnhancer.d.ts +323 -0
- package/dist/src/server/core/ResponseEnhancer.d.ts.map +1 -0
- package/dist/src/server/core/ResponseEnhancer.js +578 -0
- package/dist/src/server/core/ResponseEnhancer.js.map +1 -0
- package/dist/src/server/core/SendFileHandler.d.ts +12 -0
- package/dist/src/server/core/SendFileHandler.d.ts.map +1 -0
- package/dist/src/server/core/SendFileHandler.js +179 -0
- package/dist/src/server/core/SendFileHandler.js.map +1 -0
- package/dist/src/server/core/StartupProcessor.d.ts +35 -0
- package/dist/src/server/core/StartupProcessor.d.ts.map +1 -0
- package/dist/src/server/core/StartupProcessor.js +114 -0
- package/dist/src/server/core/StartupProcessor.js.map +1 -0
- package/dist/src/server/core/VirtualServer.d.ts +18 -0
- package/dist/src/server/core/VirtualServer.d.ts.map +1 -0
- package/dist/src/server/core/VirtualServer.js +28 -0
- package/dist/src/server/core/VirtualServer.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/EngineManager.d.ts +17 -0
- package/dist/src/server/core/XHSCBridge/EngineManager.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/EngineManager.js +165 -0
- package/dist/src/server/core/XHSCBridge/EngineManager.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/LogProcessor.d.ts +20 -0
- package/dist/src/server/core/XHSCBridge/LogProcessor.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/LogProcessor.js +116 -0
- package/dist/src/server/core/XHSCBridge/LogProcessor.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/SocketManager.d.ts +20 -0
- package/dist/src/server/core/XHSCBridge/SocketManager.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/SocketManager.js +83 -0
- package/dist/src/server/core/XHSCBridge/SocketManager.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.js +66 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildClusterArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.js +33 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildCoreArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js +49 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js +41 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.js +31 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildRequestArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +46 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.d.ts +5 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.js +37 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildStaticArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.js +24 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildUploadArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.d.ts +2 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js +18 -0
- package/dist/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js.map +1 -0
- package/dist/src/server/core/XHSCBridge/index.d.ts +28 -0
- package/dist/src/server/core/XHSCBridge/index.d.ts.map +1 -0
- package/dist/src/server/core/XHSCBridge/index.js +94 -0
- package/dist/src/server/core/XHSCBridge/index.js.map +1 -0
- package/dist/src/server/core/XHSCProtocol.d.ts +100 -0
- package/dist/src/server/core/XHSCProtocol.d.ts.map +1 -0
- package/dist/src/server/core/XHSCProtocol.js +423 -0
- package/dist/src/server/core/XHSCProtocol.js.map +1 -0
- package/dist/src/server/core/XyDiagnosticsManager.d.ts +28 -0
- package/dist/src/server/core/XyDiagnosticsManager.d.ts.map +1 -0
- package/dist/src/server/core/XyDiagnosticsManager.js +74 -0
- package/dist/src/server/core/XyDiagnosticsManager.js.map +1 -0
- package/dist/src/server/core/XyLifecycleManager.d.ts +51 -0
- package/dist/src/server/core/XyLifecycleManager.d.ts.map +1 -0
- package/dist/src/server/core/XyLifecycleManager.js +235 -0
- package/dist/src/server/core/XyLifecycleManager.js.map +1 -0
- package/dist/src/server/core/XyModuleManager.d.ts +40 -0
- package/dist/src/server/core/XyModuleManager.d.ts.map +1 -0
- package/dist/src/server/core/XyModuleManager.js +124 -0
- package/dist/src/server/core/XyModuleManager.js.map +1 -0
- package/dist/src/server/core/XyRoutingManager.d.ts +42 -0
- package/dist/src/server/core/XyRoutingManager.d.ts.map +1 -0
- package/dist/src/server/core/XyRoutingManager.js +198 -0
- package/dist/src/server/core/XyRoutingManager.js.map +1 -0
- package/dist/src/server/core/XyServerCreator.d.ts +22 -0
- package/dist/src/server/core/XyServerCreator.d.ts.map +1 -0
- package/dist/src/server/core/XyServerCreator.js +117 -0
- package/dist/src/server/core/XyServerCreator.js.map +1 -0
- package/dist/src/server/core/XyprissApp.d.ts +208 -0
- package/dist/src/server/core/XyprissApp.d.ts.map +1 -0
- package/dist/src/server/core/XyprissApp.js +575 -0
- package/dist/src/server/core/XyprissApp.js.map +1 -0
- package/dist/src/server/core/http/BodyParser.d.ts +8 -0
- package/dist/src/server/core/http/BodyParser.d.ts.map +1 -0
- package/dist/src/server/core/http/BodyParser.js +43 -0
- package/dist/src/server/core/http/BodyParser.js.map +1 -0
- package/dist/src/server/core/http/HttpErrorHandler.d.ts +17 -0
- package/dist/src/server/core/http/HttpErrorHandler.d.ts.map +1 -0
- package/dist/src/server/core/http/HttpErrorHandler.js +65 -0
- package/dist/src/server/core/http/HttpErrorHandler.js.map +1 -0
- package/dist/src/server/core/http/RequestForwarder.d.ts +11 -0
- package/dist/src/server/core/http/RequestForwarder.d.ts.map +1 -0
- package/dist/src/server/core/http/RequestForwarder.js +41 -0
- package/dist/src/server/core/http/RequestForwarder.js.map +1 -0
- package/dist/src/server/core/http/RouteManager.d.ts +17 -0
- package/dist/src/server/core/http/RouteManager.d.ts.map +1 -0
- package/dist/src/server/core/http/RouteManager.js +113 -0
- package/dist/src/server/core/http/RouteManager.js.map +1 -0
- package/dist/src/server/core/request/XyRequestManager.d.ts +57 -0
- package/dist/src/server/core/request/XyRequestManager.d.ts.map +1 -0
- package/dist/src/server/core/request/XyRequestManager.js +226 -0
- package/dist/src/server/core/request/XyRequestManager.js.map +1 -0
- package/dist/src/server/handlers/NotFoundHandler.d.ts +25 -0
- package/dist/src/server/handlers/NotFoundHandler.d.ts.map +1 -0
- package/dist/src/server/handlers/NotFoundHandler.js +81 -0
- package/dist/src/server/handlers/NotFoundHandler.js.map +1 -0
- package/dist/src/server/handlers/templates/notFoundTemplate.d.ts +3 -0
- package/dist/src/server/handlers/templates/notFoundTemplate.d.ts.map +1 -0
- package/dist/src/server/handlers/templates/notFoundTemplate.js +651 -0
- package/dist/src/server/handlers/templates/notFoundTemplate.js.map +1 -0
- package/dist/src/server/middleware/MiddlewareManager.d.ts +64 -0
- package/dist/src/server/middleware/MiddlewareManager.d.ts.map +1 -0
- package/dist/src/server/middleware/MiddlewareManager.js +200 -0
- package/dist/src/server/middleware/MiddlewareManager.js.map +1 -0
- package/dist/src/server/routing/Router.d.ts +57 -0
- package/dist/src/server/routing/Router.d.ts.map +1 -0
- package/dist/src/server/routing/Router.js +173 -0
- package/dist/src/server/routing/Router.js.map +1 -0
- package/dist/src/server/routing/index.d.ts +16 -0
- package/dist/src/server/routing/index.d.ts.map +1 -0
- package/dist/src/server/routing/index.js +7 -0
- package/dist/src/server/routing/index.js.map +1 -0
- package/dist/src/server/routing/modules/XyGuard.d.ts +34 -0
- package/dist/src/server/routing/modules/XyGuard.d.ts.map +1 -0
- package/dist/src/server/routing/modules/XyGuard.js +30 -0
- package/dist/src/server/routing/modules/XyGuard.js.map +1 -0
- package/dist/src/server/routing/modules/constants.d.ts +5 -0
- package/dist/src/server/routing/modules/constants.d.ts.map +1 -0
- package/dist/src/server/routing/modules/constants.js +13 -0
- package/dist/src/server/routing/modules/constants.js.map +1 -0
- package/dist/src/server/routing/modules/groups.d.ts +14 -0
- package/dist/src/server/routing/modules/groups.d.ts.map +1 -0
- package/dist/src/server/routing/modules/groups.js +55 -0
- package/dist/src/server/routing/modules/groups.js.map +1 -0
- package/dist/src/server/routing/modules/helpers.d.ts +19 -0
- package/dist/src/server/routing/modules/helpers.d.ts.map +1 -0
- package/dist/src/server/routing/modules/helpers.js +164 -0
- package/dist/src/server/routing/modules/helpers.js.map +1 -0
- package/dist/src/server/routing/modules/middleware.d.ts +20 -0
- package/dist/src/server/routing/modules/middleware.d.ts.map +1 -0
- package/dist/src/server/routing/modules/middleware.js +185 -0
- package/dist/src/server/routing/modules/middleware.js.map +1 -0
- package/dist/src/server/routing/modules/path.d.ts +33 -0
- package/dist/src/server/routing/modules/path.d.ts.map +1 -0
- package/dist/src/server/routing/modules/path.js +125 -0
- package/dist/src/server/routing/modules/path.js.map +1 -0
- package/dist/src/server/routing/modules/registry.d.ts +29 -0
- package/dist/src/server/routing/modules/registry.d.ts.map +1 -0
- package/dist/src/server/routing/modules/registry.js +159 -0
- package/dist/src/server/routing/modules/registry.js.map +1 -0
- package/dist/src/server/routing/modules/types.d.ts +143 -0
- package/dist/src/server/routing/modules/types.d.ts.map +1 -0
- package/dist/src/server/routing/modules/types.js +2 -0
- package/dist/src/server/routing/modules/types.js.map +1 -0
- package/dist/src/server/service/Reload/exec/ExecutableBuilder.d.ts +67 -0
- package/dist/src/server/service/Reload/exec/ExecutableBuilder.d.ts.map +1 -0
- package/dist/src/server/service/Reload/exec/ExecutableBuilder.js +337 -0
- package/dist/src/server/service/Reload/exec/ExecutableBuilder.js.map +1 -0
- package/dist/src/server/service/Reload/exec/TypeScriptExecutor.d.ts +69 -0
- package/dist/src/server/service/Reload/exec/TypeScriptExecutor.d.ts.map +1 -0
- package/dist/src/server/service/Reload/exec/TypeScriptExecutor.js +337 -0
- package/dist/src/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
- package/dist/src/server/service/Reload/exec/build-executable.d.ts +9 -0
- package/dist/src/server/service/Reload/exec/build-executable.d.ts.map +1 -0
- package/dist/src/server/service/Reload/exec/build-executable.js +44 -0
- package/dist/src/server/service/Reload/exec/build-executable.js.map +1 -0
- package/dist/src/server/service/Reload/types/TSExecutor.type.d.ts +18 -0
- package/dist/src/server/service/Reload/types/TSExecutor.type.d.ts.map +1 -0
- package/dist/src/server/service/Reload/types/TSExecutor.type.js +2 -0
- package/dist/src/server/service/Reload/types/TSExecutor.type.js.map +1 -0
- package/dist/src/server/service/Reload/types/hotreloader.d.ts +21 -0
- package/dist/src/server/service/Reload/types/hotreloader.d.ts.map +1 -0
- package/dist/src/server/service/Reload/types/hotreloader.js +2 -0
- package/dist/src/server/service/Reload/types/hotreloader.js.map +1 -0
- package/dist/src/server/service/Reload/types/quickdev.type.d.ts +30 -0
- package/dist/src/server/service/Reload/types/quickdev.type.d.ts.map +1 -0
- package/dist/src/server/service/Reload/types/quickdev.type.js +2 -0
- package/dist/src/server/service/Reload/types/quickdev.type.js.map +1 -0
- package/dist/src/server/static/XStatic.d.ts +60 -0
- package/dist/src/server/static/XStatic.d.ts.map +1 -0
- package/dist/src/server/static/XStatic.js +126 -0
- package/dist/src/server/static/XStatic.js.map +1 -0
- package/dist/src/server/utils/ConfigLoader.d.ts +41 -0
- package/dist/src/server/utils/ConfigLoader.d.ts.map +1 -0
- package/dist/src/server/utils/ConfigLoader.js +244 -0
- package/dist/src/server/utils/ConfigLoader.js.map +1 -0
- package/dist/src/server/utils/PortManager.d.ts +61 -0
- package/dist/src/server/utils/PortManager.d.ts.map +1 -0
- package/dist/src/server/utils/PortManager.js +245 -0
- package/dist/src/server/utils/PortManager.js.map +1 -0
- package/dist/src/server/utils/WorkerModeHandler.d.ts +7 -0
- package/dist/src/server/utils/WorkerModeHandler.d.ts.map +1 -0
- package/dist/src/server/utils/WorkerModeHandler.js +60 -0
- package/dist/src/server/utils/WorkerModeHandler.js.map +1 -0
- package/dist/src/server/utils/es_modules.d.ts +3 -0
- package/dist/src/server/utils/es_modules.d.ts.map +1 -0
- package/dist/src/server/utils/es_modules.js +5 -0
- package/dist/src/server/utils/es_modules.js.map +1 -0
- package/dist/src/server/utils/forceClosePort.d.ts +100 -0
- package/dist/src/server/utils/forceClosePort.d.ts.map +1 -0
- package/dist/src/server/utils/forceClosePort.js +328 -0
- package/dist/src/server/utils/forceClosePort.js.map +1 -0
- package/dist/src/server/utils/internalFlagsFunctions.d.ts +71 -0
- package/dist/src/server/utils/internalFlagsFunctions.d.ts.map +1 -0
- package/dist/src/server/utils/internalFlagsFunctions.js +150 -0
- package/dist/src/server/utils/internalFlagsFunctions.js.map +1 -0
- package/dist/src/server/utils/shouldRegisterRouteOnServer.d.ts +6 -0
- package/dist/src/server/utils/shouldRegisterRouteOnServer.d.ts.map +1 -0
- package/dist/src/server/utils/shouldRegisterRouteOnServer.js +30 -0
- package/dist/src/server/utils/shouldRegisterRouteOnServer.js.map +1 -0
- package/dist/src/server/utils/wildcardMatcher.d.ts +30 -0
- package/dist/src/server/utils/wildcardMatcher.d.ts.map +1 -0
- package/dist/src/server/utils/wildcardMatcher.js +220 -0
- package/dist/src/server/utils/wildcardMatcher.js.map +1 -0
- package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.d.ts +3 -0
- package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.d.ts.map +1 -0
- package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.js +64 -0
- package/dist/src/shared/logger/DEFAULT_LOGGER_CONFIG.js.map +1 -0
- package/dist/src/shared/logger/DEFAULT_PALETTE.d.ts +16 -0
- package/dist/src/shared/logger/DEFAULT_PALETTE.d.ts.map +1 -0
- package/dist/src/shared/logger/DEFAULT_PALETTE.js +16 -0
- package/dist/src/shared/logger/DEFAULT_PALETTE.js.map +1 -0
- package/dist/src/shared/logger/Logger.d.ts +95 -0
- package/dist/src/shared/logger/Logger.d.ts.map +1 -0
- package/dist/src/shared/logger/Logger.js +576 -0
- package/dist/src/shared/logger/Logger.js.map +1 -0
- package/dist/src/shared/logger/index.d.ts +2 -0
- package/dist/src/shared/logger/index.d.ts.map +1 -0
- package/dist/src/shared/logger/index.js +2 -0
- package/dist/src/shared/logger/index.js.map +1 -0
- package/dist/src/shared/logger/quickLogger.d.ts +19 -0
- package/dist/src/shared/logger/quickLogger.d.ts.map +1 -0
- package/dist/src/shared/logger/quickLogger.js +162 -0
- package/dist/src/shared/logger/quickLogger.js.map +1 -0
- package/dist/src/shared/types/index.d.ts +2 -0
- package/dist/src/shared/types/index.d.ts.map +1 -0
- package/dist/src/shared/types/index.js +2 -0
- package/dist/src/shared/types/index.js.map +1 -0
- package/dist/src/shared/types/logger.type.d.ts +46 -0
- package/dist/src/shared/types/logger.type.d.ts.map +1 -0
- package/dist/src/shared/types/logger.type.js +42 -0
- package/dist/src/shared/types/logger.type.js.map +1 -0
- package/dist/src/types/CpuMon.t.d.ts +43 -0
- package/dist/src/types/CpuMon.t.d.ts.map +1 -0
- package/dist/src/types/CpuMon.t.js +2 -0
- package/dist/src/types/CpuMon.t.js.map +1 -0
- package/dist/src/types/ExecutionPredictor.type.d.ts +25 -0
- package/dist/src/types/ExecutionPredictor.type.d.ts.map +1 -0
- package/dist/src/types/ExecutionPredictor.type.js +2 -0
- package/dist/src/types/ExecutionPredictor.type.js.map +1 -0
- package/dist/src/types/FiUp.type.d.ts +50 -0
- package/dist/src/types/FiUp.type.d.ts.map +1 -0
- package/dist/src/types/FiUp.type.js +2 -0
- package/dist/src/types/FiUp.type.js.map +1 -0
- package/dist/src/types/NotFoundConfig.d.ts +39 -0
- package/dist/src/types/NotFoundConfig.d.ts.map +1 -0
- package/dist/src/types/NotFoundConfig.js +81 -0
- package/dist/src/types/NotFoundConfig.js.map +1 -0
- package/dist/src/types/ReqPreCompiler.type.d.ts +49 -0
- package/dist/src/types/ReqPreCompiler.type.d.ts.map +1 -0
- package/dist/src/types/ReqPreCompiler.type.js +2 -0
- package/dist/src/types/ReqPreCompiler.type.js.map +1 -0
- package/dist/src/types/ServerOptions.d.ts +861 -0
- package/dist/src/types/ServerOptions.d.ts.map +1 -0
- package/dist/src/types/ServerOptions.js +4 -0
- package/dist/src/types/ServerOptions.js.map +1 -0
- package/dist/src/types/XyApp.type.d.ts +610 -0
- package/dist/src/types/XyApp.type.d.ts.map +1 -0
- package/dist/src/types/XyApp.type.js +2 -0
- package/dist/src/types/XyApp.type.js.map +1 -0
- package/dist/src/types/XyPrissRouter.types.d.ts +23 -0
- package/dist/src/types/XyPrissRouter.types.d.ts.map +1 -0
- package/dist/src/types/XyPrissRouter.types.js +2 -0
- package/dist/src/types/XyPrissRouter.types.js.map +1 -0
- package/dist/src/types/bun_cluster.t.d.ts +41 -0
- package/dist/src/types/bun_cluster.t.d.ts.map +1 -0
- package/dist/src/types/bun_cluster.t.js +2 -0
- package/dist/src/types/bun_cluster.t.js.map +1 -0
- package/dist/src/types/cluster.ipc.t.d.ts +141 -0
- package/dist/src/types/cluster.ipc.t.d.ts.map +1 -0
- package/dist/src/types/cluster.ipc.t.js +88 -0
- package/dist/src/types/cluster.ipc.t.js.map +1 -0
- package/dist/src/types/components/CacheManager.type.d.ts +8 -0
- package/dist/src/types/components/CacheManager.type.d.ts.map +1 -0
- package/dist/src/types/components/CacheManager.type.js +2 -0
- package/dist/src/types/components/CacheManager.type.js.map +1 -0
- package/dist/src/types/components/MonitoringM.type.d.ts +10 -0
- package/dist/src/types/components/MonitoringM.type.d.ts.map +1 -0
- package/dist/src/types/components/MonitoringM.type.js +2 -0
- package/dist/src/types/components/MonitoringM.type.js.map +1 -0
- package/dist/src/types/components/PlugingM.type.d.ts +8 -0
- package/dist/src/types/components/PlugingM.type.d.ts.map +1 -0
- package/dist/src/types/components/PlugingM.type.js +2 -0
- package/dist/src/types/components/PlugingM.type.js.map +1 -0
- package/dist/src/types/components/ReqProcessor.type.d.ts +7 -0
- package/dist/src/types/components/ReqProcessor.type.d.ts.map +1 -0
- package/dist/src/types/components/ReqProcessor.type.js +2 -0
- package/dist/src/types/components/ReqProcessor.type.js.map +1 -0
- package/dist/src/types/components/RouteM.type.d.ts +9 -0
- package/dist/src/types/components/RouteM.type.d.ts.map +1 -0
- package/dist/src/types/components/RouteM.type.js +2 -0
- package/dist/src/types/components/RouteM.type.js.map +1 -0
- package/dist/src/types/httpServer.type.d.ts +260 -0
- package/dist/src/types/httpServer.type.d.ts.map +1 -0
- package/dist/src/types/httpServer.type.js +25 -0
- package/dist/src/types/httpServer.type.js.map +1 -0
- package/dist/src/types/index.d.ts +228 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +37 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/types/middleware-api.types.d.ts +180 -0
- package/dist/src/types/middleware-api.types.d.ts.map +1 -0
- package/dist/src/types/middleware-api.types.js +6 -0
- package/dist/src/types/middleware-api.types.js.map +1 -0
- package/dist/src/types/middlewareManager.types.d.ts +18 -0
- package/dist/src/types/middlewareManager.types.d.ts.map +1 -0
- package/dist/src/types/middlewareManager.types.js +2 -0
- package/dist/src/types/middlewareManager.types.js.map +1 -0
- package/dist/src/types/mod/cache.d.ts +417 -0
- package/dist/src/types/mod/cache.d.ts.map +1 -0
- package/dist/src/types/mod/cache.js +12 -0
- package/dist/src/types/mod/cache.js.map +1 -0
- package/dist/src/types/mod/core.d.ts +390 -0
- package/dist/src/types/mod/core.d.ts.map +1 -0
- package/dist/src/types/mod/core.js +2 -0
- package/dist/src/types/mod/core.js.map +1 -0
- package/dist/src/types/mod/monitoring.d.ts +473 -0
- package/dist/src/types/mod/monitoring.d.ts.map +1 -0
- package/dist/src/types/mod/monitoring.js +12 -0
- package/dist/src/types/mod/monitoring.js.map +1 -0
- package/dist/src/types/mod/performance.d.ts +370 -0
- package/dist/src/types/mod/performance.d.ts.map +1 -0
- package/dist/src/types/mod/performance.js +12 -0
- package/dist/src/types/mod/performance.js.map +1 -0
- package/dist/src/types/mod/routing.d.ts +385 -0
- package/dist/src/types/mod/routing.d.ts.map +1 -0
- package/dist/src/types/mod/routing.js +12 -0
- package/dist/src/types/mod/routing.js.map +1 -0
- package/dist/src/types/mod/security.d.ts +1478 -0
- package/dist/src/types/mod/security.d.ts.map +1 -0
- package/dist/src/types/mod/security.js +2 -0
- package/dist/src/types/mod/security.js.map +1 -0
- package/dist/src/types/perfomance.d.ts +37 -0
- package/dist/src/types/perfomance.d.ts.map +1 -0
- package/dist/src/types/perfomance.js +2 -0
- package/dist/src/types/perfomance.js.map +1 -0
- package/dist/src/types/types.d.ts +210 -0
- package/dist/src/types/types.d.ts.map +1 -0
- package/dist/src/types/types.js +21 -0
- package/dist/src/types/types.js.map +1 -0
- package/dist/src/types/xems.type.d.ts +84 -0
- package/dist/src/types/xems.type.d.ts.map +1 -0
- package/dist/src/types/xems.type.js +2 -0
- package/dist/src/types/xems.type.js.map +1 -0
- package/dist/src/utils/ConfigSyntaxParser.d.ts +28 -0
- package/dist/src/utils/ConfigSyntaxParser.d.ts.map +1 -0
- package/dist/src/utils/ConfigSyntaxParser.js +76 -0
- package/dist/src/utils/ConfigSyntaxParser.js.map +1 -0
- package/dist/src/utils/DotEnvLoader.d.ts +27 -0
- package/dist/src/utils/DotEnvLoader.d.ts.map +1 -0
- package/dist/src/utils/DotEnvLoader.js +69 -0
- package/dist/src/utils/DotEnvLoader.js.map +1 -0
- package/dist/src/utils/ProjectDiscovery.d.ts +61 -0
- package/dist/src/utils/ProjectDiscovery.d.ts.map +1 -0
- package/dist/src/utils/ProjectDiscovery.js +295 -0
- package/dist/src/utils/ProjectDiscovery.js.map +1 -0
- package/dist/src/utils/getIp.d.ts +53 -0
- package/dist/src/utils/getIp.d.ts.map +1 -0
- package/dist/src/utils/getIp.js +160 -0
- package/dist/src/utils/getIp.js.map +1 -0
- package/dist/src/utils/getMime.d.ts +52 -0
- package/dist/src/utils/getMime.d.ts.map +1 -0
- package/dist/src/utils/getMime.js +90 -0
- package/dist/src/utils/getMime.js.map +1 -0
- package/dist/src/utils/mergeWithDefaults.d.ts +92 -0
- package/dist/src/utils/mergeWithDefaults.d.ts.map +1 -0
- package/dist/src/utils/mergeWithDefaults.js +172 -0
- package/dist/src/utils/mergeWithDefaults.js.map +1 -0
- package/dist/src/utils/mimeUtils.d.ts +10 -0
- package/dist/src/utils/mimeUtils.d.ts.map +1 -0
- package/dist/src/utils/mimeUtils.js +14 -0
- package/dist/src/utils/mimeUtils.js.map +1 -0
- package/dist/src/xhsc/EnvApi.d.ts +296 -0
- package/dist/src/xhsc/EnvApi.d.ts.map +1 -0
- package/dist/src/xhsc/EnvApi.js +525 -0
- package/dist/src/xhsc/EnvApi.js.map +1 -0
- package/dist/src/xhsc/FSApi.d.ts +21 -0
- package/dist/src/xhsc/FSApi.d.ts.map +1 -0
- package/dist/src/xhsc/FSApi.js +49 -0
- package/dist/src/xhsc/FSApi.js.map +1 -0
- package/dist/src/xhsc/OSApi.d.ts +195 -0
- package/dist/src/xhsc/OSApi.d.ts.map +1 -0
- package/dist/src/xhsc/OSApi.js +220 -0
- package/dist/src/xhsc/OSApi.js.map +1 -0
- package/dist/src/xhsc/PathApi.d.ts +300 -0
- package/dist/src/xhsc/PathApi.d.ts.map +1 -0
- package/dist/src/xhsc/PathApi.js +383 -0
- package/dist/src/xhsc/PathApi.js.map +1 -0
- package/dist/src/xhsc/System.d.ts +126 -0
- package/dist/src/xhsc/System.d.ts.map +1 -0
- package/dist/src/xhsc/System.js +58 -0
- package/dist/src/xhsc/System.js.map +1 -0
- package/dist/src/xhsc/UtilsApi.d.ts +45 -0
- package/dist/src/xhsc/UtilsApi.d.ts.map +1 -0
- package/dist/src/xhsc/UtilsApi.js +47 -0
- package/dist/src/xhsc/UtilsApi.js.map +1 -0
- package/dist/src/xhsc/VarsApi.d.ts +81 -0
- package/dist/src/xhsc/VarsApi.d.ts.map +1 -0
- package/dist/src/xhsc/VarsApi.js +175 -0
- package/dist/src/xhsc/VarsApi.js.map +1 -0
- package/dist/src/xhsc/XyPrissCache.d.ts +36 -0
- package/dist/src/xhsc/XyPrissCache.d.ts.map +1 -0
- package/dist/src/xhsc/XyPrissCache.js +66 -0
- package/dist/src/xhsc/XyPrissCache.js.map +1 -0
- package/dist/src/xhsc/XyPrissRunner.d.ts +49 -0
- package/dist/src/xhsc/XyPrissRunner.d.ts.map +1 -0
- package/dist/src/xhsc/XyPrissRunner.js +440 -0
- package/dist/src/xhsc/XyPrissRunner.js.map +1 -0
- package/dist/src/xhsc/api/env/env.d.ts +218 -0
- package/dist/src/xhsc/api/env/env.d.ts.map +1 -0
- package/dist/src/xhsc/api/env/env.js +84 -0
- package/dist/src/xhsc/api/env/env.js.map +1 -0
- package/dist/src/xhsc/cluster/XHSCWorker.d.ts +28 -0
- package/dist/src/xhsc/cluster/XHSCWorker.d.ts.map +1 -0
- package/dist/src/xhsc/cluster/XHSCWorker.js +192 -0
- package/dist/src/xhsc/cluster/XHSCWorker.js.map +1 -0
- package/dist/src/xhsc/cmdr.d.ts +9 -0
- package/dist/src/xhsc/cmdr.d.ts.map +1 -0
- package/dist/src/xhsc/cmdr.js +2 -0
- package/dist/src/xhsc/cmdr.js.map +1 -0
- package/dist/src/xhsc/fs/FSArchive.d.ts +55 -0
- package/dist/src/xhsc/fs/FSArchive.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSArchive.js +66 -0
- package/dist/src/xhsc/fs/FSArchive.js.map +1 -0
- package/dist/src/xhsc/fs/FSBase.d.ts +14 -0
- package/dist/src/xhsc/fs/FSBase.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSBase.js +15 -0
- package/dist/src/xhsc/fs/FSBase.js.map +1 -0
- package/dist/src/xhsc/fs/FSCore.d.ts +417 -0
- package/dist/src/xhsc/fs/FSCore.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSCore.js +522 -0
- package/dist/src/xhsc/fs/FSCore.js.map +1 -0
- package/dist/src/xhsc/fs/FSExtended.d.ts +212 -0
- package/dist/src/xhsc/fs/FSExtended.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSExtended.js +303 -0
- package/dist/src/xhsc/fs/FSExtended.js.map +1 -0
- package/dist/src/xhsc/fs/FSHelpers.d.ts +383 -0
- package/dist/src/xhsc/fs/FSHelpers.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSHelpers.js +501 -0
- package/dist/src/xhsc/fs/FSHelpers.js.map +1 -0
- package/dist/src/xhsc/fs/FSSearch.d.ts +77 -0
- package/dist/src/xhsc/fs/FSSearch.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSSearch.js +95 -0
- package/dist/src/xhsc/fs/FSSearch.js.map +1 -0
- package/dist/src/xhsc/fs/FSWatch.d.ts +107 -0
- package/dist/src/xhsc/fs/FSWatch.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FSWatch.js +136 -0
- package/dist/src/xhsc/fs/FSWatch.js.map +1 -0
- package/dist/src/xhsc/fs/FileHandle.d.ts +42 -0
- package/dist/src/xhsc/fs/FileHandle.d.ts.map +1 -0
- package/dist/src/xhsc/fs/FileHandle.js +107 -0
- package/dist/src/xhsc/fs/FileHandle.js.map +1 -0
- package/dist/src/xhsc/ipc/XHSCDirectIPC.d.ts +24 -0
- package/dist/src/xhsc/ipc/XHSCDirectIPC.d.ts.map +1 -0
- package/dist/src/xhsc/ipc/XHSCDirectIPC.js +110 -0
- package/dist/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
- package/dist/src/xhsc/types.d.ts +268 -0
- package/dist/src/xhsc/types.d.ts.map +1 -0
- package/dist/src/xhsc/types.js +8 -0
- package/dist/src/xhsc/types.js.map +1 -0
- package/dist/src/xhsc/utils/ArrayUtils.d.ts +38 -0
- package/dist/src/xhsc/utils/ArrayUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/ArrayUtils.js +63 -0
- package/dist/src/xhsc/utils/ArrayUtils.js.map +1 -0
- package/dist/src/xhsc/utils/AsyncUtils.d.ts +437 -0
- package/dist/src/xhsc/utils/AsyncUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/AsyncUtils.js +578 -0
- package/dist/src/xhsc/utils/AsyncUtils.js.map +1 -0
- package/dist/src/xhsc/utils/DateUtils.d.ts +649 -0
- package/dist/src/xhsc/utils/DateUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/DateUtils.js +956 -0
- package/dist/src/xhsc/utils/DateUtils.js.map +1 -0
- package/dist/src/xhsc/utils/FunctionUtils.d.ts +15 -0
- package/dist/src/xhsc/utils/FunctionUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/FunctionUtils.js +25 -0
- package/dist/src/xhsc/utils/FunctionUtils.js.map +1 -0
- package/dist/src/xhsc/utils/IdUtils.d.ts +14 -0
- package/dist/src/xhsc/utils/IdUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/IdUtils.js +17 -0
- package/dist/src/xhsc/utils/IdUtils.js.map +1 -0
- package/dist/src/xhsc/utils/NumberUtils.d.ts +59 -0
- package/dist/src/xhsc/utils/NumberUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/NumberUtils.js +75 -0
- package/dist/src/xhsc/utils/NumberUtils.js.map +1 -0
- package/dist/src/xhsc/utils/ObjectUtils.d.ts +96 -0
- package/dist/src/xhsc/utils/ObjectUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/ObjectUtils.js +136 -0
- package/dist/src/xhsc/utils/ObjectUtils.js.map +1 -0
- package/dist/src/xhsc/utils/StringUtils.d.ts +105 -0
- package/dist/src/xhsc/utils/StringUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/StringUtils.js +141 -0
- package/dist/src/xhsc/utils/StringUtils.js.map +1 -0
- package/dist/src/xhsc/utils/ValidationUtils.d.ts +33 -0
- package/dist/src/xhsc/utils/ValidationUtils.d.ts.map +1 -0
- package/dist/src/xhsc/utils/ValidationUtils.js +45 -0
- package/dist/src/xhsc/utils/ValidationUtils.js.map +1 -0
- package/dist/src/xhsc/utils/deepReadonlyProxy.d.ts +48 -0
- package/dist/src/xhsc/utils/deepReadonlyProxy.d.ts.map +1 -0
- package/dist/src/xhsc/utils/deepReadonlyProxy.js +108 -0
- package/dist/src/xhsc/utils/deepReadonlyProxy.js.map +1 -0
- package/dist/src/xhsc.d.ts +41 -0
- package/dist/src/xhsc.d.ts.map +1 -0
- package/dist/src/xhsc.js +231 -0
- package/dist/src/xhsc.js.map +1 -0
- package/dist/test-toolbox.d.ts +2 -0
- package/dist/test-toolbox.d.ts.map +1 -0
- package/dist/test-toolbox.js +37 -0
- package/dist/test-toolbox.js.map +1 -0
- package/dist/test_finish.d.ts +2 -0
- package/dist/test_finish.d.ts.map +1 -0
- package/dist/test_finish.js +10 -0
- package/dist/test_finish.js.map +1 -0
- package/dist/test_regex.d.ts +2 -0
- package/dist/test_regex.d.ts.map +1 -0
- package/dist/test_regex.js +20 -0
- package/dist/test_regex.js.map +1 -0
- package/dist/test_server.d.ts +2 -0
- package/dist/test_server.d.ts.map +1 -0
- package/dist/test_server.js +23 -0
- package/dist/test_server.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -58,6 +58,7 @@ This separation allows each layer to operate in its optimal domain: compiled nat
|
|
|
58
58
|
- **Security-First Architecture** — 12+ built-in security middleware modules including CSRF protection, XSS prevention, and intelligent rate limiting.
|
|
59
59
|
- **Advanced Radix Routing (V2)** — Ultra-fast, modular routing engine with support for typed path parameters, declarative guards, and native API versioning.
|
|
60
60
|
- **Real-Time System Intelligence** — Native access to CPU, memory, disk, network, battery, and process metrics directly from the application layer.
|
|
61
|
+
- **XStatic Engine** — High-performance static serving via **Zero-Copy IPC Delegation**. Handsoff file delivery directly to the native XHSC (Go) core to bypass the Node.js event loop and memory overhead. Optimized for extreme concurrency and low latency.
|
|
61
62
|
- **Filesystem Engine & Binary Streaming** — High-performance filesystem operations, duplicate detection, and robust **Zero-Copy Ranged Streaming** via `res.sendFile()`, optimized for media delivery and large assets.
|
|
62
63
|
- **File Upload Management** — Production-ready multipart/form-data handling with automatic validation, error handling, and the `getMimes()` helper for extension-to-mime mapping.
|
|
63
64
|
- **Environment Security Shield** — Military-grade protection for sensitive variables. Direct `process.env` access is masked via a native Proxy to prevent accidental leakage, forcing the use of secure, typed APIs.
|
|
@@ -167,6 +168,8 @@ app.start();
|
|
|
167
168
|
- [Features Overview](https://xypriss.nehonix.com/docs/FEATURES_OVERVIEW) - Comprehensive feature list
|
|
168
169
|
- [Router Engine V2](./docs/routing/README.md) - Rich modular routing
|
|
169
170
|
- [Advanced Routing & XyGuard API](./docs/routing/ADVANCED_ROUTING.md) - Declarative guards and modularity
|
|
171
|
+
- [XStatic Native Serving](./docs/core/XSTATIC.md) - Zero-Copy static file delegation
|
|
172
|
+
- [Native Binary Streaming](./docs/core/response-sendfile.md) - res.sendFile() technical guide
|
|
170
173
|
|
|
171
174
|
### Security
|
|
172
175
|
|
package/dist/cjs/src/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var getIp = require('./utils/getIp.js');
|
|
|
19
19
|
var ProjectDiscovery = require('./utils/ProjectDiscovery.js');
|
|
20
20
|
var XemsPlugin = require('./plugins/builtin/xems/XemsPlugin.js');
|
|
21
21
|
var getMime = require('./utils/getMime.js');
|
|
22
|
+
var XStatic = require('./server/components/static/XStatic.js');
|
|
22
23
|
var FiUp = require('./FiUp.js');
|
|
23
24
|
|
|
24
25
|
/***************************************************************************
|
|
@@ -88,6 +89,7 @@ exports.identifyProjectRoot = ProjectDiscovery.identifyProjectRoot;
|
|
|
88
89
|
exports.xems = XemsPlugin.xems;
|
|
89
90
|
exports.getMime = getMime.getMime;
|
|
90
91
|
exports.getMimes = getMime.getMimes;
|
|
92
|
+
exports.XStatic = XStatic.XStatic;
|
|
91
93
|
exports.initializeFileUpload = FiUp.initializeFileUpload;
|
|
92
94
|
exports.uploadAny = FiUp.uploadAny;
|
|
93
95
|
exports.uploadArray = FiUp.uploadArray;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":["configLoader","XyPrissRouter"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":["configLoader","XyPrissRouter"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAsBiF;AACjF;AAEA;AACA;AAqBA;AACA,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;IACnCA,yBAAY,CAAC,qBAAqB,EAAE;AACxC;AA+BA;;AAEG;SACa,MAAM,GAAA;IAClB,OAAO,IAAIC,sBAAa,CAAC;AACrB,QAAA,aAAa,EAAE,KAAK;AACpB,QAAA,WAAW,EAAE,KAAK;AAClB,QAAA,MAAM,EAAE,KAAK;AAChB,KAAA,CAAC;AACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -68,6 +68,21 @@ var UriNormalizer = require('./UriNormalizer.js');
|
|
|
68
68
|
* ```
|
|
69
69
|
*/
|
|
70
70
|
class HoneypotTarpit {
|
|
71
|
+
/**
|
|
72
|
+
* Registers custom trap patterns to expand the honeypot surface.
|
|
73
|
+
*
|
|
74
|
+
* @param {object} custom - Object containing custom patterns to trap.
|
|
75
|
+
*/
|
|
76
|
+
static registerCustomTraps(custom) {
|
|
77
|
+
if (custom.exact)
|
|
78
|
+
custom.exact.forEach(p => this.CUSTOM_EXACT_TRAPS.add(p.toLowerCase()));
|
|
79
|
+
if (custom.prefixes)
|
|
80
|
+
custom.prefixes.forEach(p => this.CUSTOM_PREFIX_TRAPS.add(p.toLowerCase()));
|
|
81
|
+
if (custom.suffixes)
|
|
82
|
+
custom.suffixes.forEach(p => this.CUSTOM_SUFFIX_TRAPS.add(p.toLowerCase()));
|
|
83
|
+
if (custom.segments)
|
|
84
|
+
custom.segments.forEach(p => this.CUSTOM_SEGMENT_TRAPS.add(p.toLowerCase()));
|
|
85
|
+
}
|
|
71
86
|
// ─────────────────────────────────────────────────────────────────────────
|
|
72
87
|
// Public API
|
|
73
88
|
// ─────────────────────────────────────────────────────────────────────────
|
|
@@ -110,7 +125,31 @@ class HoneypotTarpit {
|
|
|
110
125
|
return (HoneypotTarpit.matchesExactTrap(normalized) ||
|
|
111
126
|
HoneypotTarpit.matchesPrefixTrap(normalized) ||
|
|
112
127
|
HoneypotTarpit.matchesSuffixTrap(normalized) ||
|
|
113
|
-
HoneypotTarpit.matchesSegmentTrap(normalized)
|
|
128
|
+
HoneypotTarpit.matchesSegmentTrap(normalized) ||
|
|
129
|
+
HoneypotTarpit.CUSTOM_EXACT_TRAPS.has(normalized) ||
|
|
130
|
+
HoneypotTarpit.matchesCustomPrefix(normalized) ||
|
|
131
|
+
HoneypotTarpit.matchesCustomSuffix(normalized) ||
|
|
132
|
+
HoneypotTarpit.matchesCustomSegment(normalized));
|
|
133
|
+
}
|
|
134
|
+
static matchesCustomPrefix(path) {
|
|
135
|
+
for (const p of this.CUSTOM_PREFIX_TRAPS)
|
|
136
|
+
if (path.startsWith(p))
|
|
137
|
+
return true;
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
static matchesCustomSuffix(path) {
|
|
141
|
+
const last = path.split("/").pop() ?? "";
|
|
142
|
+
for (const s of this.CUSTOM_SUFFIX_TRAPS)
|
|
143
|
+
if (last.endsWith(s))
|
|
144
|
+
return true;
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
static matchesCustomSegment(path) {
|
|
148
|
+
const segments = path.split("/").filter(Boolean);
|
|
149
|
+
for (const s of segments)
|
|
150
|
+
if (this.CUSTOM_SEGMENT_TRAPS.has(s))
|
|
151
|
+
return true;
|
|
152
|
+
return false;
|
|
114
153
|
}
|
|
115
154
|
/**
|
|
116
155
|
* Sends a minimal HTTP 403 Forbidden response and terminates the connection.
|
|
@@ -505,6 +544,13 @@ HoneypotTarpit.SEGMENT_TRAPS = new Set([
|
|
|
505
544
|
"actuator",
|
|
506
545
|
"heapdump",
|
|
507
546
|
]);
|
|
547
|
+
/**
|
|
548
|
+
* Custom user-defined traps registered at runtime.
|
|
549
|
+
*/
|
|
550
|
+
HoneypotTarpit.CUSTOM_EXACT_TRAPS = new Set();
|
|
551
|
+
HoneypotTarpit.CUSTOM_PREFIX_TRAPS = new Set();
|
|
552
|
+
HoneypotTarpit.CUSTOM_SUFFIX_TRAPS = new Set();
|
|
553
|
+
HoneypotTarpit.CUSTOM_SEGMENT_TRAPS = new Set();
|
|
508
554
|
|
|
509
555
|
exports.HoneypotTarpit = HoneypotTarpit;
|
|
510
556
|
//# sourceMappingURL=HoneypotTarpit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HoneypotTarpit.js","sources":["../../../../../../src/middleware/built-in/security/HoneypotTarpit.ts"],"sourcesContent":[null],"names":["UriNormalizer"],"mappings":";;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgEG;MAGU,cAAc,CAAA;;;;
|
|
1
|
+
{"version":3,"file":"HoneypotTarpit.js","sources":["../../../../../../src/middleware/built-in/security/HoneypotTarpit.ts"],"sourcesContent":[null],"names":["UriNormalizer"],"mappings":"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"}
|
|
@@ -130,14 +130,14 @@ class PermissionManager {
|
|
|
130
130
|
logDenial("Privileged hook must be explicitly whitelisted by string declaration. Wildcard '*' does not grant privileged capabilities.", solutionPrivileged);
|
|
131
131
|
return false;
|
|
132
132
|
}
|
|
133
|
-
// 2. Lifecycle Hooks:
|
|
134
|
-
|
|
133
|
+
// 2. Lifecycle Hooks: Engines stability fallback
|
|
134
|
+
const allowLifecycle = this.server.options?.plugins?.allowLifecycleByDefault ?? false;
|
|
135
|
+
if (isLifecycleHook && allowLifecycle)
|
|
135
136
|
return true;
|
|
136
137
|
// 3. Standard Hook Logic
|
|
137
138
|
if (policy === "deny") {
|
|
138
139
|
// "deny" policy = Whitelist mode
|
|
139
|
-
if (
|
|
140
|
-
return true; // Lifecycle is always whitelisted by default
|
|
140
|
+
// Whitelist mode: only allow if in allowedHooks (or explicitly enabled by server options above)
|
|
141
141
|
if (allowedHooks === "*")
|
|
142
142
|
return true;
|
|
143
143
|
if (Array.isArray(allowedHooks) && allowedHooks.includes(hookId)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionManager.js","sources":["../../../../../src/plugins/core/PermissionManager.ts"],"sourcesContent":[null],"names":["Logger","HOOK_ID_MAP","HOOK_METADATA","OFFICIAL_PLUGINS","__sys__","PluginHookIds"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PermissionManager.js","sources":["../../../../../src/plugins/core/PermissionManager.ts"],"sourcesContent":[null],"names":["Logger","HOOK_ID_MAP","HOOK_METADATA","OFFICIAL_PLUGINS","__sys__","PluginHookIds"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var reliantType = require('reliant-type');
|
|
4
|
+
|
|
5
|
+
const IXStaticSchem = reliantType.Mod.deepPartial(reliantType.Interface({
|
|
6
|
+
/**
|
|
7
|
+
* Size of the negative-lookup LRU cache.
|
|
8
|
+
* Stores non-existent paths to prevent DDoS via disk hits.
|
|
9
|
+
* @default 5000
|
|
10
|
+
*/
|
|
11
|
+
lruCacheSize: "number?",
|
|
12
|
+
/**
|
|
13
|
+
* Default Cache-Control max-age for all static routes.
|
|
14
|
+
* Can be a number (seconds) or string (e.g., "1d").
|
|
15
|
+
*/
|
|
16
|
+
defaultMaxAge: "number?|string?",
|
|
17
|
+
/**
|
|
18
|
+
* Enable/Disable zero-copy file transfer via sendfile(2).
|
|
19
|
+
* @default true
|
|
20
|
+
*/
|
|
21
|
+
zeroCopy: "boolean?",
|
|
22
|
+
/**
|
|
23
|
+
* Maximum number of concurrent goroutines for static I/O in Go engine.
|
|
24
|
+
* @default 1024
|
|
25
|
+
*/
|
|
26
|
+
concurrencyPool: "number?",
|
|
27
|
+
}));
|
|
28
|
+
|
|
29
|
+
exports.IXStaticSchem = IXStaticSchem;
|
|
30
|
+
//# sourceMappingURL=IXStaticSchem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IXStaticSchem.js","sources":["../../../../../../src/server/components/static/IXStaticSchem.ts"],"sourcesContent":[null],"names":["Mod","Interface"],"mappings":";;;;MAEa,aAAa,GAAGA,eAAG,CAAC,WAAW,CACxCC,qBAAS,CAAC;AACN;;;;AAIG;AACH,IAAA,YAAY,EAAE,SAAS;AAEvB;;;AAGG;AACH,IAAA,aAAa,EAAE,iBAAiB;AAEhC;;;AAGG;AACH,IAAA,QAAQ,EAAE,UAAU;AAEpB;;;AAGG;AACH,IAAA,eAAe,EAAE,SAAS;AAC7B,CAAA,CAAC;;;;"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Lightweight LRU Cache for negative path lookups (anti-DDoS).
|
|
5
|
+
*/
|
|
6
|
+
class XStaticMetaCache {
|
|
7
|
+
constructor(maxSize) {
|
|
8
|
+
this.maxSize = maxSize;
|
|
9
|
+
this.cache = new Map();
|
|
10
|
+
this.keys = [];
|
|
11
|
+
}
|
|
12
|
+
get(path) {
|
|
13
|
+
const item = this.cache.get(path);
|
|
14
|
+
if (!item)
|
|
15
|
+
return null;
|
|
16
|
+
if (Date.now() > item.expires) {
|
|
17
|
+
this.delete(path);
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
return { exists: item.exists };
|
|
21
|
+
}
|
|
22
|
+
set(path, exists, ttlMs = 30000) {
|
|
23
|
+
if (this.cache.has(path)) {
|
|
24
|
+
this.delete(path);
|
|
25
|
+
}
|
|
26
|
+
else if (this.keys.length >= this.maxSize) {
|
|
27
|
+
const oldest = this.keys.shift();
|
|
28
|
+
if (oldest)
|
|
29
|
+
this.cache.delete(oldest);
|
|
30
|
+
}
|
|
31
|
+
this.cache.set(path, { exists, expires: Date.now() + ttlMs });
|
|
32
|
+
this.keys.push(path);
|
|
33
|
+
}
|
|
34
|
+
delete(path) {
|
|
35
|
+
this.cache.delete(path);
|
|
36
|
+
const idx = this.keys.indexOf(path);
|
|
37
|
+
if (idx > -1)
|
|
38
|
+
this.keys.splice(idx, 1);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
exports.XStaticMetaCache = XStaticMetaCache;
|
|
43
|
+
//# sourceMappingURL=MetaCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetaCache.js","sources":["../../../../../../src/server/components/static/MetaCache.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;AAEG;MACU,gBAAgB,CAAA;AAKzB,IAAA,WAAA,CAAoB,OAAe,EAAA;QAAf,IAAA,CAAA,OAAO,GAAP,OAAO;AAJnB,QAAA,IAAA,CAAA,KAAK,GACT,IAAI,GAAG,EAAE;QACL,IAAA,CAAA,IAAI,GAAa,EAAE;IAEW;AAE/B,IAAA,GAAG,CAAC,IAAY,EAAA;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;AACjC,QAAA,IAAI,CAAC,IAAI;AAAE,YAAA,OAAO,IAAI;QACtB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AAC3B,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACjB,YAAA,OAAO,IAAI;QACf;AACA,QAAA,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;IAClC;AAEO,IAAA,GAAG,CAAC,IAAY,EAAE,MAAe,EAAE,QAAgB,KAAK,EAAA;QAC3D,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACrB;aAAO,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AAChC,YAAA,IAAI,MAAM;AAAE,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QACzC;QAEA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;AAC7D,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB;AAEQ,IAAA,MAAM,CAAC,IAAY,EAAA;AACvB,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACnC,IAAI,GAAG,GAAG,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1C;AACH;;;;"}
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var Logger = require('../../../shared/logger/Logger.js');
|
|
4
|
+
var UriNormalizer = require('../../../middleware/built-in/security/UriNormalizer.js');
|
|
5
|
+
require('../../../index.js');
|
|
6
|
+
var IXStaticSchem = require('./IXStaticSchem.js');
|
|
7
|
+
var quickLogger = require('../../../shared/logger/quickLogger.js');
|
|
8
|
+
var MetaCache = require('./MetaCache.js');
|
|
9
|
+
var ConfigurationManager = require('../../../ConfigurationManager.js');
|
|
10
|
+
|
|
11
|
+
/***************************************************************************
|
|
12
|
+
* XyPriss - Fast And Secure
|
|
13
|
+
*
|
|
14
|
+
* XStatic - High-Performance, Sandboxed Static File Serving.
|
|
15
|
+
* Optimized with Meta-Cache (LRU) and XHSC (Go) Zero-Copy delegation.
|
|
16
|
+
***************************************************************************/
|
|
17
|
+
/**
|
|
18
|
+
* **XStatic** — High-performance, sandboxed static file server for XyPriss.
|
|
19
|
+
*
|
|
20
|
+
* XStatic handles static asset delivery through a two-layer architecture:
|
|
21
|
+
*
|
|
22
|
+
* 1. **TypeScript layer** — responsible for URI normalization, dotfile/sandbox
|
|
23
|
+
* security enforcement, and LRU meta-cache (anti-DDoS I/O shield).
|
|
24
|
+
* 2. **XHSC (Go) layer** — takes over once the request is validated, streaming
|
|
25
|
+
* the file directly from disk to the TCP socket using zero-copy (`sendfile`),
|
|
26
|
+
* native ETags, `304 Not Modified`, and `206 Partial Content` (Range requests).
|
|
27
|
+
*
|
|
28
|
+
* ### Architectural Flow
|
|
29
|
+
* ```
|
|
30
|
+
* Request
|
|
31
|
+
* → URI Normalization
|
|
32
|
+
* → Dotfile / Restricted File Check
|
|
33
|
+
* → Sandbox Enforcement (Project Root + Directory Jail)
|
|
34
|
+
* → LRU Meta-Cache (negative cache — blocks repeated 404 storms)
|
|
35
|
+
* → Filesystem Existence Check
|
|
36
|
+
* → XHSC Zero-Copy Delegation (Go)
|
|
37
|
+
* → Response
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* ### Basic Usage
|
|
41
|
+
* ```typescript
|
|
42
|
+
* import { XStatic } from "xypriss";
|
|
43
|
+
*
|
|
44
|
+
* const app = createServer(options);
|
|
45
|
+
* const xs = new XStatic(app, __sys__);
|
|
46
|
+
*
|
|
47
|
+
* xs.define("/assets", "./public");
|
|
48
|
+
* xs.define("/docs", "./documentation");
|
|
49
|
+
*
|
|
50
|
+
* // Explicit opt-out of sandbox (e.g. user-upload directory)
|
|
51
|
+
* xs.define("/avatars", "/var/www/uploads/avatars", {
|
|
52
|
+
* allowOutsideRoot: true,
|
|
53
|
+
* unsafe: true,
|
|
54
|
+
* });
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* ### Global Configuration (via `createServer`)
|
|
58
|
+
* ```typescript
|
|
59
|
+
* const app = createServer({
|
|
60
|
+
* static: {
|
|
61
|
+
* zeroCopy: true, // Enable sendfile() syscall in XHSC
|
|
62
|
+
* ConcurrencyPool: 1024, // Max goroutines for disk I/O
|
|
63
|
+
* lruCacheSize: 5000, // Entries kept in negative meta-cache
|
|
64
|
+
* dotfiles: "deny", // Block .env, .git, etc.
|
|
65
|
+
* defaultMaxAge: 86400, // Default Cache-Control max-age (seconds)
|
|
66
|
+
* },
|
|
67
|
+
* });
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* @remarks
|
|
71
|
+
* XStatic is **instance-scoped** by design. Avoid singleton patterns when
|
|
72
|
+
* running under XMS (XyPriss MultiServer) to prevent cross-instance route
|
|
73
|
+
* leakage and memory pressure.
|
|
74
|
+
*
|
|
75
|
+
* @see {@link StaticOptions} for per-route configuration.
|
|
76
|
+
* @see {@link IXStatic} for global configuration shape.
|
|
77
|
+
* @see {@link XStaticMetaCache} for LRU cache implementation details.
|
|
78
|
+
*/
|
|
79
|
+
class XStatic {
|
|
80
|
+
/**
|
|
81
|
+
* Creates a new `XStatic` instance bound to the given server and system API.
|
|
82
|
+
*
|
|
83
|
+
* Reads the `"static"` key from the application config (`Configs.get`),
|
|
84
|
+
* initialises the LRU meta-cache with the configured size (default: **5 000**
|
|
85
|
+
* entries), and wires up internal loggers.
|
|
86
|
+
*
|
|
87
|
+
* @param app - The XyPriss application instance to register middleware on.
|
|
88
|
+
* @param sys - The XHSC system handle (`__sys__`), which exposes the sandboxed
|
|
89
|
+
* `fs` and `path` APIs as well as the project root (`__root__`).
|
|
90
|
+
*
|
|
91
|
+
* @throws {Error} If the global `"static"` configuration block fails Zod schema
|
|
92
|
+
* validation (see {@link validateConfigs}).
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* const xs = new XStatic(app, __sys__);
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
constructor(app, sys) {
|
|
100
|
+
this.app = app;
|
|
101
|
+
this.sys = sys;
|
|
102
|
+
this.globalConfig = ConfigurationManager.CM.get("static") || {};
|
|
103
|
+
this.metaCache = new MetaCache.XStaticMetaCache(this.globalConfig.lruCacheSize || 5000);
|
|
104
|
+
this.logger = app.logger || Logger.Logger.getInstance();
|
|
105
|
+
this.qLog = quickLogger.QuickLogger.for("XStatic");
|
|
106
|
+
this.logger.debug("server", "XStatic initialized with Zero-Copy delegation support.");
|
|
107
|
+
this.validateConfigs();
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Validates the global static configuration block at startup.
|
|
111
|
+
*
|
|
112
|
+
* Performs two sequential checks:
|
|
113
|
+
*
|
|
114
|
+
* 1. **Dotfiles type guard** — ensures `dotfiles` is either `"allow"` or
|
|
115
|
+
* `"deny"` when provided as a plain string.
|
|
116
|
+
* 2. **Zod schema validation** — runs `IXStaticSchem.safeParse` against the
|
|
117
|
+
* full config object to catch unknown or malformed fields.
|
|
118
|
+
*
|
|
119
|
+
* @throws {Error} `"Invalid configuration for 'dotfiles'"` — if `dotfiles` is
|
|
120
|
+
* present but not a string.
|
|
121
|
+
* @throws {Error} `"Invalid dotfiles mode. Expected one of 'allow' or 'deny',
|
|
122
|
+
* but got: '<value>'"` — if the dotfiles string is not a recognised mode.
|
|
123
|
+
* @throws {Error} Zod validation message — if the config object fails the
|
|
124
|
+
* `IXStaticSchem` schema.
|
|
125
|
+
*
|
|
126
|
+
* @internal
|
|
127
|
+
*/
|
|
128
|
+
validateConfigs() {
|
|
129
|
+
const c = this.globalConfig;
|
|
130
|
+
const sdc = ["allow", "deny"];
|
|
131
|
+
if (c.dotfiles != null &&
|
|
132
|
+
!["string", "string"].includes(typeof c.dotfiles)) {
|
|
133
|
+
throw new Error("Invalid configuration for 'dotfiles'");
|
|
134
|
+
}
|
|
135
|
+
if (c.dotfiles &&
|
|
136
|
+
typeof c.dotfiles === "string" &&
|
|
137
|
+
!sdc.includes(c.dotfiles)) {
|
|
138
|
+
throw new Error(`Invalid dotfiles mode. Expected one of ${sdc.map((s) => `'${s}'`).join(" or ")}, but got: '${c.dotfiles}'`);
|
|
139
|
+
}
|
|
140
|
+
const validatedConfigs = IXStaticSchem.IXStaticSchem.safeParse(this.globalConfig);
|
|
141
|
+
if (!validatedConfigs.success) {
|
|
142
|
+
throw new Error(validatedConfigs.errors[0].message);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Registers a static file route on the application.
|
|
147
|
+
*
|
|
148
|
+
* Mounts an async middleware on `route` that handles the full request
|
|
149
|
+
* lifecycle: URI normalization → dotfile/restricted-file protection →
|
|
150
|
+
* sandbox enforcement → LRU cache lookup → filesystem check →
|
|
151
|
+
* XHSC zero-copy delegation.
|
|
152
|
+
*
|
|
153
|
+
* ---
|
|
154
|
+
*
|
|
155
|
+
* ### Security Layers
|
|
156
|
+
*
|
|
157
|
+
* **1 — Dotfile & Restricted File Protection**
|
|
158
|
+
*
|
|
159
|
+
* Controlled by `globalConfig.dotfiles` (default: `"deny"`). When in deny
|
|
160
|
+
* mode, any file whose name starts with `"."` (e.g. `.env`, `.git`) or
|
|
161
|
+
* appears in a custom restricted list is rejected with `403 Forbidden` before
|
|
162
|
+
* any disk access occurs.
|
|
163
|
+
*
|
|
164
|
+
* **2 — Sandbox Enforcement** *(skipped when `options.unsafe` or
|
|
165
|
+
* `options.allowOutsideRoot` is `true`)*
|
|
166
|
+
*
|
|
167
|
+
* - **Project Root Check** — the resolved `dir` must be inside the project
|
|
168
|
+
* root (`sys.__root__`). Prevents accidentally serving system directories.
|
|
169
|
+
* - **Directory Jail** — the resolved request path must be strictly inside
|
|
170
|
+
* `dir`. Blocks path-traversal attacks (`../../etc/passwd`).
|
|
171
|
+
*
|
|
172
|
+
* **3 — LRU Meta-Cache (Anti-DDoS I/O Shield)**
|
|
173
|
+
*
|
|
174
|
+
* Paths that have previously resolved to `"not found"` are cached in memory.
|
|
175
|
+
* Subsequent requests for the same missing path are rejected at the cache
|
|
176
|
+
* layer — zero disk I/O, pure RAM response — protecting against flood
|
|
177
|
+
* attacks that enumerate non-existent files.
|
|
178
|
+
*
|
|
179
|
+
* ---
|
|
180
|
+
*
|
|
181
|
+
* ### Zero-Copy Delegation to XHSC (Go)
|
|
182
|
+
*
|
|
183
|
+
* Once a request passes all validation steps, TypeScript sends a single IPC
|
|
184
|
+
* signal to the XHSC worker: `"request #<id> may read <absolutePath>"`.
|
|
185
|
+
* XHSC then streams the file directly from disk to the client TCP socket
|
|
186
|
+
* using `sendfile()`, bypassing the V8/Node.js heap entirely. HTTP-level
|
|
187
|
+
* concerns (ETag generation, `304 Not Modified`, `206 Partial Content` for
|
|
188
|
+
* Range requests) are all handled natively by Go's `http.ServeContent`.
|
|
189
|
+
*
|
|
190
|
+
* ---
|
|
191
|
+
*
|
|
192
|
+
* @param route - The URL prefix to mount (e.g. `"/assets"`). Automatically
|
|
193
|
+
* normalised via {@link UriNormalizer.normalizePath}.
|
|
194
|
+
* @param dir - The filesystem directory to serve from (e.g. `"./public"`).
|
|
195
|
+
* Relative paths are resolved against the process working directory.
|
|
196
|
+
* @param options - Optional per-route overrides. See {@link StaticOptions}.
|
|
197
|
+
*
|
|
198
|
+
* @returns `void` — the middleware is registered as a side effect.
|
|
199
|
+
*
|
|
200
|
+
* @throws This method does not throw. Internal errors are caught, logged via
|
|
201
|
+
* the application logger, and forwarded to `next()` so the request chain
|
|
202
|
+
* can continue (or fall through to a global error handler).
|
|
203
|
+
*
|
|
204
|
+
* @example
|
|
205
|
+
* ```typescript
|
|
206
|
+
* // Serve ./public under /assets (fully sandboxed, dotfiles denied)
|
|
207
|
+
* xs.define("/assets", "./public");
|
|
208
|
+
*
|
|
209
|
+
* // Custom Cache-Control for long-lived build artefacts (1 week)
|
|
210
|
+
* xs.define("/dist", "./build", { maxAge: 604800 });
|
|
211
|
+
*
|
|
212
|
+
* // User-uploaded content outside the project root (explicit opt-out)
|
|
213
|
+
* xs.define("/uploads", "/var/www/uploads", {
|
|
214
|
+
* allowOutsideRoot: true,
|
|
215
|
+
* unsafe: true,
|
|
216
|
+
* });
|
|
217
|
+
* ```
|
|
218
|
+
*
|
|
219
|
+
* @see {@link StaticOptions} for the full list of per-route options.
|
|
220
|
+
* @see {@link serve} for the deprecated alias.
|
|
221
|
+
*/
|
|
222
|
+
define(route, dir, options = {}) {
|
|
223
|
+
const normalizedRoute = UriNormalizer.UriNormalizer.normalizePath(route);
|
|
224
|
+
// Middleware registration
|
|
225
|
+
this.app.use(normalizedRoute, async (req, res, next) => {
|
|
226
|
+
try {
|
|
227
|
+
// 1. Path Calculation (Strip mount point)
|
|
228
|
+
let relativePath = req.path;
|
|
229
|
+
if (req.path === normalizedRoute) {
|
|
230
|
+
relativePath = "/";
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
const prefix = normalizedRoute.endsWith("/")
|
|
234
|
+
? normalizedRoute
|
|
235
|
+
: `${normalizedRoute}/`;
|
|
236
|
+
if (req.path.startsWith(prefix)) {
|
|
237
|
+
relativePath = req.path.substring(normalizedRoute.length);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
// Remove leading slash for join/basename operations
|
|
241
|
+
const cleanRelative = relativePath.startsWith("/")
|
|
242
|
+
? relativePath.substring(1)
|
|
243
|
+
: relativePath;
|
|
244
|
+
const fileName = cleanRelative.split("/").pop() || "";
|
|
245
|
+
// 2. Dotfile & Restricted File Protection (Global Policy)
|
|
246
|
+
const dotfileConfig = this.globalConfig.dotfiles || "deny";
|
|
247
|
+
const dotfileMode = typeof dotfileConfig === "object"
|
|
248
|
+
? dotfileConfig.mode
|
|
249
|
+
: dotfileConfig;
|
|
250
|
+
const customRestricted = typeof dotfileConfig === "object"
|
|
251
|
+
? dotfileConfig.custom || []
|
|
252
|
+
: [];
|
|
253
|
+
if (dotfileMode === "deny") {
|
|
254
|
+
const isRestricted = fileName.startsWith(".") ||
|
|
255
|
+
customRestricted.includes(fileName);
|
|
256
|
+
if (isRestricted) {
|
|
257
|
+
this.qLog.warn(
|
|
258
|
+
// "security",
|
|
259
|
+
`Blocked attempt to access restricted file: ${fileName}`);
|
|
260
|
+
res.status(403).end("Forbidden: Access Denied");
|
|
261
|
+
return next();
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
const fullPath = this.sys.path.join(dir, relativePath);
|
|
265
|
+
// 3. Path Normalization & Security Check (Sandbox)
|
|
266
|
+
const resolvedPath = this.sys.path.resolve(fullPath);
|
|
267
|
+
const rootDir = this.sys.path.resolve(dir);
|
|
268
|
+
const projectRoot = this.sys.__root__;
|
|
269
|
+
if (!options.allowOutsideRoot &&
|
|
270
|
+
!options.unsafe &&
|
|
271
|
+
projectRoot) {
|
|
272
|
+
// Check 1: Is the defined directory inside the project root?
|
|
273
|
+
if (!rootDir.startsWith(projectRoot)) {
|
|
274
|
+
this.qLog.warn(
|
|
275
|
+
// "security",
|
|
276
|
+
`Blocked attempt to serve directory outside project root: ${rootDir}`);
|
|
277
|
+
res.status(403).end("Forbidden: Project Root Violation");
|
|
278
|
+
return next();
|
|
279
|
+
}
|
|
280
|
+
// Check 2: Is the requested file inside the defined directory? (Standard Jail)
|
|
281
|
+
if (!resolvedPath.startsWith(rootDir)) {
|
|
282
|
+
this.qLog.warn(
|
|
283
|
+
// "security",
|
|
284
|
+
`Blocked attempt to access file outside static root: ${resolvedPath}`);
|
|
285
|
+
res.status(403).end("Forbidden: Sandbox Violation");
|
|
286
|
+
return next();
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
// 4. LRU Meta-Cache (Anti-DDoS)
|
|
290
|
+
const cacheHit = this.metaCache.get(resolvedPath);
|
|
291
|
+
if (cacheHit && !cacheHit.exists) {
|
|
292
|
+
return next();
|
|
293
|
+
}
|
|
294
|
+
// 5. Existence Check (with Meta-Cache Protection)
|
|
295
|
+
if (!this.sys.fs.exists(resolvedPath)) {
|
|
296
|
+
this.metaCache.set(resolvedPath, false);
|
|
297
|
+
return next();
|
|
298
|
+
}
|
|
299
|
+
// Skip if it's a directory
|
|
300
|
+
if (this.sys.fs.isDir(resolvedPath)) {
|
|
301
|
+
return next();
|
|
302
|
+
}
|
|
303
|
+
// 6. Delegation to XHSC (Go)
|
|
304
|
+
const worker = this.app._xhscWorker;
|
|
305
|
+
if (worker) {
|
|
306
|
+
res.status(0);
|
|
307
|
+
// Handle Cache-Control (Local option > Global config)
|
|
308
|
+
const maxAge = options.maxAge ?? this.globalConfig.defaultMaxAge;
|
|
309
|
+
if (maxAge !== undefined) {
|
|
310
|
+
res.setHeader("Cache-Control", `public, max-age=${maxAge}`);
|
|
311
|
+
}
|
|
312
|
+
worker.delegateStatic(req.id, resolvedPath);
|
|
313
|
+
res.end();
|
|
314
|
+
return next();
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
res.status(500).send("[XStatic] High-performance static serving requires XHSC Clustering mode.");
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
catch (err) {
|
|
321
|
+
this.logger.error("server", `XStatic failure: ${err}`);
|
|
322
|
+
next();
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
this.logger.debug("server", `Static route defined: ${normalizedRoute} -> ${dir}`);
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* @deprecated Use {@link define} instead. Will be removed in a future release.
|
|
329
|
+
*
|
|
330
|
+
* Alias for {@link define} — kept for beta compatibility only.
|
|
331
|
+
*
|
|
332
|
+
* @param route - The URL prefix to mount (e.g. `"/assets"`).
|
|
333
|
+
* @param dir - The filesystem directory to serve from.
|
|
334
|
+
* @param options - Optional per-route overrides. See {@link StaticOptions}.
|
|
335
|
+
*
|
|
336
|
+
* @example
|
|
337
|
+
* ```typescript
|
|
338
|
+
* // ❌ Deprecated — avoid in new code
|
|
339
|
+
* xs.serve("/assets", "./public");
|
|
340
|
+
*
|
|
341
|
+
* // ✅ Preferred
|
|
342
|
+
* xs.define("/assets", "./public");
|
|
343
|
+
* ```
|
|
344
|
+
*/
|
|
345
|
+
serve(_route, _dir, _options = {}) {
|
|
346
|
+
const msg = "XStatic.serve() is deprecated. Please use XStatic.define().";
|
|
347
|
+
this.qLog.error(
|
|
348
|
+
// "server",
|
|
349
|
+
msg);
|
|
350
|
+
// this.define(route, dir, options);
|
|
351
|
+
throw new Error(msg);
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
exports.XStatic = XStatic;
|
|
356
|
+
//# sourceMappingURL=XStatic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"XStatic.js","sources":["../../../../../../src/server/components/static/XStatic.ts"],"sourcesContent":[null],"names":["Configs","XStaticMetaCache","Logger","QuickLogger","IXStaticSchem","UriNormalizer"],"mappings":"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"}
|
|
@@ -311,6 +311,7 @@ const DEFAULT_OPTIONS = {
|
|
|
311
311
|
},
|
|
312
312
|
},
|
|
313
313
|
plugins: {
|
|
314
|
+
allowLifecycleByDefault: false, // Zero-Trust Security: Plugins must explicitly whitelist their hooks. This default prevents unknown plugins from accessing sensitive lifecycle events (start, ready, stop).
|
|
314
315
|
routeOptimization: {
|
|
315
316
|
enabled: false, // Disabled by default for performance
|
|
316
317
|
analysisInterval: 300000, // 5 minutes
|