xypriss 9.12.59 → 9.12.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/src/ConfigurationManager.js +388 -0
- package/dist/cjs/src/ConfigurationManager.js.map +1 -0
- package/dist/cjs/src/FiUp.js +88 -0
- package/dist/cjs/src/FiUp.js.map +1 -0
- package/dist/cjs/src/cache/CacheFactory.js +416 -0
- package/dist/cjs/src/cache/CacheFactory.js.map +1 -0
- package/dist/cjs/src/configs/WEAK_SECRETS.js +21 -0
- package/dist/cjs/src/configs/WEAK_SECRETS.js.map +1 -0
- package/dist/cjs/src/const.js +577 -0
- package/dist/cjs/src/const.js.map +1 -0
- package/dist/cjs/src/index.js +110 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/middleware/XJsonResponseHandler.js +180 -0
- package/dist/cjs/src/middleware/XJsonResponseHandler.js.map +1 -0
- package/dist/cjs/src/middleware/XyPrissMiddlewareAPI.js +289 -0
- package/dist/cjs/src/middleware/XyPrissMiddlewareAPI.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js +167 -0
- package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/ConversionProxyMiddleware.js +52 -0
- package/dist/cjs/src/middleware/built-in/ConversionProxyMiddleware.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/BrowserOnlyProtector.js +552 -0
- package/dist/cjs/src/middleware/built-in/security/BrowserOnlyProtector.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js +556 -0
- package/dist/cjs/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/MaliciousUrlScanner.js +137 -0
- package/dist/cjs/src/middleware/built-in/security/MaliciousUrlScanner.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/MobileOnlyProtector.js +504 -0
- package/dist/cjs/src/middleware/built-in/security/MobileOnlyProtector.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/RequestSignatureProtector.js +487 -0
- package/dist/cjs/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/TerminalOnlyProtector.js +478 -0
- package/dist/cjs/src/middleware/built-in/security/TerminalOnlyProtector.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/UriNormalizer.js +413 -0
- package/dist/cjs/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissHPP.js +52 -0
- package/dist/cjs/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
- package/dist/cjs/src/middleware/safe-json-middleware.js +73 -0
- package/dist/cjs/src/middleware/safe-json-middleware.js.map +1 -0
- package/dist/cjs/src/middleware/security-middleware.js +548 -0
- package/dist/cjs/src/middleware/security-middleware.js.map +1 -0
- package/dist/cjs/src/plugins/ServerPluginManager.js +153 -0
- package/dist/cjs/src/plugins/ServerPluginManager.js.map +1 -0
- package/dist/cjs/src/plugins/api/PluginAPI.js +306 -0
- package/dist/cjs/src/plugins/api/PluginAPI.js.map +1 -0
- package/dist/cjs/src/plugins/builtin/RouteOptimizationPlugin.js +421 -0
- package/dist/cjs/src/plugins/builtin/RouteOptimizationPlugin.js.map +1 -0
- package/dist/cjs/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js +598 -0
- package/dist/cjs/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js.map +1 -0
- package/dist/cjs/src/plugins/builtin/xems/XemsBuiltinPlugin.js +327 -0
- package/dist/cjs/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -0
- package/dist/cjs/src/plugins/builtin/xems/XemsPlugin.js +431 -0
- package/dist/cjs/src/plugins/builtin/xems/XemsPlugin.js.map +1 -0
- package/dist/cjs/src/plugins/const/OFFICIAL_PLUGINS.js +10 -0
- package/dist/cjs/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -0
- package/dist/cjs/src/plugins/const/PluginHookIds.js +191 -0
- package/dist/cjs/src/plugins/const/PluginHookIds.js.map +1 -0
- package/dist/cjs/src/plugins/const/XyprissTempDir.js +148 -0
- package/dist/cjs/src/plugins/const/XyprissTempDir.js.map +1 -0
- package/dist/cjs/src/plugins/const/getSysApi.js +14 -0
- package/dist/cjs/src/plugins/const/getSysApi.js.map +1 -0
- package/dist/cjs/src/plugins/core/PermissionManager.js +240 -0
- package/dist/cjs/src/plugins/core/PermissionManager.js.map +1 -0
- package/dist/cjs/src/plugins/core/XPluginManager.js +218 -0
- package/dist/cjs/src/plugins/core/XPluginManager.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginHookRunner.js +108 -0
- package/dist/cjs/src/plugins/core/manager/PluginHookRunner.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginInterceptor.js +200 -0
- package/dist/cjs/src/plugins/core/manager/PluginInterceptor.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginLoader.js +208 -0
- package/dist/cjs/src/plugins/core/manager/PluginLoader.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginManagement.js +135 -0
- package/dist/cjs/src/plugins/core/manager/PluginManagement.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginRegistry.js +100 -0
- package/dist/cjs/src/plugins/core/manager/PluginRegistry.js.map +1 -0
- package/dist/cjs/src/plugins/core/manager/PluginSecurity.js +441 -0
- package/dist/cjs/src/plugins/core/manager/PluginSecurity.js.map +1 -0
- package/dist/cjs/src/plugins/types/PluginTypes.js +32 -0
- package/dist/cjs/src/plugins/types/PluginTypes.js.map +1 -0
- package/dist/cjs/src/quick-start.js +31 -0
- package/dist/cjs/src/quick-start.js.map +1 -0
- package/dist/cjs/src/schemas/plugingSchema.js +45 -0
- package/dist/cjs/src/schemas/plugingSchema.js.map +1 -0
- package/dist/cjs/src/server/FastServer/ComponentManager.js +92 -0
- package/dist/cjs/src/server/FastServer/ComponentManager.js.map +1 -0
- package/dist/cjs/src/server/FastServer/LogTracingMethods.js +35 -0
- package/dist/cjs/src/server/FastServer/LogTracingMethods.js.map +1 -0
- package/dist/cjs/src/server/FastServer/MiddlewareManager.js +73 -0
- package/dist/cjs/src/server/FastServer/MiddlewareManager.js.map +1 -0
- package/dist/cjs/src/server/FastServer/ShutdownManager.js +82 -0
- package/dist/cjs/src/server/FastServer/ShutdownManager.js.map +1 -0
- package/dist/cjs/src/server/FastServer/UploadManager.js +71 -0
- package/dist/cjs/src/server/FastServer/UploadManager.js.map +1 -0
- package/dist/cjs/src/server/FastServer/index.js +227 -0
- package/dist/cjs/src/server/FastServer/index.js.map +1 -0
- package/dist/cjs/src/server/ServerFactory.js +146 -0
- package/dist/cjs/src/server/ServerFactory.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/CacheManager.js +217 -0
- package/dist/cjs/src/server/components/fastapi/CacheManager.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/RedirectManager.js +437 -0
- package/dist/cjs/src/server/components/fastapi/RedirectManager.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/RequestProcessor.js +182 -0
- package/dist/cjs/src/server/components/fastapi/RequestProcessor.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/RouteManager.js +123 -0
- package/dist/cjs/src/server/components/fastapi/RouteManager.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/WorkerPoolComponent.js +82 -0
- package/dist/cjs/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js +470 -0
- package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/console/types.js +35 -0
- package/dist/cjs/src/server/components/fastapi/console/types.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/templates/redirectTemp.js +101 -0
- package/dist/cjs/src/server/components/fastapi/templates/redirectTemp.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js +299 -0
- package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
- package/dist/cjs/src/server/components/fastapi/upload/file-upload.js +307 -0
- package/dist/cjs/src/server/components/fastapi/upload/file-upload.js.map +1 -0
- package/dist/cjs/src/server/components/multi-server/MultiServerApp.js +598 -0
- package/dist/cjs/src/server/components/multi-server/MultiServerApp.js.map +1 -0
- package/dist/cjs/src/server/components/multi-server/MultiServerManager.js +405 -0
- package/dist/cjs/src/server/components/multi-server/MultiServerManager.js.map +1 -0
- package/dist/cjs/src/server/components/response-control/ResponseControlManager.js +64 -0
- package/dist/cjs/src/server/components/response-control/ResponseControlManager.js.map +1 -0
- 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 +402 -0
- package/dist/cjs/src/server/components/static/XStatic.js.map +1 -0
- package/dist/cjs/src/server/const/Defaulthelmetopts.js +123 -0
- package/dist/cjs/src/server/const/Defaulthelmetopts.js.map +1 -0
- package/dist/cjs/src/server/const/MIME_MAP.js +423 -0
- package/dist/cjs/src/server/const/MIME_MAP.js.map +1 -0
- package/dist/cjs/src/server/const/XHSC_SIGNATURE.js +7 -0
- package/dist/cjs/src/server/const/XHSC_SIGNATURE.js.map +1 -0
- package/dist/cjs/src/server/const/XRUNTIME-HEADER.js +6 -0
- package/dist/cjs/src/server/const/XRUNTIME-HEADER.js.map +1 -0
- package/dist/cjs/src/server/const/default.js +329 -0
- package/dist/cjs/src/server/const/default.js.map +1 -0
- package/dist/cjs/src/server/const/http.js +19 -0
- package/dist/cjs/src/server/const/http.js.map +1 -0
- package/dist/cjs/src/server/const/internalFlags.js +15 -0
- package/dist/cjs/src/server/const/internalFlags.js.map +1 -0
- package/dist/cjs/src/server/const/reStrategy.js +6 -0
- package/dist/cjs/src/server/const/reStrategy.js.map +1 -0
- package/dist/cjs/src/server/const/xemsKeyPlaceholder.js +6 -0
- package/dist/cjs/src/server/const/xemsKeyPlaceholder.js.map +1 -0
- package/dist/cjs/src/server/core/HttpServer.js +287 -0
- package/dist/cjs/src/server/core/HttpServer.js.map +1 -0
- package/dist/cjs/src/server/core/RequestApp.js +95 -0
- package/dist/cjs/src/server/core/RequestApp.js.map +1 -0
- package/dist/cjs/src/server/core/RequestEnhancer.js +351 -0
- package/dist/cjs/src/server/core/RequestEnhancer.js.map +1 -0
- package/dist/cjs/src/server/core/ResponseEnhancer.js +592 -0
- package/dist/cjs/src/server/core/ResponseEnhancer.js.map +1 -0
- package/dist/cjs/src/server/core/SendFileHandler.js +119 -0
- package/dist/cjs/src/server/core/SendFileHandler.js.map +1 -0
- package/dist/cjs/src/server/core/StartupProcessor.js +119 -0
- package/dist/cjs/src/server/core/StartupProcessor.js.map +1 -0
- package/dist/cjs/src/server/core/VirtualServer.js +33 -0
- package/dist/cjs/src/server/core/VirtualServer.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js +178 -0
- package/dist/cjs/src/server/core/XHSCBridge/EngineManager.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/LogProcessor.js +128 -0
- package/dist/cjs/src/server/core/XHSCBridge/LogProcessor.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/SocketManager.js +119 -0
- package/dist/cjs/src/server/core/XHSCBridge/SocketManager.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildClusterArgs.js +70 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildClusterArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildConversionArgs.js +36 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildConversionArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildCoreArgs.js +38 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildCoreArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js +53 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js +48 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildRequestArgs.js +35 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildRequestArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +36 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -0
- 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/cmd/buildUploadArgs.js +43 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildUploadArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js +32 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/corsBuilder.js +23 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/corsBuilder.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/csrfBuilder.js +69 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/csrfBuilder.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/helmetBuilder.js +69 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/helmetBuilder.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/injectionBuilders.js +192 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/injectionBuilders.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/isFeatureEnabled.js +22 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/isFeatureEnabled.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/normalizeRouteConfig.js +28 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/normalizeRouteConfig.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/rateLimitBuilder.js +157 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/rateLimitBuilder.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/resilienceBuilder.js +25 -0
- package/dist/cjs/src/server/core/XHSCBridge/cmd/builders/resilienceBuilder.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCBridge/index.js +107 -0
- package/dist/cjs/src/server/core/XHSCBridge/index.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCProtocol.js +365 -0
- package/dist/cjs/src/server/core/XHSCProtocol.js.map +1 -0
- package/dist/cjs/src/server/core/XHSCRequest.js +555 -0
- package/dist/cjs/src/server/core/XHSCRequest.js.map +1 -0
- package/dist/cjs/src/server/core/XNullSocket.js +118 -0
- package/dist/cjs/src/server/core/XNullSocket.js.map +1 -0
- package/dist/cjs/src/server/core/XyDiagnosticsManager.js +78 -0
- package/dist/cjs/src/server/core/XyDiagnosticsManager.js.map +1 -0
- package/dist/cjs/src/server/core/XyLifecycleManager.js +237 -0
- package/dist/cjs/src/server/core/XyLifecycleManager.js.map +1 -0
- package/dist/cjs/src/server/core/XyModuleManager.js +129 -0
- package/dist/cjs/src/server/core/XyModuleManager.js.map +1 -0
- package/dist/cjs/src/server/core/XyRoutingManager.js +204 -0
- package/dist/cjs/src/server/core/XyRoutingManager.js.map +1 -0
- package/dist/cjs/src/server/core/XyServerCreator.js +134 -0
- package/dist/cjs/src/server/core/XyServerCreator.js.map +1 -0
- package/dist/cjs/src/server/core/XyprissApp.js +578 -0
- package/dist/cjs/src/server/core/XyprissApp.js.map +1 -0
- package/dist/cjs/src/server/core/http/BodyParser.js +48 -0
- package/dist/cjs/src/server/core/http/BodyParser.js.map +1 -0
- package/dist/cjs/src/server/core/http/HttpErrorHandler.js +53 -0
- package/dist/cjs/src/server/core/http/HttpErrorHandler.js.map +1 -0
- package/dist/cjs/src/server/core/http/RequestForwarder.js +45 -0
- package/dist/cjs/src/server/core/http/RequestForwarder.js.map +1 -0
- package/dist/cjs/src/server/core/http/RouteManager.js +107 -0
- package/dist/cjs/src/server/core/http/RouteManager.js.map +1 -0
- package/dist/cjs/src/server/core/request/XyRequestManager.js +231 -0
- package/dist/cjs/src/server/core/request/XyRequestManager.js.map +1 -0
- package/dist/cjs/src/server/handlers/NotFoundHandler.js +85 -0
- package/dist/cjs/src/server/handlers/NotFoundHandler.js.map +1 -0
- package/dist/cjs/src/server/handlers/templates/notFoundTemplate.js +400 -0
- package/dist/cjs/src/server/handlers/templates/notFoundTemplate.js.map +1 -0
- package/dist/cjs/src/server/middleware/MiddlewareManager.js +221 -0
- package/dist/cjs/src/server/middleware/MiddlewareManager.js.map +1 -0
- package/dist/cjs/src/server/routing/Router.js +189 -0
- package/dist/cjs/src/server/routing/Router.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/XyGuard.js +37 -0
- package/dist/cjs/src/server/routing/modules/XyGuard.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/constants.js +18 -0
- package/dist/cjs/src/server/routing/modules/constants.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/groups.js +79 -0
- package/dist/cjs/src/server/routing/modules/groups.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/helpers.js +168 -0
- package/dist/cjs/src/server/routing/modules/helpers.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/middleware.js +173 -0
- package/dist/cjs/src/server/routing/modules/middleware.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/path.js +134 -0
- package/dist/cjs/src/server/routing/modules/path.js.map +1 -0
- package/dist/cjs/src/server/routing/modules/registry.js +164 -0
- package/dist/cjs/src/server/routing/modules/registry.js.map +1 -0
- package/dist/cjs/src/server/utils/ConfigLoader.js +188 -0
- package/dist/cjs/src/server/utils/ConfigLoader.js.map +1 -0
- package/dist/cjs/src/server/utils/MetaConfigRunner.js +89 -0
- package/dist/cjs/src/server/utils/MetaConfigRunner.js.map +1 -0
- package/dist/cjs/src/server/utils/PortManager.js +237 -0
- package/dist/cjs/src/server/utils/PortManager.js.map +1 -0
- package/dist/cjs/src/server/utils/WorkerModeHandler.js +65 -0
- package/dist/cjs/src/server/utils/WorkerModeHandler.js.map +1 -0
- package/dist/cjs/src/server/utils/forceClosePort.js +332 -0
- package/dist/cjs/src/server/utils/forceClosePort.js.map +1 -0
- package/dist/cjs/src/server/utils/internalFlagsFunctions.js +156 -0
- package/dist/cjs/src/server/utils/internalFlagsFunctions.js.map +1 -0
- package/dist/cjs/src/shared/logger/DEFAULT_LOGGER_CONFIG.js +68 -0
- package/dist/cjs/src/shared/logger/DEFAULT_LOGGER_CONFIG.js.map +1 -0
- package/dist/cjs/src/shared/logger/DEFAULT_PALETTE.js +20 -0
- package/dist/cjs/src/shared/logger/DEFAULT_PALETTE.js.map +1 -0
- package/dist/cjs/src/shared/logger/Logger.js +576 -0
- package/dist/cjs/src/shared/logger/Logger.js.map +1 -0
- package/dist/cjs/src/shared/logger/quickLogger.js +213 -0
- package/dist/cjs/src/shared/logger/quickLogger.js.map +1 -0
- package/dist/cjs/src/types/NotFoundConfig.js +87 -0
- package/dist/cjs/src/types/NotFoundConfig.js.map +1 -0
- package/dist/cjs/src/utils/ConfigSyntaxParser.js +243 -0
- package/dist/cjs/src/utils/ConfigSyntaxParser.js.map +1 -0
- package/dist/cjs/src/utils/DotEnvLoader.js +74 -0
- package/dist/cjs/src/utils/DotEnvLoader.js.map +1 -0
- package/dist/cjs/src/utils/JsonUtils.js +33 -0
- package/dist/cjs/src/utils/JsonUtils.js.map +1 -0
- package/dist/cjs/src/utils/ProjectDiscovery.js +214 -0
- package/dist/cjs/src/utils/ProjectDiscovery.js.map +1 -0
- package/dist/cjs/src/utils/SecurityShield.js +61 -0
- package/dist/cjs/src/utils/SecurityShield.js.map +1 -0
- package/dist/cjs/src/utils/Send.js +653 -0
- package/dist/cjs/src/utils/Send.js.map +1 -0
- package/dist/cjs/src/utils/getIp.js +164 -0
- package/dist/cjs/src/utils/getIp.js.map +1 -0
- package/dist/cjs/src/utils/getMime.js +96 -0
- package/dist/cjs/src/utils/getMime.js.map +1 -0
- package/dist/cjs/src/utils/mergeWithDefaults.js +176 -0
- package/dist/cjs/src/utils/mergeWithDefaults.js.map +1 -0
- package/dist/cjs/src/utils/mimeUtils.js +18 -0
- package/dist/cjs/src/utils/mimeUtils.js.map +1 -0
- package/dist/cjs/src/utils/xtrsParser.js +198 -0
- package/dist/cjs/src/utils/xtrsParser.js.map +1 -0
- package/dist/cjs/src/xhsc/EnvApi.js +561 -0
- package/dist/cjs/src/xhsc/EnvApi.js.map +1 -0
- package/dist/cjs/src/xhsc/FSApi.js +54 -0
- package/dist/cjs/src/xhsc/FSApi.js.map +1 -0
- package/dist/cjs/src/xhsc/OSApi.js +225 -0
- package/dist/cjs/src/xhsc/OSApi.js.map +1 -0
- package/dist/cjs/src/xhsc/PathApi.js +403 -0
- package/dist/cjs/src/xhsc/PathApi.js.map +1 -0
- package/dist/cjs/src/xhsc/System.js +63 -0
- package/dist/cjs/src/xhsc/System.js.map +1 -0
- package/dist/cjs/src/xhsc/UtilsApi.js +230 -0
- package/dist/cjs/src/xhsc/UtilsApi.js.map +1 -0
- package/dist/cjs/src/xhsc/VarsApi.js +180 -0
- package/dist/cjs/src/xhsc/VarsApi.js.map +1 -0
- package/dist/cjs/src/xhsc/XyPrissRunner.js +401 -0
- package/dist/cjs/src/xhsc/XyPrissRunner.js.map +1 -0
- package/dist/cjs/src/xhsc/api/env/env.js +93 -0
- package/dist/cjs/src/xhsc/api/env/env.js.map +1 -0
- package/dist/cjs/src/xhsc/cluster/XHSCWorker.js +338 -0
- package/dist/cjs/src/xhsc/cluster/XHSCWorker.js.map +1 -0
- package/dist/cjs/src/xhsc/cluster/xbp.js +343 -0
- package/dist/cjs/src/xhsc/cluster/xbp.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSArchive.js +71 -0
- package/dist/cjs/src/xhsc/fs/FSArchive.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSBase.js +20 -0
- package/dist/cjs/src/xhsc/fs/FSBase.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSCore.js +639 -0
- package/dist/cjs/src/xhsc/fs/FSCore.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSExtended.js +308 -0
- package/dist/cjs/src/xhsc/fs/FSExtended.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSHelpers.js +506 -0
- package/dist/cjs/src/xhsc/fs/FSHelpers.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSSearch.js +100 -0
- package/dist/cjs/src/xhsc/fs/FSSearch.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FSWatch.js +141 -0
- package/dist/cjs/src/xhsc/fs/FSWatch.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/FileHandle.js +112 -0
- package/dist/cjs/src/xhsc/fs/FileHandle.js.map +1 -0
- package/dist/cjs/src/xhsc/fs/TempFileManager.js +178 -0
- package/dist/cjs/src/xhsc/fs/TempFileManager.js.map +1 -0
- package/dist/cjs/src/xhsc/ipc/XHSCDirectIPC.js +134 -0
- package/dist/cjs/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ArrayUtils.js +67 -0
- package/dist/cjs/src/xhsc/utils/ArrayUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/AsyncUtils.js +582 -0
- package/dist/cjs/src/xhsc/utils/AsyncUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/DateUtils.js +1135 -0
- package/dist/cjs/src/xhsc/utils/DateUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/Discovery.js +114 -0
- package/dist/cjs/src/xhsc/utils/Discovery.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/FunctionUtils.js +29 -0
- package/dist/cjs/src/xhsc/utils/FunctionUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/IdUtils.js +22 -0
- package/dist/cjs/src/xhsc/utils/IdUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/LoggerUtils.js +545 -0
- package/dist/cjs/src/xhsc/utils/LoggerUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/NumberUtils.js +79 -0
- package/dist/cjs/src/xhsc/utils/NumberUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ObjectUtils.js +728 -0
- package/dist/cjs/src/xhsc/utils/ObjectUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ObjectWrapper.js +672 -0
- package/dist/cjs/src/xhsc/utils/ObjectWrapper.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/Platform.js +51 -0
- package/dist/cjs/src/xhsc/utils/Platform.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/StringUtils.js +765 -0
- package/dist/cjs/src/xhsc/utils/StringUtils.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/StringWrapper.js +302 -0
- package/dist/cjs/src/xhsc/utils/StringWrapper.js.map +1 -0
- package/dist/cjs/src/xhsc/utils/ValidationUtils.js +49 -0
- package/dist/cjs/src/xhsc/utils/ValidationUtils.js.map +1 -0
- package/dist/cjs/src/xhsc.js +268 -0
- package/dist/cjs/src/xhsc.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/src/ConfigurationManager.js +384 -0
- package/dist/esm/src/ConfigurationManager.js.map +1 -0
- package/dist/esm/src/FiUp.js +82 -0
- package/dist/esm/src/FiUp.js.map +1 -0
- package/dist/esm/src/cache/CacheFactory.js +412 -0
- package/dist/esm/src/cache/CacheFactory.js.map +1 -0
- package/dist/esm/src/configs/WEAK_SECRETS.js +19 -0
- package/dist/esm/src/configs/WEAK_SECRETS.js.map +1 -0
- package/dist/esm/src/const.js +574 -0
- package/dist/esm/src/const.js.map +1 -0
- package/dist/esm/src/index.js +69 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/middleware/XJsonResponseHandler.js +178 -0
- package/dist/esm/src/middleware/XJsonResponseHandler.js.map +1 -0
- package/dist/esm/src/middleware/XyPrissMiddlewareAPI.js +287 -0
- package/dist/esm/src/middleware/XyPrissMiddlewareAPI.js.map +1 -0
- package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js +165 -0
- package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js.map +1 -0
- package/dist/esm/src/middleware/built-in/ConversionProxyMiddleware.js +50 -0
- package/dist/esm/src/middleware/built-in/ConversionProxyMiddleware.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/BrowserOnlyProtector.js +550 -0
- package/dist/esm/src/middleware/built-in/security/BrowserOnlyProtector.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js +554 -0
- package/dist/esm/src/middleware/built-in/security/HoneypotTarpit.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/MaliciousUrlScanner.js +135 -0
- package/dist/esm/src/middleware/built-in/security/MaliciousUrlScanner.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/MobileOnlyProtector.js +502 -0
- package/dist/esm/src/middleware/built-in/security/MobileOnlyProtector.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/RequestSignatureProtector.js +466 -0
- package/dist/esm/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/TerminalOnlyProtector.js +476 -0
- package/dist/esm/src/middleware/built-in/security/TerminalOnlyProtector.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/UriNormalizer.js +391 -0
- package/dist/esm/src/middleware/built-in/security/UriNormalizer.js.map +1 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissHPP.js +50 -0
- package/dist/esm/src/middleware/built-in/security/XyPrissHPP.js.map +1 -0
- package/dist/esm/src/middleware/safe-json-middleware.js +71 -0
- package/dist/esm/src/middleware/safe-json-middleware.js.map +1 -0
- package/dist/esm/src/middleware/security-middleware.js +546 -0
- package/dist/esm/src/middleware/security-middleware.js.map +1 -0
- package/dist/esm/src/plugins/ServerPluginManager.js +151 -0
- package/dist/esm/src/plugins/ServerPluginManager.js.map +1 -0
- package/dist/esm/src/plugins/api/PluginAPI.js +304 -0
- package/dist/esm/src/plugins/api/PluginAPI.js.map +1 -0
- package/dist/esm/src/plugins/builtin/RouteOptimizationPlugin.js +419 -0
- package/dist/esm/src/plugins/builtin/RouteOptimizationPlugin.js.map +1 -0
- package/dist/esm/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js +576 -0
- package/dist/esm/src/plugins/builtin/server-maintenance/ServerMaintenancePlugin.js.map +1 -0
- package/dist/esm/src/plugins/builtin/xems/XemsBuiltinPlugin.js +325 -0
- package/dist/esm/src/plugins/builtin/xems/XemsBuiltinPlugin.js.map +1 -0
- package/dist/esm/src/plugins/builtin/xems/XemsPlugin.js +407 -0
- package/dist/esm/src/plugins/builtin/xems/XemsPlugin.js.map +1 -0
- package/dist/esm/src/plugins/const/OFFICIAL_PLUGINS.js +8 -0
- package/dist/esm/src/plugins/const/OFFICIAL_PLUGINS.js.map +1 -0
- package/dist/esm/src/plugins/const/PluginHookIds.js +187 -0
- package/dist/esm/src/plugins/const/PluginHookIds.js.map +1 -0
- package/dist/esm/src/plugins/const/XyprissTempDir.js +142 -0
- package/dist/esm/src/plugins/const/XyprissTempDir.js.map +1 -0
- package/dist/esm/src/plugins/const/getSysApi.js +12 -0
- package/dist/esm/src/plugins/const/getSysApi.js.map +1 -0
- package/dist/esm/src/plugins/core/PermissionManager.js +238 -0
- package/dist/esm/src/plugins/core/PermissionManager.js.map +1 -0
- package/dist/esm/src/plugins/core/XPluginManager.js +216 -0
- package/dist/esm/src/plugins/core/XPluginManager.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginHookRunner.js +106 -0
- package/dist/esm/src/plugins/core/manager/PluginHookRunner.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginInterceptor.js +198 -0
- package/dist/esm/src/plugins/core/manager/PluginInterceptor.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginLoader.js +206 -0
- package/dist/esm/src/plugins/core/manager/PluginLoader.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginManagement.js +133 -0
- package/dist/esm/src/plugins/core/manager/PluginManagement.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginRegistry.js +98 -0
- package/dist/esm/src/plugins/core/manager/PluginRegistry.js.map +1 -0
- package/dist/esm/src/plugins/core/manager/PluginSecurity.js +439 -0
- package/dist/esm/src/plugins/core/manager/PluginSecurity.js.map +1 -0
- package/dist/esm/src/plugins/types/PluginTypes.js +32 -0
- package/dist/esm/src/plugins/types/PluginTypes.js.map +1 -0
- package/dist/esm/src/quick-start.js +29 -0
- package/dist/esm/src/quick-start.js.map +1 -0
- package/dist/esm/src/schemas/plugingSchema.js +43 -0
- package/dist/esm/src/schemas/plugingSchema.js.map +1 -0
- package/dist/esm/src/server/FastServer/ComponentManager.js +90 -0
- package/dist/esm/src/server/FastServer/ComponentManager.js.map +1 -0
- package/dist/esm/src/server/FastServer/LogTracingMethods.js +33 -0
- package/dist/esm/src/server/FastServer/LogTracingMethods.js.map +1 -0
- package/dist/esm/src/server/FastServer/MiddlewareManager.js +71 -0
- package/dist/esm/src/server/FastServer/MiddlewareManager.js.map +1 -0
- package/dist/esm/src/server/FastServer/ShutdownManager.js +80 -0
- package/dist/esm/src/server/FastServer/ShutdownManager.js.map +1 -0
- package/dist/esm/src/server/FastServer/UploadManager.js +69 -0
- package/dist/esm/src/server/FastServer/UploadManager.js.map +1 -0
- package/dist/esm/src/server/FastServer/index.js +225 -0
- package/dist/esm/src/server/FastServer/index.js.map +1 -0
- package/dist/esm/src/server/ServerFactory.js +143 -0
- package/dist/esm/src/server/ServerFactory.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/CacheManager.js +215 -0
- package/dist/esm/src/server/components/fastapi/CacheManager.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/RedirectManager.js +435 -0
- package/dist/esm/src/server/components/fastapi/RedirectManager.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/RequestProcessor.js +180 -0
- package/dist/esm/src/server/components/fastapi/RequestProcessor.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/RouteManager.js +121 -0
- package/dist/esm/src/server/components/fastapi/RouteManager.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/WorkerPoolComponent.js +80 -0
- package/dist/esm/src/server/components/fastapi/WorkerPoolComponent.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js +468 -0
- package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/console/types.js +33 -0
- package/dist/esm/src/server/components/fastapi/console/types.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/templates/redirectTemp.js +99 -0
- package/dist/esm/src/server/components/fastapi/templates/redirectTemp.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js +297 -0
- package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
- package/dist/esm/src/server/components/fastapi/upload/file-upload.js +299 -0
- package/dist/esm/src/server/components/fastapi/upload/file-upload.js.map +1 -0
- package/dist/esm/src/server/components/multi-server/MultiServerApp.js +596 -0
- package/dist/esm/src/server/components/multi-server/MultiServerApp.js.map +1 -0
- package/dist/esm/src/server/components/multi-server/MultiServerManager.js +403 -0
- package/dist/esm/src/server/components/multi-server/MultiServerManager.js.map +1 -0
- package/dist/esm/src/server/components/response-control/ResponseControlManager.js +62 -0
- package/dist/esm/src/server/components/response-control/ResponseControlManager.js.map +1 -0
- 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 +400 -0
- package/dist/esm/src/server/components/static/XStatic.js.map +1 -0
- package/dist/esm/src/server/const/Defaulthelmetopts.js +121 -0
- package/dist/esm/src/server/const/Defaulthelmetopts.js.map +1 -0
- package/dist/esm/src/server/const/MIME_MAP.js +421 -0
- package/dist/esm/src/server/const/MIME_MAP.js.map +1 -0
- package/dist/esm/src/server/const/XHSC_SIGNATURE.js +5 -0
- package/dist/esm/src/server/const/XHSC_SIGNATURE.js.map +1 -0
- package/dist/esm/src/server/const/XRUNTIME-HEADER.js +4 -0
- package/dist/esm/src/server/const/XRUNTIME-HEADER.js.map +1 -0
- package/dist/esm/src/server/const/default.js +325 -0
- package/dist/esm/src/server/const/default.js.map +1 -0
- package/dist/esm/src/server/const/http.js +17 -0
- package/dist/esm/src/server/const/http.js.map +1 -0
- package/dist/esm/src/server/const/internalFlags.js +13 -0
- package/dist/esm/src/server/const/internalFlags.js.map +1 -0
- package/dist/esm/src/server/const/reStrategy.js +4 -0
- package/dist/esm/src/server/const/reStrategy.js.map +1 -0
- package/dist/esm/src/server/const/xemsKeyPlaceholder.js +4 -0
- package/dist/esm/src/server/const/xemsKeyPlaceholder.js.map +1 -0
- package/dist/esm/src/server/core/HttpServer.js +285 -0
- package/dist/esm/src/server/core/HttpServer.js.map +1 -0
- package/dist/esm/src/server/core/RequestApp.js +93 -0
- package/dist/esm/src/server/core/RequestApp.js.map +1 -0
- package/dist/esm/src/server/core/RequestEnhancer.js +349 -0
- package/dist/esm/src/server/core/RequestEnhancer.js.map +1 -0
- package/dist/esm/src/server/core/ResponseEnhancer.js +590 -0
- package/dist/esm/src/server/core/ResponseEnhancer.js.map +1 -0
- package/dist/esm/src/server/core/SendFileHandler.js +117 -0
- package/dist/esm/src/server/core/SendFileHandler.js.map +1 -0
- package/dist/esm/src/server/core/StartupProcessor.js +117 -0
- package/dist/esm/src/server/core/StartupProcessor.js.map +1 -0
- package/dist/esm/src/server/core/VirtualServer.js +31 -0
- package/dist/esm/src/server/core/VirtualServer.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js +176 -0
- package/dist/esm/src/server/core/XHSCBridge/EngineManager.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/LogProcessor.js +126 -0
- package/dist/esm/src/server/core/XHSCBridge/LogProcessor.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/SocketManager.js +96 -0
- package/dist/esm/src/server/core/XHSCBridge/SocketManager.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildClusterArgs.js +68 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildClusterArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildConversionArgs.js +34 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildConversionArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildCoreArgs.js +36 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildCoreArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js +51 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildNetworkArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js +46 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildPerformanceArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildRequestArgs.js +33 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildRequestArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js +34 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildSecurityArgs.js.map +1 -0
- 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/cmd/buildUploadArgs.js +41 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildUploadArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js +30 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/buildWorkerPoolArgs.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/corsBuilder.js +21 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/corsBuilder.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/csrfBuilder.js +67 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/csrfBuilder.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/helmetBuilder.js +67 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/helmetBuilder.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/injectionBuilders.js +182 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/injectionBuilders.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/isFeatureEnabled.js +20 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/isFeatureEnabled.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/normalizeRouteConfig.js +26 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/normalizeRouteConfig.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/rateLimitBuilder.js +155 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/rateLimitBuilder.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/resilienceBuilder.js +23 -0
- package/dist/esm/src/server/core/XHSCBridge/cmd/builders/resilienceBuilder.js.map +1 -0
- package/dist/esm/src/server/core/XHSCBridge/index.js +105 -0
- package/dist/esm/src/server/core/XHSCBridge/index.js.map +1 -0
- package/dist/esm/src/server/core/XHSCProtocol.js +363 -0
- package/dist/esm/src/server/core/XHSCProtocol.js.map +1 -0
- package/dist/esm/src/server/core/XHSCRequest.js +553 -0
- package/dist/esm/src/server/core/XHSCRequest.js.map +1 -0
- package/dist/esm/src/server/core/XNullSocket.js +116 -0
- package/dist/esm/src/server/core/XNullSocket.js.map +1 -0
- package/dist/esm/src/server/core/XyDiagnosticsManager.js +76 -0
- package/dist/esm/src/server/core/XyDiagnosticsManager.js.map +1 -0
- package/dist/esm/src/server/core/XyLifecycleManager.js +235 -0
- package/dist/esm/src/server/core/XyLifecycleManager.js.map +1 -0
- package/dist/esm/src/server/core/XyModuleManager.js +127 -0
- package/dist/esm/src/server/core/XyModuleManager.js.map +1 -0
- package/dist/esm/src/server/core/XyRoutingManager.js +202 -0
- package/dist/esm/src/server/core/XyRoutingManager.js.map +1 -0
- package/dist/esm/src/server/core/XyServerCreator.js +132 -0
- package/dist/esm/src/server/core/XyServerCreator.js.map +1 -0
- package/dist/esm/src/server/core/XyprissApp.js +576 -0
- package/dist/esm/src/server/core/XyprissApp.js.map +1 -0
- package/dist/esm/src/server/core/http/BodyParser.js +46 -0
- package/dist/esm/src/server/core/http/BodyParser.js.map +1 -0
- package/dist/esm/src/server/core/http/HttpErrorHandler.js +51 -0
- package/dist/esm/src/server/core/http/HttpErrorHandler.js.map +1 -0
- package/dist/esm/src/server/core/http/RequestForwarder.js +43 -0
- package/dist/esm/src/server/core/http/RequestForwarder.js.map +1 -0
- package/dist/esm/src/server/core/http/RouteManager.js +105 -0
- package/dist/esm/src/server/core/http/RouteManager.js.map +1 -0
- package/dist/esm/src/server/core/request/XyRequestManager.js +229 -0
- package/dist/esm/src/server/core/request/XyRequestManager.js.map +1 -0
- package/dist/esm/src/server/handlers/NotFoundHandler.js +82 -0
- package/dist/esm/src/server/handlers/NotFoundHandler.js.map +1 -0
- package/dist/esm/src/server/handlers/templates/notFoundTemplate.js +398 -0
- package/dist/esm/src/server/handlers/templates/notFoundTemplate.js.map +1 -0
- package/dist/esm/src/server/middleware/MiddlewareManager.js +219 -0
- package/dist/esm/src/server/middleware/MiddlewareManager.js.map +1 -0
- package/dist/esm/src/server/routing/Router.js +186 -0
- package/dist/esm/src/server/routing/Router.js.map +1 -0
- package/dist/esm/src/server/routing/modules/XyGuard.js +35 -0
- package/dist/esm/src/server/routing/modules/XyGuard.js.map +1 -0
- package/dist/esm/src/server/routing/modules/constants.js +15 -0
- package/dist/esm/src/server/routing/modules/constants.js.map +1 -0
- package/dist/esm/src/server/routing/modules/groups.js +77 -0
- package/dist/esm/src/server/routing/modules/groups.js.map +1 -0
- package/dist/esm/src/server/routing/modules/helpers.js +163 -0
- package/dist/esm/src/server/routing/modules/helpers.js.map +1 -0
- package/dist/esm/src/server/routing/modules/middleware.js +168 -0
- package/dist/esm/src/server/routing/modules/middleware.js.map +1 -0
- package/dist/esm/src/server/routing/modules/path.js +128 -0
- package/dist/esm/src/server/routing/modules/path.js.map +1 -0
- package/dist/esm/src/server/routing/modules/registry.js +161 -0
- package/dist/esm/src/server/routing/modules/registry.js.map +1 -0
- package/dist/esm/src/server/utils/ConfigLoader.js +185 -0
- package/dist/esm/src/server/utils/ConfigLoader.js.map +1 -0
- package/dist/esm/src/server/utils/MetaConfigRunner.js +87 -0
- package/dist/esm/src/server/utils/MetaConfigRunner.js.map +1 -0
- package/dist/esm/src/server/utils/PortManager.js +235 -0
- package/dist/esm/src/server/utils/PortManager.js.map +1 -0
- package/dist/esm/src/server/utils/WorkerModeHandler.js +63 -0
- package/dist/esm/src/server/utils/WorkerModeHandler.js.map +1 -0
- package/dist/esm/src/server/utils/forceClosePort.js +330 -0
- package/dist/esm/src/server/utils/forceClosePort.js.map +1 -0
- package/dist/esm/src/server/utils/internalFlagsFunctions.js +153 -0
- package/dist/esm/src/server/utils/internalFlagsFunctions.js.map +1 -0
- package/dist/esm/src/shared/logger/DEFAULT_LOGGER_CONFIG.js +66 -0
- package/dist/esm/src/shared/logger/DEFAULT_LOGGER_CONFIG.js.map +1 -0
- package/dist/esm/src/shared/logger/DEFAULT_PALETTE.js +18 -0
- package/dist/esm/src/shared/logger/DEFAULT_PALETTE.js.map +1 -0
- package/dist/esm/src/shared/logger/Logger.js +572 -0
- package/dist/esm/src/shared/logger/Logger.js.map +1 -0
- package/dist/esm/src/shared/logger/quickLogger.js +211 -0
- package/dist/esm/src/shared/logger/quickLogger.js.map +1 -0
- package/dist/esm/src/types/NotFoundConfig.js +85 -0
- package/dist/esm/src/types/NotFoundConfig.js.map +1 -0
- package/dist/esm/src/utils/ConfigSyntaxParser.js +241 -0
- package/dist/esm/src/utils/ConfigSyntaxParser.js.map +1 -0
- package/dist/esm/src/utils/DotEnvLoader.js +72 -0
- package/dist/esm/src/utils/DotEnvLoader.js.map +1 -0
- package/dist/esm/src/utils/JsonUtils.js +31 -0
- package/dist/esm/src/utils/JsonUtils.js.map +1 -0
- package/dist/esm/src/utils/ProjectDiscovery.js +206 -0
- package/dist/esm/src/utils/ProjectDiscovery.js.map +1 -0
- package/dist/esm/src/utils/SecurityShield.js +59 -0
- package/dist/esm/src/utils/SecurityShield.js.map +1 -0
- package/dist/esm/src/utils/Send.js +651 -0
- package/dist/esm/src/utils/Send.js.map +1 -0
- package/dist/esm/src/utils/getIp.js +162 -0
- package/dist/esm/src/utils/getIp.js.map +1 -0
- package/dist/esm/src/utils/getMime.js +93 -0
- package/dist/esm/src/utils/getMime.js.map +1 -0
- package/dist/esm/src/utils/mergeWithDefaults.js +174 -0
- package/dist/esm/src/utils/mergeWithDefaults.js.map +1 -0
- package/dist/esm/src/utils/mimeUtils.js +16 -0
- package/dist/esm/src/utils/mimeUtils.js.map +1 -0
- package/dist/esm/src/utils/xtrsParser.js +193 -0
- package/dist/esm/src/utils/xtrsParser.js.map +1 -0
- package/dist/esm/src/xhsc/EnvApi.js +559 -0
- package/dist/esm/src/xhsc/EnvApi.js.map +1 -0
- package/dist/esm/src/xhsc/FSApi.js +52 -0
- package/dist/esm/src/xhsc/FSApi.js.map +1 -0
- package/dist/esm/src/xhsc/OSApi.js +223 -0
- package/dist/esm/src/xhsc/OSApi.js.map +1 -0
- package/dist/esm/src/xhsc/PathApi.js +400 -0
- package/dist/esm/src/xhsc/PathApi.js.map +1 -0
- package/dist/esm/src/xhsc/System.js +61 -0
- package/dist/esm/src/xhsc/System.js.map +1 -0
- package/dist/esm/src/xhsc/UtilsApi.js +228 -0
- package/dist/esm/src/xhsc/UtilsApi.js.map +1 -0
- package/dist/esm/src/xhsc/VarsApi.js +178 -0
- package/dist/esm/src/xhsc/VarsApi.js.map +1 -0
- package/dist/esm/src/xhsc/XyPrissRunner.js +398 -0
- package/dist/esm/src/xhsc/XyPrissRunner.js.map +1 -0
- package/dist/esm/src/xhsc/api/env/env.js +86 -0
- package/dist/esm/src/xhsc/api/env/env.js.map +1 -0
- package/dist/esm/src/xhsc/cluster/XHSCWorker.js +317 -0
- package/dist/esm/src/xhsc/cluster/XHSCWorker.js.map +1 -0
- package/dist/esm/src/xhsc/cluster/xbp.js +340 -0
- package/dist/esm/src/xhsc/cluster/xbp.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSArchive.js +69 -0
- package/dist/esm/src/xhsc/fs/FSArchive.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSBase.js +18 -0
- package/dist/esm/src/xhsc/fs/FSBase.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSCore.js +637 -0
- package/dist/esm/src/xhsc/fs/FSCore.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSExtended.js +306 -0
- package/dist/esm/src/xhsc/fs/FSExtended.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSHelpers.js +504 -0
- package/dist/esm/src/xhsc/fs/FSHelpers.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSSearch.js +98 -0
- package/dist/esm/src/xhsc/fs/FSSearch.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FSWatch.js +139 -0
- package/dist/esm/src/xhsc/fs/FSWatch.js.map +1 -0
- package/dist/esm/src/xhsc/fs/FileHandle.js +110 -0
- package/dist/esm/src/xhsc/fs/FileHandle.js.map +1 -0
- package/dist/esm/src/xhsc/fs/TempFileManager.js +176 -0
- package/dist/esm/src/xhsc/fs/TempFileManager.js.map +1 -0
- package/dist/esm/src/xhsc/ipc/XHSCDirectIPC.js +113 -0
- package/dist/esm/src/xhsc/ipc/XHSCDirectIPC.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ArrayUtils.js +65 -0
- package/dist/esm/src/xhsc/utils/ArrayUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/AsyncUtils.js +580 -0
- package/dist/esm/src/xhsc/utils/AsyncUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/DateUtils.js +1133 -0
- package/dist/esm/src/xhsc/utils/DateUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/Discovery.js +111 -0
- package/dist/esm/src/xhsc/utils/Discovery.js.map +1 -0
- package/dist/esm/src/xhsc/utils/FunctionUtils.js +27 -0
- package/dist/esm/src/xhsc/utils/FunctionUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/IdUtils.js +20 -0
- package/dist/esm/src/xhsc/utils/IdUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/LoggerUtils.js +543 -0
- package/dist/esm/src/xhsc/utils/LoggerUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/NumberUtils.js +77 -0
- package/dist/esm/src/xhsc/utils/NumberUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ObjectUtils.js +726 -0
- package/dist/esm/src/xhsc/utils/ObjectUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ObjectWrapper.js +670 -0
- package/dist/esm/src/xhsc/utils/ObjectWrapper.js.map +1 -0
- package/dist/esm/src/xhsc/utils/Platform.js +49 -0
- package/dist/esm/src/xhsc/utils/Platform.js.map +1 -0
- package/dist/esm/src/xhsc/utils/StringUtils.js +763 -0
- package/dist/esm/src/xhsc/utils/StringUtils.js.map +1 -0
- package/dist/esm/src/xhsc/utils/StringWrapper.js +300 -0
- package/dist/esm/src/xhsc/utils/StringWrapper.js.map +1 -0
- package/dist/esm/src/xhsc/utils/ValidationUtils.js +47 -0
- package/dist/esm/src/xhsc/utils/ValidationUtils.js.map +1 -0
- package/dist/esm/src/xhsc.js +264 -0
- package/dist/esm/src/xhsc.js.map +1 -0
- package/dist/index.d.ts +158 -22
- package/package.json +1 -1
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _default = require('./server/const/default.js');
|
|
4
|
+
var crypto = require('crypto');
|
|
5
|
+
var mergeWithDefaults = require('./utils/mergeWithDefaults.js');
|
|
6
|
+
var WEAK_SECRETS = require('./configs/WEAK_SECRETS.js');
|
|
7
|
+
var xemsKeyPlaceholder = require('./server/const/xemsKeyPlaceholder.js');
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* XyPriss Configuration Manager
|
|
11
|
+
*
|
|
12
|
+
* Provides a safe way to access and update XyPriss configurations
|
|
13
|
+
* without encountering "cannot access before initialization" errors.
|
|
14
|
+
*
|
|
15
|
+
* This class acts as a singleton configuration store that can be used
|
|
16
|
+
* in modular structures where accessing `app.configs` directly might
|
|
17
|
+
* cause initialization timing issues.
|
|
18
|
+
*
|
|
19
|
+
* **IMPORTANT**: This is the SINGLE SOURCE OF TRUTH for all XyPriss configurations.
|
|
20
|
+
* All components should use `Configs.get()` to access configuration values
|
|
21
|
+
* instead of copying values during initialization.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import { Configs } from 'xypriss';
|
|
26
|
+
*
|
|
27
|
+
* // Set configuration
|
|
28
|
+
* Configs.set({
|
|
29
|
+
* fileUpload: {
|
|
30
|
+
* enabled: true,
|
|
31
|
+
* maxFileSize: 5 * 1024 * 1024
|
|
32
|
+
* }
|
|
33
|
+
* });
|
|
34
|
+
*
|
|
35
|
+
* // Get configuration
|
|
36
|
+
* const fileUploadConfig = Configs.get('fileUpload');
|
|
37
|
+
*
|
|
38
|
+
* // Get entire config
|
|
39
|
+
* const allConfigs = Configs.getAll();
|
|
40
|
+
*
|
|
41
|
+
* // Update specific config (updates the source of truth)
|
|
42
|
+
* Configs.update('fileUpload', { maxFileSize: 10 * 1024 * 1024 });
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Configuration Manager Class
|
|
47
|
+
* Singleton pattern for managing XyPriss configurations
|
|
48
|
+
*/
|
|
49
|
+
class ConfigurationManager {
|
|
50
|
+
/**
|
|
51
|
+
* Private constructor to enforce singleton pattern
|
|
52
|
+
* Initializes with default configuration
|
|
53
|
+
*/
|
|
54
|
+
constructor() {
|
|
55
|
+
this.initialized = false;
|
|
56
|
+
// Initialize with default configuration
|
|
57
|
+
this.config = { ..._default.DEFAULT_OPTIONS };
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Get the singleton instance
|
|
61
|
+
*/
|
|
62
|
+
static getInstance() {
|
|
63
|
+
if (!ConfigurationManager.instance) {
|
|
64
|
+
ConfigurationManager.instance = new ConfigurationManager();
|
|
65
|
+
}
|
|
66
|
+
return ConfigurationManager.instance;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Set the entire configuration
|
|
70
|
+
* @param config - XP Server configuration options
|
|
71
|
+
*/
|
|
72
|
+
static set(config) {
|
|
73
|
+
const instance = ConfigurationManager.getInstance();
|
|
74
|
+
instance.config = ConfigurationManager.deepMerge({ ..._default.DEFAULT_OPTIONS }, config);
|
|
75
|
+
// Strict validation for XEMS if persistence is enabled
|
|
76
|
+
ConfigurationManager.validateXemsConfig(instance.config);
|
|
77
|
+
ConfigurationManager.validateGeneralConfig(instance.config);
|
|
78
|
+
instance.initialized = true;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get a specific configuration section
|
|
82
|
+
* @param key - Configuration key (e.g., 'fileUpload', 'security', 'cache')
|
|
83
|
+
* @returns The configuration value for the specified key
|
|
84
|
+
*/
|
|
85
|
+
static get(key) {
|
|
86
|
+
const instance = ConfigurationManager.getInstance();
|
|
87
|
+
return instance.config[key];
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Get the entire configuration object
|
|
91
|
+
* @returns Complete XyPriss Server Configuration (XPSC)
|
|
92
|
+
*/
|
|
93
|
+
static getAll() {
|
|
94
|
+
const instance = ConfigurationManager.getInstance();
|
|
95
|
+
return { ...instance.config };
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Update a specific XyPriss configuration section (deep merge)
|
|
99
|
+
* @param key - Configuration key to update
|
|
100
|
+
* @param value - Partial value to merge with existing configuration
|
|
101
|
+
*/
|
|
102
|
+
static update(key, value) {
|
|
103
|
+
const instance = ConfigurationManager.getInstance();
|
|
104
|
+
const currentValue = instance.config[key];
|
|
105
|
+
// Deep merge the new value with the existing value
|
|
106
|
+
if (typeof currentValue === "object" &&
|
|
107
|
+
currentValue !== null &&
|
|
108
|
+
!Array.isArray(currentValue)) {
|
|
109
|
+
instance.config[key] = {
|
|
110
|
+
...currentValue,
|
|
111
|
+
...value,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// For non-object values, just replace
|
|
116
|
+
instance.config[key] = value;
|
|
117
|
+
}
|
|
118
|
+
// Validate XEMS if it was part of the update
|
|
119
|
+
if (key === "server") {
|
|
120
|
+
ConfigurationManager.validateXemsConfig(instance.config);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Deep merge helper function
|
|
125
|
+
* @param target - Target object
|
|
126
|
+
* @param source - Source object to merge
|
|
127
|
+
* @returns Merged object
|
|
128
|
+
*/
|
|
129
|
+
/**
|
|
130
|
+
* Deeply merge two configuration objects
|
|
131
|
+
* @param target - Target object to merge into
|
|
132
|
+
* @param source - Source object to merge from
|
|
133
|
+
* @returns Merged object
|
|
134
|
+
*/
|
|
135
|
+
static deepMerge(target, source) {
|
|
136
|
+
// Create a plain copy of target. If target is a Proxy, this spreads its properties.
|
|
137
|
+
(Array.isArray(target) ? [...target] : { ...target });
|
|
138
|
+
// for (const key in source) {
|
|
139
|
+
// const sourceValue = source[key];
|
|
140
|
+
// const targetValue = result[key];
|
|
141
|
+
// const isSourceObj =
|
|
142
|
+
// sourceValue &&
|
|
143
|
+
// typeof sourceValue === "object" &&
|
|
144
|
+
// !Array.isArray(sourceValue);
|
|
145
|
+
// const isTargetObj =
|
|
146
|
+
// targetValue &&
|
|
147
|
+
// typeof targetValue === "object" &&
|
|
148
|
+
// !Array.isArray(targetValue);
|
|
149
|
+
// if (isSourceObj && isTargetObj) {
|
|
150
|
+
// // Both are objects, merge them recursively
|
|
151
|
+
// if (targetValue === sourceValue) {
|
|
152
|
+
// continue;
|
|
153
|
+
// }
|
|
154
|
+
// if ((targetValue as any).__isXyPrissImmutable) {
|
|
155
|
+
// // Target is immutable. We must merge recursively into it to trigger traps
|
|
156
|
+
// // and ensure compatibility.
|
|
157
|
+
// ConfigurationManager.deepMerge(targetValue, sourceValue);
|
|
158
|
+
// result[key] = targetValue;
|
|
159
|
+
// } else {
|
|
160
|
+
// // Target is plain, merge recursively
|
|
161
|
+
// result[key] = ConfigurationManager.deepMerge(
|
|
162
|
+
// targetValue,
|
|
163
|
+
// sourceValue,
|
|
164
|
+
// ) as any;
|
|
165
|
+
// }
|
|
166
|
+
// } else if (
|
|
167
|
+
// Array.isArray(sourceValue) &&
|
|
168
|
+
// Array.isArray(targetValue)
|
|
169
|
+
// ) {
|
|
170
|
+
// // For arrays, concatenate them to allow additive configuration (e.g., plugins)
|
|
171
|
+
// result[key] = [...targetValue, ...sourceValue] as any;
|
|
172
|
+
// } else if (sourceValue !== undefined) {
|
|
173
|
+
// // Primitive, non-matching types, or target is not an object.
|
|
174
|
+
// // If the parent (target) is immutable, try to set it there to trigger trap
|
|
175
|
+
// // This will throw if the value is different from the current one.
|
|
176
|
+
// if ((target as any).__isXyPrissImmutable) {
|
|
177
|
+
// (target as any)[key] = sourceValue;
|
|
178
|
+
// }
|
|
179
|
+
// result[key] = sourceValue as any;
|
|
180
|
+
// }
|
|
181
|
+
// }
|
|
182
|
+
return mergeWithDefaults.mergeWithDefaults(target, source);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Merge configuration with existing config (deep merge)
|
|
186
|
+
* @param config - Partial configuration to merge
|
|
187
|
+
*/
|
|
188
|
+
static merge(config) {
|
|
189
|
+
const instance = ConfigurationManager.getInstance();
|
|
190
|
+
// Check if the incoming config is marked as immutable
|
|
191
|
+
const shouldBeImmutable = config?.__isXyPrissImmutable;
|
|
192
|
+
instance.config = ConfigurationManager.deepMerge(instance.config, config);
|
|
193
|
+
// Strict validation for XEMS
|
|
194
|
+
ConfigurationManager.validateXemsConfig(instance.config);
|
|
195
|
+
ConfigurationManager.validateGeneralConfig(instance.config);
|
|
196
|
+
// If it should be immutable, wrap it using the global __const__.vars.make
|
|
197
|
+
if (shouldBeImmutable &&
|
|
198
|
+
typeof globalThis.__const__ !== "undefined") {
|
|
199
|
+
instance.config = globalThis.__const__.vars.make(instance.config, "Configs");
|
|
200
|
+
}
|
|
201
|
+
instance.initialized = true;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Check if configuration has been initialized
|
|
205
|
+
* @returns true if configuration has been set, false otherwise
|
|
206
|
+
*/
|
|
207
|
+
static isInitialized() {
|
|
208
|
+
const instance = ConfigurationManager.getInstance();
|
|
209
|
+
return instance.initialized;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Reset configuration to empty state
|
|
213
|
+
* Useful for testing or reinitializing
|
|
214
|
+
*/
|
|
215
|
+
static reset() {
|
|
216
|
+
const instance = ConfigurationManager.getInstance();
|
|
217
|
+
instance.config = { ..._default.DEFAULT_OPTIONS };
|
|
218
|
+
instance.initialized = false;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Check if a specific configuration section exists
|
|
222
|
+
* @param key - Configuration key to check
|
|
223
|
+
* @returns true if the configuration section exists
|
|
224
|
+
*/
|
|
225
|
+
static has(key) {
|
|
226
|
+
const instance = ConfigurationManager.getInstance();
|
|
227
|
+
return key in instance.config && instance.config[key] !== undefined;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Get configuration with a default value if not set
|
|
231
|
+
* @param key - Configuration key
|
|
232
|
+
* @param defaultValue - Default value to return if key doesn't exist
|
|
233
|
+
* @returns Configuration value or default value
|
|
234
|
+
*/
|
|
235
|
+
static getOrDefault(key, defaultValue) {
|
|
236
|
+
const instance = ConfigurationManager.getInstance();
|
|
237
|
+
return instance.config[key] ?? defaultValue;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Delete a specific configuration section
|
|
241
|
+
* @param key - Configuration key to delete
|
|
242
|
+
*/
|
|
243
|
+
static delete(key) {
|
|
244
|
+
const instance = ConfigurationManager.getInstance();
|
|
245
|
+
delete instance.config[key];
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Validates XEMS configuration strictly
|
|
249
|
+
* @param config - Current server configuration
|
|
250
|
+
* @throws Error if XEMS persistence is enabled but secret is invalid
|
|
251
|
+
*/
|
|
252
|
+
/**
|
|
253
|
+
* General configuration validation
|
|
254
|
+
* @param config - Current server configuration
|
|
255
|
+
*/
|
|
256
|
+
static validateGeneralConfig(config) {
|
|
257
|
+
// XHSC is mandatory and enabled by default.
|
|
258
|
+
// It cannot be explicitly set to false.
|
|
259
|
+
if (config.server && config.server.xhsc === false) {
|
|
260
|
+
throw new Error("[XSec] XHSC is enabled by default and cannot be disabled.");
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
static validateXemsConfig(config) {
|
|
264
|
+
const xems = config.server?.xems;
|
|
265
|
+
if (typeof xems !== "object" || !xems.persistence?.enabled)
|
|
266
|
+
return;
|
|
267
|
+
const secret = xems.persistence.secret;
|
|
268
|
+
if (!secret || typeof secret !== "string") {
|
|
269
|
+
throw new Error("[XyPriss] XEMS Persistence enabled but no secret provided. " +
|
|
270
|
+
"Generate one with: node -e \"console.log(require('crypto').randomBytes(32).toString('hex').slice(0,32))\"");
|
|
271
|
+
}
|
|
272
|
+
// 0. Vérification de l'extension du fichier
|
|
273
|
+
if (xems?.persistence?.enabled
|
|
274
|
+
// !xems?.persistence?.path?.endsWith(".xems")
|
|
275
|
+
) {
|
|
276
|
+
if (!xems?.persistence?.path) {
|
|
277
|
+
throw new Error(`[XyPriss] XEMS Persistence path is required when persistence is enabled.`);
|
|
278
|
+
}
|
|
279
|
+
// if (xems.persistence.path.length > 20) {
|
|
280
|
+
// throw new Error(
|
|
281
|
+
// `[XyPriss] XEMS Persistence path too long. Maximum 20 characters allowed.`,
|
|
282
|
+
// );
|
|
283
|
+
// }
|
|
284
|
+
if (!xems?.persistence?.path?.endsWith(".xems")) {
|
|
285
|
+
throw new Error(`[XyPriss] XEMS Persistence path must end with ".xems". Got ${xems?.persistence?.path}`);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
// 1. Longueur exacte en bytes
|
|
289
|
+
// const byteLength = Buffer.byteLength(secret, "utf8");
|
|
290
|
+
// if (byteLength !== 32) {
|
|
291
|
+
// throw new Error(
|
|
292
|
+
// `[XyPriss] Secret must be exactly 32 bytes. Got ${byteLength} bytes (${secret.length} chars).`,
|
|
293
|
+
// );
|
|
294
|
+
// }
|
|
295
|
+
if (xemsKeyPlaceholder.xemsKeyPlaceholder.toLowerCase().trim() ===
|
|
296
|
+
secret.toLowerCase().trim()) {
|
|
297
|
+
throw new Error("[XyPriss] Secret matches the default placeholder. Generate a real secret key using:\n\n" +
|
|
298
|
+
" node -e \"console.log(require('crypto').randomBytes(32).toString('hex').slice(0,32))\"\n\n" +
|
|
299
|
+
"or using the XyPriss Cipher class (https://xypriss.nehonix.com/docs/security/xsec-m?h=cipher#the-unified-cipher-api)");
|
|
300
|
+
}
|
|
301
|
+
// 2. Timing-safe check contre placeholders connus
|
|
302
|
+
const secretBuf = Buffer.from(secret);
|
|
303
|
+
for (const weak of WEAK_SECRETS.WEAK_SECRETS) {
|
|
304
|
+
const weakBuf = Buffer.from(weak);
|
|
305
|
+
if (secretBuf.length === weakBuf.length &&
|
|
306
|
+
crypto.timingSafeEqual(secretBuf, weakBuf)) {
|
|
307
|
+
throw new Error("[XyPriss] Secret matches a known weak secret or placeholder. Generate a real secret key using:\n\n" +
|
|
308
|
+
" node -e \"console.log(require('crypto').randomBytes(32).toString('hex').slice(0,32))\"\n\n" +
|
|
309
|
+
"or using the XyPriss Cipher class (https://xypriss.nehonix.com/docs/security/xsec-m?h=cipher#the-unified-cipher-api)");
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
// 3. Entropie de Shannon (bits par caractère)
|
|
313
|
+
const entropy = ConfigurationManager.shannonEntropy(secret);
|
|
314
|
+
if (entropy < 3.5) {
|
|
315
|
+
throw new Error(`[XyPriss] Secret entropy too low (${entropy.toFixed(2)} bits/char, minimum 3.5). ` +
|
|
316
|
+
"Avoid dictionary words, repeated patterns, or predictable sequences.");
|
|
317
|
+
}
|
|
318
|
+
// 4. Détection de patterns répétitifs (ex: "abcabc...", "aaa...")
|
|
319
|
+
if (ConfigurationManager.hasRepetitivePattern(secret)) {
|
|
320
|
+
throw new Error("[XyPriss] Secret contains repetitive patterns. Use a randomly generated key.");
|
|
321
|
+
}
|
|
322
|
+
// 5. Détection de mots du dictionnaire évidents
|
|
323
|
+
const COMMON_WORDS = [
|
|
324
|
+
"secret",
|
|
325
|
+
"password",
|
|
326
|
+
"key",
|
|
327
|
+
"admin",
|
|
328
|
+
"xems",
|
|
329
|
+
"change",
|
|
330
|
+
"secure",
|
|
331
|
+
];
|
|
332
|
+
const lowerSecret = secret.toLowerCase();
|
|
333
|
+
for (const word of COMMON_WORDS) {
|
|
334
|
+
if (lowerSecret.includes(word)) {
|
|
335
|
+
throw new Error(`[XyPriss] Secret contains a common word ("${word}"). ` +
|
|
336
|
+
"Use a randomly generated key with no dictionary words.");
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Calcule l'entropie de Shannon en bits par caractère
|
|
342
|
+
* Une clé aléatoire de 32 chars ASCII aura ~4.5-5 bits/char
|
|
343
|
+
* "a_very_secret_32_chars_key_12345" aura ~3.2 bits/char → rejeté
|
|
344
|
+
*/
|
|
345
|
+
static shannonEntropy(str) {
|
|
346
|
+
const freq = new Map();
|
|
347
|
+
for (const char of str) {
|
|
348
|
+
freq.set(char, (freq.get(char) ?? 0) + 1);
|
|
349
|
+
}
|
|
350
|
+
let entropy = 0;
|
|
351
|
+
for (const count of freq.values()) {
|
|
352
|
+
const p = count / str.length;
|
|
353
|
+
entropy -= p * Math.log2(p);
|
|
354
|
+
}
|
|
355
|
+
return entropy;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Détecte si une string contient un pattern qui se répète
|
|
359
|
+
* ex: "abcdabcdabcdabcdabcdabcdabcdabcd" → true
|
|
360
|
+
*/
|
|
361
|
+
static hasRepetitivePattern(str) {
|
|
362
|
+
const len = str.length;
|
|
363
|
+
// Teste les périodes de 2 à len/2
|
|
364
|
+
for (let period = 2; period <= len / 2; period++) {
|
|
365
|
+
if (len % period !== 0)
|
|
366
|
+
continue;
|
|
367
|
+
const pattern = str.slice(0, period);
|
|
368
|
+
if (pattern.repeat(len / period) === str)
|
|
369
|
+
return true;
|
|
370
|
+
}
|
|
371
|
+
return false;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
// Self-register global __cfg__ if in a global environment
|
|
375
|
+
if (typeof globalThis !== "undefined") {
|
|
376
|
+
globalThis.__cfg__ =
|
|
377
|
+
globalThis.__cfg__ || ConfigurationManager;
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* Default instance for easy access
|
|
381
|
+
*/
|
|
382
|
+
const __cfg__ = globalThis
|
|
383
|
+
.__cfg__;
|
|
384
|
+
|
|
385
|
+
exports.CM = ConfigurationManager;
|
|
386
|
+
exports.Configs = ConfigurationManager;
|
|
387
|
+
exports.__cfg__ = __cfg__;
|
|
388
|
+
//# sourceMappingURL=ConfigurationManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigurationManager.js","sources":["../../../src/ConfigurationManager.ts"],"sourcesContent":[null],"names":["DEFAULT_OPTIONS","mergeWithDefaults","xemsKeyPlaceholder","WEAK_SECRETS","timingSafeEqual"],"mappings":";;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCG;AASH;;;AAGG;AACH,MAAM,oBAAoB,CAAA;AAKtB;;;AAGG;AACH,IAAA,WAAA,GAAA;QANQ,IAAA,CAAA,WAAW,GAAY,KAAK;;AAQhC,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,GAAGA,wBAAe,EAAE;IACxC;AAEA;;AAEG;AACK,IAAA,OAAO,WAAW,GAAA;AACtB,QAAA,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE;AAChC,YAAA,oBAAoB,CAAC,QAAQ,GAAG,IAAI,oBAAoB,EAAE;QAC9D;QACA,OAAO,oBAAoB,CAAC,QAAQ;IACxC;AAEA;;;AAGG;IACI,OAAO,GAAG,CAAC,MAAqB,EAAA;AACnC,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,QAAQ,CAAC,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAC5C,EAAE,GAAGA,wBAAe,EAAE,EACtB,MAAM,CACT;;AAGD,QAAA,oBAAoB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC;AACxD,QAAA,oBAAoB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC;AAE3D,QAAA,QAAQ,CAAC,WAAW,GAAG,IAAI;IAC/B;AAEA;;;;AAIG;IACI,OAAO,GAAG,CAAgC,GAAM,EAAA;AACnD,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;IAC/B;AAEA;;;AAGG;AACI,IAAA,OAAO,MAAM,GAAA;AAChB,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE;IACjC;AAEA;;;;AAIG;AACI,IAAA,OAAO,MAAM,CAChB,GAAM,EACN,KAAgC,EAAA;AAEhC,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;QACnD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;;QAGzC,IACI,OAAO,YAAY,KAAK,QAAQ;AAChC,YAAA,YAAY,KAAK,IAAI;AACrB,YAAA,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAC9B;AACE,YAAA,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG;AACnB,gBAAA,GAAG,YAAY;AACf,gBAAA,GAAG,KAAK;aACS;QACzB;aAAO;;AAEH,YAAA,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAyB;QACpD;;AAGA,QAAA,IAAI,GAAG,KAAK,QAAQ,EAAE;AAClB,YAAA,oBAAoB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5D;IACJ;AAEA;;;;;AAKG;AAEH;;;;;AAKG;AACK,IAAA,OAAO,SAAS,CACpB,MAAS,EACT,MAAkB,EAAA;;QAGH,CACX,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDvD,QAAA,OAAOC,mCAAiB,CAAC,MAAM,EAAE,MAAM,CAAC;IAC5C;AAEA;;;AAGG;IACI,OAAO,KAAK,CAAC,MAA8B,EAAA;AAC9C,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;;AAGnD,QAAA,MAAM,iBAAiB,GAAI,MAAc,EAAE,oBAAoB;AAE/D,QAAA,QAAQ,CAAC,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAC5C,QAAQ,CAAC,MAAM,EACf,MAAM,CACT;;AAGD,QAAA,oBAAoB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC;AACxD,QAAA,oBAAoB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC;;AAG3D,QAAA,IACI,iBAAiB;AACjB,YAAA,OAAQ,UAAkB,CAAC,SAAS,KAAK,WAAW,EACtD;AACE,YAAA,QAAQ,CAAC,MAAM,GAAI,UAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CACrD,QAAQ,CAAC,MAAM,EACf,SAAS,CACZ;QACL;AAEA,QAAA,QAAQ,CAAC,WAAW,GAAG,IAAI;IAC/B;AAEA;;;AAGG;AACI,IAAA,OAAO,aAAa,GAAA;AACvB,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;QACnD,OAAO,QAAQ,CAAC,WAAW;IAC/B;AAEA;;;AAGG;AACI,IAAA,OAAO,KAAK,GAAA;AACf,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAGD,wBAAe,EAAE;AACxC,QAAA,QAAQ,CAAC,WAAW,GAAG,KAAK;IAChC;AAEA;;;;AAIG;IACI,OAAO,GAAG,CAAgC,GAAM,EAAA;AACnD,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,OAAO,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS;IACvE;AAEA;;;;;AAKG;AACI,IAAA,OAAO,YAAY,CACtB,GAAM,EACN,YAA8B,EAAA;AAE9B,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;QACnD,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,YAAY;IAC/C;AAEA;;;AAGG;IACI,OAAO,MAAM,CAAgC,GAAM,EAAA;AACtD,QAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,EAAE;AACnD,QAAA,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;IAC/B;AAEA;;;;AAIG;AAEH;;;AAGG;IACK,OAAO,qBAAqB,CAAC,MAAqB,EAAA;;;AAGtD,QAAA,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE;AAC/C,YAAA,MAAM,IAAI,KAAK,CACX,2DAA2D,CAC9D;QACL;IACJ;IAEQ,OAAO,kBAAkB,CAAC,MAAqB,EAAA;AACnD,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI;QAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO;YAAE;AAE5D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM;QAEtC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YACvC,MAAM,IAAI,KAAK,CACX,6DAA6D;AACzD,gBAAA,2GAA2G,CAClH;QACL;;AAGA,QAAA,IACI,IAAI,EAAE,WAAW,EAAE;;UAErB;AACE,YAAA,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE;AAC1B,gBAAA,MAAM,IAAI,KAAK,CACX,CAAA,wEAAA,CAA0E,CAC7E;YACL;;;;;;AAMA,YAAA,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC7C,MAAM,IAAI,KAAK,CACX,CAAA,2DAAA,EAA8D,IAAI,EAAE,WAAW,EAAE,IAAI,CAAA,CAAE,CAC1F;YACL;QACJ;;;;;;;;AAUA,QAAA,IACIE,qCAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE;AACvC,YAAA,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAC7B;YACE,MAAM,IAAI,KAAK,CACX,yFAAyF;gBACrF,8FAA8F;AAC9F,gBAAA,sHAAsH,CAC7H;QACL;;QAGA,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;AACrC,QAAA,KAAK,MAAM,IAAI,IAAIC,yBAAY,EAAE;YAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AACjC,YAAA,IACI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;AACnC,gBAAAC,sBAAe,CAAC,SAAS,EAAE,OAAO,CAAC,EACrC;gBACE,MAAM,IAAI,KAAK,CACX,oGAAoG;oBAChG,8FAA8F;AAC9F,oBAAA,sHAAsH,CAC7H;YACL;QACJ;;QAGA,MAAM,OAAO,GAAG,oBAAoB,CAAC,cAAc,CAAC,MAAM,CAAC;AAC3D,QAAA,IAAI,OAAO,GAAG,GAAG,EAAE;YACf,MAAM,IAAI,KAAK,CACX,CAAA,kCAAA,EAAqC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,0BAAA,CAA4B;AAC/E,gBAAA,sEAAsE,CAC7E;QACL;;AAGA,QAAA,IAAI,oBAAoB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE;AACnD,YAAA,MAAM,IAAI,KAAK,CACX,8EAA8E,CACjF;QACL;;AAGA,QAAA,MAAM,YAAY,GAAG;YACjB,QAAQ;YACR,UAAU;YACV,KAAK;YACL,OAAO;YACP,MAAM;YACN,QAAQ;YACR,QAAQ;SACX;AACD,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE;AACxC,QAAA,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;AAC7B,YAAA,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC5B,gBAAA,MAAM,IAAI,KAAK,CACX,CAAA,0CAAA,EAA6C,IAAI,CAAA,IAAA,CAAM;AACnD,oBAAA,wDAAwD,CAC/D;YACL;QACJ;IACJ;AAEA;;;;AAIG;IACK,OAAO,cAAc,CAAC,GAAW,EAAA;AACrC,QAAA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB;AACtC,QAAA,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE;AACpB,YAAA,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C;QACA,IAAI,OAAO,GAAG,CAAC;QACf,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AAC/B,YAAA,MAAM,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM;YAC5B,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B;AACA,QAAA,OAAO,OAAO;IAClB;AAEA;;;AAGG;IACK,OAAO,oBAAoB,CAAC,GAAW,EAAA;AAC3C,QAAA,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM;;AAEtB,QAAA,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE;AAC9C,YAAA,IAAI,GAAG,GAAG,MAAM,KAAK,CAAC;gBAAE;YACxB,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC;YACpC,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,GAAG;AAAE,gBAAA,OAAO,IAAI;QACzD;AACA,QAAA,OAAO,KAAK;IAChB;AACH;AAQD;AACA,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;AAClC,IAAA,UAAkB,CAAC,OAAO;AACtB,QAAA,UAAkB,CAAC,OAAO,IAAI,oBAAoB;AAC3D;AAEA;;AAEG;AACI,MAAM,OAAO,GAAI;AACnB,KAAA;;;;;;"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fileUpload = require('./server/components/fastapi/upload/file-upload.js');
|
|
4
|
+
|
|
5
|
+
// Legacy function exports for backward compatibility
|
|
6
|
+
// These will be deprecated in favor of the class-based API
|
|
7
|
+
// Global instance for backward compatibility
|
|
8
|
+
let globalFileUploadAPI = null;
|
|
9
|
+
/**
|
|
10
|
+
* Initialize the global file upload manager (legacy)
|
|
11
|
+
* This is called automatically when the server starts with file upload enabled
|
|
12
|
+
*
|
|
13
|
+
* @param configManager - The Configs class for accessing configuration
|
|
14
|
+
* @param logger - Logger instance
|
|
15
|
+
*/
|
|
16
|
+
function initializeFileUpload(configManager, logger) {
|
|
17
|
+
if (!globalFileUploadAPI) {
|
|
18
|
+
globalFileUploadAPI = new fileUpload.FileUploadAPI();
|
|
19
|
+
}
|
|
20
|
+
globalFileUploadAPI.initialize(configManager);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Create a middleware for uploading a single file (legacy)
|
|
24
|
+
*/
|
|
25
|
+
function uploadSingle(fieldname) {
|
|
26
|
+
return (req, res, next) => {
|
|
27
|
+
if (!globalFileUploadAPI) {
|
|
28
|
+
return res.status(500).json({
|
|
29
|
+
success: false,
|
|
30
|
+
error: "Configuration Error",
|
|
31
|
+
message: "File upload not initialized. Make sure fileUpload.enabled is true in server options.",
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return globalFileUploadAPI.single(fieldname)(req, res, next);
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Create a middleware for uploading multiple files with the same field name (legacy)
|
|
39
|
+
*/
|
|
40
|
+
function uploadArray(fieldname, maxCount) {
|
|
41
|
+
return (req, res, next) => {
|
|
42
|
+
if (!globalFileUploadAPI) {
|
|
43
|
+
return res.status(500).json({
|
|
44
|
+
success: false,
|
|
45
|
+
error: "Configuration Error",
|
|
46
|
+
message: "File upload not initialized. Make sure fileUpload.enabled is true in server options.",
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return globalFileUploadAPI.array(fieldname, maxCount)(req, res, next);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Create a middleware for uploading multiple files with different field names (legacy)
|
|
54
|
+
*/
|
|
55
|
+
function uploadFields(fields) {
|
|
56
|
+
return (req, res, next) => {
|
|
57
|
+
if (!globalFileUploadAPI) {
|
|
58
|
+
return res.status(500).json({
|
|
59
|
+
success: false,
|
|
60
|
+
error: "Configuration Error",
|
|
61
|
+
message: "File upload not initialized. Make sure fileUpload.enabled is true in server options.",
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
return globalFileUploadAPI.fields(fields)(req, res, next);
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Create a middleware for uploading any files (legacy)
|
|
69
|
+
*/
|
|
70
|
+
function uploadAny() {
|
|
71
|
+
return (req, res, next) => {
|
|
72
|
+
if (!globalFileUploadAPI) {
|
|
73
|
+
return res.status(500).json({
|
|
74
|
+
success: false,
|
|
75
|
+
error: "Configuration Error",
|
|
76
|
+
message: "File upload not initialized. Make sure fileUpload.enabled is true in server options.",
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return globalFileUploadAPI.any()(req, res, next);
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
exports.initializeFileUpload = initializeFileUpload;
|
|
84
|
+
exports.uploadAny = uploadAny;
|
|
85
|
+
exports.uploadArray = uploadArray;
|
|
86
|
+
exports.uploadFields = uploadFields;
|
|
87
|
+
exports.uploadSingle = uploadSingle;
|
|
88
|
+
//# sourceMappingURL=FiUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FiUp.js","sources":["../../../src/FiUp.ts"],"sourcesContent":[null],"names":["FileUploadAPI"],"mappings":";;;;AAAA;AACA;AAMA;AACA,IAAI,mBAAmB,GAAyB,IAAI;AAEpD;;;;;;AAMG;AACG,SAAU,oBAAoB,CAChC,aAA6B,EAC7B,MAAc,EAAA;IAEd,IAAI,CAAC,mBAAmB,EAAE;AACtB,QAAA,mBAAmB,GAAG,IAAIA,wBAAa,EAAE;IAC7C;AACA,IAAA,mBAAmB,CAAC,UAAU,CAAC,aAAa,CAAC;AACjD;AAEA;;AAEG;AACG,SAAU,YAAY,CAAC,SAAiB,EAAA;AAC1C,IAAA,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;QACrC,IAAI,CAAC,mBAAmB,EAAE;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACxB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,KAAK,EAAE,qBAAqB;AAC5B,gBAAA,OAAO,EACH,sFAAsF;AAC7F,aAAA,CAAC;QACN;AACA,QAAA,OAAO,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;AAChE,IAAA,CAAC;AACL;AAEA;;AAEG;AACG,SAAU,WAAW,CAAC,SAAiB,EAAE,QAAiB,EAAA;AAC5D,IAAA,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;QACrC,IAAI,CAAC,mBAAmB,EAAE;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACxB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,KAAK,EAAE,qBAAqB;AAC5B,gBAAA,OAAO,EACH,sFAAsF;AAC7F,aAAA,CAAC;QACN;AACA,QAAA,OAAO,mBAAmB,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;AACzE,IAAA,CAAC;AACL;AAEA;;AAEG;AACG,SAAU,YAAY,CACxB,MAAkD,EAAA;AAElD,IAAA,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;QACrC,IAAI,CAAC,mBAAmB,EAAE;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACxB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,KAAK,EAAE,qBAAqB;AAC5B,gBAAA,OAAO,EACH,sFAAsF;AAC7F,aAAA,CAAC;QACN;AACA,QAAA,OAAO,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;AAC7D,IAAA,CAAC;AACL;AAEA;;AAEG;SACa,SAAS,GAAA;AACrB,IAAA,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;QACrC,IAAI,CAAC,mBAAmB,EAAE;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACxB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,KAAK,EAAE,qBAAqB;AAC5B,gBAAA,OAAO,EACH,sFAAsF;AAC7F,aAAA,CAAC;QACN;QACA,OAAO,mBAAmB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;AACpD,IAAA,CAAC;AACL;;;;;;;;"}
|