@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,286 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 插件事件总线
|
|
3
|
+
* 用于插件间通信
|
|
4
|
+
*/ /**
|
|
5
|
+
* 事件监听器类型
|
|
6
|
+
*/ function _define_property(obj, key, value) {
|
|
7
|
+
if (key in obj) {
|
|
8
|
+
Object.defineProperty(obj, key, {
|
|
9
|
+
value: value,
|
|
10
|
+
enumerable: true,
|
|
11
|
+
configurable: true,
|
|
12
|
+
writable: true
|
|
13
|
+
});
|
|
14
|
+
} else {
|
|
15
|
+
obj[key] = value;
|
|
16
|
+
}
|
|
17
|
+
return obj;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* 事件总线
|
|
21
|
+
*/ export class PluginEventBus {
|
|
22
|
+
/**
|
|
23
|
+
* 订阅事件
|
|
24
|
+
*
|
|
25
|
+
* @param event - 事件名称
|
|
26
|
+
* @param listener - 事件监听器(可以接收 EventWrapper 或直接数据)
|
|
27
|
+
* @returns 取消订阅函数
|
|
28
|
+
*/ on(event, listener) {
|
|
29
|
+
if (!this.listeners.has(event)) {
|
|
30
|
+
this.listeners.set(event, new Set());
|
|
31
|
+
}
|
|
32
|
+
const listeners = this.listeners.get(event);
|
|
33
|
+
listeners.add(listener);
|
|
34
|
+
// 返回取消订阅函数
|
|
35
|
+
return ()=>{
|
|
36
|
+
listeners.delete(listener);
|
|
37
|
+
if (listeners.size === 0) {
|
|
38
|
+
this.listeners.delete(event);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* 取消订阅事件
|
|
44
|
+
*
|
|
45
|
+
* @param event - 事件名称
|
|
46
|
+
* @param listener - 事件监听器
|
|
47
|
+
*/ off(event, listener) {
|
|
48
|
+
const listeners = this.listeners.get(event);
|
|
49
|
+
if (listeners) {
|
|
50
|
+
listeners.delete(listener);
|
|
51
|
+
if (listeners.size === 0) {
|
|
52
|
+
this.listeners.delete(event);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* 发布事件
|
|
58
|
+
*
|
|
59
|
+
* @param event - 事件名称
|
|
60
|
+
* @param data - 事件数据
|
|
61
|
+
* @param metadata - 事件元数据(可选)
|
|
62
|
+
*/ async emit(event, data, metadata) {
|
|
63
|
+
// 事件验证
|
|
64
|
+
if (this.config.enableValidation && !this.config.validator(event, data)) {
|
|
65
|
+
console.warn(`事件 ${event} 验证失败,已忽略`);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
// 构建事件元数据
|
|
69
|
+
const eventMetadata = {
|
|
70
|
+
source: metadata?.source,
|
|
71
|
+
timestamp: metadata?.timestamp ?? Date.now(),
|
|
72
|
+
eventId: metadata?.eventId ?? `event_${++this.eventCounter}`,
|
|
73
|
+
priority: metadata?.priority ?? 0
|
|
74
|
+
};
|
|
75
|
+
// 记录事件历史
|
|
76
|
+
if (this.config.enableTracking) {
|
|
77
|
+
this.eventHistory.push({
|
|
78
|
+
event,
|
|
79
|
+
data,
|
|
80
|
+
metadata: eventMetadata
|
|
81
|
+
});
|
|
82
|
+
// 限制历史记录大小
|
|
83
|
+
if (this.eventHistory.length > this.config.maxHistorySize) {
|
|
84
|
+
this.eventHistory.shift();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const listeners = this.listeners.get(event);
|
|
88
|
+
if (!listeners || listeners.size === 0) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
// 创建事件包装器
|
|
92
|
+
const eventWrapper = {
|
|
93
|
+
data: data,
|
|
94
|
+
metadata: eventMetadata
|
|
95
|
+
};
|
|
96
|
+
// 按优先级排序监听器(如果有优先级)
|
|
97
|
+
const sortedListeners = Array.from(listeners);
|
|
98
|
+
// 并行执行所有监听器
|
|
99
|
+
const promises = sortedListeners.map((listener)=>{
|
|
100
|
+
try {
|
|
101
|
+
return Promise.resolve(listener(eventWrapper));
|
|
102
|
+
} catch (error) {
|
|
103
|
+
console.error(`事件 ${event} 的监听器执行失败:`, error);
|
|
104
|
+
return Promise.resolve();
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
await Promise.allSettled(promises);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* 发布事件(仅数据,向后兼容)
|
|
111
|
+
*
|
|
112
|
+
* @param event - 事件名称
|
|
113
|
+
* @param data - 事件数据
|
|
114
|
+
*/ async emitData(event, data) {
|
|
115
|
+
return this.emit(event, data);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* 一次性订阅事件
|
|
119
|
+
*
|
|
120
|
+
* @param event - 事件名称
|
|
121
|
+
* @param listener - 事件监听器
|
|
122
|
+
*/ once(event, listener) {
|
|
123
|
+
const wrappedListener = async (data)=>{
|
|
124
|
+
// 处理 EventWrapper 或直接数据
|
|
125
|
+
const actualData = data.data !== undefined ? data.data : data;
|
|
126
|
+
await listener(actualData);
|
|
127
|
+
this.off(event, wrappedListener);
|
|
128
|
+
};
|
|
129
|
+
this.on(event, wrappedListener);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* 清空所有事件监听器
|
|
133
|
+
*/ clear() {
|
|
134
|
+
this.listeners.clear();
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* 获取事件监听器数量
|
|
138
|
+
*
|
|
139
|
+
* @param event - 事件名称,如果不提供则返回所有事件的监听器总数
|
|
140
|
+
*/ listenerCount(event) {
|
|
141
|
+
if (event) {
|
|
142
|
+
return this.listeners.get(event)?.size || 0;
|
|
143
|
+
}
|
|
144
|
+
let count = 0;
|
|
145
|
+
for (const listeners of this.listeners.values()){
|
|
146
|
+
count += listeners.size;
|
|
147
|
+
}
|
|
148
|
+
return count;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* 获取所有事件名称
|
|
152
|
+
*/ eventNames() {
|
|
153
|
+
return Array.from(this.listeners.keys());
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* 获取事件历史记录
|
|
157
|
+
*
|
|
158
|
+
* @param event - 事件名称(可选,如果提供则只返回该事件的历史)
|
|
159
|
+
* @param limit - 限制返回的记录数
|
|
160
|
+
* @returns 事件历史记录
|
|
161
|
+
*/ getEventHistory(event, limit) {
|
|
162
|
+
if (!this.config.enableTracking) {
|
|
163
|
+
return [];
|
|
164
|
+
}
|
|
165
|
+
let history = this.eventHistory;
|
|
166
|
+
if (event) {
|
|
167
|
+
history = history.filter((h)=>h.event === event);
|
|
168
|
+
}
|
|
169
|
+
if (limit) {
|
|
170
|
+
history = history.slice(-limit);
|
|
171
|
+
}
|
|
172
|
+
return [
|
|
173
|
+
...history
|
|
174
|
+
];
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* 清空事件历史记录
|
|
178
|
+
*/ clearHistory() {
|
|
179
|
+
this.eventHistory = [];
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* 请求-响应模式:发送请求并等待响应
|
|
183
|
+
*
|
|
184
|
+
* @param event - 事件名称
|
|
185
|
+
* @param data - 请求数据
|
|
186
|
+
* @param timeout - 超时时间(毫秒)
|
|
187
|
+
* @returns 响应数据
|
|
188
|
+
*/ async request(event, data, timeout = 5000) {
|
|
189
|
+
return new Promise((resolve, reject)=>{
|
|
190
|
+
const responseEvent = `${event}:response`;
|
|
191
|
+
const requestId = `req_${Date.now()}_${Math.random()}`;
|
|
192
|
+
// 设置超时
|
|
193
|
+
const timeoutId = setTimeout(()=>{
|
|
194
|
+
this.off(responseEvent, responseHandler);
|
|
195
|
+
reject(new Error(`请求 ${event} 超时`));
|
|
196
|
+
}, timeout);
|
|
197
|
+
// 响应处理器
|
|
198
|
+
const responseHandler = (response)=>{
|
|
199
|
+
// 处理 EventWrapper 或直接数据
|
|
200
|
+
const actualResponse = response.data !== undefined ? response.data : response;
|
|
201
|
+
if (actualResponse.requestId === requestId) {
|
|
202
|
+
clearTimeout(timeoutId);
|
|
203
|
+
this.off(responseEvent, responseHandler);
|
|
204
|
+
resolve(actualResponse.data);
|
|
205
|
+
}
|
|
206
|
+
};
|
|
207
|
+
// 订阅响应事件
|
|
208
|
+
this.on(responseEvent, responseHandler);
|
|
209
|
+
// 发送请求
|
|
210
|
+
this.emit(`${event}:request`, {
|
|
211
|
+
requestId,
|
|
212
|
+
data
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* 请求-响应模式:注册请求处理器
|
|
218
|
+
*
|
|
219
|
+
* @param event - 事件名称
|
|
220
|
+
* @param handler - 请求处理器
|
|
221
|
+
* @returns 取消注册函数
|
|
222
|
+
*/ onRequest(event, handler) {
|
|
223
|
+
const requestEvent = `${event}:request`;
|
|
224
|
+
const responseEvent = `${event}:response`;
|
|
225
|
+
return this.on(requestEvent, async (wrapper)=>{
|
|
226
|
+
try {
|
|
227
|
+
// 处理 EventWrapper 或直接数据
|
|
228
|
+
const actualWrapper = wrapper.data !== undefined ? wrapper : {
|
|
229
|
+
data: wrapper,
|
|
230
|
+
metadata: {
|
|
231
|
+
timestamp: Date.now()
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
const response = await handler(actualWrapper.data.data, actualWrapper.metadata);
|
|
235
|
+
this.emit(responseEvent, {
|
|
236
|
+
requestId: actualWrapper.data.requestId,
|
|
237
|
+
data: response
|
|
238
|
+
});
|
|
239
|
+
} catch (error) {
|
|
240
|
+
const actualWrapper = wrapper.data !== undefined ? wrapper : {
|
|
241
|
+
data: wrapper
|
|
242
|
+
};
|
|
243
|
+
this.emit(`${responseEvent}:error`, {
|
|
244
|
+
requestId: actualWrapper.data.requestId,
|
|
245
|
+
error: error instanceof Error ? error.message : String(error)
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* 获取配置
|
|
252
|
+
*/ getConfig() {
|
|
253
|
+
return {
|
|
254
|
+
...this.config
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* 更新配置
|
|
259
|
+
*/ updateConfig(config) {
|
|
260
|
+
this.config = {
|
|
261
|
+
...this.config,
|
|
262
|
+
...config
|
|
263
|
+
};
|
|
264
|
+
}
|
|
265
|
+
constructor(config = {}){
|
|
266
|
+
_define_property(this, "listeners", new Map());
|
|
267
|
+
_define_property(this, "eventHistory", []);
|
|
268
|
+
_define_property(this, "config", void 0);
|
|
269
|
+
_define_property(this, "eventCounter", 0);
|
|
270
|
+
this.config = {
|
|
271
|
+
enableTracking: config.enableTracking ?? false,
|
|
272
|
+
maxHistorySize: config.maxHistorySize ?? 100,
|
|
273
|
+
enableValidation: config.enableValidation ?? false,
|
|
274
|
+
validator: config.validator ?? (()=>true)
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* 全局插件事件总线实例
|
|
280
|
+
*/ export const pluginEventBus = new PluginEventBus({
|
|
281
|
+
enableTracking: process.env.NODE_ENV === 'development',
|
|
282
|
+
maxHistorySize: 100,
|
|
283
|
+
enableValidation: false
|
|
284
|
+
});
|
|
285
|
+
|
|
286
|
+
//# sourceMappingURL=PluginEventBus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/core/plugin/PluginEventBus.ts"],"sourcesContent":["/**\n * 插件事件总线\n * 用于插件间通信\n */\n\n/**\n * 事件监听器类型\n */\nexport type EventListener<T = unknown> = (data: T) => void | Promise<void>;\n\n/**\n * 事件元数据\n */\nexport interface EventMetadata {\n /**\n * 事件来源(插件名称)\n */\n source?: string;\n /**\n * 事件时间戳\n */\n timestamp: number;\n /**\n * 事件ID(用于追踪)\n */\n eventId?: string;\n /**\n * 事件优先级\n */\n priority?: number;\n}\n\n/**\n * 事件包装器\n */\nexport interface EventWrapper<T = unknown> {\n /**\n * 事件数据\n */\n data: T;\n /**\n * 事件元数据\n */\n metadata: EventMetadata;\n}\n\n/**\n * 事件总线配置\n */\nexport interface PluginEventBusConfig {\n /**\n * 是否启用事件追踪\n */\n enableTracking?: boolean;\n /**\n * 最大事件历史记录数\n */\n maxHistorySize?: number;\n /**\n * 是否启用事件验证\n */\n enableValidation?: boolean;\n /**\n * 事件验证函数\n */\n validator?: (event: string, data: unknown) => boolean;\n}\n\n/**\n * 事件总线\n */\nexport class PluginEventBus {\n private listeners: Map<string, Set<EventListener>> = new Map();\n private eventHistory: Array<{ event: string; data: unknown; metadata: EventMetadata }> = [];\n private config: Required<PluginEventBusConfig>;\n private eventCounter: number = 0;\n\n /**\n * 订阅事件\n * \n * @param event - 事件名称\n * @param listener - 事件监听器(可以接收 EventWrapper 或直接数据)\n * @returns 取消订阅函数\n */\n on<T = unknown>(event: string, listener: EventListener<T | EventWrapper<T>>): () => void {\n if (!this.listeners.has(event)) {\n this.listeners.set(event, new Set());\n }\n\n const listeners = this.listeners.get(event)!;\n listeners.add(listener as EventListener);\n\n // 返回取消订阅函数\n return () => {\n listeners.delete(listener as EventListener);\n if (listeners.size === 0) {\n this.listeners.delete(event);\n }\n };\n }\n\n /**\n * 取消订阅事件\n * \n * @param event - 事件名称\n * @param listener - 事件监听器\n */\n off<T = unknown>(event: string, listener: EventListener<T>): void {\n const listeners = this.listeners.get(event);\n if (listeners) {\n listeners.delete(listener as EventListener);\n if (listeners.size === 0) {\n this.listeners.delete(event);\n }\n }\n }\n\n constructor(config: PluginEventBusConfig = {}) {\n this.config = {\n enableTracking: config.enableTracking ?? false,\n maxHistorySize: config.maxHistorySize ?? 100,\n enableValidation: config.enableValidation ?? false,\n validator: config.validator ?? (() => true),\n };\n }\n\n /**\n * 发布事件\n * \n * @param event - 事件名称\n * @param data - 事件数据\n * @param metadata - 事件元数据(可选)\n */\n async emit<T = unknown>(\n event: string,\n data?: T,\n metadata?: Partial<EventMetadata>\n ): Promise<void> {\n // 事件验证\n if (this.config.enableValidation && !this.config.validator(event, data)) {\n console.warn(`事件 ${event} 验证失败,已忽略`);\n return;\n }\n\n // 构建事件元数据\n const eventMetadata: EventMetadata = {\n source: metadata?.source,\n timestamp: metadata?.timestamp ?? Date.now(),\n eventId: metadata?.eventId ?? `event_${++this.eventCounter}`,\n priority: metadata?.priority ?? 0,\n };\n\n // 记录事件历史\n if (this.config.enableTracking) {\n this.eventHistory.push({\n event,\n data,\n metadata: eventMetadata,\n });\n\n // 限制历史记录大小\n if (this.eventHistory.length > this.config.maxHistorySize) {\n this.eventHistory.shift();\n }\n }\n\n const listeners = this.listeners.get(event);\n if (!listeners || listeners.size === 0) {\n return;\n }\n\n // 创建事件包装器\n const eventWrapper: EventWrapper<T> = {\n data: data as T,\n metadata: eventMetadata,\n };\n\n // 按优先级排序监听器(如果有优先级)\n const sortedListeners = Array.from(listeners);\n\n // 并行执行所有监听器\n const promises = sortedListeners.map((listener) => {\n try {\n return Promise.resolve(listener(eventWrapper));\n } catch (error) {\n console.error(`事件 ${event} 的监听器执行失败:`, error);\n return Promise.resolve();\n }\n });\n\n await Promise.allSettled(promises);\n }\n\n /**\n * 发布事件(仅数据,向后兼容)\n * \n * @param event - 事件名称\n * @param data - 事件数据\n */\n async emitData<T = unknown>(event: string, data?: T): Promise<void> {\n return this.emit(event, data);\n }\n\n /**\n * 一次性订阅事件\n * \n * @param event - 事件名称\n * @param listener - 事件监听器\n */\n once<T = unknown>(event: string, listener: EventListener<T>): void {\n const wrappedListener: EventListener<T | EventWrapper<T>> = async (data) => {\n // 处理 EventWrapper 或直接数据\n const actualData = (data as EventWrapper<T>).data !== undefined \n ? (data as EventWrapper<T>).data \n : data as T;\n await listener(actualData);\n this.off(event, wrappedListener);\n };\n this.on(event, wrappedListener);\n }\n\n /**\n * 清空所有事件监听器\n */\n clear(): void {\n this.listeners.clear();\n }\n\n /**\n * 获取事件监听器数量\n * \n * @param event - 事件名称,如果不提供则返回所有事件的监听器总数\n */\n listenerCount(event?: string): number {\n if (event) {\n return this.listeners.get(event)?.size || 0;\n }\n\n let count = 0;\n for (const listeners of this.listeners.values()) {\n count += listeners.size;\n }\n return count;\n }\n\n /**\n * 获取所有事件名称\n */\n eventNames(): string[] {\n return Array.from(this.listeners.keys());\n }\n\n /**\n * 获取事件历史记录\n * \n * @param event - 事件名称(可选,如果提供则只返回该事件的历史)\n * @param limit - 限制返回的记录数\n * @returns 事件历史记录\n */\n getEventHistory(event?: string, limit?: number): Array<{ event: string; data: unknown; metadata: EventMetadata }> {\n if (!this.config.enableTracking) {\n return [];\n }\n\n let history = this.eventHistory;\n if (event) {\n history = history.filter((h) => h.event === event);\n }\n\n if (limit) {\n history = history.slice(-limit);\n }\n\n return [...history];\n }\n\n /**\n * 清空事件历史记录\n */\n clearHistory(): void {\n this.eventHistory = [];\n }\n\n /**\n * 请求-响应模式:发送请求并等待响应\n * \n * @param event - 事件名称\n * @param data - 请求数据\n * @param timeout - 超时时间(毫秒)\n * @returns 响应数据\n */\n async request<TRequest = unknown, TResponse = unknown>(\n event: string,\n data?: TRequest,\n timeout: number = 5000\n ): Promise<TResponse> {\n return new Promise((resolve, reject) => {\n const responseEvent = `${event}:response`;\n const requestId = `req_${Date.now()}_${Math.random()}`;\n\n // 设置超时\n const timeoutId = setTimeout(() => {\n this.off(responseEvent, responseHandler);\n reject(new Error(`请求 ${event} 超时`));\n }, timeout);\n\n // 响应处理器\n const responseHandler = (response: EventWrapper<{ requestId: string; data: TResponse }> | { requestId: string; data: TResponse }) => {\n // 处理 EventWrapper 或直接数据\n const actualResponse = (response as EventWrapper<{ requestId: string; data: TResponse }>).data !== undefined\n ? (response as EventWrapper<{ requestId: string; data: TResponse }>).data\n : response as { requestId: string; data: TResponse };\n \n if (actualResponse.requestId === requestId) {\n clearTimeout(timeoutId);\n this.off(responseEvent, responseHandler);\n resolve(actualResponse.data);\n }\n };\n\n // 订阅响应事件\n this.on(responseEvent, responseHandler);\n\n // 发送请求\n this.emit(`${event}:request`, {\n requestId,\n data,\n } as TRequest);\n });\n }\n\n /**\n * 请求-响应模式:注册请求处理器\n * \n * @param event - 事件名称\n * @param handler - 请求处理器\n * @returns 取消注册函数\n */\n onRequest<TRequest = unknown, TResponse = unknown>(\n event: string,\n handler: (data: TRequest, metadata: EventMetadata) => Promise<TResponse> | TResponse\n ): () => void {\n const requestEvent = `${event}:request`;\n const responseEvent = `${event}:response`;\n\n return this.on(requestEvent, async (wrapper: EventWrapper<{ requestId: string; data: TRequest }> | { requestId: string; data: TRequest }) => {\n try {\n // 处理 EventWrapper 或直接数据\n const actualWrapper = (wrapper as EventWrapper<{ requestId: string; data: TRequest }>).data !== undefined\n ? wrapper as EventWrapper<{ requestId: string; data: TRequest }>\n : { data: wrapper as { requestId: string; data: TRequest }, metadata: { timestamp: Date.now() } as EventMetadata };\n \n const response = await handler(actualWrapper.data.data, actualWrapper.metadata);\n this.emit(responseEvent, {\n requestId: actualWrapper.data.requestId,\n data: response,\n });\n } catch (error) {\n const actualWrapper = (wrapper as EventWrapper<{ requestId: string; data: TRequest }>).data !== undefined\n ? wrapper as EventWrapper<{ requestId: string; data: TRequest }>\n : { data: wrapper as { requestId: string; data: TRequest } };\n \n this.emit(`${responseEvent}:error`, {\n requestId: actualWrapper.data.requestId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n });\n }\n\n /**\n * 获取配置\n */\n getConfig(): PluginEventBusConfig {\n return { ...this.config };\n }\n\n /**\n * 更新配置\n */\n updateConfig(config: Partial<PluginEventBusConfig>): void {\n this.config = {\n ...this.config,\n ...config,\n };\n }\n}\n\n/**\n * 全局插件事件总线实例\n */\nexport const pluginEventBus = new PluginEventBus({\n enableTracking: process.env.NODE_ENV === 'development',\n maxHistorySize: 100,\n enableValidation: false,\n});\n"],"names":["PluginEventBus","on","event","listener","listeners","has","set","Set","get","add","delete","size","off","emit","data","metadata","config","enableValidation","validator","console","warn","eventMetadata","source","timestamp","Date","now","eventId","eventCounter","priority","enableTracking","eventHistory","push","length","maxHistorySize","shift","eventWrapper","sortedListeners","Array","from","promises","map","Promise","resolve","error","allSettled","emitData","once","wrappedListener","actualData","undefined","clear","listenerCount","count","values","eventNames","keys","getEventHistory","limit","history","filter","h","slice","clearHistory","request","timeout","reject","responseEvent","requestId","Math","random","timeoutId","setTimeout","responseHandler","Error","response","actualResponse","clearTimeout","onRequest","handler","requestEvent","wrapper","actualWrapper","message","String","getConfig","updateConfig","Map","pluginEventBus","process","env","NODE_ENV"],"mappings":"AAAA;;;CAGC,GAED;;CAEC;;;;;;;;;;;;;AA6DD;;CAEC,GACD,OAAO,MAAMA;IAMX;;;;;;GAMC,GACDC,GAAgBC,KAAa,EAAEC,QAA4C,EAAc;QACvF,IAAI,CAAC,IAAI,CAACC,SAAS,CAACC,GAAG,CAACH,QAAQ;YAC9B,IAAI,CAACE,SAAS,CAACE,GAAG,CAACJ,OAAO,IAAIK;QAChC;QAEA,MAAMH,YAAY,IAAI,CAACA,SAAS,CAACI,GAAG,CAACN;QACrCE,UAAUK,GAAG,CAACN;QAEd,WAAW;QACX,OAAO;YACLC,UAAUM,MAAM,CAACP;YACjB,IAAIC,UAAUO,IAAI,KAAK,GAAG;gBACxB,IAAI,CAACP,SAAS,CAACM,MAAM,CAACR;YACxB;QACF;IACF;IAEA;;;;;GAKC,GACDU,IAAiBV,KAAa,EAAEC,QAA0B,EAAQ;QAChE,MAAMC,YAAY,IAAI,CAACA,SAAS,CAACI,GAAG,CAACN;QACrC,IAAIE,WAAW;YACbA,UAAUM,MAAM,CAACP;YACjB,IAAIC,UAAUO,IAAI,KAAK,GAAG;gBACxB,IAAI,CAACP,SAAS,CAACM,MAAM,CAACR;YACxB;QACF;IACF;IAWA;;;;;;GAMC,GACD,MAAMW,KACJX,KAAa,EACbY,IAAQ,EACRC,QAAiC,EAClB;QACf,OAAO;QACP,IAAI,IAAI,CAACC,MAAM,CAACC,gBAAgB,IAAI,CAAC,IAAI,CAACD,MAAM,CAACE,SAAS,CAAChB,OAAOY,OAAO;YACvEK,QAAQC,IAAI,CAAC,CAAC,GAAG,EAAElB,MAAM,SAAS,CAAC;YACnC;QACF;QAEA,UAAU;QACV,MAAMmB,gBAA+B;YACnCC,QAAQP,UAAUO;YAClBC,WAAWR,UAAUQ,aAAaC,KAAKC,GAAG;YAC1CC,SAASX,UAAUW,WAAW,CAAC,MAAM,EAAE,EAAE,IAAI,CAACC,YAAY,EAAE;YAC5DC,UAAUb,UAAUa,YAAY;QAClC;QAEA,SAAS;QACT,IAAI,IAAI,CAACZ,MAAM,CAACa,cAAc,EAAE;YAC9B,IAAI,CAACC,YAAY,CAACC,IAAI,CAAC;gBACrB7B;gBACAY;gBACAC,UAAUM;YACZ;YAEA,WAAW;YACX,IAAI,IAAI,CAACS,YAAY,CAACE,MAAM,GAAG,IAAI,CAAChB,MAAM,CAACiB,cAAc,EAAE;gBACzD,IAAI,CAACH,YAAY,CAACI,KAAK;YACzB;QACF;QAEA,MAAM9B,YAAY,IAAI,CAACA,SAAS,CAACI,GAAG,CAACN;QACrC,IAAI,CAACE,aAAaA,UAAUO,IAAI,KAAK,GAAG;YACtC;QACF;QAEA,UAAU;QACV,MAAMwB,eAAgC;YACpCrB,MAAMA;YACNC,UAAUM;QACZ;QAEA,oBAAoB;QACpB,MAAMe,kBAAkBC,MAAMC,IAAI,CAAClC;QAEnC,YAAY;QACZ,MAAMmC,WAAWH,gBAAgBI,GAAG,CAAC,CAACrC;YACpC,IAAI;gBACF,OAAOsC,QAAQC,OAAO,CAACvC,SAASgC;YAClC,EAAE,OAAOQ,OAAO;gBACdxB,QAAQwB,KAAK,CAAC,CAAC,GAAG,EAAEzC,MAAM,UAAU,CAAC,EAAEyC;gBACvC,OAAOF,QAAQC,OAAO;YACxB;QACF;QAEA,MAAMD,QAAQG,UAAU,CAACL;IAC3B;IAEA;;;;;GAKC,GACD,MAAMM,SAAsB3C,KAAa,EAAEY,IAAQ,EAAiB;QAClE,OAAO,IAAI,CAACD,IAAI,CAACX,OAAOY;IAC1B;IAEA;;;;;GAKC,GACDgC,KAAkB5C,KAAa,EAAEC,QAA0B,EAAQ;QACjE,MAAM4C,kBAAsD,OAAOjC;YACjE,wBAAwB;YACxB,MAAMkC,aAAa,AAAClC,KAAyBA,IAAI,KAAKmC,YAClD,AAACnC,KAAyBA,IAAI,GAC9BA;YACJ,MAAMX,SAAS6C;YACf,IAAI,CAACpC,GAAG,CAACV,OAAO6C;QAClB;QACA,IAAI,CAAC9C,EAAE,CAACC,OAAO6C;IACjB;IAEA;;GAEC,GACDG,QAAc;QACZ,IAAI,CAAC9C,SAAS,CAAC8C,KAAK;IACtB;IAEA;;;;GAIC,GACDC,cAAcjD,KAAc,EAAU;QACpC,IAAIA,OAAO;YACT,OAAO,IAAI,CAACE,SAAS,CAACI,GAAG,CAACN,QAAQS,QAAQ;QAC5C;QAEA,IAAIyC,QAAQ;QACZ,KAAK,MAAMhD,aAAa,IAAI,CAACA,SAAS,CAACiD,MAAM,GAAI;YAC/CD,SAAShD,UAAUO,IAAI;QACzB;QACA,OAAOyC;IACT;IAEA;;GAEC,GACDE,aAAuB;QACrB,OAAOjB,MAAMC,IAAI,CAAC,IAAI,CAAClC,SAAS,CAACmD,IAAI;IACvC;IAEA;;;;;;GAMC,GACDC,gBAAgBtD,KAAc,EAAEuD,KAAc,EAAoE;QAChH,IAAI,CAAC,IAAI,CAACzC,MAAM,CAACa,cAAc,EAAE;YAC/B,OAAO,EAAE;QACX;QAEA,IAAI6B,UAAU,IAAI,CAAC5B,YAAY;QAC/B,IAAI5B,OAAO;YACTwD,UAAUA,QAAQC,MAAM,CAAC,CAACC,IAAMA,EAAE1D,KAAK,KAAKA;QAC9C;QAEA,IAAIuD,OAAO;YACTC,UAAUA,QAAQG,KAAK,CAAC,CAACJ;QAC3B;QAEA,OAAO;eAAIC;SAAQ;IACrB;IAEA;;GAEC,GACDI,eAAqB;QACnB,IAAI,CAAChC,YAAY,GAAG,EAAE;IACxB;IAEA;;;;;;;GAOC,GACD,MAAMiC,QACJ7D,KAAa,EACbY,IAAe,EACfkD,UAAkB,IAAI,EACF;QACpB,OAAO,IAAIvB,QAAQ,CAACC,SAASuB;YAC3B,MAAMC,gBAAgB,GAAGhE,MAAM,SAAS,CAAC;YACzC,MAAMiE,YAAY,CAAC,IAAI,EAAE3C,KAAKC,GAAG,GAAG,CAAC,EAAE2C,KAAKC,MAAM,IAAI;YAEtD,OAAO;YACP,MAAMC,YAAYC,WAAW;gBAC3B,IAAI,CAAC3D,GAAG,CAACsD,eAAeM;gBACxBP,OAAO,IAAIQ,MAAM,CAAC,GAAG,EAAEvE,MAAM,GAAG,CAAC;YACnC,GAAG8D;YAEH,QAAQ;YACR,MAAMQ,kBAAkB,CAACE;gBACvB,wBAAwB;gBACxB,MAAMC,iBAAiB,AAACD,SAAkE5D,IAAI,KAAKmC,YAC/F,AAACyB,SAAkE5D,IAAI,GACvE4D;gBAEJ,IAAIC,eAAeR,SAAS,KAAKA,WAAW;oBAC1CS,aAAaN;oBACb,IAAI,CAAC1D,GAAG,CAACsD,eAAeM;oBACxB9B,QAAQiC,eAAe7D,IAAI;gBAC7B;YACF;YAEA,SAAS;YACT,IAAI,CAACb,EAAE,CAACiE,eAAeM;YAEvB,OAAO;YACP,IAAI,CAAC3D,IAAI,CAAC,GAAGX,MAAM,QAAQ,CAAC,EAAE;gBAC5BiE;gBACArD;YACF;QACF;IACF;IAEA;;;;;;GAMC,GACD+D,UACE3E,KAAa,EACb4E,OAAoF,EACxE;QACZ,MAAMC,eAAe,GAAG7E,MAAM,QAAQ,CAAC;QACvC,MAAMgE,gBAAgB,GAAGhE,MAAM,SAAS,CAAC;QAEzC,OAAO,IAAI,CAACD,EAAE,CAAC8E,cAAc,OAAOC;YAClC,IAAI;gBACF,wBAAwB;gBACxB,MAAMC,gBAAgB,AAACD,QAAgElE,IAAI,KAAKmC,YAC5F+B,UACA;oBAAElE,MAAMkE;oBAAkDjE,UAAU;wBAAEQ,WAAWC,KAAKC,GAAG;oBAAG;gBAAmB;gBAEnH,MAAMiD,WAAW,MAAMI,QAAQG,cAAcnE,IAAI,CAACA,IAAI,EAAEmE,cAAclE,QAAQ;gBAC9E,IAAI,CAACF,IAAI,CAACqD,eAAe;oBACvBC,WAAWc,cAAcnE,IAAI,CAACqD,SAAS;oBACvCrD,MAAM4D;gBACR;YACF,EAAE,OAAO/B,OAAO;gBACd,MAAMsC,gBAAgB,AAACD,QAAgElE,IAAI,KAAKmC,YAC5F+B,UACA;oBAAElE,MAAMkE;gBAAiD;gBAE7D,IAAI,CAACnE,IAAI,CAAC,GAAGqD,cAAc,MAAM,CAAC,EAAE;oBAClCC,WAAWc,cAAcnE,IAAI,CAACqD,SAAS;oBACvCxB,OAAOA,iBAAiB8B,QAAQ9B,MAAMuC,OAAO,GAAGC,OAAOxC;gBACzD;YACF;QACF;IACF;IAEA;;GAEC,GACDyC,YAAkC;QAChC,OAAO;YAAE,GAAG,IAAI,CAACpE,MAAM;QAAC;IAC1B;IAEA;;GAEC,GACDqE,aAAarE,MAAqC,EAAQ;QACxD,IAAI,CAACA,MAAM,GAAG;YACZ,GAAG,IAAI,CAACA,MAAM;YACd,GAAGA,MAAM;QACX;IACF;IA5QA,YAAYA,SAA+B,CAAC,CAAC,CAAE;QA7C/C,uBAAQZ,aAA6C,IAAIkF;QACzD,uBAAQxD,gBAAiF,EAAE;QAC3F,uBAAQd,UAAR,KAAA;QACA,uBAAQW,gBAAuB;QA2C7B,IAAI,CAACX,MAAM,GAAG;YACZa,gBAAgBb,OAAOa,cAAc,IAAI;YACzCI,gBAAgBjB,OAAOiB,cAAc,IAAI;YACzChB,kBAAkBD,OAAOC,gBAAgB,IAAI;YAC7CC,WAAWF,OAAOE,SAAS,IAAK,CAAA,IAAM,IAAG;QAC3C;IACF;AAsQF;AAEA;;CAEC,GACD,OAAO,MAAMqE,iBAAiB,IAAIvF,eAAe;IAC/C6B,gBAAgB2D,QAAQC,GAAG,CAACC,QAAQ,KAAK;IACzCzD,gBAAgB;IAChBhB,kBAAkB;AACpB,GAAG"}
|
|
@@ -0,0 +1,139 @@
|
|
|
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 PluginPermission () {
|
|
16
|
+
return PluginPermission;
|
|
17
|
+
},
|
|
18
|
+
get PluginSandbox () {
|
|
19
|
+
return PluginSandbox;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
function _define_property(obj, key, value) {
|
|
23
|
+
if (key in obj) {
|
|
24
|
+
Object.defineProperty(obj, key, {
|
|
25
|
+
value: value,
|
|
26
|
+
enumerable: true,
|
|
27
|
+
configurable: true,
|
|
28
|
+
writable: true
|
|
29
|
+
});
|
|
30
|
+
} else {
|
|
31
|
+
obj[key] = value;
|
|
32
|
+
}
|
|
33
|
+
return obj;
|
|
34
|
+
}
|
|
35
|
+
var PluginPermission = /*#__PURE__*/ function(PluginPermission) {
|
|
36
|
+
/**
|
|
37
|
+
* 访问配置
|
|
38
|
+
*/ PluginPermission["ACCESS_CONFIG"] = "access_config";
|
|
39
|
+
/**
|
|
40
|
+
* 访问状态管理器
|
|
41
|
+
*/ PluginPermission["ACCESS_STATE_MANAGER"] = "access_state_manager";
|
|
42
|
+
/**
|
|
43
|
+
* 访问存储
|
|
44
|
+
*/ PluginPermission["ACCESS_STORAGE"] = "access_storage";
|
|
45
|
+
/**
|
|
46
|
+
* 发布事件
|
|
47
|
+
*/ PluginPermission["EMIT_EVENTS"] = "emit_events";
|
|
48
|
+
/**
|
|
49
|
+
* 订阅事件
|
|
50
|
+
*/ PluginPermission["SUBSCRIBE_EVENTS"] = "subscribe_events";
|
|
51
|
+
return PluginPermission;
|
|
52
|
+
}({});
|
|
53
|
+
let PluginSandbox = class PluginSandbox {
|
|
54
|
+
/**
|
|
55
|
+
* 检查权限
|
|
56
|
+
*
|
|
57
|
+
* @param permission - 权限
|
|
58
|
+
* @returns 是否有权限
|
|
59
|
+
*/ hasPermission(permission) {
|
|
60
|
+
if (!this.config.strictMode) {
|
|
61
|
+
return true; // 非严格模式,允许所有权限
|
|
62
|
+
}
|
|
63
|
+
return this.permissions.has(permission);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* 检查是否可以访问配置键
|
|
67
|
+
*
|
|
68
|
+
* @param key - 配置键
|
|
69
|
+
* @returns 是否可以访问
|
|
70
|
+
*/ canAccessConfig(key) {
|
|
71
|
+
if (!this.hasPermission("access_config")) {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
if (this.config.configWhitelist && this.config.configWhitelist.length > 0) {
|
|
75
|
+
return this.config.configWhitelist.includes(key);
|
|
76
|
+
}
|
|
77
|
+
return true;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* 检查是否可以访问状态作用域
|
|
81
|
+
*
|
|
82
|
+
* @param scope - 状态作用域
|
|
83
|
+
* @returns 是否可以访问
|
|
84
|
+
*/ canAccessStateScope(scope) {
|
|
85
|
+
if (!this.hasPermission("access_state_manager")) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
if (this.config.stateScopeWhitelist && this.config.stateScopeWhitelist.length > 0) {
|
|
89
|
+
return this.config.stateScopeWhitelist.includes(scope);
|
|
90
|
+
}
|
|
91
|
+
return true;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* 过滤配置(根据白名单)
|
|
95
|
+
*
|
|
96
|
+
* @param config - 完整配置
|
|
97
|
+
* @returns 过滤后的配置
|
|
98
|
+
*/ filterConfig(config) {
|
|
99
|
+
if (!this.hasPermission("access_config")) {
|
|
100
|
+
return {};
|
|
101
|
+
}
|
|
102
|
+
if (!this.config.configWhitelist || this.config.configWhitelist.length === 0) {
|
|
103
|
+
return config;
|
|
104
|
+
}
|
|
105
|
+
const filtered = {};
|
|
106
|
+
for (const key of this.config.configWhitelist){
|
|
107
|
+
if (key in config) {
|
|
108
|
+
filtered[key] = config[key];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return filtered;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* 获取沙箱配置
|
|
115
|
+
*/ getConfig() {
|
|
116
|
+
return {
|
|
117
|
+
...this.config
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* 更新权限
|
|
122
|
+
*
|
|
123
|
+
* @param permissions - 权限列表
|
|
124
|
+
*/ updatePermissions(permissions) {
|
|
125
|
+
this.permissions = new Set(permissions);
|
|
126
|
+
this.config.permissions = permissions;
|
|
127
|
+
}
|
|
128
|
+
constructor(config){
|
|
129
|
+
_define_property(this, "config", void 0);
|
|
130
|
+
_define_property(this, "permissions", void 0);
|
|
131
|
+
this.config = {
|
|
132
|
+
strictMode: true,
|
|
133
|
+
...config
|
|
134
|
+
};
|
|
135
|
+
this.permissions = new Set(config.permissions || []);
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
//# sourceMappingURL=PluginSandbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/core/plugin/PluginSandbox.ts"],"sourcesContent":["/**\n * 插件沙箱\n * 用于插件隔离和权限控制\n */\n\nimport type { StartOptions } from '../types';\n\n/**\n * 插件权限\n */\nexport enum PluginPermission {\n /**\n * 访问配置\n */\n ACCESS_CONFIG = 'access_config',\n\n /**\n * 访问状态管理器\n */\n ACCESS_STATE_MANAGER = 'access_state_manager',\n\n /**\n * 访问存储\n */\n ACCESS_STORAGE = 'access_storage',\n\n /**\n * 发布事件\n */\n EMIT_EVENTS = 'emit_events',\n\n /**\n * 订阅事件\n */\n SUBSCRIBE_EVENTS = 'subscribe_events',\n}\n\n/**\n * 插件沙箱配置\n */\nexport interface PluginSandboxConfig {\n /**\n * 插件名称\n */\n name: string;\n\n /**\n * 允许的权限列表\n */\n permissions?: PluginPermission[];\n\n /**\n * 允许访问的配置键(白名单)\n */\n configWhitelist?: string[];\n\n /**\n * 允许访问的状态作用域(白名单)\n */\n stateScopeWhitelist?: (string | symbol)[];\n\n /**\n * 是否启用严格模式(默认true)\n */\n strictMode?: boolean;\n}\n\n/**\n * 插件沙箱\n */\nexport class PluginSandbox {\n private config: PluginSandboxConfig;\n private permissions: Set<PluginPermission>;\n\n constructor(config: PluginSandboxConfig) {\n this.config = {\n strictMode: true,\n ...config,\n };\n this.permissions = new Set(config.permissions || []);\n }\n\n /**\n * 检查权限\n * \n * @param permission - 权限\n * @returns 是否有权限\n */\n hasPermission(permission: PluginPermission): boolean {\n if (!this.config.strictMode) {\n return true; // 非严格模式,允许所有权限\n }\n\n return this.permissions.has(permission);\n }\n\n /**\n * 检查是否可以访问配置键\n * \n * @param key - 配置键\n * @returns 是否可以访问\n */\n canAccessConfig(key: string): boolean {\n if (!this.hasPermission(PluginPermission.ACCESS_CONFIG)) {\n return false;\n }\n\n if (this.config.configWhitelist && this.config.configWhitelist.length > 0) {\n return this.config.configWhitelist.includes(key);\n }\n\n return true;\n }\n\n /**\n * 检查是否可以访问状态作用域\n * \n * @param scope - 状态作用域\n * @returns 是否可以访问\n */\n canAccessStateScope(scope: string | symbol): boolean {\n if (!this.hasPermission(PluginPermission.ACCESS_STATE_MANAGER)) {\n return false;\n }\n\n if (this.config.stateScopeWhitelist && this.config.stateScopeWhitelist.length > 0) {\n return this.config.stateScopeWhitelist.includes(scope);\n }\n\n return true;\n }\n\n /**\n * 过滤配置(根据白名单)\n * \n * @param config - 完整配置\n * @returns 过滤后的配置\n */\n filterConfig(config: StartOptions): Partial<StartOptions> {\n if (!this.hasPermission(PluginPermission.ACCESS_CONFIG)) {\n return {};\n }\n\n if (!this.config.configWhitelist || this.config.configWhitelist.length === 0) {\n return config;\n }\n\n const filtered: Partial<StartOptions> = {};\n for (const key of this.config.configWhitelist) {\n if (key in config) {\n (filtered as any)[key] = (config as any)[key];\n }\n }\n\n return filtered;\n }\n\n /**\n * 获取沙箱配置\n */\n getConfig(): PluginSandboxConfig {\n return { ...this.config };\n }\n\n /**\n * 更新权限\n * \n * @param permissions - 权限列表\n */\n updatePermissions(permissions: PluginPermission[]): void {\n this.permissions = new Set(permissions);\n this.config.permissions = permissions;\n }\n}\n"],"names":["PluginPermission","PluginSandbox","hasPermission","permission","config","strictMode","permissions","has","canAccessConfig","key","configWhitelist","length","includes","canAccessStateScope","scope","stateScopeWhitelist","filterConfig","filtered","getConfig","updatePermissions","Set"],"mappings":"AAAA;;;CAGC;;;;;;;;;;;QAOWA;eAAAA;;QA4DCC;eAAAA;;;;;;;;;;;;;;;;AA5DN,IAAA,AAAKD,0CAAAA;IACV;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;WAvBSA;;AA4DL,IAAA,AAAMC,gBAAN,MAAMA;IAYX;;;;;GAKC,GACDC,cAAcC,UAA4B,EAAW;QACnD,IAAI,CAAC,IAAI,CAACC,MAAM,CAACC,UAAU,EAAE;YAC3B,OAAO,MAAM,eAAe;QAC9B;QAEA,OAAO,IAAI,CAACC,WAAW,CAACC,GAAG,CAACJ;IAC9B;IAEA;;;;;GAKC,GACDK,gBAAgBC,GAAW,EAAW;QACpC,IAAI,CAAC,IAAI,CAACP,aAAa,mBAAkC;YACvD,OAAO;QACT;QAEA,IAAI,IAAI,CAACE,MAAM,CAACM,eAAe,IAAI,IAAI,CAACN,MAAM,CAACM,eAAe,CAACC,MAAM,GAAG,GAAG;YACzE,OAAO,IAAI,CAACP,MAAM,CAACM,eAAe,CAACE,QAAQ,CAACH;QAC9C;QAEA,OAAO;IACT;IAEA;;;;;GAKC,GACDI,oBAAoBC,KAAsB,EAAW;QACnD,IAAI,CAAC,IAAI,CAACZ,aAAa,0BAAyC;YAC9D,OAAO;QACT;QAEA,IAAI,IAAI,CAACE,MAAM,CAACW,mBAAmB,IAAI,IAAI,CAACX,MAAM,CAACW,mBAAmB,CAACJ,MAAM,GAAG,GAAG;YACjF,OAAO,IAAI,CAACP,MAAM,CAACW,mBAAmB,CAACH,QAAQ,CAACE;QAClD;QAEA,OAAO;IACT;IAEA;;;;;GAKC,GACDE,aAAaZ,MAAoB,EAAyB;QACxD,IAAI,CAAC,IAAI,CAACF,aAAa,mBAAkC;YACvD,OAAO,CAAC;QACV;QAEA,IAAI,CAAC,IAAI,CAACE,MAAM,CAACM,eAAe,IAAI,IAAI,CAACN,MAAM,CAACM,eAAe,CAACC,MAAM,KAAK,GAAG;YAC5E,OAAOP;QACT;QAEA,MAAMa,WAAkC,CAAC;QACzC,KAAK,MAAMR,OAAO,IAAI,CAACL,MAAM,CAACM,eAAe,CAAE;YAC7C,IAAID,OAAOL,QAAQ;gBAChBa,QAAgB,CAACR,IAAI,GAAG,AAACL,MAAc,CAACK,IAAI;YAC/C;QACF;QAEA,OAAOQ;IACT;IAEA;;GAEC,GACDC,YAAiC;QAC/B,OAAO;YAAE,GAAG,IAAI,CAACd,MAAM;QAAC;IAC1B;IAEA;;;;GAIC,GACDe,kBAAkBb,WAA+B,EAAQ;QACvD,IAAI,CAACA,WAAW,GAAG,IAAIc,IAAId;QAC3B,IAAI,CAACF,MAAM,CAACE,WAAW,GAAGA;IAC5B;IAlGA,YAAYF,MAA2B,CAAE;QAHzC,uBAAQA,UAAR,KAAA;QACA,uBAAQE,eAAR,KAAA;QAGE,IAAI,CAACF,MAAM,GAAG;YACZC,YAAY;YACZ,GAAGD,MAAM;QACX;QACA,IAAI,CAACE,WAAW,GAAG,IAAIc,IAAIhB,OAAOE,WAAW,IAAI,EAAE;IACrD;AA6FF"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 插件沙箱
|
|
3
|
+
* 用于插件隔离和权限控制
|
|
4
|
+
*/
|
|
5
|
+
import type { StartOptions } from '../types';
|
|
6
|
+
/**
|
|
7
|
+
* 插件权限
|
|
8
|
+
*/
|
|
9
|
+
export declare enum PluginPermission {
|
|
10
|
+
/**
|
|
11
|
+
* 访问配置
|
|
12
|
+
*/
|
|
13
|
+
ACCESS_CONFIG = "access_config",
|
|
14
|
+
/**
|
|
15
|
+
* 访问状态管理器
|
|
16
|
+
*/
|
|
17
|
+
ACCESS_STATE_MANAGER = "access_state_manager",
|
|
18
|
+
/**
|
|
19
|
+
* 访问存储
|
|
20
|
+
*/
|
|
21
|
+
ACCESS_STORAGE = "access_storage",
|
|
22
|
+
/**
|
|
23
|
+
* 发布事件
|
|
24
|
+
*/
|
|
25
|
+
EMIT_EVENTS = "emit_events",
|
|
26
|
+
/**
|
|
27
|
+
* 订阅事件
|
|
28
|
+
*/
|
|
29
|
+
SUBSCRIBE_EVENTS = "subscribe_events"
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 插件沙箱配置
|
|
33
|
+
*/
|
|
34
|
+
export interface PluginSandboxConfig {
|
|
35
|
+
/**
|
|
36
|
+
* 插件名称
|
|
37
|
+
*/
|
|
38
|
+
name: string;
|
|
39
|
+
/**
|
|
40
|
+
* 允许的权限列表
|
|
41
|
+
*/
|
|
42
|
+
permissions?: PluginPermission[];
|
|
43
|
+
/**
|
|
44
|
+
* 允许访问的配置键(白名单)
|
|
45
|
+
*/
|
|
46
|
+
configWhitelist?: string[];
|
|
47
|
+
/**
|
|
48
|
+
* 允许访问的状态作用域(白名单)
|
|
49
|
+
*/
|
|
50
|
+
stateScopeWhitelist?: (string | symbol)[];
|
|
51
|
+
/**
|
|
52
|
+
* 是否启用严格模式(默认true)
|
|
53
|
+
*/
|
|
54
|
+
strictMode?: boolean;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* 插件沙箱
|
|
58
|
+
*/
|
|
59
|
+
export declare class PluginSandbox {
|
|
60
|
+
private config;
|
|
61
|
+
private permissions;
|
|
62
|
+
constructor(config: PluginSandboxConfig);
|
|
63
|
+
/**
|
|
64
|
+
* 检查权限
|
|
65
|
+
*
|
|
66
|
+
* @param permission - 权限
|
|
67
|
+
* @returns 是否有权限
|
|
68
|
+
*/
|
|
69
|
+
hasPermission(permission: PluginPermission): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* 检查是否可以访问配置键
|
|
72
|
+
*
|
|
73
|
+
* @param key - 配置键
|
|
74
|
+
* @returns 是否可以访问
|
|
75
|
+
*/
|
|
76
|
+
canAccessConfig(key: string): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* 检查是否可以访问状态作用域
|
|
79
|
+
*
|
|
80
|
+
* @param scope - 状态作用域
|
|
81
|
+
* @returns 是否可以访问
|
|
82
|
+
*/
|
|
83
|
+
canAccessStateScope(scope: string | symbol): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* 过滤配置(根据白名单)
|
|
86
|
+
*
|
|
87
|
+
* @param config - 完整配置
|
|
88
|
+
* @returns 过滤后的配置
|
|
89
|
+
*/
|
|
90
|
+
filterConfig(config: StartOptions): Partial<StartOptions>;
|
|
91
|
+
/**
|
|
92
|
+
* 获取沙箱配置
|
|
93
|
+
*/
|
|
94
|
+
getConfig(): PluginSandboxConfig;
|
|
95
|
+
/**
|
|
96
|
+
* 更新权限
|
|
97
|
+
*
|
|
98
|
+
* @param permissions - 权限列表
|
|
99
|
+
*/
|
|
100
|
+
updatePermissions(permissions: PluginPermission[]): void;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=PluginSandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PluginSandbox.d.ts","sourceRoot":"","sources":["../../../src/core/plugin/PluginSandbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C;;GAEG;AACH,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,aAAa,kBAAkB;IAE/B;;OAEG;IACH,oBAAoB,yBAAyB;IAE7C;;OAEG;IACH,cAAc,mBAAmB;IAEjC;;OAEG;IACH,WAAW,gBAAgB;IAE3B;;OAEG;IACH,gBAAgB,qBAAqB;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEjC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAE1C;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,WAAW,CAAwB;gBAE/B,MAAM,EAAE,mBAAmB;IAQvC;;;;;OAKG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,OAAO;IAQpD;;;;;OAKG;IACH,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAYrC;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;IAYpD;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAmBzD;;OAEG;IACH,SAAS,IAAI,mBAAmB;IAIhC;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,IAAI;CAIzD"}
|