@vlian/framework 1.2.57 → 1.2.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -3
- package/dist/analytics/index.cjs +1 -24
- package/dist/analytics/index.js +1 -3
- package/dist/analytics.umd.js +8 -208
- package/dist/components/LocaleSwitch.cjs +1 -118
- package/dist/components/LocaleSwitch.js +1 -103
- package/dist/components/ThemeSwitch.cjs +1 -117
- package/dist/components/ThemeSwitch.js +1 -102
- package/dist/components/index.cjs +1 -22
- package/dist/components/index.js +1 -4
- package/dist/components/persistence.cjs +1 -60
- package/dist/components/persistence.js +1 -39
- package/dist/core/Test.cjs +1 -66
- package/dist/core/Test.js +1 -15
- package/dist/core/app/AppContext.cjs +1 -350
- package/dist/core/app/AppContext.js +1 -339
- package/dist/core/app/AppContext.types.cjs +1 -6
- package/dist/core/app/AppContext.types.js +1 -5
- package/dist/core/app/BasicLayout.cjs +1 -124
- package/dist/core/app/BasicLayout.js +1 -74
- package/dist/core/app/DefaultApp.cjs +1 -152
- package/dist/core/app/DefaultApp.js +1 -143
- package/dist/core/app/index.cjs +1 -43
- package/dist/core/app/index.js +1 -7
- package/dist/core/config/AppConfig.cjs +1 -141
- package/dist/core/config/AppConfig.js +1 -133
- package/dist/core/config/ConfigLoader.cjs +1 -325
- package/dist/core/config/ConfigLoader.js +1 -311
- package/dist/core/config/ConfigValidator.cjs +2 -135
- package/dist/core/config/ConfigValidator.js +2 -121
- package/dist/core/config/index.cjs +1 -30
- package/dist/core/config/index.js +1 -7
- package/dist/core/dev/DevTools.cjs +1 -228
- package/dist/core/dev/DevTools.js +1 -210
- package/dist/core/error/ErrorBoundary.cjs +1 -403
- package/dist/core/error/ErrorBoundary.js +1 -399
- package/dist/core/error/ErrorHandler.cjs +1 -277
- package/dist/core/error/ErrorHandler.js +1 -261
- package/dist/core/error/index.cjs +1 -36
- package/dist/core/error/index.js +1 -6
- package/dist/core/event/AppEventBus.cjs +1 -446
- package/dist/core/event/AppEventBus.js +1 -438
- package/dist/core/event/frameworkEvents.cjs +1 -143
- package/dist/core/event/frameworkEvents.js +1 -135
- package/dist/core/event/hooks.cjs +1 -71
- package/dist/core/event/hooks.js +1 -95
- package/dist/core/event/index.cjs +1 -43
- package/dist/core/event/index.js +1 -10
- package/dist/core/event/types.cjs +1 -64
- package/dist/core/event/types.js +1 -56
- package/dist/core/event/useEventBus.cjs +1 -27
- package/dist/core/event/useEventBus.js +1 -39
- package/dist/core/index.cjs +1 -142
- package/dist/core/index.js +1 -69
- package/dist/core/initialization/InitializationErrorThrower.cjs +1 -77
- package/dist/core/initialization/InitializationErrorThrower.js +1 -30
- package/dist/core/initialization/index.cjs +1 -28
- package/dist/core/initialization/index.js +1 -7
- package/dist/core/initialization/initialization.cjs +1 -66
- package/dist/core/initialization/initialization.js +1 -78
- package/dist/core/initialization/initializationErrorState.cjs +1 -68
- package/dist/core/initialization/initializationErrorState.js +1 -60
- package/dist/core/kernel/defaultAdapters.cjs +1 -186
- package/dist/core/kernel/defaultAdapters.js +1 -176
- package/dist/core/kernel/errors.cjs +1 -71
- package/dist/core/kernel/errors.js +1 -53
- package/dist/core/kernel/index.cjs +1 -22
- package/dist/core/kernel/index.js +1 -4
- package/dist/core/kernel/startKernel.cjs +1 -202
- package/dist/core/kernel/startKernel.js +1 -192
- package/dist/core/kernel/types.cjs +1 -6
- package/dist/core/kernel/types.js +1 -3
- package/dist/core/middleware.cjs +1 -75
- package/dist/core/middleware.js +1 -61
- package/dist/core/plugin/PluginEventBus.cjs +1 -300
- package/dist/core/plugin/PluginEventBus.js +1 -286
- package/dist/core/plugin/PluginSandbox.cjs +1 -139
- package/dist/core/plugin/PluginSandbox.js +1 -125
- package/dist/core/plugin.cjs +1 -496
- package/dist/core/plugin.js +1 -438
- package/dist/core/router/RouterManager.cjs +1 -288
- package/dist/core/router/RouterManager.js +1 -272
- package/dist/core/router/adapter/AdapterManager.cjs +1 -237
- package/dist/core/router/adapter/AdapterManager.js +1 -221
- package/dist/core/router/adapter/index.cjs +1 -24
- package/dist/core/router/adapter/index.js +1 -7
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs +1 -130
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js +1 -116
- package/dist/core/router/adapter/react-router/index.cjs +1 -22
- package/dist/core/router/adapter/react-router/index.js +1 -5
- package/dist/core/router/adapter/types.cjs +1 -8
- package/dist/core/router/adapter/types.js +1 -7
- package/dist/core/router/dev/RouterDevTools.cjs +1 -262
- package/dist/core/router/dev/RouterDevTools.js +1 -211
- package/dist/core/router/dev/index.cjs +1 -22
- package/dist/core/router/dev/index.js +1 -5
- package/dist/core/router/dynamic/DynamicRouteManager.cjs +1 -195
- package/dist/core/router/dynamic/DynamicRouteManager.js +1 -179
- package/dist/core/router/dynamic/index.cjs +1 -22
- package/dist/core/router/dynamic/index.js +1 -5
- package/dist/core/router/errors/RouterError.cjs +1 -63
- package/dist/core/router/errors/RouterError.js +1 -48
- package/dist/core/router/errors/index.cjs +1 -22
- package/dist/core/router/errors/index.js +1 -5
- package/dist/core/router/index.cjs +1 -38
- package/dist/core/router/index.js +1 -32
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs +1 -146
- package/dist/core/router/lifecycle/RouterLifecycleManager.js +1 -130
- package/dist/core/router/lifecycle/index.cjs +1 -22
- package/dist/core/router/lifecycle/index.js +1 -5
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs +1 -195
- package/dist/core/router/middleware/RouterMiddlewareManager.js +1 -179
- package/dist/core/router/middleware/auth.cjs +1 -68
- package/dist/core/router/middleware/auth.js +1 -63
- package/dist/core/router/middleware/index.cjs +1 -24
- package/dist/core/router/middleware/index.js +1 -7
- package/dist/core/router/middleware/types.cjs +1 -8
- package/dist/core/router/middleware/types.js +1 -7
- package/dist/core/router/monitoring/RouterMonitoring.cjs +1 -229
- package/dist/core/router/monitoring/RouterMonitoring.js +1 -213
- package/dist/core/router/monitoring/index.cjs +1 -22
- package/dist/core/router/monitoring/index.js +1 -5
- package/dist/core/router/navigation/RouterNavigation.cjs +1 -241
- package/dist/core/router/navigation/RouterNavigation.js +1 -192
- package/dist/core/router/navigation/index.cjs +1 -22
- package/dist/core/router/navigation/index.js +1 -5
- package/dist/core/router/performance/RouteCache.cjs +1 -307
- package/dist/core/router/performance/RouteCache.js +1 -291
- package/dist/core/router/performance/RoutePreloader.cjs +1 -294
- package/dist/core/router/performance/RoutePreloader.js +1 -277
- package/dist/core/router/performance/index.cjs +1 -23
- package/dist/core/router/performance/index.js +1 -6
- package/dist/core/router/plugin/RouterPluginManager.cjs +1 -264
- package/dist/core/router/plugin/RouterPluginManager.js +1 -248
- package/dist/core/router/plugin/index.cjs +1 -23
- package/dist/core/router/plugin/index.js +1 -6
- package/dist/core/router/plugin/types.cjs +1 -41
- package/dist/core/router/plugin/types.js +1 -33
- package/dist/core/router/types.cjs +1 -6
- package/dist/core/router/types.js +1 -5
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +1 -131
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js +1 -121
- package/dist/core/router/utils/adapters/react-router/transform.cjs +1 -252
- package/dist/core/router/utils/adapters/react-router/transform.js +1 -242
- package/dist/core/router/utils/transform.cjs +1 -782
- package/dist/core/router/utils/transform.js +1 -791
- package/dist/core/router/validation/RouterConfigValidator.cjs +2 -85
- package/dist/core/router/validation/RouterConfigValidator.js +2 -77
- package/dist/core/router/validation/index.cjs +1 -23
- package/dist/core/router/validation/index.js +1 -6
- package/dist/core/router/validation/schema.cjs +1 -161
- package/dist/core/router/validation/schema.js +1 -151
- package/dist/core/router/version/RouteVersionManager.cjs +1 -207
- package/dist/core/router/version/RouteVersionManager.js +1 -191
- package/dist/core/router/version/index.cjs +1 -22
- package/dist/core/router/version/index.js +1 -5
- package/dist/core/splash/SplashScreen.cjs +1 -343
- package/dist/core/splash/SplashScreen.js +1 -293
- package/dist/core/splash/index.cjs +1 -24
- package/dist/core/splash/index.js +1 -6
- package/dist/core/splash/splashScreenUtils.cjs +1 -40
- package/dist/core/splash/splashScreenUtils.js +1 -30
- package/dist/core/startup/AppInstance.cjs +1 -241
- package/dist/core/startup/AppInstance.js +1 -226
- package/dist/core/startup/environment.cjs +1 -171
- package/dist/core/startup/environment.js +1 -154
- package/dist/core/startup/index.cjs +1 -25
- package/dist/core/startup/index.js +1 -8
- package/dist/core/startup/initializeServices.cjs +1 -228
- package/dist/core/startup/initializeServices.js +1 -188
- package/dist/core/startup/performanceTracker.cjs +1 -181
- package/dist/core/startup/performanceTracker.js +1 -167
- package/dist/core/startup/renderApp.cjs +1 -316
- package/dist/core/startup/renderApp.js +1 -267
- package/dist/core/startup/startApp.cjs +1 -319
- package/dist/core/startup/startApp.js +1 -315
- package/dist/core/types.cjs +1 -6
- package/dist/core/types.js +1 -5
- package/dist/index.cjs +1 -54
- package/dist/index.js +1 -11
- package/dist/index.umd.cjs +1 -29
- package/dist/index.umd.js +362 -13233
- package/dist/kernel/constants.cjs +1 -67
- package/dist/kernel/constants.js +1 -43
- package/dist/kernel/index.cjs +1 -40
- package/dist/kernel/index.js +1 -4
- package/dist/kernel/kernel.cjs +1 -297
- package/dist/kernel/kernel.js +1 -273
- package/dist/kernel/manager/cacheManager.cjs +1 -48
- package/dist/kernel/manager/cacheManager.js +1 -38
- package/dist/kernel/manager/i18n/I18nManager.cjs +1 -93
- package/dist/kernel/manager/i18n/I18nManager.js +1 -83
- package/dist/kernel/manager/i18n/i18n.persistence.cjs +1 -62
- package/dist/kernel/manager/i18n/i18n.persistence.js +1 -41
- package/dist/kernel/manager/i18n/i18n.schema.cjs +1 -88
- package/dist/kernel/manager/i18n/i18n.schema.js +1 -64
- package/dist/kernel/manager/i18n/index.cjs +1 -13
- package/dist/kernel/manager/i18n/index.js +1 -3
- package/dist/kernel/manager/i18nManager.cjs +1 -13
- package/dist/kernel/manager/i18nManager.js +1 -3
- package/dist/kernel/manager/index.cjs +1 -30
- package/dist/kernel/manager/index.js +1 -6
- package/dist/kernel/manager/logger/LoggerManager.cjs +1 -109
- package/dist/kernel/manager/logger/LoggerManager.js +1 -99
- package/dist/kernel/manager/logger/index.cjs +1 -13
- package/dist/kernel/manager/logger/index.js +1 -3
- package/dist/kernel/manager/logger/logger.persistence.cjs +1 -64
- package/dist/kernel/manager/logger/logger.persistence.js +1 -43
- package/dist/kernel/manager/logger/logger.schema.cjs +1 -76
- package/dist/kernel/manager/logger/logger.schema.js +1 -55
- package/dist/kernel/manager/loggerManager.cjs +1 -13
- package/dist/kernel/manager/loggerManager.js +1 -3
- package/dist/kernel/manager/theme/ThemeManager.cjs +1 -86
- package/dist/kernel/manager/theme/ThemeManager.js +1 -76
- package/dist/kernel/manager/theme/index.cjs +1 -13
- package/dist/kernel/manager/theme/index.js +1 -3
- package/dist/kernel/manager/theme/theme.dom.cjs +1 -63
- package/dist/kernel/manager/theme/theme.dom.js +1 -45
- package/dist/kernel/manager/theme/theme.persistence.cjs +1 -59
- package/dist/kernel/manager/theme/theme.persistence.js +1 -38
- package/dist/kernel/manager/theme/theme.schema.cjs +1 -124
- package/dist/kernel/manager/theme/theme.schema.js +1 -97
- package/dist/kernel/manager/themeManager.cjs +1 -13
- package/dist/kernel/manager/themeManager.js +1 -3
- package/dist/kernel/types.cjs +1 -6
- package/dist/kernel/types.js +1 -3
- package/dist/library/index.cjs +1 -21
- package/dist/library/index.js +1 -4
- package/dist/library/locale/index.cjs +1 -41
- package/dist/library/locale/index.js +1 -12
- package/dist/library/locale/langs/en-us/index.cjs +1 -34
- package/dist/library/locale/langs/en-us/index.js +1 -24
- package/dist/library/locale/langs/zh-cn/index.cjs +1 -34
- package/dist/library/locale/langs/zh-cn/index.js +1 -24
- package/dist/library/locale/types.cjs +1 -6
- package/dist/library/locale/types.js +1 -3
- package/dist/library/storage/cache.cjs +1 -245
- package/dist/library/storage/cache.js +1 -237
- package/dist/library/storage/encryption.cjs +1 -149
- package/dist/library/storage/encryption.js +1 -141
- package/dist/library/storage/index.cjs +1 -126
- package/dist/library/storage/index.js +1 -106
- package/dist/state/StateManager.cjs +1 -168
- package/dist/state/StateManager.js +1 -160
- package/dist/state/adapters/AdapterFactory.cjs +1 -91
- package/dist/state/adapters/AdapterFactory.js +1 -85
- package/dist/state/adapters/DefaultAdapter.cjs +1 -77
- package/dist/state/adapters/DefaultAdapter.js +1 -71
- package/dist/state/adapters/ReduxAdapter.cjs +1 -445
- package/dist/state/adapters/ReduxAdapter.js +1 -439
- package/dist/state/adapters/ZustandAdapter.cjs +1 -71
- package/dist/state/adapters/ZustandAdapter.js +1 -70
- package/dist/state/adapters/index.cjs +1 -46
- package/dist/state/adapters/index.js +1 -9
- package/dist/state/adapters/types.cjs +1 -22
- package/dist/state/adapters/types.js +1 -5
- package/dist/state/core/DerivedStateInstance.cjs +1 -176
- package/dist/state/core/DerivedStateInstance.js +1 -173
- package/dist/state/core/StateInstance.cjs +1 -172
- package/dist/state/core/StateInstance.js +1 -168
- package/dist/state/core/StateRegistry.cjs +1 -112
- package/dist/state/core/StateRegistry.js +1 -106
- package/dist/state/core/StateScope.cjs +1 -139
- package/dist/state/core/StateScope.js +1 -133
- package/dist/state/core/index.cjs +1 -32
- package/dist/state/core/index.js +1 -8
- package/dist/state/index.cjs +1 -32
- package/dist/state/index.js +1 -12
- package/dist/state/types.cjs +1 -14
- package/dist/state/types.js +1 -13
- package/dist/state.umd.js +22 -1395
- package/dist/types.cjs +1 -6
- package/dist/types.js +1 -3
- package/dist/utils/analytics.cjs +1 -219
- package/dist/utils/analytics.js +1 -204
- package/dist/utils/configSecurity.cjs +3 -184
- package/dist/utils/configSecurity.js +3 -176
- package/dist/utils/csrf.cjs +1 -20
- package/dist/utils/csrf.js +1 -3
- package/dist/utils/errors/ErrorCodes.cjs +1 -27
- package/dist/utils/errors/ErrorCodes.js +1 -3
- package/dist/utils/errors.cjs +1 -113
- package/dist/utils/errors.js +1 -18
- package/dist/utils/index.cjs +1 -137
- package/dist/utils/index.js +1 -48
- package/dist/utils/logger.cjs +1 -27
- package/dist/utils/logger.js +1 -3
- package/dist/utils/logger.types.cjs +1 -13
- package/dist/utils/logger.types.js +1 -3
- package/dist/utils/monitoring.cjs +1 -20
- package/dist/utils/monitoring.js +1 -3
- package/dist/utils/performance.cjs +1 -24
- package/dist/utils/performance.js +1 -3
- package/dist/utils/resourceLoader.cjs +1 -24
- package/dist/utils/resourceLoader.js +1 -3
- package/dist/utils/runtimeSecurity.cjs +1 -13
- package/dist/utils/runtimeSecurity.js +1 -3
- package/dist/utils/security.cjs +1 -21
- package/dist/utils/security.js +1 -3
- package/dist/utils/traceId.cjs +1 -39
- package/dist/utils/traceId.js +1 -3
- package/dist/utils/validation.cjs +1 -21
- package/dist/utils/validation.js +1 -3
- package/package.json +9 -6
- package/dist/analytics/index.cjs.map +0 -1
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics.umd.js.map +0 -1
- package/dist/components/LocaleSwitch.cjs.map +0 -1
- package/dist/components/LocaleSwitch.js.map +0 -1
- package/dist/components/ThemeSwitch.cjs.map +0 -1
- package/dist/components/ThemeSwitch.js.map +0 -1
- package/dist/components/index.cjs.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/persistence.cjs.map +0 -1
- package/dist/components/persistence.js.map +0 -1
- package/dist/core/Test.cjs.map +0 -1
- package/dist/core/Test.js.map +0 -1
- package/dist/core/app/AppContext.cjs.map +0 -1
- package/dist/core/app/AppContext.js.map +0 -1
- package/dist/core/app/AppContext.types.cjs.map +0 -1
- package/dist/core/app/AppContext.types.js.map +0 -1
- package/dist/core/app/BasicLayout.cjs.map +0 -1
- package/dist/core/app/BasicLayout.js.map +0 -1
- package/dist/core/app/DefaultApp.cjs.map +0 -1
- package/dist/core/app/DefaultApp.js.map +0 -1
- package/dist/core/app/index.cjs.map +0 -1
- package/dist/core/app/index.js.map +0 -1
- package/dist/core/config/AppConfig.cjs.map +0 -1
- package/dist/core/config/AppConfig.js.map +0 -1
- package/dist/core/config/ConfigLoader.cjs.map +0 -1
- package/dist/core/config/ConfigLoader.js.map +0 -1
- package/dist/core/config/ConfigValidator.cjs.map +0 -1
- package/dist/core/config/ConfigValidator.js.map +0 -1
- package/dist/core/config/index.cjs.map +0 -1
- package/dist/core/config/index.js.map +0 -1
- package/dist/core/dev/DevTools.cjs.map +0 -1
- package/dist/core/dev/DevTools.js.map +0 -1
- package/dist/core/error/ErrorBoundary.cjs.map +0 -1
- package/dist/core/error/ErrorBoundary.js.map +0 -1
- package/dist/core/error/ErrorHandler.cjs.map +0 -1
- package/dist/core/error/ErrorHandler.js.map +0 -1
- package/dist/core/error/index.cjs.map +0 -1
- package/dist/core/error/index.js.map +0 -1
- package/dist/core/event/AppEventBus.cjs.map +0 -1
- package/dist/core/event/AppEventBus.js.map +0 -1
- package/dist/core/event/frameworkEvents.cjs.map +0 -1
- package/dist/core/event/frameworkEvents.js.map +0 -1
- package/dist/core/event/hooks.cjs.map +0 -1
- package/dist/core/event/hooks.js.map +0 -1
- package/dist/core/event/index.cjs.map +0 -1
- package/dist/core/event/index.js.map +0 -1
- package/dist/core/event/types.cjs.map +0 -1
- package/dist/core/event/types.js.map +0 -1
- package/dist/core/event/useEventBus.cjs.map +0 -1
- package/dist/core/event/useEventBus.js.map +0 -1
- package/dist/core/index.cjs.map +0 -1
- package/dist/core/index.js.map +0 -1
- package/dist/core/initialization/InitializationErrorThrower.cjs.map +0 -1
- package/dist/core/initialization/InitializationErrorThrower.js.map +0 -1
- package/dist/core/initialization/index.cjs.map +0 -1
- package/dist/core/initialization/index.js.map +0 -1
- package/dist/core/initialization/initialization.cjs.map +0 -1
- package/dist/core/initialization/initialization.js.map +0 -1
- package/dist/core/initialization/initializationErrorState.cjs.map +0 -1
- package/dist/core/initialization/initializationErrorState.js.map +0 -1
- package/dist/core/kernel/defaultAdapters.cjs.map +0 -1
- package/dist/core/kernel/defaultAdapters.js.map +0 -1
- package/dist/core/kernel/errors.cjs.map +0 -1
- package/dist/core/kernel/errors.js.map +0 -1
- package/dist/core/kernel/index.cjs.map +0 -1
- package/dist/core/kernel/index.js.map +0 -1
- package/dist/core/kernel/startKernel.cjs.map +0 -1
- package/dist/core/kernel/startKernel.js.map +0 -1
- package/dist/core/kernel/types.cjs.map +0 -1
- package/dist/core/kernel/types.js.map +0 -1
- package/dist/core/middleware.cjs.map +0 -1
- package/dist/core/middleware.js.map +0 -1
- package/dist/core/plugin/PluginEventBus.cjs.map +0 -1
- package/dist/core/plugin/PluginEventBus.js.map +0 -1
- package/dist/core/plugin/PluginSandbox.cjs.map +0 -1
- package/dist/core/plugin/PluginSandbox.js.map +0 -1
- package/dist/core/plugin.cjs.map +0 -1
- package/dist/core/plugin.js.map +0 -1
- package/dist/core/router/RouterManager.cjs.map +0 -1
- package/dist/core/router/RouterManager.js.map +0 -1
- package/dist/core/router/adapter/AdapterManager.cjs.map +0 -1
- package/dist/core/router/adapter/AdapterManager.js.map +0 -1
- package/dist/core/router/adapter/index.cjs.map +0 -1
- package/dist/core/router/adapter/index.js.map +0 -1
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs.map +0 -1
- package/dist/core/router/adapter/react-router/ReactRouterAdapter.js.map +0 -1
- package/dist/core/router/adapter/react-router/index.cjs.map +0 -1
- package/dist/core/router/adapter/react-router/index.js.map +0 -1
- package/dist/core/router/adapter/types.cjs.map +0 -1
- package/dist/core/router/adapter/types.js.map +0 -1
- package/dist/core/router/dev/RouterDevTools.cjs.map +0 -1
- package/dist/core/router/dev/RouterDevTools.js.map +0 -1
- package/dist/core/router/dev/index.cjs.map +0 -1
- package/dist/core/router/dev/index.js.map +0 -1
- package/dist/core/router/dynamic/DynamicRouteManager.cjs.map +0 -1
- package/dist/core/router/dynamic/DynamicRouteManager.js.map +0 -1
- package/dist/core/router/dynamic/index.cjs.map +0 -1
- package/dist/core/router/dynamic/index.js.map +0 -1
- package/dist/core/router/errors/RouterError.cjs.map +0 -1
- package/dist/core/router/errors/RouterError.js.map +0 -1
- package/dist/core/router/errors/index.cjs.map +0 -1
- package/dist/core/router/errors/index.js.map +0 -1
- package/dist/core/router/index.cjs.map +0 -1
- package/dist/core/router/index.js.map +0 -1
- package/dist/core/router/lifecycle/RouterLifecycleManager.cjs.map +0 -1
- package/dist/core/router/lifecycle/RouterLifecycleManager.js.map +0 -1
- package/dist/core/router/lifecycle/index.cjs.map +0 -1
- package/dist/core/router/lifecycle/index.js.map +0 -1
- package/dist/core/router/middleware/RouterMiddlewareManager.cjs.map +0 -1
- package/dist/core/router/middleware/RouterMiddlewareManager.js.map +0 -1
- package/dist/core/router/middleware/auth.cjs.map +0 -1
- package/dist/core/router/middleware/auth.js.map +0 -1
- package/dist/core/router/middleware/index.cjs.map +0 -1
- package/dist/core/router/middleware/index.js.map +0 -1
- package/dist/core/router/middleware/types.cjs.map +0 -1
- package/dist/core/router/middleware/types.js.map +0 -1
- package/dist/core/router/monitoring/RouterMonitoring.cjs.map +0 -1
- package/dist/core/router/monitoring/RouterMonitoring.js.map +0 -1
- package/dist/core/router/monitoring/index.cjs.map +0 -1
- package/dist/core/router/monitoring/index.js.map +0 -1
- package/dist/core/router/navigation/RouterNavigation.cjs.map +0 -1
- package/dist/core/router/navigation/RouterNavigation.js.map +0 -1
- package/dist/core/router/navigation/index.cjs.map +0 -1
- package/dist/core/router/navigation/index.js.map +0 -1
- package/dist/core/router/performance/RouteCache.cjs.map +0 -1
- package/dist/core/router/performance/RouteCache.js.map +0 -1
- package/dist/core/router/performance/RoutePreloader.cjs.map +0 -1
- package/dist/core/router/performance/RoutePreloader.js.map +0 -1
- package/dist/core/router/performance/index.cjs.map +0 -1
- package/dist/core/router/performance/index.js.map +0 -1
- package/dist/core/router/plugin/RouterPluginManager.cjs.map +0 -1
- package/dist/core/router/plugin/RouterPluginManager.js.map +0 -1
- package/dist/core/router/plugin/index.cjs.map +0 -1
- package/dist/core/router/plugin/index.js.map +0 -1
- package/dist/core/router/plugin/types.cjs.map +0 -1
- package/dist/core/router/plugin/types.js.map +0 -1
- package/dist/core/router/types.cjs.map +0 -1
- package/dist/core/router/types.js.map +0 -1
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs.map +0 -1
- package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js.map +0 -1
- package/dist/core/router/utils/adapters/react-router/transform.cjs.map +0 -1
- package/dist/core/router/utils/adapters/react-router/transform.js.map +0 -1
- package/dist/core/router/utils/transform.cjs.map +0 -1
- package/dist/core/router/utils/transform.js.map +0 -1
- package/dist/core/router/validation/RouterConfigValidator.cjs.map +0 -1
- package/dist/core/router/validation/RouterConfigValidator.js.map +0 -1
- package/dist/core/router/validation/index.cjs.map +0 -1
- package/dist/core/router/validation/index.js.map +0 -1
- package/dist/core/router/validation/schema.cjs.map +0 -1
- package/dist/core/router/validation/schema.js.map +0 -1
- package/dist/core/router/version/RouteVersionManager.cjs.map +0 -1
- package/dist/core/router/version/RouteVersionManager.js.map +0 -1
- package/dist/core/router/version/index.cjs.map +0 -1
- package/dist/core/router/version/index.js.map +0 -1
- package/dist/core/splash/SplashScreen.cjs.map +0 -1
- package/dist/core/splash/SplashScreen.js.map +0 -1
- package/dist/core/splash/index.cjs.map +0 -1
- package/dist/core/splash/index.js.map +0 -1
- package/dist/core/splash/splashScreenUtils.cjs.map +0 -1
- package/dist/core/splash/splashScreenUtils.js.map +0 -1
- package/dist/core/startup/AppInstance.cjs.map +0 -1
- package/dist/core/startup/AppInstance.js.map +0 -1
- package/dist/core/startup/environment.cjs.map +0 -1
- package/dist/core/startup/environment.js.map +0 -1
- package/dist/core/startup/index.cjs.map +0 -1
- package/dist/core/startup/index.js.map +0 -1
- package/dist/core/startup/initializeServices.cjs.map +0 -1
- package/dist/core/startup/initializeServices.js.map +0 -1
- package/dist/core/startup/performanceTracker.cjs.map +0 -1
- package/dist/core/startup/performanceTracker.js.map +0 -1
- package/dist/core/startup/renderApp.cjs.map +0 -1
- package/dist/core/startup/renderApp.js.map +0 -1
- package/dist/core/startup/startApp.cjs.map +0 -1
- package/dist/core/startup/startApp.js.map +0 -1
- package/dist/core/types.cjs.map +0 -1
- package/dist/core/types.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.umd.cjs.map +0 -1
- package/dist/index.umd.js.map +0 -1
- package/dist/kernel/constants.cjs.map +0 -1
- package/dist/kernel/constants.js.map +0 -1
- package/dist/kernel/index.cjs.map +0 -1
- package/dist/kernel/index.js.map +0 -1
- package/dist/kernel/kernel.cjs.map +0 -1
- package/dist/kernel/kernel.js.map +0 -1
- package/dist/kernel/manager/cacheManager.cjs.map +0 -1
- package/dist/kernel/manager/cacheManager.js.map +0 -1
- package/dist/kernel/manager/i18n/I18nManager.cjs.map +0 -1
- package/dist/kernel/manager/i18n/I18nManager.js.map +0 -1
- package/dist/kernel/manager/i18n/i18n.persistence.cjs.map +0 -1
- package/dist/kernel/manager/i18n/i18n.persistence.js.map +0 -1
- package/dist/kernel/manager/i18n/i18n.schema.cjs.map +0 -1
- package/dist/kernel/manager/i18n/i18n.schema.js.map +0 -1
- package/dist/kernel/manager/i18n/index.cjs.map +0 -1
- package/dist/kernel/manager/i18n/index.js.map +0 -1
- package/dist/kernel/manager/i18nManager.cjs.map +0 -1
- package/dist/kernel/manager/i18nManager.js.map +0 -1
- package/dist/kernel/manager/index.cjs.map +0 -1
- package/dist/kernel/manager/index.js.map +0 -1
- package/dist/kernel/manager/logger/LoggerManager.cjs.map +0 -1
- package/dist/kernel/manager/logger/LoggerManager.js.map +0 -1
- package/dist/kernel/manager/logger/index.cjs.map +0 -1
- package/dist/kernel/manager/logger/index.js.map +0 -1
- package/dist/kernel/manager/logger/logger.persistence.cjs.map +0 -1
- package/dist/kernel/manager/logger/logger.persistence.js.map +0 -1
- package/dist/kernel/manager/logger/logger.schema.cjs.map +0 -1
- package/dist/kernel/manager/logger/logger.schema.js.map +0 -1
- package/dist/kernel/manager/loggerManager.cjs.map +0 -1
- package/dist/kernel/manager/loggerManager.js.map +0 -1
- package/dist/kernel/manager/persistence.cjs +0 -78
- package/dist/kernel/manager/persistence.cjs.map +0 -1
- package/dist/kernel/manager/persistence.d.ts +0 -3
- package/dist/kernel/manager/persistence.js +0 -60
- package/dist/kernel/manager/persistence.js.map +0 -1
- package/dist/kernel/manager/theme/ThemeManager.cjs.map +0 -1
- package/dist/kernel/manager/theme/ThemeManager.js.map +0 -1
- package/dist/kernel/manager/theme/index.cjs.map +0 -1
- package/dist/kernel/manager/theme/index.js.map +0 -1
- package/dist/kernel/manager/theme/theme.dom.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.dom.js.map +0 -1
- package/dist/kernel/manager/theme/theme.persistence.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.persistence.js.map +0 -1
- package/dist/kernel/manager/theme/theme.schema.cjs.map +0 -1
- package/dist/kernel/manager/theme/theme.schema.js.map +0 -1
- package/dist/kernel/manager/themeManager.cjs.map +0 -1
- package/dist/kernel/manager/themeManager.js.map +0 -1
- package/dist/kernel/types.cjs.map +0 -1
- package/dist/kernel/types.js.map +0 -1
- package/dist/library/index.cjs.map +0 -1
- package/dist/library/index.js.map +0 -1
- package/dist/library/locale/index.cjs.map +0 -1
- package/dist/library/locale/index.js.map +0 -1
- package/dist/library/locale/langs/en-us/index.cjs.map +0 -1
- package/dist/library/locale/langs/en-us/index.js.map +0 -1
- package/dist/library/locale/langs/zh-cn/index.cjs.map +0 -1
- package/dist/library/locale/langs/zh-cn/index.js.map +0 -1
- package/dist/library/locale/types.cjs.map +0 -1
- package/dist/library/locale/types.js.map +0 -1
- package/dist/library/storage/cache.cjs.map +0 -1
- package/dist/library/storage/cache.js.map +0 -1
- package/dist/library/storage/encryption.cjs.map +0 -1
- package/dist/library/storage/encryption.js.map +0 -1
- package/dist/library/storage/index.cjs.map +0 -1
- package/dist/library/storage/index.js.map +0 -1
- package/dist/request/adapter/RequestAdapter.d.ts +0 -85
- package/dist/request/adapter/RequestAdapter.js +0 -70
- package/dist/request/adapter/RequestAdapter.js.map +0 -1
- package/dist/request/adapter/axiosAdapter.d.ts +0 -10
- package/dist/request/adapter/axiosAdapter.js +0 -115
- package/dist/request/adapter/axiosAdapter.js.map +0 -1
- package/dist/request/adapter/fetchAdapter.d.ts +0 -10
- package/dist/request/adapter/fetchAdapter.js +0 -126
- package/dist/request/adapter/fetchAdapter.js.map +0 -1
- package/dist/request/adapter/index.d.ts +0 -9
- package/dist/request/adapter/index.js +0 -14
- package/dist/request/adapter/index.js.map +0 -1
- package/dist/request/adapter/kyAdapter.d.ts +0 -10
- package/dist/request/adapter/kyAdapter.js +0 -142
- package/dist/request/adapter/kyAdapter.js.map +0 -1
- package/dist/request/adapter/undiciAdapter.d.ts +0 -10
- package/dist/request/adapter/undiciAdapter.js +0 -164
- package/dist/request/adapter/undiciAdapter.js.map +0 -1
- package/dist/request/adapter.d.ts +0 -1
- package/dist/request/core/RequestClient.d.ts +0 -134
- package/dist/request/core/RequestClient.js +0 -509
- package/dist/request/core/RequestClient.js.map +0 -1
- package/dist/request/core/index.d.ts +0 -5
- package/dist/request/core/index.js +0 -5
- package/dist/request/core/index.js.map +0 -1
- package/dist/request/core.d.ts +0 -1
- package/dist/request/index.d.ts +0 -1
- package/dist/request/index.js +0 -50
- package/dist/request/index.js.map +0 -1
- package/dist/request/plugin/RequestPlugin.d.ts +0 -170
- package/dist/request/plugin/RequestPlugin.js +0 -203
- package/dist/request/plugin/RequestPlugin.js.map +0 -1
- package/dist/request/plugin/cache.d.ts +0 -33
- package/dist/request/plugin/cache.js +0 -264
- package/dist/request/plugin/cache.js.map +0 -1
- package/dist/request/plugin/csrfPlugin.d.ts +0 -21
- package/dist/request/plugin/csrfPlugin.js +0 -44
- package/dist/request/plugin/csrfPlugin.js.map +0 -1
- package/dist/request/plugin/index.d.ts +0 -11
- package/dist/request/plugin/index.js +0 -12
- package/dist/request/plugin/index.js.map +0 -1
- package/dist/request/plugin/monitoring.d.ts +0 -112
- package/dist/request/plugin/monitoring.js +0 -205
- package/dist/request/plugin/monitoring.js.map +0 -1
- package/dist/request/plugin/queue.d.ts +0 -91
- package/dist/request/plugin/queue.js +0 -156
- package/dist/request/plugin/queue.js.map +0 -1
- package/dist/request/plugin/retry.d.ts +0 -34
- package/dist/request/plugin/retry.js +0 -93
- package/dist/request/plugin/retry.js.map +0 -1
- package/dist/request/plugin/validation.d.ts +0 -26
- package/dist/request/plugin/validation.js +0 -116
- package/dist/request/plugin/validation.js.map +0 -1
- package/dist/request/plugin.d.ts +0 -1
- package/dist/request/runtime/RequestContext.d.ts +0 -50
- package/dist/request/runtime/RequestContext.js +0 -86
- package/dist/request/runtime/RequestContext.js.map +0 -1
- package/dist/request/runtime/index.d.ts +0 -4
- package/dist/request/runtime/index.js +0 -5
- package/dist/request/runtime/index.js.map +0 -1
- package/dist/request/runtime.d.ts +0 -1
- package/dist/request/types.d.ts +0 -1
- package/dist/request/types.js +0 -97
- package/dist/request/types.js.map +0 -1
- package/dist/request/utils/RequestQueueManager.d.ts +0 -74
- package/dist/request/utils/RequestQueueManager.js +0 -160
- package/dist/request/utils/RequestQueueManager.js.map +0 -1
- package/dist/request/utils/dependencyCheck.d.ts +0 -63
- package/dist/request/utils/dependencyCheck.js +0 -192
- package/dist/request/utils/dependencyCheck.js.map +0 -1
- package/dist/request/utils/index.d.ts +0 -5
- package/dist/request/utils/index.js +0 -6
- package/dist/request/utils/index.js.map +0 -1
- package/dist/request/utils.d.ts +0 -1
- package/dist/state/StateManager.cjs.map +0 -1
- package/dist/state/StateManager.js.map +0 -1
- package/dist/state/adapters/AdapterFactory.cjs.map +0 -1
- package/dist/state/adapters/AdapterFactory.js.map +0 -1
- package/dist/state/adapters/DefaultAdapter.cjs.map +0 -1
- package/dist/state/adapters/DefaultAdapter.js.map +0 -1
- package/dist/state/adapters/ReduxAdapter.cjs.map +0 -1
- package/dist/state/adapters/ReduxAdapter.js.map +0 -1
- package/dist/state/adapters/ZustandAdapter.cjs.map +0 -1
- package/dist/state/adapters/ZustandAdapter.js.map +0 -1
- package/dist/state/adapters/index.cjs.map +0 -1
- package/dist/state/adapters/index.js.map +0 -1
- package/dist/state/adapters/types.cjs.map +0 -1
- package/dist/state/adapters/types.js.map +0 -1
- package/dist/state/core/DerivedStateInstance.cjs.map +0 -1
- package/dist/state/core/DerivedStateInstance.js.map +0 -1
- package/dist/state/core/StateInstance.cjs.map +0 -1
- package/dist/state/core/StateInstance.js.map +0 -1
- package/dist/state/core/StateRegistry.cjs.map +0 -1
- package/dist/state/core/StateRegistry.js.map +0 -1
- package/dist/state/core/StateScope.cjs.map +0 -1
- package/dist/state/core/StateScope.js.map +0 -1
- package/dist/state/core/index.cjs.map +0 -1
- package/dist/state/core/index.js.map +0 -1
- package/dist/state/index.cjs.map +0 -1
- package/dist/state/index.js.map +0 -1
- package/dist/state/types.cjs.map +0 -1
- package/dist/state/types.js.map +0 -1
- package/dist/state.umd.js.map +0 -1
- package/dist/types.cjs.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils/analytics.cjs.map +0 -1
- package/dist/utils/analytics.js.map +0 -1
- package/dist/utils/configSecurity.cjs.map +0 -1
- package/dist/utils/configSecurity.js.map +0 -1
- package/dist/utils/csrf.cjs.map +0 -1
- package/dist/utils/csrf.js.map +0 -1
- package/dist/utils/errors/ErrorCodes.cjs.map +0 -1
- package/dist/utils/errors/ErrorCodes.js.map +0 -1
- package/dist/utils/errors.cjs.map +0 -1
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/index.cjs.map +0 -1
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/logger.cjs.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/logger.types.cjs.map +0 -1
- package/dist/utils/logger.types.js.map +0 -1
- package/dist/utils/monitoring.cjs.map +0 -1
- package/dist/utils/monitoring.js.map +0 -1
- package/dist/utils/performance.cjs.map +0 -1
- package/dist/utils/performance.js.map +0 -1
- package/dist/utils/resourceLoader.cjs.map +0 -1
- package/dist/utils/resourceLoader.js.map +0 -1
- package/dist/utils/runtimeSecurity.cjs.map +0 -1
- package/dist/utils/runtimeSecurity.js.map +0 -1
- package/dist/utils/security.cjs.map +0 -1
- package/dist/utils/security.js.map +0 -1
- package/dist/utils/traceId.cjs.map +0 -1
- package/dist/utils/traceId.js.map +0 -1
- package/dist/utils/validation.cjs.map +0 -1
- package/dist/utils/validation.js.map +0 -1
|
@@ -1,55 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
export function normalizeLogLevel(value, fallback) {
|
|
3
|
-
if (typeof value === 'number' && Number.isInteger(value)) {
|
|
4
|
-
switch(value){
|
|
5
|
-
case LogLevel.DEBUG:
|
|
6
|
-
case LogLevel.INFO:
|
|
7
|
-
case LogLevel.WARN:
|
|
8
|
-
case LogLevel.ERROR:
|
|
9
|
-
case LogLevel.NONE:
|
|
10
|
-
return value;
|
|
11
|
-
default:
|
|
12
|
-
return fallback;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
if (typeof value !== 'string') {
|
|
16
|
-
return fallback;
|
|
17
|
-
}
|
|
18
|
-
const normalized = value.trim();
|
|
19
|
-
if (!normalized) {
|
|
20
|
-
return fallback;
|
|
21
|
-
}
|
|
22
|
-
if (/^\d+$/.test(normalized)) {
|
|
23
|
-
return normalizeLogLevel(Number(normalized), fallback);
|
|
24
|
-
}
|
|
25
|
-
switch(normalized.toUpperCase()){
|
|
26
|
-
case 'DEBUG':
|
|
27
|
-
return LogLevel.DEBUG;
|
|
28
|
-
case 'INFO':
|
|
29
|
-
return LogLevel.INFO;
|
|
30
|
-
case 'WARN':
|
|
31
|
-
return LogLevel.WARN;
|
|
32
|
-
case 'ERROR':
|
|
33
|
-
return LogLevel.ERROR;
|
|
34
|
-
case 'NONE':
|
|
35
|
-
return LogLevel.NONE;
|
|
36
|
-
default:
|
|
37
|
-
return fallback;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
export function normalizeLoggerSnapshot(value, fallback) {
|
|
41
|
-
if (typeof value === 'number' || typeof value === 'string') {
|
|
42
|
-
return {
|
|
43
|
-
level: normalizeLogLevel(value, fallback.level)
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
const source = value && typeof value === 'object' ? value : {};
|
|
47
|
-
return {
|
|
48
|
-
level: normalizeLogLevel(source.level, fallback.level)
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
export function isLoggerEqual(left, right) {
|
|
52
|
-
return left.level === right.level;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
//# sourceMappingURL=logger.schema.js.map
|
|
1
|
+
import{LogLevel}from"@vlian/logger";export function normalizeLogLevel(value,fallback){if(typeof value==="number"&&Number.isInteger(value)){switch(value){case LogLevel.DEBUG:case LogLevel.INFO:case LogLevel.WARN:case LogLevel.ERROR:case LogLevel.NONE:return value;default:return fallback}}if(typeof value!=="string"){return fallback}const normalized=value.trim();if(!normalized){return fallback}if(/^\d+$/.test(normalized)){return normalizeLogLevel(Number(normalized),fallback)}switch(normalized.toUpperCase()){case"DEBUG":return LogLevel.DEBUG;case"INFO":return LogLevel.INFO;case"WARN":return LogLevel.WARN;case"ERROR":return LogLevel.ERROR;case"NONE":return LogLevel.NONE;default:return fallback}}export function normalizeLoggerSnapshot(value,fallback){if(typeof value==="number"||typeof value==="string"){return{level:normalizeLogLevel(value,fallback.level)}}const source=value&&typeof value==="object"?value:{};return{level:normalizeLogLevel(source.level,fallback.level)}}export function isLoggerEqual(left,right){return left.level===right.level}
|
|
@@ -1,13 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "LoggerManager", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _logger.LoggerManager;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _logger = require("./logger");
|
|
12
|
-
|
|
13
|
-
//# sourceMappingURL=loggerManager.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"LoggerManager",{enumerable:true,get:function(){return _logger.LoggerManager}});const _logger=require("./logger");
|
|
@@ -1,86 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "ThemeManager", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return ThemeManager;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _constants = require("../../constants");
|
|
12
|
-
const _themedom = require("./theme.dom");
|
|
13
|
-
const _themepersistence = require("./theme.persistence");
|
|
14
|
-
const _themeschema = require("./theme.schema");
|
|
15
|
-
function _define_property(obj, key, value) {
|
|
16
|
-
if (key in obj) {
|
|
17
|
-
Object.defineProperty(obj, key, {
|
|
18
|
-
value: value,
|
|
19
|
-
enumerable: true,
|
|
20
|
-
configurable: true,
|
|
21
|
-
writable: true
|
|
22
|
-
});
|
|
23
|
-
} else {
|
|
24
|
-
obj[key] = value;
|
|
25
|
-
}
|
|
26
|
-
return obj;
|
|
27
|
-
}
|
|
28
|
-
let ThemeManager = class ThemeManager {
|
|
29
|
-
async initialize(context) {
|
|
30
|
-
this.config = context.config.theme;
|
|
31
|
-
this.cacheManager = context.cacheManager;
|
|
32
|
-
const initialTheme = (0, _themeschema.normalizeTheme)(this.config.initial || {}, _constants.DEFAULT_THEME);
|
|
33
|
-
this.theme = await (0, _themepersistence.loadThemeFromCache)(this.cacheManager, this.config.persistence, initialTheme);
|
|
34
|
-
(0, _themedom.applyThemeToDocument)(this.theme);
|
|
35
|
-
this.initialized = true;
|
|
36
|
-
}
|
|
37
|
-
getTheme() {
|
|
38
|
-
return (0, _themeschema.cloneTheme)(this.theme);
|
|
39
|
-
}
|
|
40
|
-
getSnapshot() {
|
|
41
|
-
return this.getTheme();
|
|
42
|
-
}
|
|
43
|
-
subscribe(listener) {
|
|
44
|
-
this.listeners.add(listener);
|
|
45
|
-
return ()=>{
|
|
46
|
-
this.listeners.delete(listener);
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
async setTheme(nextTheme) {
|
|
50
|
-
this.ensureInitialized();
|
|
51
|
-
const prevTheme = this.theme;
|
|
52
|
-
const mergedTheme = (0, _themeschema.mergeTheme)(prevTheme, nextTheme);
|
|
53
|
-
if ((0, _themeschema.isThemeEqual)(prevTheme, mergedTheme)) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
this.theme = mergedTheme;
|
|
57
|
-
(0, _themedom.applyThemeToDocument)(this.theme, prevTheme);
|
|
58
|
-
if (this.cacheManager) {
|
|
59
|
-
await (0, _themepersistence.saveThemeToCache)(this.cacheManager, this.config.persistence, this.theme);
|
|
60
|
-
}
|
|
61
|
-
this.emit(this.theme, prevTheme);
|
|
62
|
-
}
|
|
63
|
-
ensureInitialized() {
|
|
64
|
-
if (!this.initialized) {
|
|
65
|
-
throw new Error('ThemeManager must be initialized before use.');
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
emit(next, prev) {
|
|
69
|
-
for (const listener of this.listeners){
|
|
70
|
-
try {
|
|
71
|
-
listener((0, _themeschema.cloneTheme)(next), (0, _themeschema.cloneTheme)(prev));
|
|
72
|
-
} catch {
|
|
73
|
-
// Keep notifying remaining listeners even if one fails.
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
constructor(){
|
|
78
|
-
_define_property(this, "theme", (0, _themeschema.cloneTheme)(_constants.DEFAULT_THEME));
|
|
79
|
-
_define_property(this, "config", _constants.DEFAULT_CONFIG.theme);
|
|
80
|
-
_define_property(this, "listeners", new Set());
|
|
81
|
-
_define_property(this, "cacheManager", null);
|
|
82
|
-
_define_property(this, "initialized", false);
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
//# sourceMappingURL=ThemeManager.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"ThemeManager",{enumerable:true,get:function(){return ThemeManager}});const _constants=require("../../constants");const _themedom=require("./theme.dom");const _themepersistence=require("./theme.persistence");const _themeschema=require("./theme.schema");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}let ThemeManager=class ThemeManager{async initialize(context){this.config=context.config.theme;this.cacheManager=context.cacheManager;const initialTheme=(0,_themeschema.normalizeTheme)(this.config.initial||{},_constants.DEFAULT_THEME);this.theme=await (0,_themepersistence.loadThemeFromCache)(this.cacheManager,this.config.persistence,initialTheme);(0,_themedom.applyThemeToDocument)(this.theme);this.initialized=true}getTheme(){return(0,_themeschema.cloneTheme)(this.theme)}getSnapshot(){return this.getTheme()}subscribe(listener){this.listeners.add(listener);return()=>{this.listeners.delete(listener)}}async setTheme(nextTheme){this.ensureInitialized();const prevTheme=this.theme;const mergedTheme=(0,_themeschema.mergeTheme)(prevTheme,nextTheme);if((0,_themeschema.isThemeEqual)(prevTheme,mergedTheme)){return}this.theme=mergedTheme;(0,_themedom.applyThemeToDocument)(this.theme,prevTheme);if(this.cacheManager){await (0,_themepersistence.saveThemeToCache)(this.cacheManager,this.config.persistence,this.theme)}this.emit(this.theme,prevTheme)}ensureInitialized(){if(!this.initialized){throw new Error("ThemeManager must be initialized before use.")}}emit(next,prev){for(const listener of this.listeners){try{listener((0,_themeschema.cloneTheme)(next),(0,_themeschema.cloneTheme)(prev))}catch{}}}constructor(){_define_property(this,"theme",(0,_themeschema.cloneTheme)(_constants.DEFAULT_THEME));_define_property(this,"config",_constants.DEFAULT_CONFIG.theme);_define_property(this,"listeners",new Set);_define_property(this,"cacheManager",null);_define_property(this,"initialized",false)}};
|
|
@@ -1,76 +1 @@
|
|
|
1
|
-
function _define_property(obj, key,
|
|
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
|
-
import { DEFAULT_CONFIG, DEFAULT_THEME } from "../../constants";
|
|
15
|
-
import { applyThemeToDocument } from "./theme.dom";
|
|
16
|
-
import { loadThemeFromCache, saveThemeToCache } from "./theme.persistence";
|
|
17
|
-
import { cloneTheme, isThemeEqual, mergeTheme, normalizeTheme } from "./theme.schema";
|
|
18
|
-
export class ThemeManager {
|
|
19
|
-
async initialize(context) {
|
|
20
|
-
this.config = context.config.theme;
|
|
21
|
-
this.cacheManager = context.cacheManager;
|
|
22
|
-
const initialTheme = normalizeTheme(this.config.initial || {}, DEFAULT_THEME);
|
|
23
|
-
this.theme = await loadThemeFromCache(this.cacheManager, this.config.persistence, initialTheme);
|
|
24
|
-
applyThemeToDocument(this.theme);
|
|
25
|
-
this.initialized = true;
|
|
26
|
-
}
|
|
27
|
-
getTheme() {
|
|
28
|
-
return cloneTheme(this.theme);
|
|
29
|
-
}
|
|
30
|
-
getSnapshot() {
|
|
31
|
-
return this.getTheme();
|
|
32
|
-
}
|
|
33
|
-
subscribe(listener) {
|
|
34
|
-
this.listeners.add(listener);
|
|
35
|
-
return ()=>{
|
|
36
|
-
this.listeners.delete(listener);
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
async setTheme(nextTheme) {
|
|
40
|
-
this.ensureInitialized();
|
|
41
|
-
const prevTheme = this.theme;
|
|
42
|
-
const mergedTheme = mergeTheme(prevTheme, nextTheme);
|
|
43
|
-
if (isThemeEqual(prevTheme, mergedTheme)) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
this.theme = mergedTheme;
|
|
47
|
-
applyThemeToDocument(this.theme, prevTheme);
|
|
48
|
-
if (this.cacheManager) {
|
|
49
|
-
await saveThemeToCache(this.cacheManager, this.config.persistence, this.theme);
|
|
50
|
-
}
|
|
51
|
-
this.emit(this.theme, prevTheme);
|
|
52
|
-
}
|
|
53
|
-
ensureInitialized() {
|
|
54
|
-
if (!this.initialized) {
|
|
55
|
-
throw new Error('ThemeManager must be initialized before use.');
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
emit(next, prev) {
|
|
59
|
-
for (const listener of this.listeners){
|
|
60
|
-
try {
|
|
61
|
-
listener(cloneTheme(next), cloneTheme(prev));
|
|
62
|
-
} catch {
|
|
63
|
-
// Keep notifying remaining listeners even if one fails.
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
constructor(){
|
|
68
|
-
_define_property(this, "theme", cloneTheme(DEFAULT_THEME));
|
|
69
|
-
_define_property(this, "config", DEFAULT_CONFIG.theme);
|
|
70
|
-
_define_property(this, "listeners", new Set());
|
|
71
|
-
_define_property(this, "cacheManager", null);
|
|
72
|
-
_define_property(this, "initialized", false);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
//# sourceMappingURL=ThemeManager.js.map
|
|
1
|
+
function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}import{DEFAULT_CONFIG,DEFAULT_THEME}from"../../constants";import{applyThemeToDocument}from"./theme.dom";import{loadThemeFromCache,saveThemeToCache}from"./theme.persistence";import{cloneTheme,isThemeEqual,mergeTheme,normalizeTheme}from"./theme.schema";export class ThemeManager{async initialize(context){this.config=context.config.theme;this.cacheManager=context.cacheManager;const initialTheme=normalizeTheme(this.config.initial||{},DEFAULT_THEME);this.theme=await loadThemeFromCache(this.cacheManager,this.config.persistence,initialTheme);applyThemeToDocument(this.theme);this.initialized=true}getTheme(){return cloneTheme(this.theme)}getSnapshot(){return this.getTheme()}subscribe(listener){this.listeners.add(listener);return()=>{this.listeners.delete(listener)}}async setTheme(nextTheme){this.ensureInitialized();const prevTheme=this.theme;const mergedTheme=mergeTheme(prevTheme,nextTheme);if(isThemeEqual(prevTheme,mergedTheme)){return}this.theme=mergedTheme;applyThemeToDocument(this.theme,prevTheme);if(this.cacheManager){await saveThemeToCache(this.cacheManager,this.config.persistence,this.theme)}this.emit(this.theme,prevTheme)}ensureInitialized(){if(!this.initialized){throw new Error("ThemeManager must be initialized before use.")}}emit(next,prev){for(const listener of this.listeners){try{listener(cloneTheme(next),cloneTheme(prev))}catch{}}}constructor(){_define_property(this,"theme",cloneTheme(DEFAULT_THEME));_define_property(this,"config",DEFAULT_CONFIG.theme);_define_property(this,"listeners",new Set);_define_property(this,"cacheManager",null);_define_property(this,"initialized",false)}}
|
|
@@ -1,13 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "ThemeManager", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _ThemeManager.ThemeManager;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _ThemeManager = require("./ThemeManager");
|
|
12
|
-
|
|
13
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"ThemeManager",{enumerable:true,get:function(){return _ThemeManager.ThemeManager}});const _ThemeManager=require("./ThemeManager");
|
|
@@ -1,63 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
get applyThemeToDocument () {
|
|
13
|
-
return applyThemeToDocument;
|
|
14
|
-
},
|
|
15
|
-
get resolveThemeMode () {
|
|
16
|
-
return resolveThemeMode;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
function canUseDom() {
|
|
20
|
-
return typeof document !== 'undefined';
|
|
21
|
-
}
|
|
22
|
-
function resolveThemeMode(theme) {
|
|
23
|
-
if (theme.mode !== 'system') {
|
|
24
|
-
return theme.mode;
|
|
25
|
-
}
|
|
26
|
-
if (typeof window !== 'undefined' && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
27
|
-
return 'dark';
|
|
28
|
-
}
|
|
29
|
-
return 'light';
|
|
30
|
-
}
|
|
31
|
-
function applyThemeToDocument(nextTheme, prevTheme) {
|
|
32
|
-
if (!canUseDom()) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
const root = document.documentElement;
|
|
36
|
-
const nextMode = resolveThemeMode(nextTheme);
|
|
37
|
-
const prevMode = prevTheme ? resolveThemeMode(prevTheme) : undefined;
|
|
38
|
-
if (!prevMode || prevMode !== nextMode) {
|
|
39
|
-
root.classList.remove('light', 'dark');
|
|
40
|
-
root.classList.add(nextMode);
|
|
41
|
-
}
|
|
42
|
-
if (!prevTheme || prevTheme.primaryColor !== nextTheme.primaryColor) {
|
|
43
|
-
if (nextTheme.primaryColor) {
|
|
44
|
-
root.style.setProperty('--app-primary-color', nextTheme.primaryColor);
|
|
45
|
-
} else {
|
|
46
|
-
root.style.removeProperty('--app-primary-color');
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
const prevTokens = prevTheme?.tokens || {};
|
|
50
|
-
const nextTokens = nextTheme.tokens || {};
|
|
51
|
-
for (const token of Object.keys(prevTokens)){
|
|
52
|
-
if (!(token in nextTokens)) {
|
|
53
|
-
root.style.removeProperty(`--${token}`);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
for (const [token, value] of Object.entries(nextTokens)){
|
|
57
|
-
if (!prevTheme || prevTokens[token] !== value) {
|
|
58
|
-
root.style.setProperty(`--${token}`, String(value));
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
//# sourceMappingURL=theme.dom.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get applyThemeToDocument(){return applyThemeToDocument},get resolveThemeMode(){return resolveThemeMode}});function canUseDom(){return typeof document!=="undefined"}function resolveThemeMode(theme){if(theme.mode!=="system"){return theme.mode}if(typeof window!=="undefined"&&window.matchMedia("(prefers-color-scheme: dark)").matches){return"dark"}return"light"}function applyThemeToDocument(nextTheme,prevTheme){if(!canUseDom()){return}const root=document.documentElement;const nextMode=resolveThemeMode(nextTheme);const prevMode=prevTheme?resolveThemeMode(prevTheme):undefined;if(!prevMode||prevMode!==nextMode){root.classList.remove("light","dark");root.classList.add(nextMode)}if(!prevTheme||prevTheme.primaryColor!==nextTheme.primaryColor){if(nextTheme.primaryColor){root.style.setProperty("--app-primary-color",nextTheme.primaryColor)}else{root.style.removeProperty("--app-primary-color")}}const prevTokens=prevTheme?.tokens||{};const nextTokens=nextTheme.tokens||{};for(const token of Object.keys(prevTokens)){if(!(token in nextTokens)){root.style.removeProperty(`--${token}`)}}for(const[token,value]of Object.entries(nextTokens)){if(!prevTheme||prevTokens[token]!==value){root.style.setProperty(`--${token}`,String(value))}}}
|
|
@@ -1,45 +1 @@
|
|
|
1
|
-
function canUseDom() {
|
|
2
|
-
return typeof document !== 'undefined';
|
|
3
|
-
}
|
|
4
|
-
export function resolveThemeMode(theme) {
|
|
5
|
-
if (theme.mode !== 'system') {
|
|
6
|
-
return theme.mode;
|
|
7
|
-
}
|
|
8
|
-
if (typeof window !== 'undefined' && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
9
|
-
return 'dark';
|
|
10
|
-
}
|
|
11
|
-
return 'light';
|
|
12
|
-
}
|
|
13
|
-
export function applyThemeToDocument(nextTheme, prevTheme) {
|
|
14
|
-
if (!canUseDom()) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
const root = document.documentElement;
|
|
18
|
-
const nextMode = resolveThemeMode(nextTheme);
|
|
19
|
-
const prevMode = prevTheme ? resolveThemeMode(prevTheme) : undefined;
|
|
20
|
-
if (!prevMode || prevMode !== nextMode) {
|
|
21
|
-
root.classList.remove('light', 'dark');
|
|
22
|
-
root.classList.add(nextMode);
|
|
23
|
-
}
|
|
24
|
-
if (!prevTheme || prevTheme.primaryColor !== nextTheme.primaryColor) {
|
|
25
|
-
if (nextTheme.primaryColor) {
|
|
26
|
-
root.style.setProperty('--app-primary-color', nextTheme.primaryColor);
|
|
27
|
-
} else {
|
|
28
|
-
root.style.removeProperty('--app-primary-color');
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
const prevTokens = prevTheme?.tokens || {};
|
|
32
|
-
const nextTokens = nextTheme.tokens || {};
|
|
33
|
-
for (const token of Object.keys(prevTokens)){
|
|
34
|
-
if (!(token in nextTokens)) {
|
|
35
|
-
root.style.removeProperty(`--${token}`);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
for (const [token, value] of Object.entries(nextTokens)){
|
|
39
|
-
if (!prevTheme || prevTokens[token] !== value) {
|
|
40
|
-
root.style.setProperty(`--${token}`, String(value));
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=theme.dom.js.map
|
|
1
|
+
function canUseDom(){return typeof document!=="undefined"}export function resolveThemeMode(theme){if(theme.mode!=="system"){return theme.mode}if(typeof window!=="undefined"&&window.matchMedia("(prefers-color-scheme: dark)").matches){return"dark"}return"light"}export function applyThemeToDocument(nextTheme,prevTheme){if(!canUseDom()){return}const root=document.documentElement;const nextMode=resolveThemeMode(nextTheme);const prevMode=prevTheme?resolveThemeMode(prevTheme):undefined;if(!prevMode||prevMode!==nextMode){root.classList.remove("light","dark");root.classList.add(nextMode)}if(!prevTheme||prevTheme.primaryColor!==nextTheme.primaryColor){if(nextTheme.primaryColor){root.style.setProperty("--app-primary-color",nextTheme.primaryColor)}else{root.style.removeProperty("--app-primary-color")}}const prevTokens=prevTheme?.tokens||{};const nextTokens=nextTheme.tokens||{};for(const token of Object.keys(prevTokens)){if(!(token in nextTokens)){root.style.removeProperty(`--${token}`)}}for(const[token,value]of Object.entries(nextTokens)){if(!prevTheme||prevTokens[token]!==value){root.style.setProperty(`--${token}`,String(value))}}}
|
|
@@ -1,59 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
get DEFAULT_THEME_CACHE_KEY () {
|
|
13
|
-
return DEFAULT_THEME_CACHE_KEY;
|
|
14
|
-
},
|
|
15
|
-
get loadThemeFromCache () {
|
|
16
|
-
return loadThemeFromCache;
|
|
17
|
-
},
|
|
18
|
-
get saveThemeToCache () {
|
|
19
|
-
return saveThemeToCache;
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
const _themeschema = require("./theme.schema");
|
|
23
|
-
const DEFAULT_THEME_CACHE_KEY = 'vlian:kernel:theme';
|
|
24
|
-
function resolvePersistenceContext(persistence) {
|
|
25
|
-
if (persistence?.enabled !== true) {
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
return {
|
|
29
|
-
key: persistence.key || DEFAULT_THEME_CACHE_KEY
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
async function loadThemeFromCache(cacheManager, persistence, fallback) {
|
|
33
|
-
const persistenceContext = resolvePersistenceContext(persistence);
|
|
34
|
-
const safeFallback = (0, _themeschema.cloneTheme)(fallback);
|
|
35
|
-
if (!persistenceContext) {
|
|
36
|
-
return safeFallback;
|
|
37
|
-
}
|
|
38
|
-
try {
|
|
39
|
-
const cached = await cacheManager.get(persistenceContext.key, {
|
|
40
|
-
defaultValue: safeFallback
|
|
41
|
-
});
|
|
42
|
-
return (0, _themeschema.normalizeTheme)(cached, safeFallback);
|
|
43
|
-
} catch {
|
|
44
|
-
return safeFallback;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
async function saveThemeToCache(cacheManager, persistence, theme) {
|
|
48
|
-
const persistenceContext = resolvePersistenceContext(persistence);
|
|
49
|
-
if (!persistenceContext) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
try {
|
|
53
|
-
await cacheManager.set(persistenceContext.key, (0, _themeschema.cloneTheme)(theme));
|
|
54
|
-
} catch {
|
|
55
|
-
// Ignore persistence failures and keep theme updates in memory.
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
//# sourceMappingURL=theme.persistence.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get DEFAULT_THEME_CACHE_KEY(){return DEFAULT_THEME_CACHE_KEY},get loadThemeFromCache(){return loadThemeFromCache},get saveThemeToCache(){return saveThemeToCache}});const _themeschema=require("./theme.schema");const DEFAULT_THEME_CACHE_KEY="vlian:kernel:theme";function resolvePersistenceContext(persistence){if(persistence?.enabled!==true){return null}return{key:persistence.key||DEFAULT_THEME_CACHE_KEY}}async function loadThemeFromCache(cacheManager,persistence,fallback){const persistenceContext=resolvePersistenceContext(persistence);const safeFallback=(0,_themeschema.cloneTheme)(fallback);if(!persistenceContext){return safeFallback}try{const cached=await cacheManager.get(persistenceContext.key,{defaultValue:safeFallback});return(0,_themeschema.normalizeTheme)(cached,safeFallback)}catch{return safeFallback}}async function saveThemeToCache(cacheManager,persistence,theme){const persistenceContext=resolvePersistenceContext(persistence);if(!persistenceContext){return}try{await cacheManager.set(persistenceContext.key,(0,_themeschema.cloneTheme)(theme))}catch{}}
|
|
@@ -1,38 +1 @@
|
|
|
1
|
-
import { cloneTheme, normalizeTheme }
|
|
2
|
-
export const DEFAULT_THEME_CACHE_KEY = 'vlian:kernel:theme';
|
|
3
|
-
function resolvePersistenceContext(persistence) {
|
|
4
|
-
if (persistence?.enabled !== true) {
|
|
5
|
-
return null;
|
|
6
|
-
}
|
|
7
|
-
return {
|
|
8
|
-
key: persistence.key || DEFAULT_THEME_CACHE_KEY
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
export async function loadThemeFromCache(cacheManager, persistence, fallback) {
|
|
12
|
-
const persistenceContext = resolvePersistenceContext(persistence);
|
|
13
|
-
const safeFallback = cloneTheme(fallback);
|
|
14
|
-
if (!persistenceContext) {
|
|
15
|
-
return safeFallback;
|
|
16
|
-
}
|
|
17
|
-
try {
|
|
18
|
-
const cached = await cacheManager.get(persistenceContext.key, {
|
|
19
|
-
defaultValue: safeFallback
|
|
20
|
-
});
|
|
21
|
-
return normalizeTheme(cached, safeFallback);
|
|
22
|
-
} catch {
|
|
23
|
-
return safeFallback;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
export async function saveThemeToCache(cacheManager, persistence, theme) {
|
|
27
|
-
const persistenceContext = resolvePersistenceContext(persistence);
|
|
28
|
-
if (!persistenceContext) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
try {
|
|
32
|
-
await cacheManager.set(persistenceContext.key, cloneTheme(theme));
|
|
33
|
-
} catch {
|
|
34
|
-
// Ignore persistence failures and keep theme updates in memory.
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
//# sourceMappingURL=theme.persistence.js.map
|
|
1
|
+
import{cloneTheme,normalizeTheme}from"./theme.schema";export const DEFAULT_THEME_CACHE_KEY="vlian:kernel:theme";function resolvePersistenceContext(persistence){if(persistence?.enabled!==true){return null}return{key:persistence.key||DEFAULT_THEME_CACHE_KEY}}export async function loadThemeFromCache(cacheManager,persistence,fallback){const persistenceContext=resolvePersistenceContext(persistence);const safeFallback=cloneTheme(fallback);if(!persistenceContext){return safeFallback}try{const cached=await cacheManager.get(persistenceContext.key,{defaultValue:safeFallback});return normalizeTheme(cached,safeFallback)}catch{return safeFallback}}export async function saveThemeToCache(cacheManager,persistence,theme){const persistenceContext=resolvePersistenceContext(persistence);if(!persistenceContext){return}try{await cacheManager.set(persistenceContext.key,cloneTheme(theme))}catch{}}
|
|
@@ -1,124 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
get cloneTheme () {
|
|
13
|
-
return cloneTheme;
|
|
14
|
-
},
|
|
15
|
-
get isThemeEqual () {
|
|
16
|
-
return isThemeEqual;
|
|
17
|
-
},
|
|
18
|
-
get mergeTheme () {
|
|
19
|
-
return mergeTheme;
|
|
20
|
-
},
|
|
21
|
-
get normalizeTheme () {
|
|
22
|
-
return normalizeTheme;
|
|
23
|
-
},
|
|
24
|
-
get sanitizeTokens () {
|
|
25
|
-
return sanitizeTokens;
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
const VALID_THEME_MODES = new Set([
|
|
29
|
-
'light',
|
|
30
|
-
'dark',
|
|
31
|
-
'system'
|
|
32
|
-
]);
|
|
33
|
-
const TOKEN_NAME_PATTERN = /^[A-Za-z_][A-Za-z0-9_-]*$/;
|
|
34
|
-
function isPlainObject(value) {
|
|
35
|
-
return Object.prototype.toString.call(value) === '[object Object]';
|
|
36
|
-
}
|
|
37
|
-
function hasOwnProperty(value, key) {
|
|
38
|
-
return Object.prototype.hasOwnProperty.call(value, key);
|
|
39
|
-
}
|
|
40
|
-
function cloneTheme(theme) {
|
|
41
|
-
return {
|
|
42
|
-
...theme,
|
|
43
|
-
...theme.tokens ? {
|
|
44
|
-
tokens: {
|
|
45
|
-
...theme.tokens
|
|
46
|
-
}
|
|
47
|
-
} : {}
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
function sanitizeTokens(tokens) {
|
|
51
|
-
if (!isPlainObject(tokens)) {
|
|
52
|
-
return undefined;
|
|
53
|
-
}
|
|
54
|
-
const sanitizedTokens = {};
|
|
55
|
-
for (const [token, tokenValue] of Object.entries(tokens)){
|
|
56
|
-
if (!TOKEN_NAME_PATTERN.test(token)) {
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
if (typeof tokenValue === 'string' || typeof tokenValue === 'number') {
|
|
60
|
-
sanitizedTokens[token] = tokenValue;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return Object.keys(sanitizedTokens).length > 0 ? sanitizedTokens : undefined;
|
|
64
|
-
}
|
|
65
|
-
function normalizeTheme(value, fallback) {
|
|
66
|
-
const source = isPlainObject(value) ? value : {};
|
|
67
|
-
const mode = VALID_THEME_MODES.has(source.mode) ? source.mode : fallback.mode;
|
|
68
|
-
const primaryColor = typeof source.primaryColor === 'string' && source.primaryColor.trim() ? source.primaryColor : fallback.primaryColor;
|
|
69
|
-
const fallbackTokens = sanitizeTokens(fallback.tokens);
|
|
70
|
-
const incomingTokens = sanitizeTokens(source.tokens);
|
|
71
|
-
return {
|
|
72
|
-
mode,
|
|
73
|
-
...primaryColor ? {
|
|
74
|
-
primaryColor
|
|
75
|
-
} : {},
|
|
76
|
-
...incomingTokens || fallbackTokens ? {
|
|
77
|
-
tokens: {
|
|
78
|
-
...fallbackTokens || {},
|
|
79
|
-
...incomingTokens || {}
|
|
80
|
-
}
|
|
81
|
-
} : {}
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
function mergeTheme(current, next) {
|
|
85
|
-
const mergedTheme = {
|
|
86
|
-
mode: hasOwnProperty(next, 'mode') && VALID_THEME_MODES.has(next.mode) ? next.mode : current.mode,
|
|
87
|
-
...hasOwnProperty(next, 'primaryColor') ? typeof next.primaryColor === 'string' && next.primaryColor.trim() ? {
|
|
88
|
-
primaryColor: next.primaryColor
|
|
89
|
-
} : {} : current.primaryColor ? {
|
|
90
|
-
primaryColor: current.primaryColor
|
|
91
|
-
} : {},
|
|
92
|
-
...hasOwnProperty(next, 'tokens') ? sanitizeTokens(next.tokens) ? {
|
|
93
|
-
tokens: sanitizeTokens(next.tokens)
|
|
94
|
-
} : {} : current.tokens ? {
|
|
95
|
-
tokens: {
|
|
96
|
-
...current.tokens
|
|
97
|
-
}
|
|
98
|
-
} : {}
|
|
99
|
-
};
|
|
100
|
-
return normalizeTheme(mergedTheme, DEFAULT_EMPTY_THEME);
|
|
101
|
-
}
|
|
102
|
-
const DEFAULT_EMPTY_THEME = {
|
|
103
|
-
mode: 'light'
|
|
104
|
-
};
|
|
105
|
-
function isThemeEqual(left, right) {
|
|
106
|
-
if (left.mode !== right.mode || left.primaryColor !== right.primaryColor) {
|
|
107
|
-
return false;
|
|
108
|
-
}
|
|
109
|
-
const leftTokens = left.tokens || {};
|
|
110
|
-
const rightTokens = right.tokens || {};
|
|
111
|
-
const leftKeys = Object.keys(leftTokens);
|
|
112
|
-
const rightKeys = Object.keys(rightTokens);
|
|
113
|
-
if (leftKeys.length !== rightKeys.length) {
|
|
114
|
-
return false;
|
|
115
|
-
}
|
|
116
|
-
for (const key of leftKeys){
|
|
117
|
-
if (leftTokens[key] !== rightTokens[key]) {
|
|
118
|
-
return false;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
return true;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
//# sourceMappingURL=theme.schema.js.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get cloneTheme(){return cloneTheme},get isThemeEqual(){return isThemeEqual},get mergeTheme(){return mergeTheme},get normalizeTheme(){return normalizeTheme},get sanitizeTokens(){return sanitizeTokens}});const VALID_THEME_MODES=new Set(["light","dark","system"]);const TOKEN_NAME_PATTERN=/^[A-Za-z_][A-Za-z0-9_-]*$/;function isPlainObject(value){return Object.prototype.toString.call(value)==="[object Object]"}function hasOwnProperty(value,key){return Object.prototype.hasOwnProperty.call(value,key)}function cloneTheme(theme){return{...theme,...theme.tokens?{tokens:{...theme.tokens}}:{}}}function sanitizeTokens(tokens){if(!isPlainObject(tokens)){return undefined}const sanitizedTokens={};for(const[token,tokenValue]of Object.entries(tokens)){if(!TOKEN_NAME_PATTERN.test(token)){continue}if(typeof tokenValue==="string"||typeof tokenValue==="number"){sanitizedTokens[token]=tokenValue}}return Object.keys(sanitizedTokens).length>0?sanitizedTokens:undefined}function normalizeTheme(value,fallback){const source=isPlainObject(value)?value:{};const mode=VALID_THEME_MODES.has(source.mode)?source.mode:fallback.mode;const primaryColor=typeof source.primaryColor==="string"&&source.primaryColor.trim()?source.primaryColor:fallback.primaryColor;const fallbackTokens=sanitizeTokens(fallback.tokens);const incomingTokens=sanitizeTokens(source.tokens);return{mode,...primaryColor?{primaryColor}:{},...incomingTokens||fallbackTokens?{tokens:{...fallbackTokens||{},...incomingTokens||{}}}:{}}}function mergeTheme(current,next){const mergedTheme={mode:hasOwnProperty(next,"mode")&&VALID_THEME_MODES.has(next.mode)?next.mode:current.mode,...hasOwnProperty(next,"primaryColor")?typeof next.primaryColor==="string"&&next.primaryColor.trim()?{primaryColor:next.primaryColor}:{}:current.primaryColor?{primaryColor:current.primaryColor}:{},...hasOwnProperty(next,"tokens")?sanitizeTokens(next.tokens)?{tokens:sanitizeTokens(next.tokens)}:{}:current.tokens?{tokens:{...current.tokens}}:{}};return normalizeTheme(mergedTheme,DEFAULT_EMPTY_THEME)}const DEFAULT_EMPTY_THEME={mode:"light"};function isThemeEqual(left,right){if(left.mode!==right.mode||left.primaryColor!==right.primaryColor){return false}const leftTokens=left.tokens||{};const rightTokens=right.tokens||{};const leftKeys=Object.keys(leftTokens);const rightKeys=Object.keys(rightTokens);if(leftKeys.length!==rightKeys.length){return false}for(const key of leftKeys){if(leftTokens[key]!==rightTokens[key]){return false}}return true}
|