@vlian/framework 1.2.56 → 1.2.59
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 +15 -3
- package/dist/analytics/index.cjs +0 -2
- package/dist/analytics/index.js +1 -3
- package/dist/analytics.umd.js +8 -208
- package/dist/components/LocaleSwitch.cjs +0 -2
- package/dist/components/LocaleSwitch.js +1 -103
- package/dist/components/ThemeSwitch.cjs +0 -2
- package/dist/components/ThemeSwitch.js +1 -102
- package/dist/components/index.cjs +0 -2
- package/dist/components/index.js +1 -4
- package/dist/components/persistence.cjs +0 -2
- package/dist/components/persistence.js +1 -39
- package/dist/core/Test.cjs +0 -2
- package/dist/core/Test.js +1 -15
- package/dist/core/app/AppContext.cjs +0 -2
- package/dist/core/app/AppContext.js +1 -339
- package/dist/core/app/AppContext.types.cjs +0 -2
- package/dist/core/app/AppContext.types.js +1 -5
- package/dist/core/app/BasicLayout.cjs +0 -2
- package/dist/core/app/BasicLayout.js +1 -74
- package/dist/core/app/DefaultApp.cjs +0 -2
- package/dist/core/app/DefaultApp.js +1 -143
- package/dist/core/app/index.cjs +0 -2
- package/dist/core/app/index.js +1 -7
- package/dist/core/config/AppConfig.cjs +0 -2
- package/dist/core/config/AppConfig.js +1 -133
- package/dist/core/config/ConfigLoader.cjs +0 -2
- package/dist/core/config/ConfigLoader.js +1 -311
- package/dist/core/config/ConfigValidator.cjs +0 -2
- package/dist/core/config/ConfigValidator.js +2 -121
- package/dist/core/config/index.cjs +0 -2
- package/dist/core/config/index.js +1 -7
- package/dist/core/dev/DevTools.cjs +0 -2
- package/dist/core/dev/DevTools.js +1 -210
- package/dist/core/error/ErrorBoundary.cjs +0 -2
- package/dist/core/error/ErrorBoundary.js +1 -399
- package/dist/core/error/ErrorHandler.cjs +0 -2
- package/dist/core/error/ErrorHandler.js +1 -261
- package/dist/core/error/index.cjs +0 -2
- package/dist/core/error/index.js +1 -6
- package/dist/core/event/AppEventBus.cjs +0 -2
- package/dist/core/event/AppEventBus.js +1 -438
- package/dist/core/event/frameworkEvents.cjs +0 -2
- package/dist/core/event/frameworkEvents.js +1 -135
- package/dist/core/event/hooks.cjs +0 -2
- package/dist/core/event/hooks.js +1 -95
- package/dist/core/event/index.cjs +0 -2
- package/dist/core/event/index.js +1 -10
- package/dist/core/event/types.cjs +0 -2
- package/dist/core/event/types.js +1 -56
- package/dist/core/event/useEventBus.cjs +0 -2
- package/dist/core/event/useEventBus.js +1 -39
- package/dist/core/index.cjs +0 -2
- package/dist/core/index.js +1 -69
- package/dist/core/initialization/InitializationErrorThrower.cjs +0 -2
- package/dist/core/initialization/InitializationErrorThrower.js +1 -30
- package/dist/core/initialization/index.cjs +0 -2
- package/dist/core/initialization/index.js +1 -7
- package/dist/core/initialization/initialization.cjs +0 -2
- package/dist/core/initialization/initialization.js +1 -78
- package/dist/core/initialization/initializationErrorState.cjs +0 -2
- package/dist/core/initialization/initializationErrorState.js +1 -60
- package/dist/core/kernel/defaultAdapters.cjs +0 -2
- package/dist/core/kernel/defaultAdapters.js +1 -176
- package/dist/core/kernel/errors.cjs +0 -2
- package/dist/core/kernel/errors.js +1 -53
- package/dist/core/kernel/index.cjs +0 -2
- package/dist/core/kernel/index.js +1 -4
- package/dist/core/kernel/startKernel.cjs +0 -2
- package/dist/core/kernel/startKernel.js +1 -192
- package/dist/core/kernel/types.cjs +0 -2
- package/dist/core/kernel/types.js +1 -3
- package/dist/core/middleware.cjs +0 -2
- package/dist/core/middleware.js +1 -61
- package/dist/core/plugin/PluginEventBus.cjs +0 -2
- package/dist/core/plugin/PluginEventBus.js +1 -286
- package/dist/core/plugin/PluginSandbox.cjs +0 -2
- package/dist/core/plugin/PluginSandbox.js +1 -125
- package/dist/core/plugin.cjs +0 -2
- package/dist/core/plugin.js +1 -438
- package/dist/core/router/RouterManager.cjs +0 -2
- package/dist/core/router/RouterManager.js +1 -272
- package/dist/core/router/adapter/AdapterManager.cjs +0 -2
- package/dist/core/router/adapter/AdapterManager.js +1 -221
- package/dist/core/router/adapter/index.cjs +0 -2
- package/dist/core/router/adapter/index.js +1 -7
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs +0 -2
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js +1 -116
- package/dist/core/router/adapter/react-router/index.cjs +0 -2
- package/dist/core/router/adapter/react-router/index.js +1 -5
- package/dist/core/router/adapter/types.cjs +0 -2
- package/dist/core/router/adapter/types.js +1 -7
- package/dist/core/router/dev/RouterDevTools.cjs +0 -2
- package/dist/core/router/dev/RouterDevTools.js +1 -211
- package/dist/core/router/dev/index.cjs +0 -2
- package/dist/core/router/dev/index.js +1 -5
- package/dist/core/router/dynamic/DynamicRouteManager.cjs +0 -2
- package/dist/core/router/dynamic/DynamicRouteManager.js +1 -179
- package/dist/core/router/dynamic/index.cjs +0 -2
- package/dist/core/router/dynamic/index.js +1 -5
- package/dist/core/router/errors/RouterError.cjs +0 -2
- package/dist/core/router/errors/RouterError.js +1 -48
- package/dist/core/router/errors/index.cjs +0 -2
- package/dist/core/router/errors/index.js +1 -5
- package/dist/core/router/index.cjs +0 -2
- package/dist/core/router/index.js +1 -32
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs +0 -2
- package/dist/core/router/lifecycle/RouterLifecycleManager.js +1 -130
- package/dist/core/router/lifecycle/index.cjs +0 -2
- package/dist/core/router/lifecycle/index.js +1 -5
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs +0 -2
- package/dist/core/router/middleware/RouterMiddlewareManager.js +1 -179
- package/dist/core/router/middleware/auth.cjs +0 -2
- package/dist/core/router/middleware/auth.js +1 -63
- package/dist/core/router/middleware/index.cjs +0 -2
- package/dist/core/router/middleware/index.js +1 -7
- package/dist/core/router/middleware/types.cjs +0 -2
- package/dist/core/router/middleware/types.js +1 -7
- package/dist/core/router/monitoring/RouterMonitoring.cjs +0 -2
- package/dist/core/router/monitoring/RouterMonitoring.js +1 -213
- package/dist/core/router/monitoring/index.cjs +0 -2
- package/dist/core/router/monitoring/index.js +1 -5
- package/dist/core/router/navigation/RouterNavigation.cjs +0 -2
- package/dist/core/router/navigation/RouterNavigation.js +1 -192
- package/dist/core/router/navigation/index.cjs +0 -2
- package/dist/core/router/navigation/index.js +1 -5
- package/dist/core/router/performance/RouteCache.cjs +0 -2
- package/dist/core/router/performance/RouteCache.js +1 -291
- package/dist/core/router/performance/RoutePreloader.cjs +0 -2
- package/dist/core/router/performance/RoutePreloader.js +1 -277
- package/dist/core/router/performance/index.cjs +0 -2
- package/dist/core/router/performance/index.js +1 -6
- package/dist/core/router/plugin/RouterPluginManager.cjs +0 -2
- package/dist/core/router/plugin/RouterPluginManager.js +1 -248
- package/dist/core/router/plugin/index.cjs +0 -2
- package/dist/core/router/plugin/index.js +1 -6
- package/dist/core/router/plugin/types.cjs +0 -2
- package/dist/core/router/plugin/types.js +1 -33
- package/dist/core/router/types.cjs +0 -2
- package/dist/core/router/types.js +1 -5
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +0 -2
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js +1 -121
- package/dist/core/router/utils/adapters/react-router/transform.cjs +0 -2
- package/dist/core/router/utils/adapters/react-router/transform.js +1 -242
- package/dist/core/router/utils/transform.cjs +0 -2
- package/dist/core/router/utils/transform.js +1 -791
- package/dist/core/router/validation/RouterConfigValidator.cjs +0 -2
- package/dist/core/router/validation/RouterConfigValidator.js +2 -77
- package/dist/core/router/validation/index.cjs +0 -2
- package/dist/core/router/validation/index.js +1 -6
- package/dist/core/router/validation/schema.cjs +0 -2
- package/dist/core/router/validation/schema.js +1 -151
- package/dist/core/router/version/RouteVersionManager.cjs +0 -2
- package/dist/core/router/version/RouteVersionManager.js +1 -191
- package/dist/core/router/version/index.cjs +0 -2
- package/dist/core/router/version/index.js +1 -5
- package/dist/core/splash/SplashScreen.cjs +0 -2
- package/dist/core/splash/SplashScreen.js +1 -293
- package/dist/core/splash/index.cjs +0 -2
- package/dist/core/splash/index.js +1 -6
- package/dist/core/splash/splashScreenUtils.cjs +0 -2
- package/dist/core/splash/splashScreenUtils.js +1 -30
- package/dist/core/startup/AppInstance.cjs +0 -2
- package/dist/core/startup/AppInstance.js +1 -226
- package/dist/core/startup/environment.cjs +0 -2
- package/dist/core/startup/environment.js +1 -154
- package/dist/core/startup/index.cjs +0 -2
- package/dist/core/startup/index.js +1 -8
- package/dist/core/startup/initializeServices.cjs +0 -2
- package/dist/core/startup/initializeServices.js +1 -188
- package/dist/core/startup/performanceTracker.cjs +0 -2
- package/dist/core/startup/performanceTracker.js +1 -167
- package/dist/core/startup/renderApp.cjs +0 -2
- package/dist/core/startup/renderApp.js +1 -267
- package/dist/core/startup/startApp.cjs +0 -2
- package/dist/core/startup/startApp.js +1 -315
- package/dist/core/types.cjs +0 -2
- package/dist/core/types.js +1 -5
- package/dist/index.cjs +0 -2
- package/dist/index.js +1 -11
- package/dist/index.umd.cjs +0 -2
- package/dist/index.umd.js +362 -13230
- package/dist/kernel/constants.cjs +0 -2
- package/dist/kernel/constants.js +1 -43
- package/dist/kernel/index.cjs +0 -2
- package/dist/kernel/index.js +1 -4
- package/dist/kernel/kernel.cjs +1 -3
- package/dist/kernel/kernel.js +1 -273
- package/dist/kernel/manager/cacheManager.cjs +0 -2
- package/dist/kernel/manager/cacheManager.js +1 -38
- package/dist/kernel/manager/i18n/I18nManager.cjs +0 -2
- package/dist/kernel/manager/i18n/I18nManager.js +1 -83
- package/dist/kernel/manager/i18n/i18n.persistence.cjs +4 -3
- package/dist/kernel/manager/i18n/i18n.persistence.js +1 -38
- package/dist/kernel/manager/i18n/i18n.schema.cjs +0 -2
- package/dist/kernel/manager/i18n/i18n.schema.js +1 -64
- package/dist/kernel/manager/i18n/index.cjs +0 -2
- package/dist/kernel/manager/i18n/index.js +1 -3
- package/dist/kernel/manager/i18nManager.cjs +0 -2
- package/dist/kernel/manager/i18nManager.js +1 -3
- package/dist/kernel/manager/index.cjs +0 -2
- package/dist/kernel/manager/index.js +1 -6
- package/dist/kernel/manager/logger/LoggerManager.cjs +0 -2
- package/dist/kernel/manager/logger/LoggerManager.js +1 -99
- package/dist/kernel/manager/logger/index.cjs +0 -2
- package/dist/kernel/manager/logger/index.js +1 -3
- package/dist/kernel/manager/logger/logger.persistence.cjs +0 -2
- package/dist/kernel/manager/logger/logger.persistence.js +1 -43
- package/dist/kernel/manager/logger/logger.schema.cjs +0 -2
- package/dist/kernel/manager/logger/logger.schema.js +1 -55
- package/dist/kernel/manager/loggerManager.cjs +0 -2
- package/dist/kernel/manager/loggerManager.js +1 -3
- package/dist/kernel/manager/theme/ThemeManager.cjs +0 -2
- package/dist/kernel/manager/theme/ThemeManager.js +1 -76
- package/dist/kernel/manager/theme/index.cjs +0 -2
- package/dist/kernel/manager/theme/index.js +1 -3
- package/dist/kernel/manager/theme/theme.dom.cjs +0 -2
- package/dist/kernel/manager/theme/theme.dom.js +1 -45
- package/dist/kernel/manager/theme/theme.persistence.cjs +0 -2
- package/dist/kernel/manager/theme/theme.persistence.js +1 -38
- package/dist/kernel/manager/theme/theme.schema.cjs +0 -2
- package/dist/kernel/manager/theme/theme.schema.js +1 -97
- package/dist/kernel/manager/themeManager.cjs +0 -2
- package/dist/kernel/manager/themeManager.js +1 -3
- package/dist/kernel/types.cjs +0 -2
- package/dist/kernel/types.js +1 -3
- package/dist/library/index.cjs +0 -2
- package/dist/library/index.js +1 -4
- package/dist/library/locale/index.cjs +0 -2
- package/dist/library/locale/index.js +1 -12
- package/dist/library/locale/langs/en-us/index.cjs +0 -2
- package/dist/library/locale/langs/en-us/index.js +1 -24
- package/dist/library/locale/langs/zh-cn/index.cjs +0 -2
- package/dist/library/locale/langs/zh-cn/index.js +1 -24
- package/dist/library/locale/types.cjs +0 -2
- package/dist/library/locale/types.js +1 -3
- package/dist/library/storage/cache.cjs +0 -2
- package/dist/library/storage/cache.js +1 -237
- package/dist/library/storage/encryption.cjs +0 -2
- package/dist/library/storage/encryption.js +1 -141
- package/dist/library/storage/index.cjs +0 -2
- package/dist/library/storage/index.js +1 -106
- package/dist/state/StateManager.cjs +0 -2
- package/dist/state/StateManager.js +1 -160
- package/dist/state/adapters/AdapterFactory.cjs +0 -2
- package/dist/state/adapters/AdapterFactory.js +1 -85
- package/dist/state/adapters/DefaultAdapter.cjs +0 -2
- package/dist/state/adapters/DefaultAdapter.js +1 -71
- package/dist/state/adapters/ReduxAdapter.cjs +0 -2
- package/dist/state/adapters/ReduxAdapter.js +1 -439
- package/dist/state/adapters/ZustandAdapter.cjs +0 -2
- package/dist/state/adapters/ZustandAdapter.js +1 -70
- package/dist/state/adapters/index.cjs +0 -2
- package/dist/state/adapters/index.js +1 -9
- package/dist/state/adapters/types.cjs +0 -2
- package/dist/state/adapters/types.js +1 -5
- package/dist/state/core/DerivedStateInstance.cjs +0 -2
- package/dist/state/core/DerivedStateInstance.js +1 -173
- package/dist/state/core/StateInstance.cjs +0 -2
- package/dist/state/core/StateInstance.js +1 -168
- package/dist/state/core/StateRegistry.cjs +0 -2
- package/dist/state/core/StateRegistry.js +1 -106
- package/dist/state/core/StateScope.cjs +0 -2
- package/dist/state/core/StateScope.js +1 -133
- package/dist/state/core/index.cjs +0 -2
- package/dist/state/core/index.js +1 -8
- package/dist/state/index.cjs +0 -2
- package/dist/state/index.js +1 -12
- package/dist/state/types.cjs +0 -2
- package/dist/state/types.js +1 -13
- package/dist/state.umd.js +22 -1395
- package/dist/types.cjs +0 -2
- package/dist/types.js +1 -3
- package/dist/utils/analytics.cjs +0 -2
- package/dist/utils/analytics.js +1 -204
- package/dist/utils/configSecurity.cjs +0 -2
- package/dist/utils/configSecurity.js +3 -176
- package/dist/utils/csrf.cjs +0 -2
- package/dist/utils/csrf.js +1 -3
- package/dist/utils/errors/ErrorCodes.cjs +0 -2
- package/dist/utils/errors/ErrorCodes.js +1 -3
- package/dist/utils/errors.cjs +0 -2
- package/dist/utils/errors.js +1 -18
- package/dist/utils/index.cjs +0 -2
- package/dist/utils/index.js +1 -48
- package/dist/utils/logger.cjs +0 -2
- package/dist/utils/logger.js +1 -3
- package/dist/utils/logger.types.cjs +0 -2
- package/dist/utils/logger.types.js +1 -3
- package/dist/utils/monitoring.cjs +0 -2
- package/dist/utils/monitoring.js +1 -3
- package/dist/utils/performance.cjs +0 -2
- package/dist/utils/performance.js +1 -3
- package/dist/utils/resourceLoader.cjs +0 -2
- package/dist/utils/resourceLoader.js +1 -3
- package/dist/utils/runtimeSecurity.cjs +0 -2
- package/dist/utils/runtimeSecurity.js +1 -3
- package/dist/utils/security.cjs +0 -2
- package/dist/utils/security.js +1 -3
- package/dist/utils/traceId.cjs +0 -2
- package/dist/utils/traceId.js +1 -3
- package/dist/utils/validation.cjs +0 -2
- package/dist/utils/validation.js +1 -3
- package/package.json +3 -4
- package/dist/analytics/index.cjs.map +0 -1
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics.umd.js.map +0 -1
- package/dist/components/LocaleSwitch.cjs.map +0 -1
- package/dist/components/LocaleSwitch.js.map +0 -1
- package/dist/components/ThemeSwitch.cjs.map +0 -1
- package/dist/components/ThemeSwitch.js.map +0 -1
- package/dist/components/index.cjs.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/persistence.cjs.map +0 -1
- package/dist/components/persistence.js.map +0 -1
- package/dist/core/Test.cjs.map +0 -1
- package/dist/core/Test.js.map +0 -1
- package/dist/core/app/AppContext.cjs.map +0 -1
- package/dist/core/app/AppContext.js.map +0 -1
- package/dist/core/app/AppContext.types.cjs.map +0 -1
- package/dist/core/app/AppContext.types.js.map +0 -1
- package/dist/core/app/BasicLayout.cjs.map +0 -1
- package/dist/core/app/BasicLayout.js.map +0 -1
- package/dist/core/app/DefaultApp.cjs.map +0 -1
- package/dist/core/app/DefaultApp.js.map +0 -1
- package/dist/core/app/index.cjs.map +0 -1
- package/dist/core/app/index.js.map +0 -1
- package/dist/core/config/AppConfig.cjs.map +0 -1
- package/dist/core/config/AppConfig.js.map +0 -1
- package/dist/core/config/ConfigLoader.cjs.map +0 -1
- package/dist/core/config/ConfigLoader.js.map +0 -1
- package/dist/core/config/ConfigValidator.cjs.map +0 -1
- package/dist/core/config/ConfigValidator.js.map +0 -1
- package/dist/core/config/index.cjs.map +0 -1
- package/dist/core/config/index.js.map +0 -1
- package/dist/core/dev/DevTools.cjs.map +0 -1
- package/dist/core/dev/DevTools.js.map +0 -1
- package/dist/core/error/ErrorBoundary.cjs.map +0 -1
- package/dist/core/error/ErrorBoundary.js.map +0 -1
- package/dist/core/error/ErrorHandler.cjs.map +0 -1
- package/dist/core/error/ErrorHandler.js.map +0 -1
- package/dist/core/error/index.cjs.map +0 -1
- package/dist/core/error/index.js.map +0 -1
- package/dist/core/event/AppEventBus.cjs.map +0 -1
- package/dist/core/event/AppEventBus.js.map +0 -1
- package/dist/core/event/frameworkEvents.cjs.map +0 -1
- package/dist/core/event/frameworkEvents.js.map +0 -1
- package/dist/core/event/hooks.cjs.map +0 -1
- package/dist/core/event/hooks.js.map +0 -1
- package/dist/core/event/index.cjs.map +0 -1
- package/dist/core/event/index.js.map +0 -1
- package/dist/core/event/types.cjs.map +0 -1
- package/dist/core/event/types.js.map +0 -1
- package/dist/core/event/useEventBus.cjs.map +0 -1
- package/dist/core/event/useEventBus.js.map +0 -1
- package/dist/core/index.cjs.map +0 -1
- package/dist/core/index.js.map +0 -1
- package/dist/core/initialization/InitializationErrorThrower.cjs.map +0 -1
- package/dist/core/initialization/InitializationErrorThrower.js.map +0 -1
- package/dist/core/initialization/index.cjs.map +0 -1
- package/dist/core/initialization/index.js.map +0 -1
- package/dist/core/initialization/initialization.cjs.map +0 -1
- package/dist/core/initialization/initialization.js.map +0 -1
- package/dist/core/initialization/initializationErrorState.cjs.map +0 -1
- package/dist/core/initialization/initializationErrorState.js.map +0 -1
- package/dist/core/kernel/defaultAdapters.cjs.map +0 -1
- package/dist/core/kernel/defaultAdapters.js.map +0 -1
- package/dist/core/kernel/errors.cjs.map +0 -1
- package/dist/core/kernel/errors.js.map +0 -1
- package/dist/core/kernel/index.cjs.map +0 -1
- package/dist/core/kernel/index.js.map +0 -1
- package/dist/core/kernel/startKernel.cjs.map +0 -1
- package/dist/core/kernel/startKernel.js.map +0 -1
- package/dist/core/kernel/types.cjs.map +0 -1
- package/dist/core/kernel/types.js.map +0 -1
- package/dist/core/middleware.cjs.map +0 -1
- package/dist/core/middleware.js.map +0 -1
- package/dist/core/plugin/PluginEventBus.cjs.map +0 -1
- package/dist/core/plugin/PluginEventBus.js.map +0 -1
- package/dist/core/plugin/PluginSandbox.cjs.map +0 -1
- package/dist/core/plugin/PluginSandbox.js.map +0 -1
- package/dist/core/plugin.cjs.map +0 -1
- package/dist/core/plugin.js.map +0 -1
- package/dist/core/router/RouterManager.cjs.map +0 -1
- package/dist/core/router/RouterManager.js.map +0 -1
- package/dist/core/router/adapter/AdapterManager.cjs.map +0 -1
- package/dist/core/router/adapter/AdapterManager.js.map +0 -1
- package/dist/core/router/adapter/index.cjs.map +0 -1
- package/dist/core/router/adapter/index.js.map +0 -1
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs.map +0 -1
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js.map +0 -1
- package/dist/core/router/adapter/react-router/index.cjs.map +0 -1
- package/dist/core/router/adapter/react-router/index.js.map +0 -1
- package/dist/core/router/adapter/types.cjs.map +0 -1
- package/dist/core/router/adapter/types.js.map +0 -1
- package/dist/core/router/dev/RouterDevTools.cjs.map +0 -1
- package/dist/core/router/dev/RouterDevTools.js.map +0 -1
- package/dist/core/router/dev/index.cjs.map +0 -1
- package/dist/core/router/dev/index.js.map +0 -1
- package/dist/core/router/dynamic/DynamicRouteManager.cjs.map +0 -1
- package/dist/core/router/dynamic/DynamicRouteManager.js.map +0 -1
- package/dist/core/router/dynamic/index.cjs.map +0 -1
- package/dist/core/router/dynamic/index.js.map +0 -1
- package/dist/core/router/errors/RouterError.cjs.map +0 -1
- package/dist/core/router/errors/RouterError.js.map +0 -1
- package/dist/core/router/errors/index.cjs.map +0 -1
- package/dist/core/router/errors/index.js.map +0 -1
- package/dist/core/router/index.cjs.map +0 -1
- package/dist/core/router/index.js.map +0 -1
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs.map +0 -1
- package/dist/core/router/lifecycle/RouterLifecycleManager.js.map +0 -1
- package/dist/core/router/lifecycle/index.cjs.map +0 -1
- package/dist/core/router/lifecycle/index.js.map +0 -1
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs.map +0 -1
- package/dist/core/router/middleware/RouterMiddlewareManager.js.map +0 -1
- package/dist/core/router/middleware/auth.cjs.map +0 -1
- package/dist/core/router/middleware/auth.js.map +0 -1
- package/dist/core/router/middleware/index.cjs.map +0 -1
- package/dist/core/router/middleware/index.js.map +0 -1
- package/dist/core/router/middleware/types.cjs.map +0 -1
- package/dist/core/router/middleware/types.js.map +0 -1
- package/dist/core/router/monitoring/RouterMonitoring.cjs.map +0 -1
- package/dist/core/router/monitoring/RouterMonitoring.js.map +0 -1
- package/dist/core/router/monitoring/index.cjs.map +0 -1
- package/dist/core/router/monitoring/index.js.map +0 -1
- package/dist/core/router/navigation/RouterNavigation.cjs.map +0 -1
- package/dist/core/router/navigation/RouterNavigation.js.map +0 -1
- package/dist/core/router/navigation/index.cjs.map +0 -1
- package/dist/core/router/navigation/index.js.map +0 -1
- package/dist/core/router/performance/RouteCache.cjs.map +0 -1
- package/dist/core/router/performance/RouteCache.js.map +0 -1
- package/dist/core/router/performance/RoutePreloader.cjs.map +0 -1
- package/dist/core/router/performance/RoutePreloader.js.map +0 -1
- package/dist/core/router/performance/index.cjs.map +0 -1
- package/dist/core/router/performance/index.js.map +0 -1
- package/dist/core/router/plugin/RouterPluginManager.cjs.map +0 -1
- package/dist/core/router/plugin/RouterPluginManager.js.map +0 -1
- package/dist/core/router/plugin/index.cjs.map +0 -1
- package/dist/core/router/plugin/index.js.map +0 -1
- package/dist/core/router/plugin/types.cjs.map +0 -1
- package/dist/core/router/plugin/types.js.map +0 -1
- package/dist/core/router/types.cjs.map +0 -1
- package/dist/core/router/types.js.map +0 -1
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs.map +0 -1
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js.map +0 -1
- package/dist/core/router/utils/adapters/react-router/transform.cjs.map +0 -1
- package/dist/core/router/utils/adapters/react-router/transform.js.map +0 -1
- package/dist/core/router/utils/transform.cjs.map +0 -1
- package/dist/core/router/utils/transform.js.map +0 -1
- package/dist/core/router/validation/RouterConfigValidator.cjs.map +0 -1
- package/dist/core/router/validation/RouterConfigValidator.js.map +0 -1
- package/dist/core/router/validation/index.cjs.map +0 -1
- package/dist/core/router/validation/index.js.map +0 -1
- package/dist/core/router/validation/schema.cjs.map +0 -1
- package/dist/core/router/validation/schema.js.map +0 -1
- package/dist/core/router/version/RouteVersionManager.cjs.map +0 -1
- package/dist/core/router/version/RouteVersionManager.js.map +0 -1
- package/dist/core/router/version/index.cjs.map +0 -1
- package/dist/core/router/version/index.js.map +0 -1
- package/dist/core/splash/SplashScreen.cjs.map +0 -1
- package/dist/core/splash/SplashScreen.js.map +0 -1
- package/dist/core/splash/index.cjs.map +0 -1
- package/dist/core/splash/index.js.map +0 -1
- package/dist/core/splash/splashScreenUtils.cjs.map +0 -1
- package/dist/core/splash/splashScreenUtils.js.map +0 -1
- package/dist/core/startup/AppInstance.cjs.map +0 -1
- package/dist/core/startup/AppInstance.js.map +0 -1
- package/dist/core/startup/environment.cjs.map +0 -1
- package/dist/core/startup/environment.js.map +0 -1
- package/dist/core/startup/index.cjs.map +0 -1
- package/dist/core/startup/index.js.map +0 -1
- package/dist/core/startup/initializeServices.cjs.map +0 -1
- package/dist/core/startup/initializeServices.js.map +0 -1
- package/dist/core/startup/performanceTracker.cjs.map +0 -1
- package/dist/core/startup/performanceTracker.js.map +0 -1
- package/dist/core/startup/renderApp.cjs.map +0 -1
- package/dist/core/startup/renderApp.js.map +0 -1
- package/dist/core/startup/startApp.cjs.map +0 -1
- package/dist/core/startup/startApp.js.map +0 -1
- package/dist/core/types.cjs.map +0 -1
- package/dist/core/types.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.umd.cjs.map +0 -1
- package/dist/index.umd.js.map +0 -1
- package/dist/kernel/constants.cjs.map +0 -1
- package/dist/kernel/constants.js.map +0 -1
- package/dist/kernel/index.cjs.map +0 -1
- package/dist/kernel/index.js.map +0 -1
- package/dist/kernel/kernel.cjs.map +0 -1
- package/dist/kernel/kernel.js.map +0 -1
- package/dist/kernel/manager/cacheManager.cjs.map +0 -1
- package/dist/kernel/manager/cacheManager.js.map +0 -1
- package/dist/kernel/manager/i18n/I18nManager.cjs.map +0 -1
- package/dist/kernel/manager/i18n/I18nManager.js.map +0 -1
- package/dist/kernel/manager/i18n/i18n.persistence.cjs.map +0 -1
- package/dist/kernel/manager/i18n/i18n.persistence.js.map +0 -1
- package/dist/kernel/manager/i18n/i18n.schema.cjs.map +0 -1
- package/dist/kernel/manager/i18n/i18n.schema.js.map +0 -1
- package/dist/kernel/manager/i18n/index.cjs.map +0 -1
- package/dist/kernel/manager/i18n/index.js.map +0 -1
- package/dist/kernel/manager/i18nManager.cjs.map +0 -1
- package/dist/kernel/manager/i18nManager.js.map +0 -1
- package/dist/kernel/manager/index.cjs.map +0 -1
- package/dist/kernel/manager/index.js.map +0 -1
- package/dist/kernel/manager/logger/LoggerManager.cjs.map +0 -1
- package/dist/kernel/manager/logger/LoggerManager.js.map +0 -1
- package/dist/kernel/manager/logger/index.cjs.map +0 -1
- package/dist/kernel/manager/logger/index.js.map +0 -1
- package/dist/kernel/manager/logger/logger.persistence.cjs.map +0 -1
- package/dist/kernel/manager/logger/logger.persistence.js.map +0 -1
- package/dist/kernel/manager/logger/logger.schema.cjs.map +0 -1
- package/dist/kernel/manager/logger/logger.schema.js.map +0 -1
- package/dist/kernel/manager/loggerManager.cjs.map +0 -1
- package/dist/kernel/manager/loggerManager.js.map +0 -1
- package/dist/kernel/manager/persistence.cjs +0 -78
- package/dist/kernel/manager/persistence.cjs.map +0 -1
- package/dist/kernel/manager/persistence.d.ts +0 -3
- package/dist/kernel/manager/persistence.js +0 -60
- package/dist/kernel/manager/persistence.js.map +0 -1
- package/dist/kernel/manager/theme/ThemeManager.cjs.map +0 -1
- package/dist/kernel/manager/theme/ThemeManager.js.map +0 -1
- package/dist/kernel/manager/theme/index.cjs.map +0 -1
- package/dist/kernel/manager/theme/index.js.map +0 -1
- package/dist/kernel/manager/theme/theme.dom.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.dom.js.map +0 -1
- package/dist/kernel/manager/theme/theme.persistence.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.persistence.js.map +0 -1
- package/dist/kernel/manager/theme/theme.schema.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.schema.js.map +0 -1
- package/dist/kernel/manager/themeManager.cjs.map +0 -1
- package/dist/kernel/manager/themeManager.js.map +0 -1
- package/dist/kernel/types.cjs.map +0 -1
- package/dist/kernel/types.js.map +0 -1
- package/dist/library/index.cjs.map +0 -1
- package/dist/library/index.js.map +0 -1
- package/dist/library/locale/index.cjs.map +0 -1
- package/dist/library/locale/index.js.map +0 -1
- package/dist/library/locale/langs/en-us/index.cjs.map +0 -1
- package/dist/library/locale/langs/en-us/index.js.map +0 -1
- package/dist/library/locale/langs/zh-cn/index.cjs.map +0 -1
- package/dist/library/locale/langs/zh-cn/index.js.map +0 -1
- package/dist/library/locale/types.cjs.map +0 -1
- package/dist/library/locale/types.js.map +0 -1
- package/dist/library/storage/cache.cjs.map +0 -1
- package/dist/library/storage/cache.js.map +0 -1
- package/dist/library/storage/encryption.cjs.map +0 -1
- package/dist/library/storage/encryption.js.map +0 -1
- package/dist/library/storage/index.cjs.map +0 -1
- package/dist/library/storage/index.js.map +0 -1
- package/dist/request/adapter/RequestAdapter.d.ts +0 -85
- package/dist/request/adapter/RequestAdapter.js +0 -70
- package/dist/request/adapter/RequestAdapter.js.map +0 -1
- package/dist/request/adapter/axiosAdapter.d.ts +0 -10
- package/dist/request/adapter/axiosAdapter.js +0 -115
- package/dist/request/adapter/axiosAdapter.js.map +0 -1
- package/dist/request/adapter/fetchAdapter.d.ts +0 -10
- package/dist/request/adapter/fetchAdapter.js +0 -126
- package/dist/request/adapter/fetchAdapter.js.map +0 -1
- package/dist/request/adapter/index.d.ts +0 -9
- package/dist/request/adapter/index.js +0 -14
- package/dist/request/adapter/index.js.map +0 -1
- package/dist/request/adapter/kyAdapter.d.ts +0 -10
- package/dist/request/adapter/kyAdapter.js +0 -142
- package/dist/request/adapter/kyAdapter.js.map +0 -1
- package/dist/request/adapter/undiciAdapter.d.ts +0 -10
- package/dist/request/adapter/undiciAdapter.js +0 -164
- package/dist/request/adapter/undiciAdapter.js.map +0 -1
- package/dist/request/adapter.d.ts +0 -1
- package/dist/request/core/RequestClient.d.ts +0 -134
- package/dist/request/core/RequestClient.js +0 -509
- package/dist/request/core/RequestClient.js.map +0 -1
- package/dist/request/core/index.d.ts +0 -5
- package/dist/request/core/index.js +0 -5
- package/dist/request/core/index.js.map +0 -1
- package/dist/request/core.d.ts +0 -1
- package/dist/request/index.d.ts +0 -1
- package/dist/request/index.js +0 -50
- package/dist/request/index.js.map +0 -1
- package/dist/request/plugin/RequestPlugin.d.ts +0 -170
- package/dist/request/plugin/RequestPlugin.js +0 -203
- package/dist/request/plugin/RequestPlugin.js.map +0 -1
- package/dist/request/plugin/cache.d.ts +0 -33
- package/dist/request/plugin/cache.js +0 -264
- package/dist/request/plugin/cache.js.map +0 -1
- package/dist/request/plugin/csrfPlugin.d.ts +0 -21
- package/dist/request/plugin/csrfPlugin.js +0 -44
- package/dist/request/plugin/csrfPlugin.js.map +0 -1
- package/dist/request/plugin/index.d.ts +0 -11
- package/dist/request/plugin/index.js +0 -12
- package/dist/request/plugin/index.js.map +0 -1
- package/dist/request/plugin/monitoring.d.ts +0 -112
- package/dist/request/plugin/monitoring.js +0 -205
- package/dist/request/plugin/monitoring.js.map +0 -1
- package/dist/request/plugin/queue.d.ts +0 -91
- package/dist/request/plugin/queue.js +0 -156
- package/dist/request/plugin/queue.js.map +0 -1
- package/dist/request/plugin/retry.d.ts +0 -34
- package/dist/request/plugin/retry.js +0 -93
- package/dist/request/plugin/retry.js.map +0 -1
- package/dist/request/plugin/validation.d.ts +0 -26
- package/dist/request/plugin/validation.js +0 -116
- package/dist/request/plugin/validation.js.map +0 -1
- package/dist/request/plugin.d.ts +0 -1
- package/dist/request/runtime/RequestContext.d.ts +0 -50
- package/dist/request/runtime/RequestContext.js +0 -86
- package/dist/request/runtime/RequestContext.js.map +0 -1
- package/dist/request/runtime/index.d.ts +0 -4
- package/dist/request/runtime/index.js +0 -5
- package/dist/request/runtime/index.js.map +0 -1
- package/dist/request/runtime.d.ts +0 -1
- package/dist/request/types.d.ts +0 -1
- package/dist/request/types.js +0 -97
- package/dist/request/types.js.map +0 -1
- package/dist/request/utils/RequestQueueManager.d.ts +0 -74
- package/dist/request/utils/RequestQueueManager.js +0 -160
- package/dist/request/utils/RequestQueueManager.js.map +0 -1
- package/dist/request/utils/dependencyCheck.d.ts +0 -63
- package/dist/request/utils/dependencyCheck.js +0 -192
- package/dist/request/utils/dependencyCheck.js.map +0 -1
- package/dist/request/utils/index.d.ts +0 -5
- package/dist/request/utils/index.js +0 -6
- package/dist/request/utils/index.js.map +0 -1
- package/dist/request/utils.d.ts +0 -1
- package/dist/state/StateManager.cjs.map +0 -1
- package/dist/state/StateManager.js.map +0 -1
- package/dist/state/adapters/AdapterFactory.cjs.map +0 -1
- package/dist/state/adapters/AdapterFactory.js.map +0 -1
- package/dist/state/adapters/DefaultAdapter.cjs.map +0 -1
- package/dist/state/adapters/DefaultAdapter.js.map +0 -1
- package/dist/state/adapters/ReduxAdapter.cjs.map +0 -1
- package/dist/state/adapters/ReduxAdapter.js.map +0 -1
- package/dist/state/adapters/ZustandAdapter.cjs.map +0 -1
- package/dist/state/adapters/ZustandAdapter.js.map +0 -1
- package/dist/state/adapters/index.cjs.map +0 -1
- package/dist/state/adapters/index.js.map +0 -1
- package/dist/state/adapters/types.cjs.map +0 -1
- package/dist/state/adapters/types.js.map +0 -1
- package/dist/state/core/DerivedStateInstance.cjs.map +0 -1
- package/dist/state/core/DerivedStateInstance.js.map +0 -1
- package/dist/state/core/StateInstance.cjs.map +0 -1
- package/dist/state/core/StateInstance.js.map +0 -1
- package/dist/state/core/StateRegistry.cjs.map +0 -1
- package/dist/state/core/StateRegistry.js.map +0 -1
- package/dist/state/core/StateScope.cjs.map +0 -1
- package/dist/state/core/StateScope.js.map +0 -1
- package/dist/state/core/index.cjs.map +0 -1
- package/dist/state/core/index.js.map +0 -1
- package/dist/state/index.cjs.map +0 -1
- package/dist/state/index.js.map +0 -1
- package/dist/state/types.cjs.map +0 -1
- package/dist/state/types.js.map +0 -1
- package/dist/state.umd.js.map +0 -1
- package/dist/types.cjs.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils/analytics.cjs.map +0 -1
- package/dist/utils/analytics.js.map +0 -1
- package/dist/utils/configSecurity.cjs.map +0 -1
- package/dist/utils/configSecurity.js.map +0 -1
- package/dist/utils/csrf.cjs.map +0 -1
- package/dist/utils/csrf.js.map +0 -1
- package/dist/utils/errors/ErrorCodes.cjs.map +0 -1
- package/dist/utils/errors/ErrorCodes.js.map +0 -1
- package/dist/utils/errors.cjs.map +0 -1
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/index.cjs.map +0 -1
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/logger.cjs.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/logger.types.cjs.map +0 -1
- package/dist/utils/logger.types.js.map +0 -1
- package/dist/utils/monitoring.cjs.map +0 -1
- package/dist/utils/monitoring.js.map +0 -1
- package/dist/utils/performance.cjs.map +0 -1
- package/dist/utils/performance.js.map +0 -1
- package/dist/utils/resourceLoader.cjs.map +0 -1
- package/dist/utils/resourceLoader.js.map +0 -1
- package/dist/utils/runtimeSecurity.cjs.map +0 -1
- package/dist/utils/runtimeSecurity.js.map +0 -1
- package/dist/utils/security.cjs.map +0 -1
- package/dist/utils/security.js.map +0 -1
- package/dist/utils/traceId.cjs.map +0 -1
- package/dist/utils/traceId.js.map +0 -1
- package/dist/utils/validation.cjs.map +0 -1
- package/dist/utils/validation.js.map +0 -1
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 验证插件
|
|
3
|
-
*
|
|
4
|
-
* 提供请求参数和响应数据验证能力(基于 Zod)
|
|
5
|
-
*/
|
|
6
|
-
import type { RequestPlugin } from './RequestPlugin';
|
|
7
|
-
/**
|
|
8
|
-
* 验证插件配置
|
|
9
|
-
*/
|
|
10
|
-
export interface ValidationPluginConfig {
|
|
11
|
-
/**
|
|
12
|
-
* 是否启用验证
|
|
13
|
-
*/
|
|
14
|
-
enabled?: boolean;
|
|
15
|
-
/**
|
|
16
|
-
* 验证失败时的默认处理方式
|
|
17
|
-
*/
|
|
18
|
-
onValidationError?: (error: unknown) => void;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* 创建验证插件
|
|
22
|
-
*
|
|
23
|
-
* @param config - 验证插件配置
|
|
24
|
-
* @returns 验证插件实例
|
|
25
|
-
*/
|
|
26
|
-
export declare function createValidationPlugin(config?: ValidationPluginConfig): RequestPlugin;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 验证插件
|
|
3
|
-
*
|
|
4
|
-
* 提供请求参数和响应数据验证能力(基于 Zod)
|
|
5
|
-
*/ import { RequestError, RequestErrorType, RequestErrorCode } from "../types";
|
|
6
|
-
import { PluginPriority } from "./RequestPlugin";
|
|
7
|
-
/**
|
|
8
|
-
* 检查是否为 Zod Schema
|
|
9
|
-
*/ function isZodSchema(schema) {
|
|
10
|
-
return schema !== null && typeof schema === 'object' && 'parse' in schema && 'safeParse' in schema && typeof schema.parse === 'function' && typeof schema.safeParse === 'function';
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* 创建验证插件
|
|
14
|
-
*
|
|
15
|
-
* @param config - 验证插件配置
|
|
16
|
-
* @returns 验证插件实例
|
|
17
|
-
*/ export function createValidationPlugin(config = {}) {
|
|
18
|
-
const { enabled = true, onValidationError } = config;
|
|
19
|
-
return {
|
|
20
|
-
name: 'validation',
|
|
21
|
-
priority: PluginPriority.HIGH,
|
|
22
|
-
async onBeforeRequest (context) {
|
|
23
|
-
if (!enabled) {
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
const validationConfig = context.request.validation;
|
|
27
|
-
if (!validationConfig) {
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
// 验证请求参数
|
|
31
|
-
const requestSchema = validationConfig.requestSchema;
|
|
32
|
-
if (requestSchema && isZodSchema(requestSchema)) {
|
|
33
|
-
try {
|
|
34
|
-
// 验证查询参数和请求体
|
|
35
|
-
const requestData = {
|
|
36
|
-
query: context.request.query,
|
|
37
|
-
body: context.request.body
|
|
38
|
-
};
|
|
39
|
-
const zodSchema = requestSchema;
|
|
40
|
-
const result = zodSchema.safeParse(requestData);
|
|
41
|
-
if (!result.success) {
|
|
42
|
-
const error = new RequestError('请求参数验证失败', RequestErrorType.VALIDATION_ERROR, RequestErrorCode.REQUEST_VALIDATION_FAILED, {
|
|
43
|
-
request: context.request,
|
|
44
|
-
context: {
|
|
45
|
-
validationErrors: result.error.errors
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
if (validationConfig.onValidationError) {
|
|
49
|
-
validationConfig.onValidationError(error);
|
|
50
|
-
} else if (onValidationError) {
|
|
51
|
-
onValidationError(error);
|
|
52
|
-
}
|
|
53
|
-
throw error;
|
|
54
|
-
}
|
|
55
|
-
// 如果验证通过,可以使用验证后的数据更新请求
|
|
56
|
-
// 这里可以根据需要更新 context.request
|
|
57
|
-
} catch (error) {
|
|
58
|
-
// 如果不是验证错误,重新抛出
|
|
59
|
-
if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {
|
|
60
|
-
throw error;
|
|
61
|
-
}
|
|
62
|
-
// 其他错误继续抛出
|
|
63
|
-
throw error;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
async onAfterRequest (context) {
|
|
68
|
-
if (!enabled || !context.response) {
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
const validationConfig = context.request.validation;
|
|
72
|
-
if (!validationConfig) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
// 验证响应数据
|
|
76
|
-
const responseSchema = validationConfig.responseSchema;
|
|
77
|
-
if (responseSchema && isZodSchema(responseSchema)) {
|
|
78
|
-
try {
|
|
79
|
-
const zodSchema = responseSchema;
|
|
80
|
-
const result = zodSchema.safeParse(context.response.data);
|
|
81
|
-
if (!result.success) {
|
|
82
|
-
const error = new RequestError('响应数据验证失败', RequestErrorType.VALIDATION_ERROR, RequestErrorCode.RESPONSE_VALIDATION_FAILED, {
|
|
83
|
-
request: context.request,
|
|
84
|
-
response: context.response,
|
|
85
|
-
context: {
|
|
86
|
-
validationErrors: result.error.errors
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
if (validationConfig.onValidationError) {
|
|
90
|
-
validationConfig.onValidationError(error);
|
|
91
|
-
} else if (onValidationError) {
|
|
92
|
-
onValidationError(error);
|
|
93
|
-
}
|
|
94
|
-
throw error;
|
|
95
|
-
}
|
|
96
|
-
// 如果验证通过,可以使用验证后的数据更新响应
|
|
97
|
-
if (result.success && result.data !== context.response.data) {
|
|
98
|
-
return {
|
|
99
|
-
...context.response,
|
|
100
|
-
data: result.data
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
} catch (error) {
|
|
104
|
-
// 如果不是验证错误,重新抛出
|
|
105
|
-
if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
// 其他错误继续抛出
|
|
109
|
-
throw error;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/request/plugin/validation.ts"],"sourcesContent":["/**\n * 验证插件\n * \n * 提供请求参数和响应数据验证能力(基于 Zod)\n */\n\nimport type { RequestPlugin } from './RequestPlugin';\nimport type { RequestOptions, Response, RequestContext } from '../types';\nimport { RequestError, RequestErrorType, RequestErrorCode } from '../types';\nimport { PluginPriority } from './RequestPlugin';\n\n/**\n * 验证插件配置\n */\nexport interface ValidationPluginConfig {\n /**\n * 是否启用验证\n */\n enabled?: boolean;\n\n /**\n * 验证失败时的默认处理方式\n */\n onValidationError?: (error: unknown) => void;\n}\n\n/**\n * 检查是否为 Zod Schema\n */\nfunction isZodSchema(schema: unknown): boolean {\n return (\n schema !== null &&\n typeof schema === 'object' &&\n 'parse' in schema &&\n 'safeParse' in schema &&\n typeof (schema as any).parse === 'function' &&\n typeof (schema as any).safeParse === 'function'\n );\n}\n\n/**\n * 创建验证插件\n * \n * @param config - 验证插件配置\n * @returns 验证插件实例\n */\nexport function createValidationPlugin(config: ValidationPluginConfig = {}): RequestPlugin {\n const { enabled = true, onValidationError } = config;\n\n return {\n name: 'validation',\n priority: PluginPriority.HIGH, // 高优先级,在请求前验证\n\n async onBeforeRequest(context: RequestContext): Promise<RequestOptions | void> {\n if (!enabled) {\n return;\n }\n\n const validationConfig = context.request.validation;\n if (!validationConfig) {\n return;\n }\n\n // 验证请求参数\n const requestSchema = validationConfig.requestSchema;\n if (requestSchema && isZodSchema(requestSchema)) {\n try {\n // 验证查询参数和请求体\n const requestData = {\n query: context.request.query,\n body: context.request.body,\n };\n\n const zodSchema = requestSchema as any;\n const result = zodSchema.safeParse(requestData);\n\n if (!result.success) {\n const error = new RequestError(\n '请求参数验证失败',\n RequestErrorType.VALIDATION_ERROR,\n RequestErrorCode.REQUEST_VALIDATION_FAILED,\n {\n request: context.request,\n context: {\n validationErrors: result.error.errors,\n },\n }\n );\n\n if (validationConfig.onValidationError) {\n validationConfig.onValidationError(error);\n } else if (onValidationError) {\n onValidationError(error);\n }\n\n throw error;\n }\n\n // 如果验证通过,可以使用验证后的数据更新请求\n // 这里可以根据需要更新 context.request\n } catch (error) {\n // 如果不是验证错误,重新抛出\n if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {\n throw error;\n }\n // 其他错误继续抛出\n throw error;\n }\n }\n },\n\n async onAfterRequest(context: RequestContext): Promise<Response | void> {\n if (!enabled || !context.response) {\n return;\n }\n\n const validationConfig = context.request.validation;\n if (!validationConfig) {\n return;\n }\n\n // 验证响应数据\n const responseSchema = validationConfig.responseSchema;\n if (responseSchema && isZodSchema(responseSchema)) {\n try {\n const zodSchema = responseSchema as any;\n const result = zodSchema.safeParse(context.response.data);\n\n if (!result.success) {\n const error = new RequestError(\n '响应数据验证失败',\n RequestErrorType.VALIDATION_ERROR,\n RequestErrorCode.RESPONSE_VALIDATION_FAILED,\n {\n request: context.request,\n response: context.response,\n context: {\n validationErrors: result.error.errors,\n },\n }\n );\n\n if (validationConfig.onValidationError) {\n validationConfig.onValidationError(error);\n } else if (onValidationError) {\n onValidationError(error);\n }\n\n throw error;\n }\n\n // 如果验证通过,可以使用验证后的数据更新响应\n if (result.success && result.data !== context.response.data) {\n return {\n ...context.response,\n data: result.data,\n };\n }\n } catch (error) {\n // 如果不是验证错误,重新抛出\n if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {\n throw error;\n }\n // 其他错误继续抛出\n throw error;\n }\n }\n },\n };\n}\n"],"names":["RequestError","RequestErrorType","RequestErrorCode","PluginPriority","isZodSchema","schema","parse","safeParse","createValidationPlugin","config","enabled","onValidationError","name","priority","HIGH","onBeforeRequest","context","validationConfig","request","validation","requestSchema","requestData","query","body","zodSchema","result","success","error","VALIDATION_ERROR","REQUEST_VALIDATION_FAILED","validationErrors","errors","type","onAfterRequest","response","responseSchema","data","RESPONSE_VALIDATION_FAILED"],"mappings":"AAAA;;;;CAIC,GAID,SAASA,YAAY,EAAEC,gBAAgB,EAAEC,gBAAgB,QAAQ,WAAW;AAC5E,SAASC,cAAc,QAAQ,kBAAkB;AAiBjD;;CAEC,GACD,SAASC,YAAYC,MAAe;IAClC,OACEA,WAAW,QACX,OAAOA,WAAW,YAClB,WAAWA,UACX,eAAeA,UACf,OAAO,AAACA,OAAeC,KAAK,KAAK,cACjC,OAAO,AAACD,OAAeE,SAAS,KAAK;AAEzC;AAEA;;;;;CAKC,GACD,OAAO,SAASC,uBAAuBC,SAAiC,CAAC,CAAC;IACxE,MAAM,EAAEC,UAAU,IAAI,EAAEC,iBAAiB,EAAE,GAAGF;IAE9C,OAAO;QACLG,MAAM;QACNC,UAAUV,eAAeW,IAAI;QAE7B,MAAMC,iBAAgBC,OAAuB;YAC3C,IAAI,CAACN,SAAS;gBACZ;YACF;YAEA,MAAMO,mBAAmBD,QAAQE,OAAO,CAACC,UAAU;YACnD,IAAI,CAACF,kBAAkB;gBACrB;YACF;YAEA,SAAS;YACT,MAAMG,gBAAgBH,iBAAiBG,aAAa;YACpD,IAAIA,iBAAiBhB,YAAYgB,gBAAgB;gBAC/C,IAAI;oBACF,aAAa;oBACb,MAAMC,cAAc;wBAClBC,OAAON,QAAQE,OAAO,CAACI,KAAK;wBAC5BC,MAAMP,QAAQE,OAAO,CAACK,IAAI;oBAC5B;oBAEA,MAAMC,YAAYJ;oBAClB,MAAMK,SAASD,UAAUjB,SAAS,CAACc;oBAEnC,IAAI,CAACI,OAAOC,OAAO,EAAE;wBACnB,MAAMC,QAAQ,IAAI3B,aAChB,YACAC,iBAAiB2B,gBAAgB,EACjC1B,iBAAiB2B,yBAAyB,EAC1C;4BACEX,SAASF,QAAQE,OAAO;4BACxBF,SAAS;gCACPc,kBAAkBL,OAAOE,KAAK,CAACI,MAAM;4BACvC;wBACF;wBAGF,IAAId,iBAAiBN,iBAAiB,EAAE;4BACtCM,iBAAiBN,iBAAiB,CAACgB;wBACrC,OAAO,IAAIhB,mBAAmB;4BAC5BA,kBAAkBgB;wBACpB;wBAEA,MAAMA;oBACR;gBAEA,wBAAwB;gBACxB,6BAA6B;gBAC/B,EAAE,OAAOA,OAAO;oBACd,gBAAgB;oBAChB,IAAIA,iBAAiB3B,gBAAgB2B,MAAMK,IAAI,KAAK/B,iBAAiB2B,gBAAgB,EAAE;wBACrF,MAAMD;oBACR;oBACA,WAAW;oBACX,MAAMA;gBACR;YACF;QACF;QAEA,MAAMM,gBAAejB,OAAuB;YAC1C,IAAI,CAACN,WAAW,CAACM,QAAQkB,QAAQ,EAAE;gBACjC;YACF;YAEA,MAAMjB,mBAAmBD,QAAQE,OAAO,CAACC,UAAU;YACnD,IAAI,CAACF,kBAAkB;gBACrB;YACF;YAEA,SAAS;YACT,MAAMkB,iBAAiBlB,iBAAiBkB,cAAc;YACtD,IAAIA,kBAAkB/B,YAAY+B,iBAAiB;gBACjD,IAAI;oBACF,MAAMX,YAAYW;oBAClB,MAAMV,SAASD,UAAUjB,SAAS,CAACS,QAAQkB,QAAQ,CAACE,IAAI;oBAExD,IAAI,CAACX,OAAOC,OAAO,EAAE;wBACnB,MAAMC,QAAQ,IAAI3B,aAChB,YACAC,iBAAiB2B,gBAAgB,EACjC1B,iBAAiBmC,0BAA0B,EAC3C;4BACEnB,SAASF,QAAQE,OAAO;4BACxBgB,UAAUlB,QAAQkB,QAAQ;4BAC1BlB,SAAS;gCACPc,kBAAkBL,OAAOE,KAAK,CAACI,MAAM;4BACvC;wBACF;wBAGF,IAAId,iBAAiBN,iBAAiB,EAAE;4BACtCM,iBAAiBN,iBAAiB,CAACgB;wBACrC,OAAO,IAAIhB,mBAAmB;4BAC5BA,kBAAkBgB;wBACpB;wBAEA,MAAMA;oBACR;oBAEA,wBAAwB;oBACxB,IAAIF,OAAOC,OAAO,IAAID,OAAOW,IAAI,KAAKpB,QAAQkB,QAAQ,CAACE,IAAI,EAAE;wBAC3D,OAAO;4BACL,GAAGpB,QAAQkB,QAAQ;4BACnBE,MAAMX,OAAOW,IAAI;wBACnB;oBACF;gBACF,EAAE,OAAOT,OAAO;oBACd,gBAAgB;oBAChB,IAAIA,iBAAiB3B,gBAAgB2B,MAAMK,IAAI,KAAK/B,iBAAiB2B,gBAAgB,EAAE;wBACrF,MAAMD;oBACR;oBACA,WAAW;oBACX,MAAMA;gBACR;YACF;QACF;IACF;AACF"}
|
package/dist/request/plugin.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '@vlian/request/plugin';
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 请求上下文运行时工具
|
|
3
|
-
*/
|
|
4
|
-
import type { RequestOptions, Response, RequestContext as IRequestContext } from '../types';
|
|
5
|
-
/**
|
|
6
|
-
* 创建请求上下文
|
|
7
|
-
*
|
|
8
|
-
* @template TRequest - 请求配置类型
|
|
9
|
-
* @template TResponse - 响应类型
|
|
10
|
-
* @template TMeta - 元数据类型
|
|
11
|
-
* @param request - 请求配置
|
|
12
|
-
* @param meta - 初始元数据
|
|
13
|
-
* @returns 请求上下文
|
|
14
|
-
*/
|
|
15
|
-
export declare function createRequestContext<TRequest extends RequestOptions = RequestOptions, TResponse extends Response = Response, TMeta extends Record<string, unknown> = Record<string, unknown>>(request: TRequest, meta?: TMeta): IRequestContext<TRequest, TResponse, TMeta>;
|
|
16
|
-
/**
|
|
17
|
-
* 更新请求上下文
|
|
18
|
-
*
|
|
19
|
-
* @template TContext - 请求上下文类型
|
|
20
|
-
* @param context - 请求上下文
|
|
21
|
-
* @param updates - 更新内容
|
|
22
|
-
* @returns 更新后的上下文
|
|
23
|
-
*/
|
|
24
|
-
export declare function updateRequestContext<TContext extends IRequestContext>(context: TContext, updates: Partial<TContext>): TContext;
|
|
25
|
-
/**
|
|
26
|
-
* 完成请求上下文(设置响应和结束时间)
|
|
27
|
-
*
|
|
28
|
-
* @template TContext - 请求上下文类型
|
|
29
|
-
* @param context - 请求上下文
|
|
30
|
-
* @param response - 响应对象
|
|
31
|
-
* @returns 更新后的上下文
|
|
32
|
-
*/
|
|
33
|
-
export declare function completeRequestContext<TContext extends IRequestContext>(context: TContext, response: Response): TContext;
|
|
34
|
-
/**
|
|
35
|
-
* 失败请求上下文(设置错误和结束时间)
|
|
36
|
-
*
|
|
37
|
-
* @template TContext - 请求上下文类型
|
|
38
|
-
* @param context - 请求上下文
|
|
39
|
-
* @param error - 请求错误
|
|
40
|
-
* @returns 更新后的上下文
|
|
41
|
-
*/
|
|
42
|
-
export declare function failRequestContext<TContext extends IRequestContext>(context: TContext, error: Error): TContext;
|
|
43
|
-
/**
|
|
44
|
-
* 取消请求上下文
|
|
45
|
-
*
|
|
46
|
-
* @template TContext - 请求上下文类型
|
|
47
|
-
* @param context - 请求上下文
|
|
48
|
-
* @returns 更新后的上下文
|
|
49
|
-
*/
|
|
50
|
-
export declare function cancelRequestContext<TContext extends IRequestContext>(context: TContext): TContext;
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 请求上下文运行时工具
|
|
3
|
-
*/ /**
|
|
4
|
-
* 创建请求上下文
|
|
5
|
-
*
|
|
6
|
-
* @template TRequest - 请求配置类型
|
|
7
|
-
* @template TResponse - 响应类型
|
|
8
|
-
* @template TMeta - 元数据类型
|
|
9
|
-
* @param request - 请求配置
|
|
10
|
-
* @param meta - 初始元数据
|
|
11
|
-
* @returns 请求上下文
|
|
12
|
-
*/ export function createRequestContext(request, meta = {}) {
|
|
13
|
-
const startTime = Date.now();
|
|
14
|
-
const abortController = typeof AbortController !== 'undefined' ? new AbortController() : undefined;
|
|
15
|
-
return {
|
|
16
|
-
request,
|
|
17
|
-
meta: meta,
|
|
18
|
-
startTime,
|
|
19
|
-
retryCount: 0,
|
|
20
|
-
cancelled: false,
|
|
21
|
-
abortController
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* 更新请求上下文
|
|
26
|
-
*
|
|
27
|
-
* @template TContext - 请求上下文类型
|
|
28
|
-
* @param context - 请求上下文
|
|
29
|
-
* @param updates - 更新内容
|
|
30
|
-
* @returns 更新后的上下文
|
|
31
|
-
*/ export function updateRequestContext(context, updates) {
|
|
32
|
-
return {
|
|
33
|
-
...context,
|
|
34
|
-
...updates,
|
|
35
|
-
meta: {
|
|
36
|
-
...context.meta,
|
|
37
|
-
...updates.meta || {}
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* 完成请求上下文(设置响应和结束时间)
|
|
43
|
-
*
|
|
44
|
-
* @template TContext - 请求上下文类型
|
|
45
|
-
* @param context - 请求上下文
|
|
46
|
-
* @param response - 响应对象
|
|
47
|
-
* @returns 更新后的上下文
|
|
48
|
-
*/ export function completeRequestContext(context, response) {
|
|
49
|
-
const endTime = Date.now();
|
|
50
|
-
return updateRequestContext(context, {
|
|
51
|
-
response: response,
|
|
52
|
-
endTime,
|
|
53
|
-
duration: endTime - context.startTime
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* 失败请求上下文(设置错误和结束时间)
|
|
58
|
-
*
|
|
59
|
-
* @template TContext - 请求上下文类型
|
|
60
|
-
* @param context - 请求上下文
|
|
61
|
-
* @param error - 请求错误
|
|
62
|
-
* @returns 更新后的上下文
|
|
63
|
-
*/ export function failRequestContext(context, error) {
|
|
64
|
-
const endTime = Date.now();
|
|
65
|
-
return updateRequestContext(context, {
|
|
66
|
-
error: error,
|
|
67
|
-
endTime,
|
|
68
|
-
duration: endTime - context.startTime
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* 取消请求上下文
|
|
73
|
-
*
|
|
74
|
-
* @template TContext - 请求上下文类型
|
|
75
|
-
* @param context - 请求上下文
|
|
76
|
-
* @returns 更新后的上下文
|
|
77
|
-
*/ export function cancelRequestContext(context) {
|
|
78
|
-
if (context.abortController) {
|
|
79
|
-
context.abortController.abort();
|
|
80
|
-
}
|
|
81
|
-
return updateRequestContext(context, {
|
|
82
|
-
cancelled: true
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
//# sourceMappingURL=RequestContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/request/runtime/RequestContext.ts"],"sourcesContent":["/**\n * 请求上下文运行时工具\n */\n\nimport type { RequestOptions, Response, RequestContext as IRequestContext } from '../types';\n\n/**\n * 创建请求上下文\n * \n * @template TRequest - 请求配置类型\n * @template TResponse - 响应类型\n * @template TMeta - 元数据类型\n * @param request - 请求配置\n * @param meta - 初始元数据\n * @returns 请求上下文\n */\nexport function createRequestContext<\n TRequest extends RequestOptions = RequestOptions,\n TResponse extends Response = Response,\n TMeta extends Record<string, unknown> = Record<string, unknown>\n>(\n request: TRequest,\n meta: TMeta = {} as TMeta\n): IRequestContext<TRequest, TResponse, TMeta> {\n const startTime = Date.now();\n const abortController = typeof AbortController !== 'undefined' ? new AbortController() : undefined;\n\n return {\n request,\n meta: meta as TMeta,\n startTime,\n retryCount: 0,\n cancelled: false,\n abortController,\n };\n}\n\n/**\n * 更新请求上下文\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param updates - 更新内容\n * @returns 更新后的上下文\n */\nexport function updateRequestContext<TContext extends IRequestContext>(\n context: TContext,\n updates: Partial<TContext>\n): TContext {\n return {\n ...context,\n ...updates,\n meta: {\n ...context.meta,\n ...(updates.meta || {}),\n },\n };\n}\n\n/**\n * 完成请求上下文(设置响应和结束时间)\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param response - 响应对象\n * @returns 更新后的上下文\n */\nexport function completeRequestContext<TContext extends IRequestContext>(\n context: TContext,\n response: Response\n): TContext {\n const endTime = Date.now();\n return updateRequestContext(context, {\n response: response as any,\n endTime,\n duration: endTime - context.startTime,\n } as Partial<TContext>);\n}\n\n/**\n * 失败请求上下文(设置错误和结束时间)\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param error - 请求错误\n * @returns 更新后的上下文\n */\nexport function failRequestContext<TContext extends IRequestContext>(\n context: TContext,\n error: Error\n): TContext {\n const endTime = Date.now();\n return updateRequestContext(context, {\n error: error as any,\n endTime,\n duration: endTime - context.startTime,\n } as Partial<TContext>);\n}\n\n/**\n * 取消请求上下文\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @returns 更新后的上下文\n */\nexport function cancelRequestContext<TContext extends IRequestContext>(\n context: TContext\n): TContext {\n if (context.abortController) {\n context.abortController.abort();\n }\n return updateRequestContext(context, {\n cancelled: true,\n } as Partial<TContext>);\n}\n"],"names":["createRequestContext","request","meta","startTime","Date","now","abortController","AbortController","undefined","retryCount","cancelled","updateRequestContext","context","updates","completeRequestContext","response","endTime","duration","failRequestContext","error","cancelRequestContext","abort"],"mappings":"AAAA;;CAEC,GAID;;;;;;;;;CASC,GACD,OAAO,SAASA,qBAKdC,OAAiB,EACjBC,OAAc,CAAC,CAAU;IAEzB,MAAMC,YAAYC,KAAKC,GAAG;IAC1B,MAAMC,kBAAkB,OAAOC,oBAAoB,cAAc,IAAIA,oBAAoBC;IAEzF,OAAO;QACLP;QACAC,MAAMA;QACNC;QACAM,YAAY;QACZC,WAAW;QACXJ;IACF;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASK,qBACdC,OAAiB,EACjBC,OAA0B;IAE1B,OAAO;QACL,GAAGD,OAAO;QACV,GAAGC,OAAO;QACVX,MAAM;YACJ,GAAGU,QAAQV,IAAI;YACf,GAAIW,QAAQX,IAAI,IAAI,CAAC,CAAC;QACxB;IACF;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASY,uBACdF,OAAiB,EACjBG,QAAkB;IAElB,MAAMC,UAAUZ,KAAKC,GAAG;IACxB,OAAOM,qBAAqBC,SAAS;QACnCG,UAAUA;QACVC;QACAC,UAAUD,UAAUJ,QAAQT,SAAS;IACvC;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASe,mBACdN,OAAiB,EACjBO,KAAY;IAEZ,MAAMH,UAAUZ,KAAKC,GAAG;IACxB,OAAOM,qBAAqBC,SAAS;QACnCO,OAAOA;QACPH;QACAC,UAAUD,UAAUJ,QAAQT,SAAS;IACvC;AACF;AAEA;;;;;;CAMC,GACD,OAAO,SAASiB,qBACdR,OAAiB;IAEjB,IAAIA,QAAQN,eAAe,EAAE;QAC3BM,QAAQN,eAAe,CAACe,KAAK;IAC/B;IACA,OAAOV,qBAAqBC,SAAS;QACnCF,WAAW;IACb;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/request/runtime/index.ts"],"sourcesContent":["/**\n * 请求运行时模块导出\n */\n\nexport {\n createRequestContext,\n updateRequestContext,\n completeRequestContext,\n failRequestContext,\n cancelRequestContext,\n} from './RequestContext';\n"],"names":["createRequestContext","updateRequestContext","completeRequestContext","failRequestContext","cancelRequestContext"],"mappings":"AAAA;;CAEC,GAED,SACEA,oBAAoB,EACpBC,oBAAoB,EACpBC,sBAAsB,EACtBC,kBAAkB,EAClBC,oBAAoB,QACf,mBAAmB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '@vlian/request/runtime';
|
package/dist/request/types.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '@vlian/request/types';
|
package/dist/request/types.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 请求库核心类型定义
|
|
3
|
-
*/ /**
|
|
4
|
-
* HTTP 请求方法
|
|
5
|
-
*/ function _define_property(obj, key, value) {
|
|
6
|
-
if (key in obj) {
|
|
7
|
-
Object.defineProperty(obj, key, {
|
|
8
|
-
value: value,
|
|
9
|
-
enumerable: true,
|
|
10
|
-
configurable: true,
|
|
11
|
-
writable: true
|
|
12
|
-
});
|
|
13
|
-
} else {
|
|
14
|
-
obj[key] = value;
|
|
15
|
-
}
|
|
16
|
-
return obj;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* 请求错误类型
|
|
20
|
-
*/ export var RequestErrorType = /*#__PURE__*/ function(RequestErrorType) {
|
|
21
|
-
/**
|
|
22
|
-
* 网络错误
|
|
23
|
-
*/ RequestErrorType["NETWORK_ERROR"] = "NETWORK_ERROR";
|
|
24
|
-
/**
|
|
25
|
-
* 超时错误
|
|
26
|
-
*/ RequestErrorType["TIMEOUT_ERROR"] = "TIMEOUT_ERROR";
|
|
27
|
-
/**
|
|
28
|
-
* HTTP 错误(4xx, 5xx)
|
|
29
|
-
*/ RequestErrorType["HTTP_ERROR"] = "HTTP_ERROR";
|
|
30
|
-
/**
|
|
31
|
-
* 取消错误
|
|
32
|
-
*/ RequestErrorType["ABORT_ERROR"] = "ABORT_ERROR";
|
|
33
|
-
/**
|
|
34
|
-
* 验证错误
|
|
35
|
-
*/ RequestErrorType["VALIDATION_ERROR"] = "VALIDATION_ERROR";
|
|
36
|
-
/**
|
|
37
|
-
* 未知错误
|
|
38
|
-
*/ RequestErrorType["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
|
|
39
|
-
return RequestErrorType;
|
|
40
|
-
}({});
|
|
41
|
-
/**
|
|
42
|
-
* 请求错误代码
|
|
43
|
-
*/ export var RequestErrorCode = /*#__PURE__*/ function(RequestErrorCode) {
|
|
44
|
-
/**
|
|
45
|
-
* 网络连接失败
|
|
46
|
-
*/ RequestErrorCode["NETWORK_CONNECTION_FAILED"] = "NETWORK_CONNECTION_FAILED";
|
|
47
|
-
/**
|
|
48
|
-
* 请求超时
|
|
49
|
-
*/ RequestErrorCode["REQUEST_TIMEOUT"] = "REQUEST_TIMEOUT";
|
|
50
|
-
/**
|
|
51
|
-
* 服务器错误(5xx)
|
|
52
|
-
*/ RequestErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
|
|
53
|
-
/**
|
|
54
|
-
* 客户端错误(4xx)
|
|
55
|
-
*/ RequestErrorCode["CLIENT_ERROR"] = "CLIENT_ERROR";
|
|
56
|
-
/**
|
|
57
|
-
* 请求被取消
|
|
58
|
-
*/ RequestErrorCode["REQUEST_ABORTED"] = "REQUEST_ABORTED";
|
|
59
|
-
/**
|
|
60
|
-
* 响应验证失败
|
|
61
|
-
*/ RequestErrorCode["RESPONSE_VALIDATION_FAILED"] = "RESPONSE_VALIDATION_FAILED";
|
|
62
|
-
/**
|
|
63
|
-
* 请求参数验证失败
|
|
64
|
-
*/ RequestErrorCode["REQUEST_VALIDATION_FAILED"] = "REQUEST_VALIDATION_FAILED";
|
|
65
|
-
return RequestErrorCode;
|
|
66
|
-
}({});
|
|
67
|
-
/**
|
|
68
|
-
* 请求错误类
|
|
69
|
-
*/ export class RequestError extends Error {
|
|
70
|
-
constructor(message, type, code, options){
|
|
71
|
-
super(message), /**
|
|
72
|
-
* 错误类型
|
|
73
|
-
*/ _define_property(this, "type", void 0), /**
|
|
74
|
-
* 错误代码
|
|
75
|
-
*/ _define_property(this, "code", void 0), /**
|
|
76
|
-
* HTTP 状态码(如果有)
|
|
77
|
-
*/ _define_property(this, "status", void 0), /**
|
|
78
|
-
* 原始错误
|
|
79
|
-
*/ _define_property(this, "cause", void 0), /**
|
|
80
|
-
* 请求配置
|
|
81
|
-
*/ _define_property(this, "request", void 0), /**
|
|
82
|
-
* 响应数据(如果有)
|
|
83
|
-
*/ _define_property(this, "response", void 0), /**
|
|
84
|
-
* 错误上下文
|
|
85
|
-
*/ _define_property(this, "context", void 0);
|
|
86
|
-
this.name = 'RequestError';
|
|
87
|
-
this.type = type;
|
|
88
|
-
this.code = code;
|
|
89
|
-
this.status = options?.status;
|
|
90
|
-
this.cause = options?.cause;
|
|
91
|
-
this.request = options?.request;
|
|
92
|
-
this.response = options?.response;
|
|
93
|
-
this.context = options?.context;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/request/types.ts"],"sourcesContent":["/**\n * 请求库核心类型定义\n */\n\n/**\n * HTTP 请求方法\n */\nexport type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS';\n\n/**\n * 请求头类型\n */\nexport type RequestHeaders = Record<string, string | number | boolean>;\n\n/**\n * 请求查询参数类型\n */\nexport type RequestQuery = Record<string, string | number | boolean | null | undefined>;\n\n/**\n * 请求体类型\n */\nexport type RequestBody = string | FormData | URLSearchParams | Blob | ArrayBuffer | Record<string, unknown> | null;\n\n/**\n * 请求配置选项\n * \n * @template TResponse - 响应数据类型(用于类型推导)\n */\nexport interface RequestOptions<TResponse = unknown> {\n /**\n * 响应类型占位符(用于类型推导,实际不使用)\n * @internal\n */\n _responseType?: TResponse;\n\n /**\n * 请求方法\n */\n method?: HttpMethod;\n\n /**\n * 请求 URL\n */\n url: string;\n\n /**\n * 请求头\n */\n headers?: RequestHeaders;\n\n /**\n * 查询参数\n */\n query?: RequestQuery;\n\n /**\n * 请求体\n */\n body?: RequestBody;\n\n /**\n * 请求超时时间(毫秒)\n */\n timeout?: number;\n\n /**\n * 是否允许跨域请求\n */\n credentials?: 'include' | 'same-origin' | 'omit';\n\n /**\n * 响应类型\n */\n responseType?: 'json' | 'text' | 'blob' | 'arrayBuffer' | 'formData';\n\n /**\n * 是否中止请求\n */\n signal?: AbortSignal;\n\n /**\n * 请求元数据(用于插件扩展)\n */\n meta?: Record<string, unknown>;\n\n /**\n * 请求标签(用于缓存、监控等)\n */\n tags?: string[];\n\n /**\n * 是否跳过默认插件\n */\n skipPlugins?: string[];\n\n /**\n * 请求重试配置\n */\n retry?: RetryConfig;\n\n /**\n * 请求缓存配置\n */\n cache?: CacheConfig;\n\n /**\n * 请求验证配置\n */\n validation?: ValidationConfig;\n}\n\n/**\n * 重试配置\n */\nexport interface RetryConfig {\n /**\n * 最大重试次数\n */\n maxAttempts?: number;\n\n /**\n * 重试延迟(毫秒)\n */\n delay?: number;\n\n /**\n * 重试延迟策略(指数退避)\n */\n exponentialBackoff?: boolean;\n\n /**\n * 重试条件函数\n */\n shouldRetry?: (error: unknown, attempt: number) => boolean;\n\n /**\n * 重试延迟计算函数\n */\n calculateDelay?: (attempt: number) => number;\n}\n\n/**\n * 缓存配置\n */\nexport interface CacheConfig {\n /**\n * 缓存键\n */\n key?: string;\n\n /**\n * 缓存时间(毫秒)\n */\n ttl?: number;\n\n /**\n * 是否强制刷新\n */\n forceRefresh?: boolean;\n\n /**\n * 缓存存储类型\n */\n storage?: 'memory' | 'localStorage' | 'sessionStorage';\n\n /**\n * 缓存条件函数\n */\n shouldCache?: (response: Response<unknown>) => boolean;\n}\n\n/**\n * 验证配置\n * \n * @template TResponse - 响应数据类型\n */\nexport interface ValidationConfig {\n /**\n * 请求参数验证 Schema(Zod)\n */\n requestSchema?: unknown;\n\n /**\n * 响应数据验证 Schema(Zod)\n */\n responseSchema?: unknown;\n\n /**\n * 验证失败时的处理方式\n */\n onValidationError?: (error: unknown) => void;\n}\n\n/**\n * 响应对象\n * \n * @template TData - 响应数据类型\n * @template TMeta - 响应元数据类型\n */\nexport interface Response<TData = unknown, TMeta = Record<string, unknown>> {\n /**\n * 响应数据\n */\n data: TData;\n\n /**\n * HTTP 状态码\n */\n status: number;\n\n /**\n * HTTP 状态文本\n */\n statusText: string;\n\n /**\n * 响应头\n */\n headers: RequestHeaders;\n\n /**\n * 响应元数据(由插件注入)\n */\n meta?: TMeta;\n\n /**\n * 原始响应对象(适配器提供)\n */\n raw?: unknown;\n}\n\n/**\n * 请求错误类型\n */\nexport enum RequestErrorType {\n /**\n * 网络错误\n */\n NETWORK_ERROR = 'NETWORK_ERROR',\n\n /**\n * 超时错误\n */\n TIMEOUT_ERROR = 'TIMEOUT_ERROR',\n\n /**\n * HTTP 错误(4xx, 5xx)\n */\n HTTP_ERROR = 'HTTP_ERROR',\n\n /**\n * 取消错误\n */\n ABORT_ERROR = 'ABORT_ERROR',\n\n /**\n * 验证错误\n */\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n\n /**\n * 未知错误\n */\n UNKNOWN_ERROR = 'UNKNOWN_ERROR',\n}\n\n/**\n * 请求错误代码\n */\nexport enum RequestErrorCode {\n /**\n * 网络连接失败\n */\n NETWORK_CONNECTION_FAILED = 'NETWORK_CONNECTION_FAILED',\n\n /**\n * 请求超时\n */\n REQUEST_TIMEOUT = 'REQUEST_TIMEOUT',\n\n /**\n * 服务器错误(5xx)\n */\n SERVER_ERROR = 'SERVER_ERROR',\n\n /**\n * 客户端错误(4xx)\n */\n CLIENT_ERROR = 'CLIENT_ERROR',\n\n /**\n * 请求被取消\n */\n REQUEST_ABORTED = 'REQUEST_ABORTED',\n\n /**\n * 响应验证失败\n */\n RESPONSE_VALIDATION_FAILED = 'RESPONSE_VALIDATION_FAILED',\n\n /**\n * 请求参数验证失败\n */\n REQUEST_VALIDATION_FAILED = 'REQUEST_VALIDATION_FAILED',\n}\n\n/**\n * 请求错误类\n */\nexport class RequestError extends Error {\n /**\n * 错误类型\n */\n type: RequestErrorType;\n\n /**\n * 错误代码\n */\n code: RequestErrorCode;\n\n /**\n * HTTP 状态码(如果有)\n */\n status?: number;\n\n /**\n * 原始错误\n */\n cause?: unknown;\n\n /**\n * 请求配置\n */\n request?: RequestOptions;\n\n /**\n * 响应数据(如果有)\n */\n response?: Response;\n\n /**\n * 错误上下文\n */\n context?: Record<string, unknown>;\n\n constructor(\n message: string,\n type: RequestErrorType,\n code: RequestErrorCode,\n options?: {\n status?: number;\n cause?: unknown;\n request?: RequestOptions;\n response?: Response;\n context?: Record<string, unknown>;\n }\n ) {\n super(message);\n this.name = 'RequestError';\n this.type = type;\n this.code = code;\n this.status = options?.status;\n this.cause = options?.cause;\n this.request = options?.request;\n this.response = options?.response;\n this.context = options?.context;\n }\n}\n\n/**\n * 请求上下文\n * \n * @template TRequest - 请求配置类型\n * @template TResponse - 响应类型\n * @template TMeta - 元数据类型\n */\nexport interface RequestContext<TRequest = RequestOptions, TResponse = Response, TMeta = Record<string, unknown>> {\n /**\n * 请求配置\n */\n request: TRequest;\n\n /**\n * 响应(如果已收到)\n */\n response?: TResponse;\n\n /**\n * 错误(如果发生)\n */\n error?: RequestError;\n\n /**\n * 上下文元数据(由插件注入)\n */\n meta: TMeta;\n\n /**\n * 请求开始时间\n */\n startTime: number;\n\n /**\n * 请求结束时间(如果已完成)\n */\n endTime?: number;\n\n /**\n * 请求耗时(毫秒)\n */\n duration?: number;\n\n /**\n * 重试次数\n */\n retryCount: number;\n\n /**\n * 是否已取消\n */\n cancelled: boolean;\n\n /**\n * 中止控制器\n */\n abortController?: AbortController;\n}\n\n/**\n * 适配器能力声明\n */\nexport interface AdapterCapabilities {\n /**\n * 是否支持取消请求\n */\n supportsAbort?: boolean;\n\n /**\n * 是否支持超时\n */\n supportsTimeout?: boolean;\n\n /**\n * 是否支持进度追踪\n */\n supportsProgress?: boolean;\n\n /**\n * 是否支持拦截器\n */\n supportsInterceptors?: boolean;\n}\n\n/**\n * 请求客户端配置\n */\nexport interface RequestClientConfig {\n /**\n * 基础 URL\n */\n baseURL?: string;\n\n /**\n * 默认请求头\n */\n defaultHeaders?: RequestHeaders;\n\n /**\n * 默认超时时间(毫秒)\n */\n defaultTimeout?: number;\n\n /**\n * 默认适配器(按需加载)\n * 可以是适配器名称字符串,或返回适配器的工厂函数\n */\n defaultAdapter?: string | (() => Promise<import('./adapter/RequestAdapter').RequestAdapter>);\n\n /**\n * 插件列表\n */\n plugins?: Array<import('./plugin/RequestPlugin').RequestPlugin>;\n\n /**\n * 是否启用开发模式\n */\n devMode?: boolean;\n}\n"],"names":["RequestErrorType","RequestErrorCode","RequestError","Error","message","type","code","options","status","cause","request","response","context","name"],"mappings":"AAAA;;CAEC,GAED;;CAEC;;;;;;;;;;;;;AAkOD;;CAEC,GACD,OAAO,IAAA,AAAKA,0CAAAA;IACV;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;WA5BSA;MA8BX;AAED;;CAEC,GACD,OAAO,IAAA,AAAKC,0CAAAA;IACV;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;WAjCSA;MAmCX;AAED;;CAEC,GACD,OAAO,MAAMC,qBAAqBC;IAoChC,YACEC,OAAe,EACfC,IAAsB,EACtBC,IAAsB,EACtBC,OAMC,CACD;QACA,KAAK,CAACH,UA/CR;;GAEC,GACDC,uBAAAA,QAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,QAAAA,KAAAA,IAEA;;GAEC,GACDE,uBAAAA,UAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,SAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,WAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,YAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,WAAAA,KAAAA;QAeE,IAAI,CAACC,IAAI,GAAG;QACZ,IAAI,CAACR,IAAI,GAAGA;QACZ,IAAI,CAACC,IAAI,GAAGA;QACZ,IAAI,CAACE,MAAM,GAAGD,SAASC;QACvB,IAAI,CAACC,KAAK,GAAGF,SAASE;QACtB,IAAI,CAACC,OAAO,GAAGH,SAASG;QACxB,IAAI,CAACC,QAAQ,GAAGJ,SAASI;QACzB,IAAI,CAACC,OAAO,GAAGL,SAASK;IAC1B;AACF"}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 请求队列管理器
|
|
3
|
-
*
|
|
4
|
-
* 用于管理待执行的请求队列,支持请求拦截、暂停、恢复等功能
|
|
5
|
-
*/
|
|
6
|
-
import type { RequestOptions, Response } from '../types';
|
|
7
|
-
/**
|
|
8
|
-
* 请求队列管理器
|
|
9
|
-
*/
|
|
10
|
-
declare class RequestQueueManager {
|
|
11
|
-
private static instance;
|
|
12
|
-
/**
|
|
13
|
-
* 待执行的请求队列
|
|
14
|
-
*/
|
|
15
|
-
private queue;
|
|
16
|
-
/**
|
|
17
|
-
* 队列状态
|
|
18
|
-
*/
|
|
19
|
-
private state;
|
|
20
|
-
/**
|
|
21
|
-
* 当前正在执行的回调 Promise
|
|
22
|
-
*/
|
|
23
|
-
private processingPromise;
|
|
24
|
-
/**
|
|
25
|
-
* 获取单例实例
|
|
26
|
-
*/
|
|
27
|
-
static getInstance(): RequestQueueManager;
|
|
28
|
-
/**
|
|
29
|
-
* 检查队列是否处于暂停状态
|
|
30
|
-
*/
|
|
31
|
-
isPaused(): boolean;
|
|
32
|
-
/**
|
|
33
|
-
* 暂停队列,后续请求会被放入队列
|
|
34
|
-
*/
|
|
35
|
-
pause(): void;
|
|
36
|
-
/**
|
|
37
|
-
* 恢复队列,执行队列中的所有请求
|
|
38
|
-
*/
|
|
39
|
-
resume(): Promise<void>;
|
|
40
|
-
/**
|
|
41
|
-
* 执行回调并等待完成,然后恢复队列
|
|
42
|
-
*
|
|
43
|
-
* @param callback - 回调函数
|
|
44
|
-
*/
|
|
45
|
-
processAndResume(callback: () => Promise<void> | void): Promise<void>;
|
|
46
|
-
/**
|
|
47
|
-
* 将请求添加到队列
|
|
48
|
-
*
|
|
49
|
-
* @template TResponse - 响应数据类型
|
|
50
|
-
* @param options - 请求配置
|
|
51
|
-
* @param execute - 请求执行函数
|
|
52
|
-
* @returns Promise 解析为响应对象
|
|
53
|
-
*/
|
|
54
|
-
enqueue<TResponse = unknown>(options: RequestOptions<TResponse>, execute: () => Promise<Response<TResponse>>): Promise<Response<TResponse>>;
|
|
55
|
-
/**
|
|
56
|
-
* 获取队列长度
|
|
57
|
-
*/
|
|
58
|
-
getQueueLength(): number;
|
|
59
|
-
/**
|
|
60
|
-
* 清空队列
|
|
61
|
-
*
|
|
62
|
-
* @param reason - 清空原因(用于错误信息)
|
|
63
|
-
*/
|
|
64
|
-
clear(reason?: string): void;
|
|
65
|
-
/**
|
|
66
|
-
* 销毁管理器
|
|
67
|
-
*/
|
|
68
|
-
destroy(): void;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* 获取请求队列管理器实例
|
|
72
|
-
*/
|
|
73
|
-
export declare function getRequestQueueManager(): RequestQueueManager;
|
|
74
|
-
export {};
|