@vlian/framework 1.2.39 → 1.2.41

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.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @vlian/framework v1.2.38
2
+ * @vlian/framework v1.2.40
3
3
  * Secra Framework - 一个现代化的低代码框架
4
4
  * (c) 2026 Secra Framework Contributors
5
5
  * Licensed under Apache-2.0
package/dist/index.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @vlian/framework v1.2.38
2
+ * @vlian/framework v1.2.40
3
3
  * Secra Framework - 一个现代化的低代码框架
4
4
  * (c) 2026 Secra Framework Contributors
5
5
  * Licensed under Apache-2.0
@@ -12321,10 +12321,29 @@
12321
12321
  return obj;
12322
12322
  }
12323
12323
  function normalizeLogLevel(value, fallback) {
12324
- if (!value || typeof value !== 'string') {
12324
+ if (typeof value === 'number' && Number.isInteger(value)) {
12325
+ switch(value){
12326
+ case logger.LogLevel.DEBUG:
12327
+ case logger.LogLevel.INFO:
12328
+ case logger.LogLevel.WARN:
12329
+ case logger.LogLevel.ERROR:
12330
+ case logger.LogLevel.NONE:
12331
+ return value;
12332
+ default:
12333
+ return fallback;
12334
+ }
12335
+ }
12336
+ if (typeof value !== 'string') {
12325
12337
  return fallback;
12326
12338
  }
12327
- switch(value.toUpperCase()){
12339
+ const normalized = value.trim();
12340
+ if (!normalized) {
12341
+ return fallback;
12342
+ }
12343
+ if (/^\d+$/.test(normalized)) {
12344
+ return normalizeLogLevel(Number(normalized), fallback);
12345
+ }
12346
+ switch(normalized.toUpperCase()){
12328
12347
  case 'DEBUG':
12329
12348
  return logger.LogLevel.DEBUG;
12330
12349
  case 'INFO':
@@ -12333,6 +12352,8 @@
12333
12352
  return logger.LogLevel.WARN;
12334
12353
  case 'ERROR':
12335
12354
  return logger.LogLevel.ERROR;
12355
+ case 'NONE':
12356
+ return logger.LogLevel.NONE;
12336
12357
  default:
12337
12358
  return fallback;
12338
12359
  }
@@ -12340,9 +12361,23 @@
12340
12361
  class LoggerManager {
12341
12362
  async initialize(context) {
12342
12363
  this.config = context.config.logger;
12364
+ const hasConfiguredLevel = this.config.level !== undefined && this.config.level !== null;
12365
+ const configuredLevel = normalizeLogLevel(this.config.level, logger.LogLevel.INFO);
12366
+ if (hasConfiguredLevel) {
12367
+ this.level = configuredLevel;
12368
+ logger.logger.setLevel(this.level);
12369
+ await writePersistedValue(this.config.persistence, String(this.level));
12370
+ return;
12371
+ }
12343
12372
  const persisted = await readPersistedValue(this.config.persistence);
12344
- this.level = normalizeLogLevel(persisted, this.config.level ?? logger.LogLevel.INFO);
12373
+ if (persisted !== null) {
12374
+ this.level = normalizeLogLevel(persisted, configuredLevel);
12375
+ logger.logger.setLevel(this.level);
12376
+ return;
12377
+ }
12378
+ this.level = configuredLevel;
12345
12379
  logger.logger.setLevel(this.level);
12380
+ await writePersistedValue(this.config.persistence, String(this.level));
12346
12381
  }
12347
12382
  debug(message, payload) {
12348
12383
  logger.logger.debug(message, payload);
@@ -12434,7 +12469,7 @@
12434
12469
  ...this.config.initial || {}
12435
12470
  };
12436
12471
  const persisted = await readPersistedValue(this.config.persistence);
12437
- if (persisted) {
12472
+ if (persisted !== null) {
12438
12473
  try {
12439
12474
  const parsed = JSON.parse(persisted);
12440
12475
  this.theme = {
@@ -12444,6 +12479,8 @@
12444
12479
  } catch {
12445
12480
  // ignore parse errors
12446
12481
  }
12482
+ } else {
12483
+ await writePersistedValue(this.config.persistence, JSON.stringify(this.theme));
12447
12484
  }
12448
12485
  applyThemeToDocument(this.theme);
12449
12486
  }
@@ -12489,7 +12526,7 @@
12489
12526
  ...this.config.initial || {}
12490
12527
  };
12491
12528
  const persisted = await readPersistedValue(this.config.persistence);
12492
- if (persisted) {
12529
+ if (persisted !== null) {
12493
12530
  try {
12494
12531
  const parsed = JSON.parse(persisted);
12495
12532
  this.snapshot = {
@@ -12499,6 +12536,8 @@
12499
12536
  } catch {
12500
12537
  // ignore parse errors
12501
12538
  }
12539
+ } else {
12540
+ await writePersistedValue(this.config.persistence, JSON.stringify(this.snapshot));
12502
12541
  }
12503
12542
  setupI18n(this.snapshot.resources || {});
12504
12543
  setLang(this.snapshot.locale);
@@ -12666,7 +12705,7 @@
12666
12705
  ...DEFAULT_CONFIG.logger,
12667
12706
  ...loaded.logger,
12668
12707
  ...options.config?.logger || {},
12669
- level: options.loggerLevel || options.config?.logger?.level || loaded.logger?.level || DEFAULT_CONFIG.logger.level
12708
+ level: options.loggerLevel ?? options.config?.logger?.level ?? loaded.logger?.level
12670
12709
  },
12671
12710
  cache: {
12672
12711
  ...DEFAULT_CONFIG.cache,