@vlian/framework 1.2.59 → 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.
Files changed (154) hide show
  1. package/dist/analytics/index.cjs +1 -22
  2. package/dist/analytics.umd.js +1 -1
  3. package/dist/components/LocaleSwitch.cjs +1 -116
  4. package/dist/components/ThemeSwitch.cjs +1 -115
  5. package/dist/components/index.cjs +1 -20
  6. package/dist/components/persistence.cjs +1 -58
  7. package/dist/core/Test.cjs +1 -64
  8. package/dist/core/app/AppContext.cjs +1 -348
  9. package/dist/core/app/AppContext.types.cjs +1 -4
  10. package/dist/core/app/BasicLayout.cjs +1 -122
  11. package/dist/core/app/DefaultApp.cjs +1 -150
  12. package/dist/core/app/index.cjs +1 -41
  13. package/dist/core/config/AppConfig.cjs +1 -139
  14. package/dist/core/config/ConfigLoader.cjs +1 -323
  15. package/dist/core/config/ConfigValidator.cjs +2 -133
  16. package/dist/core/config/index.cjs +1 -28
  17. package/dist/core/dev/DevTools.cjs +1 -226
  18. package/dist/core/error/ErrorBoundary.cjs +1 -401
  19. package/dist/core/error/ErrorHandler.cjs +1 -275
  20. package/dist/core/error/index.cjs +1 -34
  21. package/dist/core/event/AppEventBus.cjs +1 -444
  22. package/dist/core/event/frameworkEvents.cjs +1 -141
  23. package/dist/core/event/hooks.cjs +1 -69
  24. package/dist/core/event/index.cjs +1 -41
  25. package/dist/core/event/types.cjs +1 -62
  26. package/dist/core/event/useEventBus.cjs +1 -25
  27. package/dist/core/index.cjs +1 -140
  28. package/dist/core/initialization/InitializationErrorThrower.cjs +1 -75
  29. package/dist/core/initialization/index.cjs +1 -26
  30. package/dist/core/initialization/initialization.cjs +1 -64
  31. package/dist/core/initialization/initializationErrorState.cjs +1 -66
  32. package/dist/core/kernel/defaultAdapters.cjs +1 -184
  33. package/dist/core/kernel/errors.cjs +1 -69
  34. package/dist/core/kernel/index.cjs +1 -20
  35. package/dist/core/kernel/startKernel.cjs +1 -200
  36. package/dist/core/kernel/types.cjs +1 -4
  37. package/dist/core/middleware.cjs +1 -73
  38. package/dist/core/plugin/PluginEventBus.cjs +1 -298
  39. package/dist/core/plugin/PluginSandbox.cjs +1 -137
  40. package/dist/core/plugin.cjs +1 -494
  41. package/dist/core/router/RouterManager.cjs +1 -286
  42. package/dist/core/router/adapter/AdapterManager.cjs +1 -235
  43. package/dist/core/router/adapter/index.cjs +1 -22
  44. package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs +1 -128
  45. package/dist/core/router/adapter/react-router/index.cjs +1 -20
  46. package/dist/core/router/adapter/types.cjs +1 -6
  47. package/dist/core/router/dev/RouterDevTools.cjs +1 -260
  48. package/dist/core/router/dev/index.cjs +1 -20
  49. package/dist/core/router/dynamic/DynamicRouteManager.cjs +1 -193
  50. package/dist/core/router/dynamic/index.cjs +1 -20
  51. package/dist/core/router/errors/RouterError.cjs +1 -61
  52. package/dist/core/router/errors/index.cjs +1 -20
  53. package/dist/core/router/index.cjs +1 -36
  54. package/dist/core/router/lifecycle/RouterLifecycleManager.cjs +1 -144
  55. package/dist/core/router/lifecycle/index.cjs +1 -20
  56. package/dist/core/router/middleware/RouterMiddlewareManager.cjs +1 -193
  57. package/dist/core/router/middleware/auth.cjs +1 -66
  58. package/dist/core/router/middleware/index.cjs +1 -22
  59. package/dist/core/router/middleware/types.cjs +1 -6
  60. package/dist/core/router/monitoring/RouterMonitoring.cjs +1 -227
  61. package/dist/core/router/monitoring/index.cjs +1 -20
  62. package/dist/core/router/navigation/RouterNavigation.cjs +1 -239
  63. package/dist/core/router/navigation/index.cjs +1 -20
  64. package/dist/core/router/performance/RouteCache.cjs +1 -305
  65. package/dist/core/router/performance/RoutePreloader.cjs +1 -292
  66. package/dist/core/router/performance/index.cjs +1 -21
  67. package/dist/core/router/plugin/RouterPluginManager.cjs +1 -262
  68. package/dist/core/router/plugin/index.cjs +1 -21
  69. package/dist/core/router/plugin/types.cjs +1 -39
  70. package/dist/core/router/types.cjs +1 -4
  71. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +1 -129
  72. package/dist/core/router/utils/adapters/react-router/transform.cjs +1 -250
  73. package/dist/core/router/utils/transform.cjs +1 -780
  74. package/dist/core/router/validation/RouterConfigValidator.cjs +2 -83
  75. package/dist/core/router/validation/index.cjs +1 -21
  76. package/dist/core/router/validation/schema.cjs +1 -159
  77. package/dist/core/router/version/RouteVersionManager.cjs +1 -205
  78. package/dist/core/router/version/index.cjs +1 -20
  79. package/dist/core/splash/SplashScreen.cjs +1 -341
  80. package/dist/core/splash/index.cjs +1 -22
  81. package/dist/core/splash/splashScreenUtils.cjs +1 -38
  82. package/dist/core/startup/AppInstance.cjs +1 -239
  83. package/dist/core/startup/environment.cjs +1 -169
  84. package/dist/core/startup/index.cjs +1 -23
  85. package/dist/core/startup/initializeServices.cjs +1 -226
  86. package/dist/core/startup/performanceTracker.cjs +1 -179
  87. package/dist/core/startup/renderApp.cjs +1 -314
  88. package/dist/core/startup/startApp.cjs +1 -317
  89. package/dist/core/types.cjs +1 -4
  90. package/dist/index.cjs +1 -52
  91. package/dist/index.umd.cjs +1 -27
  92. package/dist/index.umd.js +1 -1
  93. package/dist/kernel/constants.cjs +1 -65
  94. package/dist/kernel/index.cjs +1 -38
  95. package/dist/kernel/kernel.cjs +1 -295
  96. package/dist/kernel/manager/cacheManager.cjs +1 -46
  97. package/dist/kernel/manager/i18n/I18nManager.cjs +1 -91
  98. package/dist/kernel/manager/i18n/i18n.persistence.cjs +1 -60
  99. package/dist/kernel/manager/i18n/i18n.schema.cjs +1 -86
  100. package/dist/kernel/manager/i18n/index.cjs +1 -11
  101. package/dist/kernel/manager/i18nManager.cjs +1 -11
  102. package/dist/kernel/manager/index.cjs +1 -28
  103. package/dist/kernel/manager/logger/LoggerManager.cjs +1 -107
  104. package/dist/kernel/manager/logger/index.cjs +1 -11
  105. package/dist/kernel/manager/logger/logger.persistence.cjs +1 -62
  106. package/dist/kernel/manager/logger/logger.schema.cjs +1 -74
  107. package/dist/kernel/manager/loggerManager.cjs +1 -11
  108. package/dist/kernel/manager/theme/ThemeManager.cjs +1 -84
  109. package/dist/kernel/manager/theme/index.cjs +1 -11
  110. package/dist/kernel/manager/theme/theme.dom.cjs +1 -61
  111. package/dist/kernel/manager/theme/theme.persistence.cjs +1 -57
  112. package/dist/kernel/manager/theme/theme.schema.cjs +1 -122
  113. package/dist/kernel/manager/themeManager.cjs +1 -11
  114. package/dist/kernel/types.cjs +1 -4
  115. package/dist/library/index.cjs +1 -19
  116. package/dist/library/locale/index.cjs +1 -39
  117. package/dist/library/locale/langs/en-us/index.cjs +1 -32
  118. package/dist/library/locale/langs/zh-cn/index.cjs +1 -32
  119. package/dist/library/locale/types.cjs +1 -4
  120. package/dist/library/storage/cache.cjs +1 -243
  121. package/dist/library/storage/encryption.cjs +1 -147
  122. package/dist/library/storage/index.cjs +1 -124
  123. package/dist/state/StateManager.cjs +1 -166
  124. package/dist/state/adapters/AdapterFactory.cjs +1 -89
  125. package/dist/state/adapters/DefaultAdapter.cjs +1 -75
  126. package/dist/state/adapters/ReduxAdapter.cjs +1 -443
  127. package/dist/state/adapters/ZustandAdapter.cjs +1 -69
  128. package/dist/state/adapters/index.cjs +1 -44
  129. package/dist/state/adapters/types.cjs +1 -20
  130. package/dist/state/core/DerivedStateInstance.cjs +1 -174
  131. package/dist/state/core/StateInstance.cjs +1 -170
  132. package/dist/state/core/StateRegistry.cjs +1 -110
  133. package/dist/state/core/StateScope.cjs +1 -137
  134. package/dist/state/core/index.cjs +1 -30
  135. package/dist/state/index.cjs +1 -30
  136. package/dist/state/types.cjs +1 -12
  137. package/dist/state.umd.js +1 -1
  138. package/dist/types.cjs +1 -4
  139. package/dist/utils/analytics.cjs +1 -217
  140. package/dist/utils/configSecurity.cjs +3 -182
  141. package/dist/utils/csrf.cjs +1 -18
  142. package/dist/utils/errors/ErrorCodes.cjs +1 -25
  143. package/dist/utils/errors.cjs +1 -111
  144. package/dist/utils/index.cjs +1 -135
  145. package/dist/utils/logger.cjs +1 -25
  146. package/dist/utils/logger.types.cjs +1 -11
  147. package/dist/utils/monitoring.cjs +1 -18
  148. package/dist/utils/performance.cjs +1 -22
  149. package/dist/utils/resourceLoader.cjs +1 -22
  150. package/dist/utils/runtimeSecurity.cjs +1 -11
  151. package/dist/utils/security.cjs +1 -19
  152. package/dist/utils/traceId.cjs +1 -37
  153. package/dist/utils/validation.cjs +1 -19
  154. package/package.json +7 -3
@@ -1,22 +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 AnalyticsService () {
13
- return _analytics.AnalyticsService;
14
- },
15
- get getAnalytics () {
16
- return _analytics.getAnalytics;
17
- },
18
- get initAnalytics () {
19
- return _analytics.initAnalytics;
20
- }
21
- });
22
- const _analytics = require("../utils/analytics");
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 AnalyticsService(){return _analytics.AnalyticsService},get getAnalytics(){return _analytics.getAnalytics},get initAnalytics(){return _analytics.initAnalytics}});const _analytics=require("../utils/analytics");
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @vlian/framework v1.2.58
2
+ * @vlian/framework v1.2.59
3
3
  * Secra Framework - 一个现代化的低代码框架
4
4
  * (c) 2026 Secra Framework Contributors
5
5
  * Licensed under Apache-2.0
@@ -1,116 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "LocaleSwitch", {
6
- enumerable: true,
7
- get: function() {
8
- return LocaleSwitch;
9
- }
10
- });
11
- const _jsxruntime = require("react/jsx-runtime");
12
- const _react = /*#__PURE__*/ _interop_require_default(require("react"));
13
- const _core = require("../core");
14
- const _persistence = require("./persistence");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- const DEFAULT_LOCALE_STORAGE_KEY = 'vlian:locale';
21
- const DEFAULT_LOCALES = [
22
- 'zh-CN',
23
- 'en-US'
24
- ];
25
- const DEFAULT_PERSISTENCE = {
26
- enabled: true
27
- };
28
- const DEFAULT_LABELS = {
29
- 'zh-CN': '中文',
30
- 'en-US': 'English'
31
- };
32
- function isLocale(value) {
33
- return value === 'zh-CN' || value === 'en-US';
34
- }
35
- const LocaleSwitch = ({ locales = DEFAULT_LOCALES, labels = DEFAULT_LABELS, persistence, className, style, onChange, render })=>{
36
- const { locale, setLocale, isChanging } = (0, _core.useLocale)();
37
- const persistenceOptions = persistence || DEFAULT_PERSISTENCE;
38
- const hydratedRef = _react.default.useRef(false);
39
- const lastWrittenLocaleRef = _react.default.useRef(undefined);
40
- const mergedLabels = _react.default.useMemo(()=>({
41
- ...DEFAULT_LABELS,
42
- ...labels
43
- }), [
44
- labels
45
- ]);
46
- _react.default.useEffect(()=>{
47
- if (hydratedRef.current) {
48
- return;
49
- }
50
- hydratedRef.current = true;
51
- const persistedLocale = (0, _persistence.readPersistedValue)(persistenceOptions, DEFAULT_LOCALE_STORAGE_KEY);
52
- if (!persistedLocale || !isLocale(persistedLocale) || !locales.includes(persistedLocale)) {
53
- return;
54
- }
55
- if (persistedLocale !== locale) {
56
- setLocale(persistedLocale);
57
- }
58
- }, [
59
- locale,
60
- locales,
61
- persistenceOptions,
62
- setLocale
63
- ]);
64
- _react.default.useEffect(()=>{
65
- if (lastWrittenLocaleRef.current === locale) {
66
- return;
67
- }
68
- (0, _persistence.writePersistedValue)(locale, persistenceOptions, DEFAULT_LOCALE_STORAGE_KEY);
69
- lastWrittenLocaleRef.current = locale;
70
- }, [
71
- locale,
72
- persistenceOptions
73
- ]);
74
- const handleSetLocale = _react.default.useCallback((nextLocale)=>{
75
- if (nextLocale === locale) {
76
- return;
77
- }
78
- setLocale(nextLocale);
79
- onChange?.(nextLocale);
80
- }, [
81
- locale,
82
- onChange,
83
- setLocale
84
- ]);
85
- if (render) {
86
- return render({
87
- locale,
88
- isChanging: Boolean(isChanging),
89
- setLocale: handleSetLocale,
90
- locales,
91
- labels: mergedLabels
92
- });
93
- }
94
- return /*#__PURE__*/ (0, _jsxruntime.jsxs)("label", {
95
- className: className,
96
- style: style,
97
- children: [
98
- /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
99
- style: {
100
- display: 'none'
101
- },
102
- children: "Language Switch"
103
- }),
104
- /*#__PURE__*/ (0, _jsxruntime.jsx)("select", {
105
- "aria-label": "Language Switch",
106
- value: locale,
107
- onChange: (event)=>handleSetLocale(event.target.value),
108
- disabled: Boolean(isChanging),
109
- children: locales.map((item)=>/*#__PURE__*/ (0, _jsxruntime.jsx)("option", {
110
- value: item,
111
- children: mergedLabels[item]
112
- }, item))
113
- })
114
- ]
115
- });
116
- };
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"LocaleSwitch",{enumerable:true,get:function(){return LocaleSwitch}});const _jsxruntime=require("react/jsx-runtime");const _react=/*#__PURE__*/_interop_require_default(require("react"));const _core=require("../core");const _persistence=require("./persistence");function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}const DEFAULT_LOCALE_STORAGE_KEY="vlian:locale";const DEFAULT_LOCALES=["zh-CN","en-US"];const DEFAULT_PERSISTENCE={enabled:true};const DEFAULT_LABELS={"zh-CN":"中文","en-US":"English"};function isLocale(value){return value==="zh-CN"||value==="en-US"}const LocaleSwitch=({locales=DEFAULT_LOCALES,labels=DEFAULT_LABELS,persistence,className,style,onChange,render})=>{const{locale,setLocale,isChanging}=(0,_core.useLocale)();const persistenceOptions=persistence||DEFAULT_PERSISTENCE;const hydratedRef=_react.default.useRef(false);const lastWrittenLocaleRef=_react.default.useRef(undefined);const mergedLabels=_react.default.useMemo(()=>({...DEFAULT_LABELS,...labels}),[labels]);_react.default.useEffect(()=>{if(hydratedRef.current){return}hydratedRef.current=true;const persistedLocale=(0,_persistence.readPersistedValue)(persistenceOptions,DEFAULT_LOCALE_STORAGE_KEY);if(!persistedLocale||!isLocale(persistedLocale)||!locales.includes(persistedLocale)){return}if(persistedLocale!==locale){setLocale(persistedLocale)}},[locale,locales,persistenceOptions,setLocale]);_react.default.useEffect(()=>{if(lastWrittenLocaleRef.current===locale){return}(0,_persistence.writePersistedValue)(locale,persistenceOptions,DEFAULT_LOCALE_STORAGE_KEY);lastWrittenLocaleRef.current=locale},[locale,persistenceOptions]);const handleSetLocale=_react.default.useCallback(nextLocale=>{if(nextLocale===locale){return}setLocale(nextLocale);onChange?.(nextLocale)},[locale,onChange,setLocale]);if(render){return render({locale,isChanging:Boolean(isChanging),setLocale:handleSetLocale,locales,labels:mergedLabels})}return(0,_jsxruntime.jsxs)("label",{className:className,style:style,children:[(0,_jsxruntime.jsx)("span",{style:{display:"none"},children:"Language Switch"}),(0,_jsxruntime.jsx)("select",{"aria-label":"Language Switch",value:locale,onChange:event=>handleSetLocale(event.target.value),disabled:Boolean(isChanging),children:locales.map(item=>(0,_jsxruntime.jsx)("option",{value:item,children:mergedLabels[item]},item))})]})};
@@ -1,115 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "ThemeSwitch", {
6
- enumerable: true,
7
- get: function() {
8
- return ThemeSwitch;
9
- }
10
- });
11
- const _jsxruntime = require("react/jsx-runtime");
12
- const _react = /*#__PURE__*/ _interop_require_default(require("react"));
13
- const _core = require("../core");
14
- const _persistence = require("./persistence");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- const DEFAULT_THEME_STORAGE_KEY = 'vlian:theme-mode';
21
- const DEFAULT_MODES = [
22
- 'light',
23
- 'dark',
24
- 'system'
25
- ];
26
- const DEFAULT_PERSISTENCE = {
27
- enabled: true
28
- };
29
- const DEFAULT_LABELS = {
30
- light: '浅色',
31
- dark: '深色',
32
- system: '跟随系统'
33
- };
34
- function isThemeMode(value) {
35
- return value === 'light' || value === 'dark' || value === 'system';
36
- }
37
- const ThemeSwitch = ({ modes = DEFAULT_MODES, labels = DEFAULT_LABELS, persistence, className, style, onChange, render })=>{
38
- const { theme, setTheme } = (0, _core.useTheme)();
39
- const persistenceOptions = persistence || DEFAULT_PERSISTENCE;
40
- const hydratedRef = _react.default.useRef(false);
41
- const lastWrittenModeRef = _react.default.useRef(undefined);
42
- const mergedLabels = _react.default.useMemo(()=>({
43
- ...DEFAULT_LABELS,
44
- ...labels
45
- }), [
46
- labels
47
- ]);
48
- _react.default.useEffect(()=>{
49
- if (hydratedRef.current) {
50
- return;
51
- }
52
- hydratedRef.current = true;
53
- const persistedMode = (0, _persistence.readPersistedValue)(persistenceOptions, DEFAULT_THEME_STORAGE_KEY);
54
- if (!persistedMode || !isThemeMode(persistedMode) || !modes.includes(persistedMode)) {
55
- return;
56
- }
57
- if (persistedMode !== theme.mode) {
58
- setTheme((prev)=>({
59
- ...prev,
60
- mode: persistedMode
61
- }));
62
- }
63
- }, [
64
- modes,
65
- persistenceOptions,
66
- setTheme,
67
- theme.mode
68
- ]);
69
- _react.default.useEffect(()=>{
70
- const mode = theme.mode;
71
- if (!mode || lastWrittenModeRef.current === mode) {
72
- return;
73
- }
74
- (0, _persistence.writePersistedValue)(mode, persistenceOptions, DEFAULT_THEME_STORAGE_KEY);
75
- lastWrittenModeRef.current = mode;
76
- }, [
77
- persistenceOptions,
78
- theme.mode
79
- ]);
80
- const currentMode = theme.mode || 'light';
81
- const setMode = _react.default.useCallback((mode)=>{
82
- if (mode === currentMode) {
83
- return;
84
- }
85
- setTheme((prev)=>({
86
- ...prev,
87
- mode
88
- }));
89
- onChange?.(mode);
90
- }, [
91
- currentMode,
92
- onChange,
93
- setTheme
94
- ]);
95
- if (render) {
96
- return render({
97
- mode: currentMode,
98
- setMode,
99
- modes,
100
- labels: mergedLabels
101
- });
102
- }
103
- return /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
104
- className: className,
105
- style: style,
106
- role: "group",
107
- "aria-label": "Theme Switch",
108
- children: modes.map((mode)=>/*#__PURE__*/ (0, _jsxruntime.jsx)("button", {
109
- type: "button",
110
- onClick: ()=>setMode(mode),
111
- "aria-pressed": currentMode === mode,
112
- children: mergedLabels[mode]
113
- }, mode))
114
- });
115
- };
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"ThemeSwitch",{enumerable:true,get:function(){return ThemeSwitch}});const _jsxruntime=require("react/jsx-runtime");const _react=/*#__PURE__*/_interop_require_default(require("react"));const _core=require("../core");const _persistence=require("./persistence");function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}const DEFAULT_THEME_STORAGE_KEY="vlian:theme-mode";const DEFAULT_MODES=["light","dark","system"];const DEFAULT_PERSISTENCE={enabled:true};const DEFAULT_LABELS={light:"浅色",dark:"深色",system:"跟随系统"};function isThemeMode(value){return value==="light"||value==="dark"||value==="system"}const ThemeSwitch=({modes=DEFAULT_MODES,labels=DEFAULT_LABELS,persistence,className,style,onChange,render})=>{const{theme,setTheme}=(0,_core.useTheme)();const persistenceOptions=persistence||DEFAULT_PERSISTENCE;const hydratedRef=_react.default.useRef(false);const lastWrittenModeRef=_react.default.useRef(undefined);const mergedLabels=_react.default.useMemo(()=>({...DEFAULT_LABELS,...labels}),[labels]);_react.default.useEffect(()=>{if(hydratedRef.current){return}hydratedRef.current=true;const persistedMode=(0,_persistence.readPersistedValue)(persistenceOptions,DEFAULT_THEME_STORAGE_KEY);if(!persistedMode||!isThemeMode(persistedMode)||!modes.includes(persistedMode)){return}if(persistedMode!==theme.mode){setTheme(prev=>({...prev,mode:persistedMode}))}},[modes,persistenceOptions,setTheme,theme.mode]);_react.default.useEffect(()=>{const mode=theme.mode;if(!mode||lastWrittenModeRef.current===mode){return}(0,_persistence.writePersistedValue)(mode,persistenceOptions,DEFAULT_THEME_STORAGE_KEY);lastWrittenModeRef.current=mode},[persistenceOptions,theme.mode]);const currentMode=theme.mode||"light";const setMode=_react.default.useCallback(mode=>{if(mode===currentMode){return}setTheme(prev=>({...prev,mode}));onChange?.(mode)},[currentMode,onChange,setTheme]);if(render){return render({mode:currentMode,setMode,modes,labels:mergedLabels})}return(0,_jsxruntime.jsx)("div",{className:className,style:style,role:"group","aria-label":"Theme Switch",children:modes.map(mode=>(0,_jsxruntime.jsx)("button",{type:"button",onClick:()=>setMode(mode),"aria-pressed":currentMode===mode,children:mergedLabels[mode]},mode))})};
@@ -1,20 +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 LocaleSwitch () {
13
- return _LocaleSwitch.LocaleSwitch;
14
- },
15
- get ThemeSwitch () {
16
- return _ThemeSwitch.ThemeSwitch;
17
- }
18
- });
19
- const _ThemeSwitch = require("./ThemeSwitch");
20
- const _LocaleSwitch = require("./LocaleSwitch");
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 LocaleSwitch(){return _LocaleSwitch.LocaleSwitch},get ThemeSwitch(){return _ThemeSwitch.ThemeSwitch}});const _ThemeSwitch=require("./ThemeSwitch");const _LocaleSwitch=require("./LocaleSwitch");
@@ -1,58 +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 readPersistedValue () {
13
- return readPersistedValue;
14
- },
15
- get resolveStorage () {
16
- return resolveStorage;
17
- },
18
- get writePersistedValue () {
19
- return writePersistedValue;
20
- }
21
- });
22
- function resolveStorage(storage) {
23
- if (storage) {
24
- return storage;
25
- }
26
- if (typeof window === 'undefined' || !window.localStorage) {
27
- return null;
28
- }
29
- return window.localStorage;
30
- }
31
- function readPersistedValue(options, defaultKey) {
32
- if (options.enabled === false) {
33
- return null;
34
- }
35
- const targetStorage = resolveStorage(options.storage);
36
- if (!targetStorage) {
37
- return null;
38
- }
39
- try {
40
- return targetStorage.getItem(options.key || defaultKey);
41
- } catch {
42
- return null;
43
- }
44
- }
45
- function writePersistedValue(value, options, defaultKey) {
46
- if (options.enabled === false || !value) {
47
- return;
48
- }
49
- const targetStorage = resolveStorage(options.storage);
50
- if (!targetStorage) {
51
- return;
52
- }
53
- try {
54
- targetStorage.setItem(options.key || defaultKey, value);
55
- } catch {
56
- // Ignore storage write failures (private mode / quota / disabled storage).
57
- }
58
- }
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 readPersistedValue(){return readPersistedValue},get resolveStorage(){return resolveStorage},get writePersistedValue(){return writePersistedValue}});function resolveStorage(storage){if(storage){return storage}if(typeof window==="undefined"||!window.localStorage){return null}return window.localStorage}function readPersistedValue(options,defaultKey){if(options.enabled===false){return null}const targetStorage=resolveStorage(options.storage);if(!targetStorage){return null}try{return targetStorage.getItem(options.key||defaultKey)}catch{return null}}function writePersistedValue(value,options,defaultKey){if(options.enabled===false||!value){return}const targetStorage=resolveStorage(options.storage);if(!targetStorage){return}try{targetStorage.setItem(options.key||defaultKey,value)}catch{}}
@@ -1,64 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- const _jsxruntime = require("react/jsx-runtime");
12
- const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
13
- const _logger = require("@vlian/logger");
14
- function _getRequireWildcardCache(nodeInterop) {
15
- if (typeof WeakMap !== "function") return null;
16
- var cacheBabelInterop = new WeakMap();
17
- var cacheNodeInterop = new WeakMap();
18
- return (_getRequireWildcardCache = function(nodeInterop) {
19
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
20
- })(nodeInterop);
21
- }
22
- function _interop_require_wildcard(obj, nodeInterop) {
23
- if (!nodeInterop && obj && obj.__esModule) {
24
- return obj;
25
- }
26
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
27
- return {
28
- default: obj
29
- };
30
- }
31
- var cache = _getRequireWildcardCache(nodeInterop);
32
- if (cache && cache.has(obj)) {
33
- return cache.get(obj);
34
- }
35
- var newObj = {
36
- __proto__: null
37
- };
38
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
39
- for(var key in obj){
40
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
41
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
42
- if (desc && (desc.get || desc.set)) {
43
- Object.defineProperty(newObj, key, desc);
44
- } else {
45
- newObj[key] = obj[key];
46
- }
47
- }
48
- }
49
- newObj.default = obj;
50
- if (cache) {
51
- cache.set(obj, newObj);
52
- }
53
- return newObj;
54
- }
55
- const App = ({ onComplete })=>{
56
- (0, _react.useEffect)(()=>{
57
- _logger.logger.info('App mounted');
58
- onComplete();
59
- }, []);
60
- return /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
61
- children: "App"
62
- });
63
- };
64
- const _default = App;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});const _jsxruntime=require("react/jsx-runtime");const _react=/*#__PURE__*/_interop_require_wildcard(require("react"));const _logger=require("@vlian/logger");function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interop_require_wildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={__proto__:null};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}const App=({onComplete})=>{(0,_react.useEffect)(()=>{_logger.logger.info("App mounted");onComplete()},[]);return(0,_jsxruntime.jsx)("div",{children:"App"})};const _default=App;