@vlian/framework 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +191 -0
- package/README.md +130 -0
- package/dist/components/index.cjs +6 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +3 -0
- package/dist/components/index.js.map +1 -0
- package/dist/core/Test.cjs +66 -0
- package/dist/core/Test.cjs.map +1 -0
- package/dist/core/Test.d.ts +6 -0
- package/dist/core/Test.d.ts.map +1 -0
- package/dist/core/Test.js +15 -0
- package/dist/core/Test.js.map +1 -0
- package/dist/core/app/AppContext.cjs +344 -0
- package/dist/core/app/AppContext.cjs.map +1 -0
- package/dist/core/app/AppContext.d.ts +110 -0
- package/dist/core/app/AppContext.d.ts.map +1 -0
- package/dist/core/app/AppContext.js +333 -0
- package/dist/core/app/AppContext.js.map +1 -0
- package/dist/core/app/AppContext.types.cjs +6 -0
- package/dist/core/app/AppContext.types.cjs.map +1 -0
- package/dist/core/app/AppContext.types.d.ts +147 -0
- package/dist/core/app/AppContext.types.d.ts.map +1 -0
- package/dist/core/app/AppContext.types.js +5 -0
- package/dist/core/app/AppContext.types.js.map +1 -0
- package/dist/core/app/BasicLayout.cjs +89 -0
- package/dist/core/app/BasicLayout.cjs.map +1 -0
- package/dist/core/app/BasicLayout.d.ts +13 -0
- package/dist/core/app/BasicLayout.d.ts.map +1 -0
- package/dist/core/app/BasicLayout.js +39 -0
- package/dist/core/app/BasicLayout.js.map +1 -0
- package/dist/core/app/DefaultApp.cjs +201 -0
- package/dist/core/app/DefaultApp.cjs.map +1 -0
- package/dist/core/app/DefaultApp.d.ts +31 -0
- package/dist/core/app/DefaultApp.d.ts.map +1 -0
- package/dist/core/app/DefaultApp.js +192 -0
- package/dist/core/app/DefaultApp.js.map +1 -0
- package/dist/core/app/index.cjs +43 -0
- package/dist/core/app/index.cjs.map +1 -0
- package/dist/core/app/index.d.ts +9 -0
- package/dist/core/app/index.d.ts.map +1 -0
- package/dist/core/app/index.js +7 -0
- package/dist/core/app/index.js.map +1 -0
- package/dist/core/config/AppConfig.cjs +141 -0
- package/dist/core/config/AppConfig.cjs.map +1 -0
- package/dist/core/config/AppConfig.d.ts +89 -0
- package/dist/core/config/AppConfig.d.ts.map +1 -0
- package/dist/core/config/AppConfig.js +133 -0
- package/dist/core/config/AppConfig.js.map +1 -0
- package/dist/core/config/ConfigLoader.cjs +243 -0
- package/dist/core/config/ConfigLoader.cjs.map +1 -0
- package/dist/core/config/ConfigLoader.d.ts +103 -0
- package/dist/core/config/ConfigLoader.d.ts.map +1 -0
- package/dist/core/config/ConfigLoader.js +229 -0
- package/dist/core/config/ConfigLoader.js.map +1 -0
- package/dist/core/config/ConfigValidator.cjs +135 -0
- package/dist/core/config/ConfigValidator.cjs.map +1 -0
- package/dist/core/config/ConfigValidator.d.ts +85 -0
- package/dist/core/config/ConfigValidator.d.ts.map +1 -0
- package/dist/core/config/ConfigValidator.js +121 -0
- package/dist/core/config/ConfigValidator.js.map +1 -0
- package/dist/core/config/index.cjs +30 -0
- package/dist/core/config/index.cjs.map +1 -0
- package/dist/core/config/index.d.ts +7 -0
- package/dist/core/config/index.d.ts.map +1 -0
- package/dist/core/config/index.js +7 -0
- package/dist/core/config/index.js.map +1 -0
- package/dist/core/dev/DevTools.cjs +374 -0
- package/dist/core/dev/DevTools.cjs.map +1 -0
- package/dist/core/dev/DevTools.d.ts +47 -0
- package/dist/core/dev/DevTools.d.ts.map +1 -0
- package/dist/core/dev/DevTools.js +363 -0
- package/dist/core/dev/DevTools.js.map +1 -0
- package/dist/core/error/ErrorBoundary.cjs +331 -0
- package/dist/core/error/ErrorBoundary.cjs.map +1 -0
- package/dist/core/error/ErrorBoundary.d.ts +123 -0
- package/dist/core/error/ErrorBoundary.d.ts.map +1 -0
- package/dist/core/error/ErrorBoundary.js +327 -0
- package/dist/core/error/ErrorBoundary.js.map +1 -0
- package/dist/core/error/index.cjs +26 -0
- package/dist/core/error/index.cjs.map +1 -0
- package/dist/core/error/index.d.ts +6 -0
- package/dist/core/error/index.d.ts.map +1 -0
- package/dist/core/error/index.js +5 -0
- package/dist/core/error/index.js.map +1 -0
- package/dist/core/index.cjs +140 -0
- package/dist/core/index.cjs.map +1 -0
- package/dist/core/index.d.ts +53 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +66 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/initialization/InitializationErrorThrower.cjs +77 -0
- package/dist/core/initialization/InitializationErrorThrower.cjs.map +1 -0
- package/dist/core/initialization/InitializationErrorThrower.d.ts +8 -0
- package/dist/core/initialization/InitializationErrorThrower.d.ts.map +1 -0
- package/dist/core/initialization/InitializationErrorThrower.js +30 -0
- package/dist/core/initialization/InitializationErrorThrower.js.map +1 -0
- package/dist/core/initialization/index.cjs +28 -0
- package/dist/core/initialization/index.cjs.map +1 -0
- package/dist/core/initialization/index.d.ts +8 -0
- package/dist/core/initialization/index.d.ts.map +1 -0
- package/dist/core/initialization/index.js +7 -0
- package/dist/core/initialization/index.js.map +1 -0
- package/dist/core/initialization/initialization.cjs +211 -0
- package/dist/core/initialization/initialization.cjs.map +1 -0
- package/dist/core/initialization/initialization.d.ts +127 -0
- package/dist/core/initialization/initialization.d.ts.map +1 -0
- package/dist/core/initialization/initialization.js +224 -0
- package/dist/core/initialization/initialization.js.map +1 -0
- package/dist/core/initialization/initializationErrorState.cjs +68 -0
- package/dist/core/initialization/initializationErrorState.cjs.map +1 -0
- package/dist/core/initialization/initializationErrorState.d.ts +36 -0
- package/dist/core/initialization/initializationErrorState.d.ts.map +1 -0
- package/dist/core/initialization/initializationErrorState.js +60 -0
- package/dist/core/initialization/initializationErrorState.js.map +1 -0
- package/dist/core/middleware.cjs +75 -0
- package/dist/core/middleware.cjs.map +1 -0
- package/dist/core/middleware.d.ts +37 -0
- package/dist/core/middleware.d.ts.map +1 -0
- package/dist/core/middleware.js +61 -0
- package/dist/core/middleware.js.map +1 -0
- package/dist/core/plugin/PluginEventBus.cjs +300 -0
- package/dist/core/plugin/PluginEventBus.cjs.map +1 -0
- package/dist/core/plugin/PluginEventBus.d.ts +170 -0
- package/dist/core/plugin/PluginEventBus.d.ts.map +1 -0
- package/dist/core/plugin/PluginEventBus.js +286 -0
- package/dist/core/plugin/PluginEventBus.js.map +1 -0
- package/dist/core/plugin/PluginSandbox.cjs +139 -0
- package/dist/core/plugin/PluginSandbox.cjs.map +1 -0
- package/dist/core/plugin/PluginSandbox.d.ts +102 -0
- package/dist/core/plugin/PluginSandbox.d.ts.map +1 -0
- package/dist/core/plugin/PluginSandbox.js +125 -0
- package/dist/core/plugin/PluginSandbox.js.map +1 -0
- package/dist/core/plugin.cjs +496 -0
- package/dist/core/plugin.cjs.map +1 -0
- package/dist/core/plugin.d.ts +221 -0
- package/dist/core/plugin.d.ts.map +1 -0
- package/dist/core/plugin.js +438 -0
- package/dist/core/plugin.js.map +1 -0
- package/dist/core/router/RouterManager.cjs +239 -0
- package/dist/core/router/RouterManager.cjs.map +1 -0
- package/dist/core/router/RouterManager.d.ts +83 -0
- package/dist/core/router/RouterManager.d.ts.map +1 -0
- package/dist/core/router/RouterManager.js +223 -0
- package/dist/core/router/RouterManager.js.map +1 -0
- package/dist/core/router/adapter/AdapterManager.cjs +237 -0
- package/dist/core/router/adapter/AdapterManager.cjs.map +1 -0
- package/dist/core/router/adapter/AdapterManager.d.ts +95 -0
- package/dist/core/router/adapter/AdapterManager.d.ts.map +1 -0
- package/dist/core/router/adapter/AdapterManager.js +221 -0
- package/dist/core/router/adapter/AdapterManager.js.map +1 -0
- package/dist/core/router/adapter/index.cjs +24 -0
- package/dist/core/router/adapter/index.cjs.map +1 -0
- package/dist/core/router/adapter/index.d.ts +7 -0
- package/dist/core/router/adapter/index.d.ts.map +1 -0
- package/dist/core/router/adapter/index.js +7 -0
- package/dist/core/router/adapter/index.js.map +1 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs +130 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs.map +1 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.d.ts +44 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.d.ts.map +1 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js +116 -0
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js.map +1 -0
- package/dist/core/router/adapter/react-router/index.cjs +22 -0
- package/dist/core/router/adapter/react-router/index.cjs.map +1 -0
- package/dist/core/router/adapter/react-router/index.d.ts +5 -0
- package/dist/core/router/adapter/react-router/index.d.ts.map +1 -0
- package/dist/core/router/adapter/react-router/index.js +5 -0
- package/dist/core/router/adapter/react-router/index.js.map +1 -0
- package/dist/core/router/adapter/types.cjs +8 -0
- package/dist/core/router/adapter/types.cjs.map +1 -0
- package/dist/core/router/adapter/types.d.ts +112 -0
- package/dist/core/router/adapter/types.d.ts.map +1 -0
- package/dist/core/router/adapter/types.js +7 -0
- package/dist/core/router/adapter/types.js.map +1 -0
- package/dist/core/router/dev/RouterDevTools.cjs +410 -0
- package/dist/core/router/dev/RouterDevTools.cjs.map +1 -0
- package/dist/core/router/dev/RouterDevTools.d.ts +10 -0
- package/dist/core/router/dev/RouterDevTools.d.ts.map +1 -0
- package/dist/core/router/dev/RouterDevTools.js +363 -0
- package/dist/core/router/dev/RouterDevTools.js.map +1 -0
- package/dist/core/router/dev/index.cjs +22 -0
- package/dist/core/router/dev/index.cjs.map +1 -0
- package/dist/core/router/dev/index.d.ts +5 -0
- package/dist/core/router/dev/index.d.ts.map +1 -0
- package/dist/core/router/dev/index.js +5 -0
- package/dist/core/router/dev/index.js.map +1 -0
- package/dist/core/router/dynamic/DynamicRouteManager.cjs +195 -0
- package/dist/core/router/dynamic/DynamicRouteManager.cjs.map +1 -0
- package/dist/core/router/dynamic/DynamicRouteManager.d.ts +72 -0
- package/dist/core/router/dynamic/DynamicRouteManager.d.ts.map +1 -0
- package/dist/core/router/dynamic/DynamicRouteManager.js +179 -0
- package/dist/core/router/dynamic/DynamicRouteManager.js.map +1 -0
- package/dist/core/router/dynamic/index.cjs +22 -0
- package/dist/core/router/dynamic/index.cjs.map +1 -0
- package/dist/core/router/dynamic/index.d.ts +5 -0
- package/dist/core/router/dynamic/index.d.ts.map +1 -0
- package/dist/core/router/dynamic/index.js +5 -0
- package/dist/core/router/dynamic/index.js.map +1 -0
- package/dist/core/router/errors/RouterError.cjs +63 -0
- package/dist/core/router/errors/RouterError.cjs.map +1 -0
- package/dist/core/router/errors/RouterError.d.ts +48 -0
- package/dist/core/router/errors/RouterError.d.ts.map +1 -0
- package/dist/core/router/errors/RouterError.js +48 -0
- package/dist/core/router/errors/RouterError.js.map +1 -0
- package/dist/core/router/errors/index.cjs +22 -0
- package/dist/core/router/errors/index.cjs.map +1 -0
- package/dist/core/router/errors/index.d.ts +5 -0
- package/dist/core/router/errors/index.d.ts.map +1 -0
- package/dist/core/router/errors/index.js +5 -0
- package/dist/core/router/errors/index.js.map +1 -0
- package/dist/core/router/index.cjs +38 -0
- package/dist/core/router/index.cjs.map +1 -0
- package/dist/core/router/index.d.ts +17 -0
- package/dist/core/router/index.d.ts.map +1 -0
- package/dist/core/router/index.js +32 -0
- package/dist/core/router/index.js.map +1 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs +146 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs.map +1 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.d.ts +57 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.d.ts.map +1 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.js +130 -0
- package/dist/core/router/lifecycle/RouterLifecycleManager.js.map +1 -0
- package/dist/core/router/lifecycle/index.cjs +22 -0
- package/dist/core/router/lifecycle/index.cjs.map +1 -0
- package/dist/core/router/lifecycle/index.d.ts +5 -0
- package/dist/core/router/lifecycle/index.d.ts.map +1 -0
- package/dist/core/router/lifecycle/index.js +5 -0
- package/dist/core/router/lifecycle/index.js.map +1 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs +175 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs.map +1 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.d.ts +61 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.d.ts.map +1 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.js +159 -0
- package/dist/core/router/middleware/RouterMiddlewareManager.js.map +1 -0
- package/dist/core/router/middleware/auth.cjs +68 -0
- package/dist/core/router/middleware/auth.cjs.map +1 -0
- package/dist/core/router/middleware/auth.d.ts +55 -0
- package/dist/core/router/middleware/auth.d.ts.map +1 -0
- package/dist/core/router/middleware/auth.js +63 -0
- package/dist/core/router/middleware/auth.js.map +1 -0
- package/dist/core/router/middleware/index.cjs +24 -0
- package/dist/core/router/middleware/index.cjs.map +1 -0
- package/dist/core/router/middleware/index.d.ts +7 -0
- package/dist/core/router/middleware/index.d.ts.map +1 -0
- package/dist/core/router/middleware/index.js +7 -0
- package/dist/core/router/middleware/index.js.map +1 -0
- package/dist/core/router/middleware/types.cjs +8 -0
- package/dist/core/router/middleware/types.cjs.map +1 -0
- package/dist/core/router/middleware/types.d.ts +83 -0
- package/dist/core/router/middleware/types.d.ts.map +1 -0
- package/dist/core/router/middleware/types.js +7 -0
- package/dist/core/router/middleware/types.js.map +1 -0
- package/dist/core/router/monitoring/RouterMonitoring.cjs +229 -0
- package/dist/core/router/monitoring/RouterMonitoring.cjs.map +1 -0
- package/dist/core/router/monitoring/RouterMonitoring.d.ts +135 -0
- package/dist/core/router/monitoring/RouterMonitoring.d.ts.map +1 -0
- package/dist/core/router/monitoring/RouterMonitoring.js +213 -0
- package/dist/core/router/monitoring/RouterMonitoring.js.map +1 -0
- package/dist/core/router/monitoring/index.cjs +22 -0
- package/dist/core/router/monitoring/index.cjs.map +1 -0
- package/dist/core/router/monitoring/index.d.ts +5 -0
- package/dist/core/router/monitoring/index.d.ts.map +1 -0
- package/dist/core/router/monitoring/index.js +5 -0
- package/dist/core/router/monitoring/index.js.map +1 -0
- package/dist/core/router/navigation/RouterNavigation.cjs +186 -0
- package/dist/core/router/navigation/RouterNavigation.cjs.map +1 -0
- package/dist/core/router/navigation/RouterNavigation.d.ts +41 -0
- package/dist/core/router/navigation/RouterNavigation.d.ts.map +1 -0
- package/dist/core/router/navigation/RouterNavigation.js +137 -0
- package/dist/core/router/navigation/RouterNavigation.js.map +1 -0
- package/dist/core/router/navigation/index.cjs +22 -0
- package/dist/core/router/navigation/index.cjs.map +1 -0
- package/dist/core/router/navigation/index.d.ts +5 -0
- package/dist/core/router/navigation/index.d.ts.map +1 -0
- package/dist/core/router/navigation/index.js +5 -0
- package/dist/core/router/navigation/index.js.map +1 -0
- package/dist/core/router/performance/RouteCache.cjs +286 -0
- package/dist/core/router/performance/RouteCache.cjs.map +1 -0
- package/dist/core/router/performance/RouteCache.d.ts +108 -0
- package/dist/core/router/performance/RouteCache.d.ts.map +1 -0
- package/dist/core/router/performance/RouteCache.js +270 -0
- package/dist/core/router/performance/RouteCache.js.map +1 -0
- package/dist/core/router/performance/RoutePreloader.cjs +227 -0
- package/dist/core/router/performance/RoutePreloader.cjs.map +1 -0
- package/dist/core/router/performance/RoutePreloader.d.ts +104 -0
- package/dist/core/router/performance/RoutePreloader.d.ts.map +1 -0
- package/dist/core/router/performance/RoutePreloader.js +210 -0
- package/dist/core/router/performance/RoutePreloader.js.map +1 -0
- package/dist/core/router/performance/index.cjs +23 -0
- package/dist/core/router/performance/index.cjs.map +1 -0
- package/dist/core/router/performance/index.d.ts +6 -0
- package/dist/core/router/performance/index.d.ts.map +1 -0
- package/dist/core/router/performance/index.js +6 -0
- package/dist/core/router/performance/index.js.map +1 -0
- package/dist/core/router/plugin/RouterPluginManager.cjs +264 -0
- package/dist/core/router/plugin/RouterPluginManager.cjs.map +1 -0
- package/dist/core/router/plugin/RouterPluginManager.d.ts +75 -0
- package/dist/core/router/plugin/RouterPluginManager.d.ts.map +1 -0
- package/dist/core/router/plugin/RouterPluginManager.js +248 -0
- package/dist/core/router/plugin/RouterPluginManager.js.map +1 -0
- package/dist/core/router/plugin/index.cjs +23 -0
- package/dist/core/router/plugin/index.cjs.map +1 -0
- package/dist/core/router/plugin/index.d.ts +6 -0
- package/dist/core/router/plugin/index.d.ts.map +1 -0
- package/dist/core/router/plugin/index.js +6 -0
- package/dist/core/router/plugin/index.js.map +1 -0
- package/dist/core/router/plugin/types.cjs +41 -0
- package/dist/core/router/plugin/types.cjs.map +1 -0
- package/dist/core/router/plugin/types.d.ts +154 -0
- package/dist/core/router/plugin/types.d.ts.map +1 -0
- package/dist/core/router/plugin/types.js +33 -0
- package/dist/core/router/plugin/types.js.map +1 -0
- package/dist/core/router/types.cjs +6 -0
- package/dist/core/router/types.cjs.map +1 -0
- package/dist/core/router/types.d.ts +439 -0
- package/dist/core/router/types.d.ts.map +1 -0
- package/dist/core/router/types.js +5 -0
- package/dist/core/router/types.js.map +1 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +139 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs.map +1 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.d.ts +3 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.d.ts.map +1 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js +129 -0
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js.map +1 -0
- package/dist/core/router/utils/adapters/react-router/transform.cjs +261 -0
- package/dist/core/router/utils/adapters/react-router/transform.cjs.map +1 -0
- package/dist/core/router/utils/adapters/react-router/transform.d.ts +6 -0
- package/dist/core/router/utils/adapters/react-router/transform.d.ts.map +1 -0
- package/dist/core/router/utils/adapters/react-router/transform.js +246 -0
- package/dist/core/router/utils/adapters/react-router/transform.js.map +1 -0
- package/dist/core/router/utils/transform.cjs +772 -0
- package/dist/core/router/utils/transform.cjs.map +1 -0
- package/dist/core/router/utils/transform.d.ts +349 -0
- package/dist/core/router/utils/transform.d.ts.map +1 -0
- package/dist/core/router/utils/transform.js +781 -0
- package/dist/core/router/utils/transform.js.map +1 -0
- package/dist/core/router/validation/RouterConfigValidator.cjs +85 -0
- package/dist/core/router/validation/RouterConfigValidator.cjs.map +1 -0
- package/dist/core/router/validation/RouterConfigValidator.d.ts +58 -0
- package/dist/core/router/validation/RouterConfigValidator.d.ts.map +1 -0
- package/dist/core/router/validation/RouterConfigValidator.js +77 -0
- package/dist/core/router/validation/RouterConfigValidator.js.map +1 -0
- package/dist/core/router/validation/index.cjs +23 -0
- package/dist/core/router/validation/index.cjs.map +1 -0
- package/dist/core/router/validation/index.d.ts +6 -0
- package/dist/core/router/validation/index.d.ts.map +1 -0
- package/dist/core/router/validation/index.js +6 -0
- package/dist/core/router/validation/index.js.map +1 -0
- package/dist/core/router/validation/schema.cjs +91 -0
- package/dist/core/router/validation/schema.cjs.map +1 -0
- package/dist/core/router/validation/schema.d.ts +82 -0
- package/dist/core/router/validation/schema.d.ts.map +1 -0
- package/dist/core/router/validation/schema.js +81 -0
- package/dist/core/router/validation/schema.js.map +1 -0
- package/dist/core/router/version/RouteVersionManager.cjs +207 -0
- package/dist/core/router/version/RouteVersionManager.cjs.map +1 -0
- package/dist/core/router/version/RouteVersionManager.d.ts +125 -0
- package/dist/core/router/version/RouteVersionManager.d.ts.map +1 -0
- package/dist/core/router/version/RouteVersionManager.js +191 -0
- package/dist/core/router/version/RouteVersionManager.js.map +1 -0
- package/dist/core/router/version/index.cjs +22 -0
- package/dist/core/router/version/index.cjs.map +1 -0
- package/dist/core/router/version/index.d.ts +5 -0
- package/dist/core/router/version/index.d.ts.map +1 -0
- package/dist/core/router/version/index.js +5 -0
- package/dist/core/router/version/index.js.map +1 -0
- package/dist/core/splash/SplashScreen.cjs +257 -0
- package/dist/core/splash/SplashScreen.cjs.map +1 -0
- package/dist/core/splash/SplashScreen.d.ts +15 -0
- package/dist/core/splash/SplashScreen.d.ts.map +1 -0
- package/dist/core/splash/SplashScreen.js +207 -0
- package/dist/core/splash/SplashScreen.js.map +1 -0
- package/dist/core/splash/index.cjs +24 -0
- package/dist/core/splash/index.cjs.map +1 -0
- package/dist/core/splash/index.d.ts +6 -0
- package/dist/core/splash/index.d.ts.map +1 -0
- package/dist/core/splash/index.js +6 -0
- package/dist/core/splash/index.js.map +1 -0
- package/dist/core/splash/splashScreenUtils.cjs +40 -0
- package/dist/core/splash/splashScreenUtils.cjs.map +1 -0
- package/dist/core/splash/splashScreenUtils.d.ts +8 -0
- package/dist/core/splash/splashScreenUtils.d.ts.map +1 -0
- package/dist/core/splash/splashScreenUtils.js +30 -0
- package/dist/core/splash/splashScreenUtils.js.map +1 -0
- package/dist/core/startup/AppInstance.cjs +233 -0
- package/dist/core/startup/AppInstance.cjs.map +1 -0
- package/dist/core/startup/AppInstance.d.ts +135 -0
- package/dist/core/startup/AppInstance.d.ts.map +1 -0
- package/dist/core/startup/AppInstance.js +218 -0
- package/dist/core/startup/AppInstance.js.map +1 -0
- package/dist/core/startup/environment.cjs +171 -0
- package/dist/core/startup/environment.cjs.map +1 -0
- package/dist/core/startup/environment.d.ts +88 -0
- package/dist/core/startup/environment.d.ts.map +1 -0
- package/dist/core/startup/environment.js +154 -0
- package/dist/core/startup/environment.js.map +1 -0
- package/dist/core/startup/index.cjs +25 -0
- package/dist/core/startup/index.cjs.map +1 -0
- package/dist/core/startup/index.d.ts +8 -0
- package/dist/core/startup/index.d.ts.map +1 -0
- package/dist/core/startup/index.js +8 -0
- package/dist/core/startup/index.js.map +1 -0
- package/dist/core/startup/initializeServices.cjs +166 -0
- package/dist/core/startup/initializeServices.cjs.map +1 -0
- package/dist/core/startup/initializeServices.d.ts +57 -0
- package/dist/core/startup/initializeServices.d.ts.map +1 -0
- package/dist/core/startup/initializeServices.js +124 -0
- package/dist/core/startup/initializeServices.js.map +1 -0
- package/dist/core/startup/performanceTracker.cjs +181 -0
- package/dist/core/startup/performanceTracker.cjs.map +1 -0
- package/dist/core/startup/performanceTracker.d.ts +105 -0
- package/dist/core/startup/performanceTracker.d.ts.map +1 -0
- package/dist/core/startup/performanceTracker.js +167 -0
- package/dist/core/startup/performanceTracker.js.map +1 -0
- package/dist/core/startup/renderApp.cjs +275 -0
- package/dist/core/startup/renderApp.cjs.map +1 -0
- package/dist/core/startup/renderApp.d.ts +71 -0
- package/dist/core/startup/renderApp.d.ts.map +1 -0
- package/dist/core/startup/renderApp.js +226 -0
- package/dist/core/startup/renderApp.js.map +1 -0
- package/dist/core/startup/startApp.cjs +151 -0
- package/dist/core/startup/startApp.cjs.map +1 -0
- package/dist/core/startup/startApp.d.ts +15 -0
- package/dist/core/startup/startApp.d.ts.map +1 -0
- package/dist/core/startup/startApp.js +147 -0
- package/dist/core/startup/startApp.js.map +1 -0
- package/dist/core/types.cjs +6 -0
- package/dist/core/types.cjs.map +1 -0
- package/dist/core/types.d.ts +461 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +5 -0
- package/dist/core/types.js.map +1 -0
- package/dist/index.cjs +152 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/library/index.cjs +21 -0
- package/dist/library/index.cjs.map +1 -0
- package/dist/library/index.d.ts +3 -0
- package/dist/library/index.d.ts.map +1 -0
- package/dist/library/index.js +4 -0
- package/dist/library/index.js.map +1 -0
- package/dist/library/locale/index.cjs +56 -0
- package/dist/library/locale/index.cjs.map +1 -0
- package/dist/library/locale/index.d.ts +6 -0
- package/dist/library/locale/index.d.ts.map +1 -0
- package/dist/library/locale/index.js +30 -0
- package/dist/library/locale/index.js.map +1 -0
- package/dist/library/locale/langs/en-us/index.cjs +34 -0
- package/dist/library/locale/langs/en-us/index.cjs.map +1 -0
- package/dist/library/locale/langs/en-us/index.d.ts +4 -0
- package/dist/library/locale/langs/en-us/index.d.ts.map +1 -0
- package/dist/library/locale/langs/en-us/index.js +24 -0
- package/dist/library/locale/langs/en-us/index.js.map +1 -0
- package/dist/library/locale/langs/zh-cn/index.cjs +34 -0
- package/dist/library/locale/langs/zh-cn/index.cjs.map +1 -0
- package/dist/library/locale/langs/zh-cn/index.d.ts +4 -0
- package/dist/library/locale/langs/zh-cn/index.d.ts.map +1 -0
- package/dist/library/locale/langs/zh-cn/index.js +24 -0
- package/dist/library/locale/langs/zh-cn/index.js.map +1 -0
- package/dist/library/locale/types.cjs +6 -0
- package/dist/library/locale/types.cjs.map +1 -0
- package/dist/library/locale/types.d.ts +39 -0
- package/dist/library/locale/types.d.ts.map +1 -0
- package/dist/library/locale/types.js +3 -0
- package/dist/library/locale/types.js.map +1 -0
- package/dist/library/storage/cache.cjs +245 -0
- package/dist/library/storage/cache.cjs.map +1 -0
- package/dist/library/storage/cache.d.ts +58 -0
- package/dist/library/storage/cache.d.ts.map +1 -0
- package/dist/library/storage/cache.js +237 -0
- package/dist/library/storage/cache.js.map +1 -0
- package/dist/library/storage/encryption.cjs +150 -0
- package/dist/library/storage/encryption.cjs.map +1 -0
- package/dist/library/storage/encryption.d.ts +46 -0
- package/dist/library/storage/encryption.d.ts.map +1 -0
- package/dist/library/storage/encryption.js +142 -0
- package/dist/library/storage/encryption.js.map +1 -0
- package/dist/library/storage/index.cjs +126 -0
- package/dist/library/storage/index.cjs.map +1 -0
- package/dist/library/storage/index.d.ts +62 -0
- package/dist/library/storage/index.d.ts.map +1 -0
- package/dist/library/storage/index.js +106 -0
- package/dist/library/storage/index.js.map +1 -0
- package/dist/request/adapter/RequestAdapter.cjs +78 -0
- package/dist/request/adapter/RequestAdapter.cjs.map +1 -0
- package/dist/request/adapter/RequestAdapter.d.ts +86 -0
- package/dist/request/adapter/RequestAdapter.d.ts.map +1 -0
- package/dist/request/adapter/RequestAdapter.js +70 -0
- package/dist/request/adapter/RequestAdapter.js.map +1 -0
- package/dist/request/adapter/axiosAdapter.cjs +164 -0
- package/dist/request/adapter/axiosAdapter.cjs.map +1 -0
- package/dist/request/adapter/axiosAdapter.d.ts +11 -0
- package/dist/request/adapter/axiosAdapter.d.ts.map +1 -0
- package/dist/request/adapter/axiosAdapter.js +115 -0
- package/dist/request/adapter/axiosAdapter.js.map +1 -0
- package/dist/request/adapter/fetchAdapter.cjs +134 -0
- package/dist/request/adapter/fetchAdapter.cjs.map +1 -0
- package/dist/request/adapter/fetchAdapter.d.ts +11 -0
- package/dist/request/adapter/fetchAdapter.d.ts.map +1 -0
- package/dist/request/adapter/fetchAdapter.js +126 -0
- package/dist/request/adapter/fetchAdapter.js.map +1 -0
- package/dist/request/adapter/index.cjs +80 -0
- package/dist/request/adapter/index.cjs.map +1 -0
- package/dist/request/adapter/index.d.ts +10 -0
- package/dist/request/adapter/index.d.ts.map +1 -0
- package/dist/request/adapter/index.js +14 -0
- package/dist/request/adapter/index.js.map +1 -0
- package/dist/request/adapter/kyAdapter.cjs +191 -0
- package/dist/request/adapter/kyAdapter.cjs.map +1 -0
- package/dist/request/adapter/kyAdapter.d.ts +11 -0
- package/dist/request/adapter/kyAdapter.d.ts.map +1 -0
- package/dist/request/adapter/kyAdapter.js +142 -0
- package/dist/request/adapter/kyAdapter.js.map +1 -0
- package/dist/request/adapter/undiciAdapter.cjs +213 -0
- package/dist/request/adapter/undiciAdapter.cjs.map +1 -0
- package/dist/request/adapter/undiciAdapter.d.ts +11 -0
- package/dist/request/adapter/undiciAdapter.d.ts.map +1 -0
- package/dist/request/adapter/undiciAdapter.js +164 -0
- package/dist/request/adapter/undiciAdapter.js.map +1 -0
- package/dist/request/core/RequestClient.cjs +539 -0
- package/dist/request/core/RequestClient.cjs.map +1 -0
- package/dist/request/core/RequestClient.d.ts +127 -0
- package/dist/request/core/RequestClient.d.ts.map +1 -0
- package/dist/request/core/RequestClient.js +490 -0
- package/dist/request/core/RequestClient.js.map +1 -0
- package/dist/request/core/index.cjs +15 -0
- package/dist/request/core/index.cjs.map +1 -0
- package/dist/request/core/index.d.ts +6 -0
- package/dist/request/core/index.d.ts.map +1 -0
- package/dist/request/core/index.js +5 -0
- package/dist/request/core/index.js.map +1 -0
- package/dist/request/index.cjs +146 -0
- package/dist/request/index.cjs.map +1 -0
- package/dist/request/index.d.ts +43 -0
- package/dist/request/index.d.ts.map +1 -0
- package/dist/request/index.js +50 -0
- package/dist/request/index.js.map +1 -0
- package/dist/request/plugin/RequestPlugin.cjs +218 -0
- package/dist/request/plugin/RequestPlugin.cjs.map +1 -0
- package/dist/request/plugin/RequestPlugin.d.ts +171 -0
- package/dist/request/plugin/RequestPlugin.d.ts.map +1 -0
- package/dist/request/plugin/RequestPlugin.js +203 -0
- package/dist/request/plugin/RequestPlugin.js.map +1 -0
- package/dist/request/plugin/cache.cjs +269 -0
- package/dist/request/plugin/cache.cjs.map +1 -0
- package/dist/request/plugin/cache.d.ts +34 -0
- package/dist/request/plugin/cache.d.ts.map +1 -0
- package/dist/request/plugin/cache.js +264 -0
- package/dist/request/plugin/cache.js.map +1 -0
- package/dist/request/plugin/csrfPlugin.cjs +40 -0
- package/dist/request/plugin/csrfPlugin.cjs.map +1 -0
- package/dist/request/plugin/csrfPlugin.d.ts +22 -0
- package/dist/request/plugin/csrfPlugin.d.ts.map +1 -0
- package/dist/request/plugin/csrfPlugin.js +44 -0
- package/dist/request/plugin/csrfPlugin.js.map +1 -0
- package/dist/request/plugin/index.cjs +49 -0
- package/dist/request/plugin/index.cjs.map +1 -0
- package/dist/request/plugin/index.d.ts +11 -0
- package/dist/request/plugin/index.d.ts.map +1 -0
- package/dist/request/plugin/index.js +11 -0
- package/dist/request/plugin/index.js.map +1 -0
- package/dist/request/plugin/monitoring.cjs +216 -0
- package/dist/request/plugin/monitoring.cjs.map +1 -0
- package/dist/request/plugin/monitoring.d.ts +113 -0
- package/dist/request/plugin/monitoring.d.ts.map +1 -0
- package/dist/request/plugin/monitoring.js +205 -0
- package/dist/request/plugin/monitoring.js.map +1 -0
- package/dist/request/plugin/retry.cjs +98 -0
- package/dist/request/plugin/retry.cjs.map +1 -0
- package/dist/request/plugin/retry.d.ts +35 -0
- package/dist/request/plugin/retry.d.ts.map +1 -0
- package/dist/request/plugin/retry.js +93 -0
- package/dist/request/plugin/retry.js.map +1 -0
- package/dist/request/plugin/validation.cjs +121 -0
- package/dist/request/plugin/validation.cjs.map +1 -0
- package/dist/request/plugin/validation.d.ts +27 -0
- package/dist/request/plugin/validation.d.ts.map +1 -0
- package/dist/request/plugin/validation.js +116 -0
- package/dist/request/plugin/validation.js.map +1 -0
- package/dist/request/runtime/RequestContext.cjs +77 -0
- package/dist/request/runtime/RequestContext.cjs.map +1 -0
- package/dist/request/runtime/RequestContext.d.ts +51 -0
- package/dist/request/runtime/RequestContext.d.ts.map +1 -0
- package/dist/request/runtime/RequestContext.js +86 -0
- package/dist/request/runtime/RequestContext.js.map +1 -0
- package/dist/request/runtime/index.cjs +32 -0
- package/dist/request/runtime/index.cjs.map +1 -0
- package/dist/request/runtime/index.d.ts +5 -0
- package/dist/request/runtime/index.d.ts.map +1 -0
- package/dist/request/runtime/index.js +5 -0
- package/dist/request/runtime/index.js.map +1 -0
- package/dist/request/types.cjs +112 -0
- package/dist/request/types.cjs.map +1 -0
- package/dist/request/types.d.ts +395 -0
- package/dist/request/types.d.ts.map +1 -0
- package/dist/request/types.js +97 -0
- package/dist/request/types.js.map +1 -0
- package/dist/request/utils/dependencyCheck.cjs +237 -0
- package/dist/request/utils/dependencyCheck.cjs.map +1 -0
- package/dist/request/utils/dependencyCheck.d.ts +64 -0
- package/dist/request/utils/dependencyCheck.d.ts.map +1 -0
- package/dist/request/utils/dependencyCheck.js +192 -0
- package/dist/request/utils/dependencyCheck.js.map +1 -0
- package/dist/request/utils/index.cjs +26 -0
- package/dist/request/utils/index.cjs.map +1 -0
- package/dist/request/utils/index.d.ts +5 -0
- package/dist/request/utils/index.d.ts.map +1 -0
- package/dist/request/utils/index.js +5 -0
- package/dist/request/utils/index.js.map +1 -0
- package/dist/state/StateManager.cjs +168 -0
- package/dist/state/StateManager.cjs.map +1 -0
- package/dist/state/StateManager.d.ts +121 -0
- package/dist/state/StateManager.d.ts.map +1 -0
- package/dist/state/StateManager.js +160 -0
- package/dist/state/StateManager.js.map +1 -0
- package/dist/state/adapters/AdapterFactory.cjs +91 -0
- package/dist/state/adapters/AdapterFactory.cjs.map +1 -0
- package/dist/state/adapters/AdapterFactory.d.ts +52 -0
- package/dist/state/adapters/AdapterFactory.d.ts.map +1 -0
- package/dist/state/adapters/AdapterFactory.js +85 -0
- package/dist/state/adapters/AdapterFactory.js.map +1 -0
- package/dist/state/adapters/DefaultAdapter.cjs +77 -0
- package/dist/state/adapters/DefaultAdapter.cjs.map +1 -0
- package/dist/state/adapters/DefaultAdapter.d.ts +39 -0
- package/dist/state/adapters/DefaultAdapter.d.ts.map +1 -0
- package/dist/state/adapters/DefaultAdapter.js +71 -0
- package/dist/state/adapters/DefaultAdapter.js.map +1 -0
- package/dist/state/adapters/ReduxAdapter.cjs +445 -0
- package/dist/state/adapters/ReduxAdapter.cjs.map +1 -0
- package/dist/state/adapters/ReduxAdapter.d.ts +130 -0
- package/dist/state/adapters/ReduxAdapter.d.ts.map +1 -0
- package/dist/state/adapters/ReduxAdapter.js +439 -0
- package/dist/state/adapters/ReduxAdapter.js.map +1 -0
- package/dist/state/adapters/ZustandAdapter.cjs +71 -0
- package/dist/state/adapters/ZustandAdapter.cjs.map +1 -0
- package/dist/state/adapters/ZustandAdapter.d.ts +47 -0
- package/dist/state/adapters/ZustandAdapter.d.ts.map +1 -0
- package/dist/state/adapters/ZustandAdapter.js +70 -0
- package/dist/state/adapters/ZustandAdapter.js.map +1 -0
- package/dist/state/adapters/index.cjs +46 -0
- package/dist/state/adapters/index.cjs.map +1 -0
- package/dist/state/adapters/index.d.ts +9 -0
- package/dist/state/adapters/index.d.ts.map +1 -0
- package/dist/state/adapters/index.js +9 -0
- package/dist/state/adapters/index.js.map +1 -0
- package/dist/state/adapters/types.cjs +22 -0
- package/dist/state/adapters/types.cjs.map +1 -0
- package/dist/state/adapters/types.d.ts +5 -0
- package/dist/state/adapters/types.d.ts.map +1 -0
- package/dist/state/adapters/types.js +5 -0
- package/dist/state/adapters/types.js.map +1 -0
- package/dist/state/core/DerivedStateInstance.cjs +176 -0
- package/dist/state/core/DerivedStateInstance.cjs.map +1 -0
- package/dist/state/core/DerivedStateInstance.d.ts +101 -0
- package/dist/state/core/DerivedStateInstance.d.ts.map +1 -0
- package/dist/state/core/DerivedStateInstance.js +173 -0
- package/dist/state/core/DerivedStateInstance.js.map +1 -0
- package/dist/state/core/StateInstance.cjs +172 -0
- package/dist/state/core/StateInstance.cjs.map +1 -0
- package/dist/state/core/StateInstance.d.ts +86 -0
- package/dist/state/core/StateInstance.d.ts.map +1 -0
- package/dist/state/core/StateInstance.js +168 -0
- package/dist/state/core/StateInstance.js.map +1 -0
- package/dist/state/core/StateRegistry.cjs +112 -0
- package/dist/state/core/StateRegistry.cjs.map +1 -0
- package/dist/state/core/StateRegistry.d.ts +56 -0
- package/dist/state/core/StateRegistry.d.ts.map +1 -0
- package/dist/state/core/StateRegistry.js +106 -0
- package/dist/state/core/StateRegistry.js.map +1 -0
- package/dist/state/core/StateScope.cjs +139 -0
- package/dist/state/core/StateScope.cjs.map +1 -0
- package/dist/state/core/StateScope.d.ts +72 -0
- package/dist/state/core/StateScope.d.ts.map +1 -0
- package/dist/state/core/StateScope.js +133 -0
- package/dist/state/core/StateScope.js.map +1 -0
- package/dist/state/core/index.cjs +32 -0
- package/dist/state/core/index.cjs.map +1 -0
- package/dist/state/core/index.d.ts +8 -0
- package/dist/state/core/index.d.ts.map +1 -0
- package/dist/state/core/index.js +8 -0
- package/dist/state/core/index.js.map +1 -0
- package/dist/state/index.cjs +32 -0
- package/dist/state/index.cjs.map +1 -0
- package/dist/state/index.d.ts +9 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +12 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/types.cjs +14 -0
- package/dist/state/types.cjs.map +1 -0
- package/dist/state/types.d.ts +231 -0
- package/dist/state/types.d.ts.map +1 -0
- package/dist/state/types.js +13 -0
- package/dist/state/types.js.map +1 -0
- package/dist/types.cjs +6 -0
- package/dist/types.cjs.map +1 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/analytics.cjs +219 -0
- package/dist/utils/analytics.cjs.map +1 -0
- package/dist/utils/analytics.d.ts +128 -0
- package/dist/utils/analytics.d.ts.map +1 -0
- package/dist/utils/analytics.js +204 -0
- package/dist/utils/analytics.js.map +1 -0
- package/dist/utils/configSecurity.cjs +184 -0
- package/dist/utils/configSecurity.cjs.map +1 -0
- package/dist/utils/configSecurity.d.ts +101 -0
- package/dist/utils/configSecurity.d.ts.map +1 -0
- package/dist/utils/configSecurity.js +176 -0
- package/dist/utils/configSecurity.js.map +1 -0
- package/dist/utils/csrf.cjs +159 -0
- package/dist/utils/csrf.cjs.map +1 -0
- package/dist/utils/csrf.d.ts +73 -0
- package/dist/utils/csrf.d.ts.map +1 -0
- package/dist/utils/csrf.js +144 -0
- package/dist/utils/csrf.js.map +1 -0
- package/dist/utils/errors/ErrorCodes.cjs +97 -0
- package/dist/utils/errors/ErrorCodes.cjs.map +1 -0
- package/dist/utils/errors/ErrorCodes.d.ts +46 -0
- package/dist/utils/errors/ErrorCodes.d.ts.map +1 -0
- package/dist/utils/errors/ErrorCodes.js +86 -0
- package/dist/utils/errors/ErrorCodes.js.map +1 -0
- package/dist/utils/errors.cjs +343 -0
- package/dist/utils/errors.cjs.map +1 -0
- package/dist/utils/errors.d.ts +179 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +311 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/index.cjs +137 -0
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.ts +40 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +48 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.cjs +396 -0
- package/dist/utils/logger.cjs.map +1 -0
- package/dist/utils/logger.d.ts +190 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +381 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/logger.types.cjs +22 -0
- package/dist/utils/logger.types.cjs.map +1 -0
- package/dist/utils/logger.types.d.ts +58 -0
- package/dist/utils/logger.types.d.ts.map +1 -0
- package/dist/utils/logger.types.js +12 -0
- package/dist/utils/logger.types.js.map +1 -0
- package/dist/utils/monitoring.cjs +311 -0
- package/dist/utils/monitoring.cjs.map +1 -0
- package/dist/utils/monitoring.d.ts +164 -0
- package/dist/utils/monitoring.d.ts.map +1 -0
- package/dist/utils/monitoring.js +296 -0
- package/dist/utils/monitoring.js.map +1 -0
- package/dist/utils/performance.cjs +371 -0
- package/dist/utils/performance.cjs.map +1 -0
- package/dist/utils/performance.d.ts +247 -0
- package/dist/utils/performance.d.ts.map +1 -0
- package/dist/utils/performance.js +356 -0
- package/dist/utils/performance.js.map +1 -0
- package/dist/utils/resourceLoader.cjs +322 -0
- package/dist/utils/resourceLoader.cjs.map +1 -0
- package/dist/utils/resourceLoader.d.ts +131 -0
- package/dist/utils/resourceLoader.d.ts.map +1 -0
- package/dist/utils/resourceLoader.js +307 -0
- package/dist/utils/resourceLoader.js.map +1 -0
- package/dist/utils/runtimeSecurity.cjs +151 -0
- package/dist/utils/runtimeSecurity.cjs.map +1 -0
- package/dist/utils/runtimeSecurity.d.ts +105 -0
- package/dist/utils/runtimeSecurity.d.ts.map +1 -0
- package/dist/utils/runtimeSecurity.js +143 -0
- package/dist/utils/runtimeSecurity.js.map +1 -0
- package/dist/utils/security.cjs +332 -0
- package/dist/utils/security.cjs.map +1 -0
- package/dist/utils/security.d.ts +81 -0
- package/dist/utils/security.d.ts.map +1 -0
- package/dist/utils/security.js +313 -0
- package/dist/utils/security.js.map +1 -0
- package/dist/utils/traceId.cjs +140 -0
- package/dist/utils/traceId.cjs.map +1 -0
- package/dist/utils/traceId.d.ts +64 -0
- package/dist/utils/traceId.d.ts.map +1 -0
- package/dist/utils/traceId.js +118 -0
- package/dist/utils/traceId.js.map +1 -0
- package/dist/utils/validation.cjs +191 -0
- package/dist/utils/validation.cjs.map +1 -0
- package/dist/utils/validation.d.ts +111 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +177 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +98 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
function _define_property(obj, key, value) {
|
|
2
|
+
if (key in obj) {
|
|
3
|
+
Object.defineProperty(obj, key, {
|
|
4
|
+
value: value,
|
|
5
|
+
enumerable: true,
|
|
6
|
+
configurable: true,
|
|
7
|
+
writable: true
|
|
8
|
+
});
|
|
9
|
+
} else {
|
|
10
|
+
obj[key] = value;
|
|
11
|
+
}
|
|
12
|
+
return obj;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* 路由预加载管理器
|
|
16
|
+
* 提供路由组件的预加载功能
|
|
17
|
+
*/ import { logger } from "../../../utils";
|
|
18
|
+
/**
|
|
19
|
+
* 预加载策略
|
|
20
|
+
*/ export var PreloadStrategy = /*#__PURE__*/ function(PreloadStrategy) {
|
|
21
|
+
/**
|
|
22
|
+
* 不预加载
|
|
23
|
+
*/ PreloadStrategy["NONE"] = "none";
|
|
24
|
+
/**
|
|
25
|
+
* 预加载当前路由的下一级路由
|
|
26
|
+
*/ PreloadStrategy["NEXT_LEVEL"] = "next-level";
|
|
27
|
+
/**
|
|
28
|
+
* 预加载所有路由
|
|
29
|
+
*/ PreloadStrategy["ALL"] = "all";
|
|
30
|
+
/**
|
|
31
|
+
* 预加载可见路由(根据路由配置的优先级)
|
|
32
|
+
*/ PreloadStrategy["VISIBLE"] = "visible";
|
|
33
|
+
return PreloadStrategy;
|
|
34
|
+
}({});
|
|
35
|
+
/**
|
|
36
|
+
* 路由预加载管理器
|
|
37
|
+
*/ export class RoutePreloader {
|
|
38
|
+
/**
|
|
39
|
+
* 注册路由用于预加载
|
|
40
|
+
*/ registerRoute(route) {
|
|
41
|
+
if (!route.page && !route.layout) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const priority = route.handle?.order ?? 999;
|
|
45
|
+
// 根据策略决定是否注册
|
|
46
|
+
if (this.config.strategy === "none") {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (this.config.strategy === "visible" && priority > this.config.priorityThreshold) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
// 注册页面组件
|
|
53
|
+
if (route.page && typeof route.page === 'function') {
|
|
54
|
+
this.tasks.set(`${route.name}_page`, {
|
|
55
|
+
importFn: route.page,
|
|
56
|
+
routeName: route.name,
|
|
57
|
+
priority,
|
|
58
|
+
status: 'pending'
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
// 注册布局组件
|
|
62
|
+
if (route.layout && typeof route.layout === 'function') {
|
|
63
|
+
this.tasks.set(`${route.name}_layout`, {
|
|
64
|
+
importFn: route.layout,
|
|
65
|
+
routeName: route.name,
|
|
66
|
+
priority,
|
|
67
|
+
status: 'pending'
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
// 递归注册子路由
|
|
71
|
+
if (route.children) {
|
|
72
|
+
route.children.forEach((child)=>this.registerRoute(child));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* 注册多个路由
|
|
77
|
+
*/ registerRoutes(routes) {
|
|
78
|
+
routes.forEach((route)=>this.registerRoute(route));
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* 预加载指定路由
|
|
82
|
+
*/ async preloadRoute(routeName) {
|
|
83
|
+
const tasks = Array.from(this.tasks.values()).filter((task)=>task.routeName === routeName && task.status === 'pending');
|
|
84
|
+
if (tasks.length === 0) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
await Promise.all(tasks.map((task)=>this.preloadTask(task)));
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 预加载任务
|
|
91
|
+
*/ async preloadTask(task) {
|
|
92
|
+
if (task.status !== 'pending') {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
task.status = 'loading';
|
|
96
|
+
task.startTime = Date.now();
|
|
97
|
+
try {
|
|
98
|
+
// 设置超时
|
|
99
|
+
const timeoutPromise = new Promise((_, reject)=>{
|
|
100
|
+
setTimeout(()=>reject(new Error('预加载超时')), this.config.timeout);
|
|
101
|
+
});
|
|
102
|
+
// 执行预加载
|
|
103
|
+
await Promise.race([
|
|
104
|
+
task.importFn(),
|
|
105
|
+
timeoutPromise
|
|
106
|
+
]);
|
|
107
|
+
task.status = 'loaded';
|
|
108
|
+
const duration = Date.now() - (task.startTime || 0);
|
|
109
|
+
logger.debug(`路由组件预加载成功: ${task.routeName} (${duration}ms)`);
|
|
110
|
+
} catch (error) {
|
|
111
|
+
task.status = 'failed';
|
|
112
|
+
logger.warn(`路由组件预加载失败: ${task.routeName}`, error);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* 开始预加载(根据策略)
|
|
117
|
+
*/ startPreload() {
|
|
118
|
+
if (this.config.strategy === "none") {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
// 延迟预加载,避免影响初始渲染
|
|
122
|
+
this.preloadTimer = setTimeout(()=>{
|
|
123
|
+
this.executePreload();
|
|
124
|
+
}, this.config.delay);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* 执行预加载
|
|
128
|
+
*/ async executePreload() {
|
|
129
|
+
const tasks = Array.from(this.tasks.values()).filter((task)=>task.status === 'pending').sort((a, b)=>a.priority - b.priority);
|
|
130
|
+
if (tasks.length === 0) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
logger.debug(`开始预加载 ${tasks.length} 个路由组件`);
|
|
134
|
+
// 根据策略决定预加载哪些任务
|
|
135
|
+
let tasksToPreload = [];
|
|
136
|
+
switch(this.config.strategy){
|
|
137
|
+
case "all":
|
|
138
|
+
tasksToPreload = tasks;
|
|
139
|
+
break;
|
|
140
|
+
case "next-level":
|
|
141
|
+
// 只预加载优先级最低的(最可能访问的)
|
|
142
|
+
tasksToPreload = tasks.slice(0, Math.min(5, tasks.length));
|
|
143
|
+
break;
|
|
144
|
+
case "visible":
|
|
145
|
+
tasksToPreload = tasks.filter((task)=>task.priority <= this.config.priorityThreshold);
|
|
146
|
+
break;
|
|
147
|
+
default:
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
// 并行预加载(限制并发数)
|
|
151
|
+
const concurrency = 3;
|
|
152
|
+
for(let i = 0; i < tasksToPreload.length; i += concurrency){
|
|
153
|
+
const batch = tasksToPreload.slice(i, i + concurrency);
|
|
154
|
+
await Promise.all(batch.map((task)=>this.preloadTask(task)));
|
|
155
|
+
}
|
|
156
|
+
logger.debug('路由组件预加载完成');
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* 停止预加载
|
|
160
|
+
*/ stopPreload() {
|
|
161
|
+
if (this.preloadTimer) {
|
|
162
|
+
clearTimeout(this.preloadTimer);
|
|
163
|
+
this.preloadTimer = null;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* 清空所有任务
|
|
168
|
+
*/ clear() {
|
|
169
|
+
this.tasks.clear();
|
|
170
|
+
this.stopPreload();
|
|
171
|
+
logger.debug('路由预加载任务已清空');
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* 获取预加载统计信息
|
|
175
|
+
*/ getStats() {
|
|
176
|
+
const stats = {
|
|
177
|
+
total: this.tasks.size,
|
|
178
|
+
pending: 0,
|
|
179
|
+
loading: 0,
|
|
180
|
+
loaded: 0,
|
|
181
|
+
failed: 0
|
|
182
|
+
};
|
|
183
|
+
for (const task of this.tasks.values()){
|
|
184
|
+
stats[task.status]++;
|
|
185
|
+
}
|
|
186
|
+
return stats;
|
|
187
|
+
}
|
|
188
|
+
constructor(config = {}){
|
|
189
|
+
_define_property(this, "tasks", new Map());
|
|
190
|
+
_define_property(this, "config", void 0);
|
|
191
|
+
_define_property(this, "preloadTimer", null);
|
|
192
|
+
this.config = {
|
|
193
|
+
strategy: config.strategy ?? "next-level",
|
|
194
|
+
delay: config.delay ?? 1000,
|
|
195
|
+
priorityThreshold: config.priorityThreshold ?? 10,
|
|
196
|
+
timeout: config.timeout ?? 5000
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* 获取路由预加载管理器单例
|
|
202
|
+
*/ let routePreloaderInstance = null;
|
|
203
|
+
export function getRoutePreloader(config) {
|
|
204
|
+
if (!routePreloaderInstance) {
|
|
205
|
+
routePreloaderInstance = new RoutePreloader(config);
|
|
206
|
+
}
|
|
207
|
+
return routePreloaderInstance;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
//# sourceMappingURL=RoutePreloader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/core/router/performance/RoutePreloader.ts"],"sourcesContent":["/**\n * 路由预加载管理器\n * 提供路由组件的预加载功能\n */\n\nimport { logger } from '../../../utils';\nimport type { RouteConfig } from '../types';\nimport type { ComponentImport } from '../types';\n\n/**\n * 预加载策略\n */\nexport enum PreloadStrategy {\n /**\n * 不预加载\n */\n NONE = 'none',\n\n /**\n * 预加载当前路由的下一级路由\n */\n NEXT_LEVEL = 'next-level',\n\n /**\n * 预加载所有路由\n */\n ALL = 'all',\n\n /**\n * 预加载可见路由(根据路由配置的优先级)\n */\n VISIBLE = 'visible',\n}\n\n/**\n * 预加载配置\n */\nexport interface PreloadConfig {\n /**\n * 预加载策略\n * @default PreloadStrategy.NEXT_LEVEL\n */\n strategy?: PreloadStrategy;\n\n /**\n * 预加载延迟(毫秒)\n * @default 1000\n */\n delay?: number;\n\n /**\n * 预加载优先级阈值(只预加载优先级小于等于此值的路由)\n * @default 10\n */\n priorityThreshold?: number;\n\n /**\n * 预加载超时时间(毫秒)\n * @default 5000\n */\n timeout?: number;\n}\n\n/**\n * 预加载任务\n */\ninterface PreloadTask {\n /**\n * 组件导入函数\n */\n importFn: ComponentImport;\n /**\n * 路由名称\n */\n routeName: string;\n /**\n * 优先级\n */\n priority: number;\n /**\n * 状态\n */\n status: 'pending' | 'loading' | 'loaded' | 'failed';\n /**\n * 开始时间\n */\n startTime?: number;\n}\n\n/**\n * 路由预加载管理器\n */\nexport class RoutePreloader {\n private tasks: Map<string, PreloadTask> = new Map();\n private config: Required<PreloadConfig>;\n private preloadTimer: ReturnType<typeof setTimeout> | null = null;\n\n constructor(config: PreloadConfig = {}) {\n this.config = {\n strategy: config.strategy ?? PreloadStrategy.NEXT_LEVEL,\n delay: config.delay ?? 1000,\n priorityThreshold: config.priorityThreshold ?? 10,\n timeout: config.timeout ?? 5000,\n };\n }\n\n /**\n * 注册路由用于预加载\n */\n registerRoute(route: RouteConfig): void {\n if (!route.page && !route.layout) {\n return;\n }\n\n const priority = route.handle?.order ?? 999;\n\n // 根据策略决定是否注册\n if (this.config.strategy === PreloadStrategy.NONE) {\n return;\n }\n\n if (\n this.config.strategy === PreloadStrategy.VISIBLE &&\n priority > this.config.priorityThreshold\n ) {\n return;\n }\n\n // 注册页面组件\n if (route.page && typeof route.page === 'function') {\n this.tasks.set(`${route.name}_page`, {\n importFn: route.page,\n routeName: route.name,\n priority,\n status: 'pending',\n });\n }\n\n // 注册布局组件\n if (route.layout && typeof route.layout === 'function') {\n this.tasks.set(`${route.name}_layout`, {\n importFn: route.layout,\n routeName: route.name,\n priority,\n status: 'pending',\n });\n }\n\n // 递归注册子路由\n if (route.children) {\n route.children.forEach((child) => this.registerRoute(child));\n }\n }\n\n /**\n * 注册多个路由\n */\n registerRoutes(routes: RouteConfig[]): void {\n routes.forEach((route) => this.registerRoute(route));\n }\n\n /**\n * 预加载指定路由\n */\n async preloadRoute(routeName: string): Promise<void> {\n const tasks = Array.from(this.tasks.values()).filter(\n (task) => task.routeName === routeName && task.status === 'pending'\n );\n\n if (tasks.length === 0) {\n return;\n }\n\n await Promise.all(tasks.map((task) => this.preloadTask(task)));\n }\n\n /**\n * 预加载任务\n */\n private async preloadTask(task: PreloadTask): Promise<void> {\n if (task.status !== 'pending') {\n return;\n }\n\n task.status = 'loading';\n task.startTime = Date.now();\n\n try {\n // 设置超时\n const timeoutPromise = new Promise((_, reject) => {\n setTimeout(() => reject(new Error('预加载超时')), this.config.timeout);\n });\n\n // 执行预加载\n await Promise.race([task.importFn(), timeoutPromise]);\n\n task.status = 'loaded';\n const duration = Date.now() - (task.startTime || 0);\n logger.debug(`路由组件预加载成功: ${task.routeName} (${duration}ms)`);\n } catch (error) {\n task.status = 'failed';\n logger.warn(`路由组件预加载失败: ${task.routeName}`, error);\n }\n }\n\n /**\n * 开始预加载(根据策略)\n */\n startPreload(): void {\n if (this.config.strategy === PreloadStrategy.NONE) {\n return;\n }\n\n // 延迟预加载,避免影响初始渲染\n this.preloadTimer = setTimeout(() => {\n this.executePreload();\n }, this.config.delay);\n }\n\n /**\n * 执行预加载\n */\n private async executePreload(): Promise<void> {\n const tasks = Array.from(this.tasks.values())\n .filter((task) => task.status === 'pending')\n .sort((a, b) => a.priority - b.priority);\n\n if (tasks.length === 0) {\n return;\n }\n\n logger.debug(`开始预加载 ${tasks.length} 个路由组件`);\n\n // 根据策略决定预加载哪些任务\n let tasksToPreload: PreloadTask[] = [];\n\n switch (this.config.strategy) {\n case PreloadStrategy.ALL:\n tasksToPreload = tasks;\n break;\n case PreloadStrategy.NEXT_LEVEL:\n // 只预加载优先级最低的(最可能访问的)\n tasksToPreload = tasks.slice(0, Math.min(5, tasks.length));\n break;\n case PreloadStrategy.VISIBLE:\n tasksToPreload = tasks.filter(\n (task) => task.priority <= this.config.priorityThreshold\n );\n break;\n default:\n return;\n }\n\n // 并行预加载(限制并发数)\n const concurrency = 3;\n for (let i = 0; i < tasksToPreload.length; i += concurrency) {\n const batch = tasksToPreload.slice(i, i + concurrency);\n await Promise.all(batch.map((task) => this.preloadTask(task)));\n }\n\n logger.debug('路由组件预加载完成');\n }\n\n /**\n * 停止预加载\n */\n stopPreload(): void {\n if (this.preloadTimer) {\n clearTimeout(this.preloadTimer);\n this.preloadTimer = null;\n }\n }\n\n /**\n * 清空所有任务\n */\n clear(): void {\n this.tasks.clear();\n this.stopPreload();\n logger.debug('路由预加载任务已清空');\n }\n\n /**\n * 获取预加载统计信息\n */\n getStats(): {\n total: number;\n pending: number;\n loading: number;\n loaded: number;\n failed: number;\n } {\n const stats = {\n total: this.tasks.size,\n pending: 0,\n loading: 0,\n loaded: 0,\n failed: 0,\n };\n\n for (const task of this.tasks.values()) {\n stats[task.status]++;\n }\n\n return stats;\n }\n}\n\n/**\n * 获取路由预加载管理器单例\n */\nlet routePreloaderInstance: RoutePreloader | null = null;\n\nexport function getRoutePreloader(config?: PreloadConfig): RoutePreloader {\n if (!routePreloaderInstance) {\n routePreloaderInstance = new RoutePreloader(config);\n }\n return routePreloaderInstance;\n}\n"],"names":["logger","PreloadStrategy","RoutePreloader","registerRoute","route","page","layout","priority","handle","order","config","strategy","priorityThreshold","tasks","set","name","importFn","routeName","status","children","forEach","child","registerRoutes","routes","preloadRoute","Array","from","values","filter","task","length","Promise","all","map","preloadTask","startTime","Date","now","timeoutPromise","_","reject","setTimeout","Error","timeout","race","duration","debug","error","warn","startPreload","preloadTimer","executePreload","delay","sort","a","b","tasksToPreload","slice","Math","min","concurrency","i","batch","stopPreload","clearTimeout","clear","getStats","stats","total","size","pending","loading","loaded","failed","Map","routePreloaderInstance","getRoutePreloader"],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 路由性能优化模块入口
|
|
3
|
+
*/ "use strict";
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
_export_star(require("./RouteCache"), exports);
|
|
8
|
+
_export_star(require("./RoutePreloader"), exports);
|
|
9
|
+
function _export_star(from, to) {
|
|
10
|
+
Object.keys(from).forEach(function(k) {
|
|
11
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
12
|
+
Object.defineProperty(to, k, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function() {
|
|
15
|
+
return from[k];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
return from;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/core/router/performance/index.ts"],"sourcesContent":["/**\n * 路由性能优化模块入口\n */\n\nexport * from './RouteCache';\nexport * from './RoutePreloader';\n"],"names":[],"mappings":"AAAA;;CAEC;;;;qBAEa;qBACA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/router/performance/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/core/router/performance/index.ts"],"sourcesContent":["/**\n * 路由性能优化模块入口\n */\n\nexport * from './RouteCache';\nexport * from './RoutePreloader';\n"],"names":[],"mappings":"AAAA;;CAEC,GAED,cAAc,eAAe;AAC7B,cAAc,mBAAmB"}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 路由插件管理器
|
|
3
|
+
* 负责插件的注册、执行和生命周期管理
|
|
4
|
+
*/ "use strict";
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
function _export(target, all) {
|
|
9
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
_export(exports, {
|
|
15
|
+
get RouterPluginManager () {
|
|
16
|
+
return RouterPluginManager;
|
|
17
|
+
},
|
|
18
|
+
get getRouterPluginManager () {
|
|
19
|
+
return getRouterPluginManager;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const _utils = require("../../../utils");
|
|
23
|
+
const _types = require("./types");
|
|
24
|
+
function _define_property(obj, key, value) {
|
|
25
|
+
if (key in obj) {
|
|
26
|
+
Object.defineProperty(obj, key, {
|
|
27
|
+
value: value,
|
|
28
|
+
enumerable: true,
|
|
29
|
+
configurable: true,
|
|
30
|
+
writable: true
|
|
31
|
+
});
|
|
32
|
+
} else {
|
|
33
|
+
obj[key] = value;
|
|
34
|
+
}
|
|
35
|
+
return obj;
|
|
36
|
+
}
|
|
37
|
+
let RouterPluginManager = class RouterPluginManager {
|
|
38
|
+
/**
|
|
39
|
+
* 注册插件
|
|
40
|
+
*
|
|
41
|
+
* @param plugin - 插件实例
|
|
42
|
+
* @param options - 注册选项
|
|
43
|
+
* @returns 取消注册函数
|
|
44
|
+
*/ register(plugin, options = {}) {
|
|
45
|
+
// 验证插件
|
|
46
|
+
if (!plugin.name) {
|
|
47
|
+
throw new Error('插件必须提供名称');
|
|
48
|
+
}
|
|
49
|
+
// 检查是否已存在
|
|
50
|
+
if (this.plugins.has(plugin.name) && !options.overwrite) {
|
|
51
|
+
throw new Error(`插件 "${plugin.name}" 已存在`);
|
|
52
|
+
}
|
|
53
|
+
// 设置默认值
|
|
54
|
+
const pluginWithDefaults = {
|
|
55
|
+
priority: 100,
|
|
56
|
+
enabled: true,
|
|
57
|
+
...plugin
|
|
58
|
+
};
|
|
59
|
+
// 检查依赖
|
|
60
|
+
if (pluginWithDefaults.dependencies) {
|
|
61
|
+
const missingDeps = pluginWithDefaults.dependencies.filter((dep)=>!this.plugins.has(dep));
|
|
62
|
+
if (missingDeps.length > 0) {
|
|
63
|
+
throw new Error(`插件 "${plugin.name}" 缺少依赖: ${missingDeps.join(', ')}`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// 注册插件
|
|
67
|
+
this.plugins.set(plugin.name, {
|
|
68
|
+
plugin: pluginWithDefaults,
|
|
69
|
+
status: 'registered',
|
|
70
|
+
registeredAt: Date.now()
|
|
71
|
+
});
|
|
72
|
+
_utils.logger.debug(`路由插件已注册: ${plugin.name}`);
|
|
73
|
+
// 调用注册钩子
|
|
74
|
+
if (pluginWithDefaults.hooks?.onRegister) {
|
|
75
|
+
try {
|
|
76
|
+
const context = {
|
|
77
|
+
config: {},
|
|
78
|
+
meta: {
|
|
79
|
+
stage: _types.PluginLifecycleStage.REGISTER
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
pluginWithDefaults.hooks.onRegister(context);
|
|
83
|
+
} catch (error) {
|
|
84
|
+
_utils.logger.error(`插件注册钩子执行失败: ${plugin.name}`, error);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// 返回取消注册函数
|
|
88
|
+
return ()=>{
|
|
89
|
+
this.unregister(plugin.name);
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* 批量注册插件
|
|
94
|
+
*
|
|
95
|
+
* @param plugins - 插件数组
|
|
96
|
+
* @param options - 注册选项
|
|
97
|
+
*/ registerBatch(plugins, options = {}) {
|
|
98
|
+
// 按依赖关系排序
|
|
99
|
+
const sortedPlugins = this.sortByDependencies(plugins);
|
|
100
|
+
sortedPlugins.forEach((plugin)=>{
|
|
101
|
+
this.register(plugin, options);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* 按依赖关系排序插件(拓扑排序)
|
|
106
|
+
*/ sortByDependencies(plugins) {
|
|
107
|
+
const sorted = [];
|
|
108
|
+
const visited = new Set();
|
|
109
|
+
const visiting = new Set();
|
|
110
|
+
const visit = (plugin)=>{
|
|
111
|
+
if (visiting.has(plugin.name || '')) {
|
|
112
|
+
throw new Error(`检测到循环依赖: ${plugin.name}`);
|
|
113
|
+
}
|
|
114
|
+
if (visited.has(plugin.name || '')) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
visiting.add(plugin.name || '');
|
|
118
|
+
// 先访问依赖
|
|
119
|
+
if (plugin.dependencies) {
|
|
120
|
+
plugin.dependencies.forEach((depName)=>{
|
|
121
|
+
const dep = plugins.find((p)=>p.name === depName);
|
|
122
|
+
if (dep) {
|
|
123
|
+
visit(dep);
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
visiting.delete(plugin.name || '');
|
|
128
|
+
visited.add(plugin.name || '');
|
|
129
|
+
sorted.push(plugin);
|
|
130
|
+
};
|
|
131
|
+
plugins.forEach((plugin)=>{
|
|
132
|
+
if (!visited.has(plugin.name || '')) {
|
|
133
|
+
visit(plugin);
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
return sorted;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* 取消注册插件
|
|
140
|
+
*
|
|
141
|
+
* @param name - 插件名称
|
|
142
|
+
*/ unregister(name) {
|
|
143
|
+
const registration = this.plugins.get(name);
|
|
144
|
+
if (!registration) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
// 调用销毁钩子
|
|
148
|
+
if (registration.plugin.hooks?.onDestroy) {
|
|
149
|
+
try {
|
|
150
|
+
const context = {
|
|
151
|
+
config: {},
|
|
152
|
+
meta: {
|
|
153
|
+
stage: _types.PluginLifecycleStage.DESTROY
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
registration.plugin.hooks.onDestroy(context);
|
|
157
|
+
} catch (error) {
|
|
158
|
+
_utils.logger.error(`插件销毁钩子执行失败: ${name}`, error);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
this.plugins.delete(name);
|
|
162
|
+
_utils.logger.debug(`路由插件已取消注册: ${name}`);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* 执行插件钩子
|
|
166
|
+
*
|
|
167
|
+
* @param stage - 生命周期阶段
|
|
168
|
+
* @param context - 插件上下文
|
|
169
|
+
*/ async executeHooks(stage, context) {
|
|
170
|
+
// 获取启用的插件并按优先级排序
|
|
171
|
+
const enabledPlugins = Array.from(this.plugins.values()).filter((reg)=>reg.plugin.enabled !== false).sort((a, b)=>(a.plugin.priority || 100) - (b.plugin.priority || 100));
|
|
172
|
+
// 根据阶段选择钩子
|
|
173
|
+
const hookMap = {
|
|
174
|
+
[_types.PluginLifecycleStage.REGISTER]: 'onRegister',
|
|
175
|
+
[_types.PluginLifecycleStage.BEFORE_INIT]: 'onBeforeInit',
|
|
176
|
+
[_types.PluginLifecycleStage.AFTER_INIT]: 'onAfterInit',
|
|
177
|
+
[_types.PluginLifecycleStage.BEFORE_TRANSFORM]: 'onBeforeTransform',
|
|
178
|
+
[_types.PluginLifecycleStage.AFTER_TRANSFORM]: 'onAfterTransform',
|
|
179
|
+
[_types.PluginLifecycleStage.BEFORE_MATCH]: 'onBeforeMatch',
|
|
180
|
+
[_types.PluginLifecycleStage.AFTER_MATCH]: 'onAfterMatch',
|
|
181
|
+
[_types.PluginLifecycleStage.DESTROY]: 'onDestroy'
|
|
182
|
+
};
|
|
183
|
+
const hookName = hookMap[stage];
|
|
184
|
+
if (!hookName) {
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
// 执行钩子
|
|
188
|
+
for (const registration of enabledPlugins){
|
|
189
|
+
const hook = registration.plugin.hooks?.[hookName];
|
|
190
|
+
if (hook) {
|
|
191
|
+
try {
|
|
192
|
+
await hook(context);
|
|
193
|
+
} catch (error) {
|
|
194
|
+
_utils.logger.error(`插件钩子执行失败: ${registration.plugin.name}.${hookName}`, error);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* 获取插件
|
|
201
|
+
*
|
|
202
|
+
* @param name - 插件名称
|
|
203
|
+
* @returns 插件实例,如果不存在返回 undefined
|
|
204
|
+
*/ getPlugin(name) {
|
|
205
|
+
return this.plugins.get(name)?.plugin;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* 获取所有插件
|
|
209
|
+
*
|
|
210
|
+
* @returns 插件数组
|
|
211
|
+
*/ getAllPlugins() {
|
|
212
|
+
return Array.from(this.plugins.values()).map((reg)=>reg.plugin);
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* 获取启用的插件
|
|
216
|
+
*
|
|
217
|
+
* @returns 启用的插件数组
|
|
218
|
+
*/ getEnabledPlugins() {
|
|
219
|
+
return Array.from(this.plugins.values()).filter((reg)=>reg.plugin.enabled !== false).map((reg)=>reg.plugin);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* 清空所有插件
|
|
223
|
+
*/ clear() {
|
|
224
|
+
// 调用所有插件的销毁钩子
|
|
225
|
+
for (const [name, registration] of this.plugins.entries()){
|
|
226
|
+
if (registration.plugin.hooks?.onDestroy) {
|
|
227
|
+
try {
|
|
228
|
+
const context = {
|
|
229
|
+
config: {},
|
|
230
|
+
meta: {
|
|
231
|
+
stage: _types.PluginLifecycleStage.DESTROY
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
registration.plugin.hooks.onDestroy(context);
|
|
235
|
+
} catch (error) {
|
|
236
|
+
_utils.logger.error(`插件销毁钩子执行失败: ${name}`, error);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
this.plugins.clear();
|
|
241
|
+
_utils.logger.debug('所有路由插件已清空');
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* 获取插件数量
|
|
245
|
+
*
|
|
246
|
+
* @returns 插件数量
|
|
247
|
+
*/ getCount() {
|
|
248
|
+
return this.plugins.size;
|
|
249
|
+
}
|
|
250
|
+
constructor(){
|
|
251
|
+
_define_property(this, "plugins", new Map());
|
|
252
|
+
}
|
|
253
|
+
};
|
|
254
|
+
/**
|
|
255
|
+
* 获取路由插件管理器单例
|
|
256
|
+
*/ let pluginManagerInstance = null;
|
|
257
|
+
function getRouterPluginManager() {
|
|
258
|
+
if (!pluginManagerInstance) {
|
|
259
|
+
pluginManagerInstance = new RouterPluginManager();
|
|
260
|
+
}
|
|
261
|
+
return pluginManagerInstance;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
//# sourceMappingURL=RouterPluginManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/core/router/plugin/RouterPluginManager.ts"],"sourcesContent":["/**\n * 路由插件管理器\n * 负责插件的注册、执行和生命周期管理\n */\n\nimport { logger } from '../../../utils';\nimport type { RouterPlugin, PluginContext, PluginRegisterOptions } from './types';\nimport { PluginLifecycleStage } from './types';\n\n/**\n * 插件状态\n */\ntype PluginStatus = 'registered' | 'initialized' | 'destroyed';\n\n/**\n * 插件注册信息\n */\ninterface PluginRegistration {\n /**\n * 插件实例\n */\n plugin: RouterPlugin;\n\n /**\n * 插件状态\n */\n status: PluginStatus;\n\n /**\n * 注册时间\n */\n registeredAt: number;\n}\n\n/**\n * 路由插件管理器\n */\nexport class RouterPluginManager {\n private plugins: Map<string, PluginRegistration> = new Map();\n\n /**\n * 注册插件\n * \n * @param plugin - 插件实例\n * @param options - 注册选项\n * @returns 取消注册函数\n */\n register(plugin: RouterPlugin, options: PluginRegisterOptions = {}): () => void {\n // 验证插件\n if (!plugin.name) {\n throw new Error('插件必须提供名称');\n }\n\n // 检查是否已存在\n if (this.plugins.has(plugin.name) && !options.overwrite) {\n throw new Error(`插件 \"${plugin.name}\" 已存在`);\n }\n\n // 设置默认值\n const pluginWithDefaults: RouterPlugin = {\n priority: 100,\n enabled: true,\n ...plugin,\n };\n\n // 检查依赖\n if (pluginWithDefaults.dependencies) {\n const missingDeps = pluginWithDefaults.dependencies.filter(\n (dep) => !this.plugins.has(dep)\n );\n if (missingDeps.length > 0) {\n throw new Error(\n `插件 \"${plugin.name}\" 缺少依赖: ${missingDeps.join(', ')}`\n );\n }\n }\n\n // 注册插件\n this.plugins.set(plugin.name, {\n plugin: pluginWithDefaults,\n status: 'registered',\n registeredAt: Date.now(),\n });\n\n logger.debug(`路由插件已注册: ${plugin.name}`);\n\n // 调用注册钩子\n if (pluginWithDefaults.hooks?.onRegister) {\n try {\n const context: PluginContext = {\n config: {} as any, // 在注册阶段可能还没有配置\n meta: { stage: PluginLifecycleStage.REGISTER },\n };\n pluginWithDefaults.hooks.onRegister(context);\n } catch (error) {\n logger.error(`插件注册钩子执行失败: ${plugin.name}`, error);\n }\n }\n\n // 返回取消注册函数\n return () => {\n this.unregister(plugin.name);\n };\n }\n\n /**\n * 批量注册插件\n * \n * @param plugins - 插件数组\n * @param options - 注册选项\n */\n registerBatch(plugins: RouterPlugin[], options: PluginRegisterOptions = {}): void {\n // 按依赖关系排序\n const sortedPlugins = this.sortByDependencies(plugins);\n\n sortedPlugins.forEach((plugin) => {\n this.register(plugin, options);\n });\n }\n\n /**\n * 按依赖关系排序插件(拓扑排序)\n */\n private sortByDependencies(plugins: RouterPlugin[]): RouterPlugin[] {\n const sorted: RouterPlugin[] = [];\n const visited = new Set<string>();\n const visiting = new Set<string>();\n\n const visit = (plugin: RouterPlugin): void => {\n if (visiting.has(plugin.name || '')) {\n throw new Error(`检测到循环依赖: ${plugin.name}`);\n }\n\n if (visited.has(plugin.name || '')) {\n return;\n }\n\n visiting.add(plugin.name || '');\n\n // 先访问依赖\n if (plugin.dependencies) {\n plugin.dependencies.forEach((depName) => {\n const dep = plugins.find((p) => p.name === depName);\n if (dep) {\n visit(dep);\n }\n });\n }\n\n visiting.delete(plugin.name || '');\n visited.add(plugin.name || '');\n sorted.push(plugin);\n };\n\n plugins.forEach((plugin) => {\n if (!visited.has(plugin.name || '')) {\n visit(plugin);\n }\n });\n\n return sorted;\n }\n\n /**\n * 取消注册插件\n * \n * @param name - 插件名称\n */\n unregister(name: string): void {\n const registration = this.plugins.get(name);\n if (!registration) {\n return;\n }\n\n // 调用销毁钩子\n if (registration.plugin.hooks?.onDestroy) {\n try {\n const context: PluginContext = {\n config: {} as any,\n meta: { stage: PluginLifecycleStage.DESTROY },\n };\n registration.plugin.hooks.onDestroy(context);\n } catch (error) {\n logger.error(`插件销毁钩子执行失败: ${name}`, error);\n }\n }\n\n this.plugins.delete(name);\n logger.debug(`路由插件已取消注册: ${name}`);\n }\n\n /**\n * 执行插件钩子\n * \n * @param stage - 生命周期阶段\n * @param context - 插件上下文\n */\n async executeHooks(stage: PluginLifecycleStage, context: PluginContext): Promise<void> {\n // 获取启用的插件并按优先级排序\n const enabledPlugins = Array.from(this.plugins.values())\n .filter((reg) => reg.plugin.enabled !== false)\n .sort((a, b) => (a.plugin.priority || 100) - (b.plugin.priority || 100));\n\n // 根据阶段选择钩子\n const hookMap: Partial<Record<PluginLifecycleStage, keyof NonNullable<RouterPlugin['hooks']>>> = {\n [PluginLifecycleStage.REGISTER]: 'onRegister',\n [PluginLifecycleStage.BEFORE_INIT]: 'onBeforeInit',\n [PluginLifecycleStage.AFTER_INIT]: 'onAfterInit',\n [PluginLifecycleStage.BEFORE_TRANSFORM]: 'onBeforeTransform',\n [PluginLifecycleStage.AFTER_TRANSFORM]: 'onAfterTransform',\n [PluginLifecycleStage.BEFORE_MATCH]: 'onBeforeMatch',\n [PluginLifecycleStage.AFTER_MATCH]: 'onAfterMatch',\n [PluginLifecycleStage.DESTROY]: 'onDestroy',\n };\n\n const hookName = hookMap[stage];\n if (!hookName) {\n return;\n }\n\n // 执行钩子\n for (const registration of enabledPlugins) {\n const hook = registration.plugin.hooks?.[hookName];\n if (hook) {\n try {\n await hook(context);\n } catch (error) {\n logger.error(`插件钩子执行失败: ${registration.plugin.name}.${hookName}`, error);\n }\n }\n }\n }\n\n /**\n * 获取插件\n * \n * @param name - 插件名称\n * @returns 插件实例,如果不存在返回 undefined\n */\n getPlugin(name: string): RouterPlugin | undefined {\n return this.plugins.get(name)?.plugin;\n }\n\n /**\n * 获取所有插件\n * \n * @returns 插件数组\n */\n getAllPlugins(): RouterPlugin[] {\n return Array.from(this.plugins.values()).map((reg) => reg.plugin);\n }\n\n /**\n * 获取启用的插件\n * \n * @returns 启用的插件数组\n */\n getEnabledPlugins(): RouterPlugin[] {\n return Array.from(this.plugins.values())\n .filter((reg) => reg.plugin.enabled !== false)\n .map((reg) => reg.plugin);\n }\n\n /**\n * 清空所有插件\n */\n clear(): void {\n // 调用所有插件的销毁钩子\n for (const [name, registration] of this.plugins.entries()) {\n if (registration.plugin.hooks?.onDestroy) {\n try {\n const context: PluginContext = {\n config: {} as any,\n meta: { stage: PluginLifecycleStage.DESTROY },\n };\n registration.plugin.hooks.onDestroy(context);\n } catch (error) {\n logger.error(`插件销毁钩子执行失败: ${name}`, error);\n }\n }\n }\n\n this.plugins.clear();\n logger.debug('所有路由插件已清空');\n }\n\n /**\n * 获取插件数量\n * \n * @returns 插件数量\n */\n getCount(): number {\n return this.plugins.size;\n }\n}\n\n/**\n * 获取路由插件管理器单例\n */\nlet pluginManagerInstance: RouterPluginManager | null = null;\n\nexport function getRouterPluginManager(): RouterPluginManager {\n if (!pluginManagerInstance) {\n pluginManagerInstance = new RouterPluginManager();\n }\n return pluginManagerInstance;\n}\n"],"names":["RouterPluginManager","getRouterPluginManager","register","plugin","options","name","Error","plugins","has","overwrite","pluginWithDefaults","priority","enabled","dependencies","missingDeps","filter","dep","length","join","set","status","registeredAt","Date","now","logger","debug","hooks","onRegister","context","config","meta","stage","PluginLifecycleStage","REGISTER","error","unregister","registerBatch","sortedPlugins","sortByDependencies","forEach","sorted","visited","Set","visiting","visit","add","depName","find","p","delete","push","registration","get","onDestroy","DESTROY","executeHooks","enabledPlugins","Array","from","values","reg","sort","a","b","hookMap","BEFORE_INIT","AFTER_INIT","BEFORE_TRANSFORM","AFTER_TRANSFORM","BEFORE_MATCH","AFTER_MATCH","hookName","hook","getPlugin","getAllPlugins","map","getEnabledPlugins","clear","entries","getCount","size","Map","pluginManagerInstance"],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 路由插件管理器
|
|
3
|
+
* 负责插件的注册、执行和生命周期管理
|
|
4
|
+
*/
|
|
5
|
+
import type { RouterPlugin, PluginContext, PluginRegisterOptions } from './types';
|
|
6
|
+
import { PluginLifecycleStage } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* 路由插件管理器
|
|
9
|
+
*/
|
|
10
|
+
export declare class RouterPluginManager {
|
|
11
|
+
private plugins;
|
|
12
|
+
/**
|
|
13
|
+
* 注册插件
|
|
14
|
+
*
|
|
15
|
+
* @param plugin - 插件实例
|
|
16
|
+
* @param options - 注册选项
|
|
17
|
+
* @returns 取消注册函数
|
|
18
|
+
*/
|
|
19
|
+
register(plugin: RouterPlugin, options?: PluginRegisterOptions): () => void;
|
|
20
|
+
/**
|
|
21
|
+
* 批量注册插件
|
|
22
|
+
*
|
|
23
|
+
* @param plugins - 插件数组
|
|
24
|
+
* @param options - 注册选项
|
|
25
|
+
*/
|
|
26
|
+
registerBatch(plugins: RouterPlugin[], options?: PluginRegisterOptions): void;
|
|
27
|
+
/**
|
|
28
|
+
* 按依赖关系排序插件(拓扑排序)
|
|
29
|
+
*/
|
|
30
|
+
private sortByDependencies;
|
|
31
|
+
/**
|
|
32
|
+
* 取消注册插件
|
|
33
|
+
*
|
|
34
|
+
* @param name - 插件名称
|
|
35
|
+
*/
|
|
36
|
+
unregister(name: string): void;
|
|
37
|
+
/**
|
|
38
|
+
* 执行插件钩子
|
|
39
|
+
*
|
|
40
|
+
* @param stage - 生命周期阶段
|
|
41
|
+
* @param context - 插件上下文
|
|
42
|
+
*/
|
|
43
|
+
executeHooks(stage: PluginLifecycleStage, context: PluginContext): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* 获取插件
|
|
46
|
+
*
|
|
47
|
+
* @param name - 插件名称
|
|
48
|
+
* @returns 插件实例,如果不存在返回 undefined
|
|
49
|
+
*/
|
|
50
|
+
getPlugin(name: string): RouterPlugin | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* 获取所有插件
|
|
53
|
+
*
|
|
54
|
+
* @returns 插件数组
|
|
55
|
+
*/
|
|
56
|
+
getAllPlugins(): RouterPlugin[];
|
|
57
|
+
/**
|
|
58
|
+
* 获取启用的插件
|
|
59
|
+
*
|
|
60
|
+
* @returns 启用的插件数组
|
|
61
|
+
*/
|
|
62
|
+
getEnabledPlugins(): RouterPlugin[];
|
|
63
|
+
/**
|
|
64
|
+
* 清空所有插件
|
|
65
|
+
*/
|
|
66
|
+
clear(): void;
|
|
67
|
+
/**
|
|
68
|
+
* 获取插件数量
|
|
69
|
+
*
|
|
70
|
+
* @returns 插件数量
|
|
71
|
+
*/
|
|
72
|
+
getCount(): number;
|
|
73
|
+
}
|
|
74
|
+
export declare function getRouterPluginManager(): RouterPluginManager;
|
|
75
|
+
//# sourceMappingURL=RouterPluginManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouterPluginManager.d.ts","sourceRoot":"","sources":["../../../../src/core/router/plugin/RouterPluginManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AA2B/C;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAA8C;IAE7D;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,qBAA0B,GAAG,MAAM,IAAI;IA0D/E;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,OAAO,GAAE,qBAA0B,GAAG,IAAI;IASjF;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAuB9B;;;;;OAKG;IACG,YAAY,CAAC,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCtF;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIjD;;;;OAIG;IACH,aAAa,IAAI,YAAY,EAAE;IAI/B;;;;OAIG;IACH,iBAAiB,IAAI,YAAY,EAAE;IAMnC;;OAEG;IACH,KAAK,IAAI,IAAI;IAoBb;;;;OAIG;IACH,QAAQ,IAAI,MAAM;CAGnB;AAOD,wBAAgB,sBAAsB,IAAI,mBAAmB,CAK5D"}
|