@mdfriday/foundry 26.2.7 → 26.2.8

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.
@@ -47,13 +47,12 @@ function New3(level = "info" /* INFO */) {
47
47
  function NewWithConfig(config2) {
48
48
  return new Logger(config2);
49
49
  }
50
- var util, console2, Logger;
50
+ var util, Logger;
51
51
  var init_logger = __esm({
52
52
  "pkg/log/logger.ts"() {
53
53
  "use strict";
54
54
  util = __toESM2(require("util"));
55
55
  init_types();
56
- console2 = __toESM2(require("console"));
57
56
  Logger = class _Logger {
58
57
  config;
59
58
  fields;
@@ -117,7 +116,7 @@ var init_logger = __esm({
117
116
  entry.caller = caller;
118
117
  }
119
118
  const output = this.config.jsonFormat ? JSON.stringify(entry) : this.formatPlainText(entry);
120
- console2.log(output);
119
+ console.log(output);
121
120
  if (level === "error" /* ERROR */ || level === "fatal" /* FATAL */) {
122
121
  process.stderr.write(output + "\n");
123
122
  } else {
@@ -321,12 +320,12 @@ function clearPageFilter() {
321
320
  function shouldProcessPage(language2, pagePath) {
322
321
  return pageFilter.shouldProcess(language2, pagePath);
323
322
  }
324
- var log2, PageFilterManager, pageFilter;
323
+ var log, PageFilterManager, pageFilter;
325
324
  var init_page_filter = __esm({
326
325
  "pkg/page-filter/index.ts"() {
327
326
  "use strict";
328
327
  init_log();
329
- log2 = getDomainLogger("pkg", { component: "page-filter" });
328
+ log = getDomainLogger("pkg", { component: "page-filter" });
330
329
  PageFilterManager = class {
331
330
  filterSet = null;
332
331
  currentLanguage = null;
@@ -340,7 +339,7 @@ var init_page_filter = __esm({
340
339
  const key3 = `${task.language}:${task.pagePath}`;
341
340
  this.filterSet.add(key3);
342
341
  }
343
- log2.debug(`Page filter set: ${tasks2.length} tasks`);
342
+ log.debug(`Page filter set: ${tasks2.length} tasks`);
344
343
  }
345
344
  /**
346
345
  * 设置当前处理的语言
@@ -354,7 +353,7 @@ var init_page_filter = __esm({
354
353
  clearFilter() {
355
354
  this.filterSet = null;
356
355
  this.currentLanguage = null;
357
- log2.debug("Page filter cleared");
356
+ log.debug("Page filter cleared");
358
357
  }
359
358
  /**
360
359
  * 检查是否应该处理此页面 (O(1) 查找)
@@ -2668,7 +2667,7 @@ function newHttpClient(fs3, timeout, headers, customClient) {
2668
2667
  }
2669
2668
  return new NodeHttpClient(fs3, timeout, headers);
2670
2669
  }
2671
- var path6, http, https, log3, NodeHttpClient;
2670
+ var path6, http, https, log2, NodeHttpClient;
2672
2671
  var init_httpclient = __esm({
2673
2672
  "internal/domain/module/vo/httpclient.ts"() {
2674
2673
  "use strict";
@@ -2677,7 +2676,7 @@ var init_httpclient = __esm({
2677
2676
  http = __toESM2(require("http"));
2678
2677
  https = __toESM2(require("https"));
2679
2678
  init_log();
2680
- log3 = getDomainLogger("module", { component: "httpclient" });
2679
+ log2 = getDomainLogger("module", { component: "httpclient" });
2681
2680
  NodeHttpClient = class {
2682
2681
  constructor(fs3, timeout = 3e4, headers = {}) {
2683
2682
  this.fs = fs3;
@@ -2746,7 +2745,7 @@ var init_httpclient = __esm({
2746
2745
  options.onProgress(progress);
2747
2746
  lastLoggedPercentage = percentage;
2748
2747
  } catch (progressError) {
2749
- log3.error(`Progress callback error: ${progressError}`);
2748
+ log2.error(`Progress callback error: ${progressError}`);
2750
2749
  }
2751
2750
  lastProgressTime = now;
2752
2751
  }
@@ -2768,7 +2767,7 @@ var init_httpclient = __esm({
2768
2767
  try {
2769
2768
  options.onProgress(progress);
2770
2769
  } catch (progressError) {
2771
- log3.warn(`Progress callback error: ${progressError}`);
2770
+ log2.warn(`Progress callback error: ${progressError}`);
2772
2771
  }
2773
2772
  }
2774
2773
  resolve5();
@@ -2778,7 +2777,7 @@ var init_httpclient = __esm({
2778
2777
  }
2779
2778
  });
2780
2779
  response.on("error", (error) => {
2781
- log3.error(`Response error: ${error.message}`);
2780
+ log2.error(`Response error: ${error.message}`);
2782
2781
  reject(new ModuleError(`Download failed: ${error.message}`, "DOWNLOAD_FAILED"));
2783
2782
  });
2784
2783
  } catch (error) {
@@ -2787,12 +2786,12 @@ var init_httpclient = __esm({
2787
2786
  }
2788
2787
  });
2789
2788
  request.on("error", (error) => {
2790
- log3.error(`Request error:`, error);
2789
+ log2.error(`Request error:`, error);
2791
2790
  reject(new ModuleError(`Request failed: ${error.message}`, "REQUEST_FAILED"));
2792
2791
  });
2793
2792
  request.on("timeout", () => {
2794
2793
  request.destroy();
2795
- log3.error(`Request timeout for ${downloadUrl}`);
2794
+ log2.error(`Request timeout for ${downloadUrl}`);
2796
2795
  reject(new ModuleError("Request timeout", "TIMEOUT"));
2797
2796
  });
2798
2797
  request.end();
@@ -12731,7 +12730,7 @@ function newZipExtractor(fs3, environment = "node") {
12731
12730
  throw new Error(`Unsupported environment: ${environment}`);
12732
12731
  }
12733
12732
  }
12734
- var import_jszip, path7, log4, JsZipExtractor, WebZipExtractor;
12733
+ var import_jszip, path7, log3, JsZipExtractor, WebZipExtractor;
12735
12734
  var init_zipextractor = __esm({
12736
12735
  "internal/domain/module/vo/zipextractor.ts"() {
12737
12736
  "use strict";
@@ -12739,7 +12738,7 @@ var init_zipextractor = __esm({
12739
12738
  init_log();
12740
12739
  import_jszip = __toESM2(require_lib3());
12741
12740
  path7 = __toESM2(require("path"));
12742
- log4 = getDomainLogger("module", { component: "zipextractor" });
12741
+ log3 = getDomainLogger("module", { component: "zipextractor" });
12743
12742
  JsZipExtractor = class {
12744
12743
  constructor(fs3) {
12745
12744
  this.fs = fs3;
@@ -12758,7 +12757,7 @@ var init_zipextractor = __esm({
12758
12757
  await this.extractZipData(result.buffer, targetDir);
12759
12758
  } catch (error) {
12760
12759
  const message = error instanceof Error ? error.message : String(error);
12761
- log4.error(`ZIP extraction failed for ${zipPath}: ${message}`);
12760
+ log3.error(`ZIP extraction failed for ${zipPath}: ${message}`);
12762
12761
  throw new ModuleError(`ZIP extraction failed: ${message}`, "EXTRACTION_FAILED");
12763
12762
  }
12764
12763
  }
@@ -12804,7 +12803,7 @@ var init_zipextractor = __esm({
12804
12803
  await Promise.all(promises);
12805
12804
  } catch (error) {
12806
12805
  const message = error instanceof Error ? error.message : String(error);
12807
- log4.error(`Failed to extract ZIP data: ${message}`);
12806
+ log3.error(`Failed to extract ZIP data: ${message}`);
12808
12807
  throw new ModuleError(`Failed to extract ZIP data: ${message}`, "EXTRACTION_FAILED");
12809
12808
  }
12810
12809
  }
@@ -12872,14 +12871,14 @@ var init_zipextractor = __esm({
12872
12871
  function newModuleCache(fs3, cacheDir) {
12873
12872
  return new FsModuleCache(fs3, cacheDir);
12874
12873
  }
12875
- var path8, log5, FsModuleCache;
12874
+ var path8, log4, FsModuleCache;
12876
12875
  var init_cache = __esm({
12877
12876
  "internal/domain/module/vo/cache.ts"() {
12878
12877
  "use strict";
12879
12878
  init_type2();
12880
12879
  init_log();
12881
12880
  path8 = __toESM2(require("path"));
12882
- log5 = getDomainLogger("module", { component: "cache" });
12881
+ log4 = getDomainLogger("module", { component: "cache" });
12883
12882
  FsModuleCache = class {
12884
12883
  constructor(fs3, cacheDir = "./module/cache") {
12885
12884
  this.fs = fs3;
@@ -12901,11 +12900,11 @@ var init_cache = __esm({
12901
12900
  return JSON.parse(content);
12902
12901
  } catch (error) {
12903
12902
  if (error.message?.includes("ENOENT") || error.message?.includes("no such file")) {
12904
- log5.error(`Cache miss: ${modulePath}`, error);
12903
+ log4.error(`Cache miss: ${modulePath}`, error);
12905
12904
  return null;
12906
12905
  }
12907
12906
  const message = error instanceof Error ? error.message : String(error);
12908
- log5.error(`Cache read error for ${modulePath}: ${message}`);
12907
+ log4.error(`Cache read error for ${modulePath}: ${message}`);
12909
12908
  throw new ModuleError(`Failed to read cache: ${message}`, "CACHE_READ_FAILED");
12910
12909
  }
12911
12910
  }
@@ -12924,7 +12923,7 @@ var init_cache = __esm({
12924
12923
  await file.close();
12925
12924
  } catch (error) {
12926
12925
  const message = error instanceof Error ? error.message : String(error);
12927
- log5.error(`Cache write error for ${modulePath}: ${message}`);
12926
+ log4.error(`Cache write error for ${modulePath}: ${message}`);
12928
12927
  throw new ModuleError(`Failed to write cache: ${message}`, "CACHE_WRITE_FAILED");
12929
12928
  }
12930
12929
  }
@@ -12950,7 +12949,7 @@ var init_cache = __esm({
12950
12949
  } catch (error) {
12951
12950
  if (!error.message?.includes("ENOENT") && !error.message?.includes("no such file")) {
12952
12951
  const message = error instanceof Error ? error.message : String(error);
12953
- log5.error(`Cache delete error for ${modulePath}: ${message}`);
12952
+ log4.error(`Cache delete error for ${modulePath}: ${message}`);
12954
12953
  throw new ModuleError(`Failed to delete cache: ${message}`, "CACHE_DELETE_FAILED");
12955
12954
  }
12956
12955
  }
@@ -12964,7 +12963,7 @@ var init_cache = __esm({
12964
12963
  } catch (error) {
12965
12964
  if (!error.message?.includes("ENOENT") && !error.message?.includes("no such file")) {
12966
12965
  const message = error instanceof Error ? error.message : String(error);
12967
- log5.error(`Cache clear error: ${message}`);
12966
+ log4.error(`Cache clear error: ${message}`);
12968
12967
  throw new ModuleError(`Failed to clear cache: ${message}`, "CACHE_CLEAR_FAILED");
12969
12968
  }
12970
12969
  }
@@ -14170,7 +14169,7 @@ var init_dist = __esm({
14170
14169
  function newModules(info, httpClient, zipExtractor, moduleCache) {
14171
14170
  return new Modules(info, httpClient, zipExtractor, moduleCache);
14172
14171
  }
14173
- var path11, log6, Modules;
14172
+ var path11, log5, Modules;
14174
14173
  var init_module4 = __esm({
14175
14174
  "internal/domain/module/entity/module.ts"() {
14176
14175
  "use strict";
@@ -14181,7 +14180,7 @@ var init_module4 = __esm({
14181
14180
  init_log();
14182
14181
  init_dist();
14183
14182
  path11 = __toESM2(require("path"));
14184
- log6 = getDomainLogger("module", { component: "modules" });
14183
+ log5 = getDomainLogger("module", { component: "modules" });
14185
14184
  Modules = class {
14186
14185
  constructor(info, httpClient, zipExtractor, moduleCache) {
14187
14186
  this.info = info;
@@ -14222,7 +14221,7 @@ var init_module4 = __esm({
14222
14221
  async load(onProgress) {
14223
14222
  const importPaths = this.info.importPaths();
14224
14223
  if (importPaths.length === 0) {
14225
- log6.warn("No import paths configured - no modules will be downloaded");
14224
+ log5.warn("No import paths configured - no modules will be downloaded");
14226
14225
  return;
14227
14226
  }
14228
14227
  for (let i = 0; i < importPaths.length; i++) {
@@ -14240,7 +14239,7 @@ var init_module4 = __esm({
14240
14239
  });
14241
14240
  });
14242
14241
  } else {
14243
- log6.info(`Module already downloaded: ${resolvedImportPath}`);
14242
+ log5.info(`Module already downloaded: ${resolvedImportPath}`);
14244
14243
  }
14245
14244
  }
14246
14245
  }
@@ -14257,7 +14256,7 @@ var init_module4 = __esm({
14257
14256
  const cleanUrl = url.toString();
14258
14257
  return { cleanUrl, version };
14259
14258
  } catch (error) {
14260
- log6.warn(`Failed to parse import path ${importPath}:`, error);
14259
+ log5.warn(`Failed to parse import path ${importPath}:`, error);
14261
14260
  return { cleanUrl: importPath, version: "latest" };
14262
14261
  }
14263
14262
  }
@@ -14275,7 +14274,7 @@ var init_module4 = __esm({
14275
14274
  }
14276
14275
  return "https://gohugo.net/themes.json";
14277
14276
  } catch (error) {
14278
- log6.warn(`Failed to parse import path ${importPath}, using default theme registry`);
14277
+ log5.warn(`Failed to parse import path ${importPath}, using default theme registry`);
14279
14278
  return "https://gohugo.net/themes.json";
14280
14279
  }
14281
14280
  }
@@ -14291,7 +14290,7 @@ var init_module4 = __esm({
14291
14290
  }
14292
14291
  try {
14293
14292
  const themeRegistryUrl = this.getThemeRegistryUrl(importPath);
14294
- log6.info(`Fetching latest theme versions from ${themeRegistryUrl}...`);
14293
+ log5.info(`Fetching latest theme versions from ${themeRegistryUrl}...`);
14295
14294
  let themes = this.themesCache.get(themeRegistryUrl);
14296
14295
  if (!themes) {
14297
14296
  const response = await this.httpClient.get(themeRegistryUrl);
@@ -14302,13 +14301,13 @@ var init_module4 = __esm({
14302
14301
  }
14303
14302
  const resolvedPath = themes.resolveLatestVersion(importPath);
14304
14303
  if (resolvedPath !== importPath) {
14305
- log6.info(`Resolved latest version: ${importPath} -> ${resolvedPath}`);
14304
+ log5.info(`Resolved latest version: ${importPath} -> ${resolvedPath}`);
14306
14305
  } else {
14307
- log6.warn(`Could not resolve latest version for ${importPath}, using original path`);
14306
+ log5.warn(`Could not resolve latest version for ${importPath}, using original path`);
14308
14307
  }
14309
14308
  return resolvedPath;
14310
14309
  } catch (error) {
14311
- log6.error(`Failed to resolve latest version for ${importPath}:`, error);
14310
+ log5.error(`Failed to resolve latest version for ${importPath}:`, error);
14312
14311
  return importPath;
14313
14312
  }
14314
14313
  }
@@ -14327,12 +14326,12 @@ var init_module4 = __esm({
14327
14326
  if (cachedMetadata && cachedMetadata.downloadStatus === "completed" /* COMPLETED */ && this.isCacheValidForVersion(cachedMetadata.version, effectiveVersion)) {
14328
14327
  const module2 = await this.createModuleFromCache(moduleImport, cachedMetadata);
14329
14328
  if (await module2.exists()) {
14330
- log6.info(`Using cached module ${moduleImport.path} version ${cachedMetadata.version}`);
14329
+ log5.info(`Using cached module ${moduleImport.path} version ${cachedMetadata.version}`);
14331
14330
  return module2;
14332
14331
  }
14333
14332
  }
14334
14333
  if (cachedMetadata && cachedMetadata.downloadStatus === "completed" /* COMPLETED */ && !this.isCacheValidForVersion(cachedMetadata.version, effectiveVersion)) {
14335
- log6.info(`Cache version mismatch for ${moduleImport.path}: cached=${cachedMetadata.version}, requested=${effectiveVersion || "latest"}`);
14334
+ log5.info(`Cache version mismatch for ${moduleImport.path}: cached=${cachedMetadata.version}, requested=${effectiveVersion || "latest"}`);
14336
14335
  }
14337
14336
  const moduleDir = this.getModuleDir(moduleImport.path);
14338
14337
  const zipPath = path11.join(moduleDir, "module.zip");
@@ -14404,10 +14403,10 @@ var init_module4 = __esm({
14404
14403
  const themeImportPaths = await this.parseThemeToml(module2);
14405
14404
  for (const themeImportPath of themeImportPaths) {
14406
14405
  if (this.downloadedModules.has(themeImportPath)) {
14407
- log6.info(`Module ${themeImportPath} already downloaded, skipping`);
14406
+ log5.info(`Module ${themeImportPath} already downloaded, skipping`);
14408
14407
  continue;
14409
14408
  }
14410
- log6.info(`Recursively downloading module dependency: ${themeImportPath}`);
14409
+ log5.info(`Recursively downloading module dependency: ${themeImportPath}`);
14411
14410
  const originalImportPath = themeImportPath;
14412
14411
  const { cleanUrl: cleanUrl2, version: version2 } = this.parseVersionFromImportPath(originalImportPath);
14413
14412
  let resolvedImportPath = originalImportPath;
@@ -14420,7 +14419,7 @@ var init_module4 = __esm({
14420
14419
  }
14421
14420
  } catch (error) {
14422
14421
  const message = error instanceof Error ? error.message : String(error);
14423
- log6.warn(`Failed to process recursive imports for module ${importPath}: ${message}`);
14422
+ log5.warn(`Failed to process recursive imports for module ${importPath}: ${message}`);
14424
14423
  }
14425
14424
  } catch (error) {
14426
14425
  const message = error instanceof Error ? error.message : String(error);
@@ -14576,18 +14575,18 @@ var init_module4 = __esm({
14576
14575
  }
14577
14576
  } catch (error) {
14578
14577
  const message = error instanceof Error ? error.message : String(error);
14579
- log6.warn(`Failed to read theme.toml for module ${module2.path()}: ${message}`);
14578
+ log5.warn(`Failed to read theme.toml for module ${module2.path()}: ${message}`);
14580
14579
  return [];
14581
14580
  }
14582
14581
  const tomlData = parse2(tomlContent);
14583
14582
  if (tomlData.module?.imports) {
14584
- log6.info(`Found ${tomlData.module.imports.length} module imports in ${module2.path()}/theme.toml`);
14583
+ log5.info(`Found ${tomlData.module.imports.length} module imports in ${module2.path()}/theme.toml`);
14585
14584
  return tomlData.module.imports.map((imp) => imp.path);
14586
14585
  }
14587
14586
  return [];
14588
14587
  } catch (error) {
14589
14588
  const message = error instanceof Error ? error.message : String(error);
14590
- log6.warn(`Failed to parse theme.toml for module ${module2.path()}: ${message}`);
14589
+ log5.warn(`Failed to parse theme.toml for module ${module2.path()}: ${message}`);
14591
14590
  return [];
14592
14591
  }
14593
14592
  }
@@ -14607,7 +14606,7 @@ async function createModules(info) {
14607
14606
  return modules;
14608
14607
  } catch (error) {
14609
14608
  const message = error instanceof Error ? error.message : String(error);
14610
- log7.error(`Failed to create modules: ${message}`);
14609
+ log6.error(`Failed to create modules: ${message}`);
14611
14610
  throw new ModuleError(`Failed to create modules: ${message}`, "FACTORY_FAILED");
14612
14611
  }
14613
14612
  }
@@ -14622,11 +14621,11 @@ async function createModulesWithProgress(info, onProgress) {
14622
14621
  return modules;
14623
14622
  } catch (error) {
14624
14623
  const message = error instanceof Error ? error.message : String(error);
14625
- log7.error(`Failed to create modules: ${message}`);
14624
+ log6.error(`Failed to create modules: ${message}`);
14626
14625
  throw new ModuleError(`Failed to create modules: ${message}`, "FACTORY_FAILED");
14627
14626
  }
14628
14627
  }
14629
- var log7;
14628
+ var log6;
14630
14629
  var init_module5 = __esm({
14631
14630
  "internal/domain/module/factory/module.ts"() {
14632
14631
  "use strict";
@@ -14636,7 +14635,7 @@ var init_module5 = __esm({
14636
14635
  init_zipextractor();
14637
14636
  init_cache();
14638
14637
  init_log();
14639
- log7 = getDomainLogger("module", { component: "factory" });
14638
+ log6 = getDomainLogger("module", { component: "factory" });
14640
14639
  }
14641
14640
  });
14642
14641
 
@@ -14724,12 +14723,12 @@ var init_originfs = __esm({
14724
14723
  function newFileMeta(filename, openFunc) {
14725
14724
  return new FileMeta(filename, openFunc);
14726
14725
  }
14727
- var log8, FileMeta;
14726
+ var log7, FileMeta;
14728
14727
  var init_filemeta = __esm({
14729
14728
  "internal/domain/fs/vo/filemeta.ts"() {
14730
14729
  "use strict";
14731
14730
  init_log();
14732
- log8 = getDomainLogger("fs", { component: "filemeta" });
14731
+ log7 = getDomainLogger("fs", { component: "filemeta" });
14733
14732
  FileMeta = class {
14734
14733
  filename;
14735
14734
  componentRoot;
@@ -15156,7 +15155,7 @@ var init_dir2 = __esm({
15156
15155
  function newBaseFs(fs3, roots) {
15157
15156
  return new BaseFs(fs3, roots);
15158
15157
  }
15159
- var path13, log9, BaseFs;
15158
+ var path13, log8, BaseFs;
15160
15159
  var init_basefs = __esm({
15161
15160
  "internal/domain/fs/entity/basefs.ts"() {
15162
15161
  "use strict";
@@ -15166,7 +15165,7 @@ var init_basefs = __esm({
15166
15165
  init_dir2();
15167
15166
  path13 = __toESM2(require("path"));
15168
15167
  init_log();
15169
- log9 = getDomainLogger("fs", { component: "basefs" });
15168
+ log8 = getDomainLogger("fs", { component: "basefs" });
15170
15169
  BaseFs = class {
15171
15170
  fs;
15172
15171
  // osFs
@@ -15327,7 +15326,7 @@ var init_basefs = __esm({
15327
15326
  function newWalkway(fs3, cb) {
15328
15327
  return new Walkway(fs3, cb);
15329
15328
  }
15330
- var path14, log10, Walkway;
15329
+ var path14, log9, Walkway;
15331
15330
  var init_walkway = __esm({
15332
15331
  "internal/domain/fs/vo/walkway.ts"() {
15333
15332
  "use strict";
@@ -15336,7 +15335,7 @@ var init_walkway = __esm({
15336
15335
  init_fileinfo();
15337
15336
  init_filemeta();
15338
15337
  init_log();
15339
- log10 = getDomainLogger("fs", { component: "walkway" });
15338
+ log9 = getDomainLogger("fs", { component: "walkway" });
15340
15339
  Walkway = class {
15341
15340
  fs;
15342
15341
  root;
@@ -15378,7 +15377,7 @@ var init_walkway = __esm({
15378
15377
  */
15379
15378
  checkErr(filename, err) {
15380
15379
  if (this.isNotExistError(err) && !this.cfg.failOnNotExist) {
15381
- log10.warn(`File "${filename}" not found, skipping.`);
15380
+ log9.warn(`File "${filename}" not found, skipping.`);
15382
15381
  return true;
15383
15382
  }
15384
15383
  return false;
@@ -15483,12 +15482,12 @@ var init_walkway = __esm({
15483
15482
  });
15484
15483
 
15485
15484
  // internal/domain/fs/vo/static-copier.ts
15486
- var log11, StaticCopier;
15485
+ var log10, StaticCopier;
15487
15486
  var init_static_copier = __esm({
15488
15487
  "internal/domain/fs/vo/static-copier.ts"() {
15489
15488
  "use strict";
15490
15489
  init_log();
15491
- log11 = getDomainLogger("fs", { component: "static-copier" });
15490
+ log10 = getDomainLogger("fs", { component: "static-copier" });
15492
15491
  StaticCopier = class {
15493
15492
  fromFss;
15494
15493
  toFs;
@@ -15498,11 +15497,11 @@ var init_static_copier = __esm({
15498
15497
  }
15499
15498
  async copy() {
15500
15499
  if (!this.fromFss || this.fromFss.length === 0) {
15501
- log11.error("No static filesystems found");
15500
+ log10.error("No static filesystems found");
15502
15501
  return;
15503
15502
  }
15504
15503
  if (!this.toFs) {
15505
- log11.error("No publish filesystem found");
15504
+ log10.error("No publish filesystem found");
15506
15505
  return;
15507
15506
  }
15508
15507
  await this.doWithPublishDirs(this.toFs, async (publishDir) => {
@@ -15518,7 +15517,7 @@ var init_static_copier = __esm({
15518
15517
  try {
15519
15518
  await fn("/");
15520
15519
  } catch (error) {
15521
- log11.error("Error in doWithPublishDirs:", error);
15520
+ log10.error("Error in doWithPublishDirs:", error);
15522
15521
  throw error;
15523
15522
  }
15524
15523
  }
@@ -15530,7 +15529,7 @@ var init_static_copier = __esm({
15530
15529
  try {
15531
15530
  return await this.walkSourceFiles(sourceFs, targetDir);
15532
15531
  } catch (error) {
15533
- log11.error(`Error copying static files to ${targetDir}:`, error);
15532
+ log10.error(`Error copying static files to ${targetDir}:`, error);
15534
15533
  throw error;
15535
15534
  }
15536
15535
  }
@@ -15547,7 +15546,7 @@ var init_static_copier = __esm({
15547
15546
  }
15548
15547
  });
15549
15548
  } catch (error) {
15550
- log11.error("Error walking source files:", error);
15549
+ log10.error("Error walking source files:", error);
15551
15550
  throw error;
15552
15551
  }
15553
15552
  return fileCount;
@@ -15576,7 +15575,7 @@ var init_static_copier = __esm({
15576
15575
  }
15577
15576
  }
15578
15577
  } catch (error) {
15579
- log11.error(`Could not read directory ${basePath}:`, error);
15578
+ log10.error(`Could not read directory ${basePath}:`, error);
15580
15579
  }
15581
15580
  }
15582
15581
  /**
@@ -15599,20 +15598,20 @@ var init_static_copier = __esm({
15599
15598
  targetFile = await targetFs.create(targetPath);
15600
15599
  await targetFile.write(buffer);
15601
15600
  } catch (error) {
15602
- log11.warn(`Failed to copy static file ${sourcePath}:`, error);
15601
+ log10.warn(`Failed to copy static file ${sourcePath}:`, error);
15603
15602
  } finally {
15604
15603
  if (targetFile) {
15605
15604
  try {
15606
15605
  await targetFile.close();
15607
15606
  } catch (closeError) {
15608
- log11.warn(`Failed to close target file: ${closeError}`);
15607
+ log10.warn(`Failed to close target file: ${closeError}`);
15609
15608
  }
15610
15609
  }
15611
15610
  if (sourceFile) {
15612
15611
  try {
15613
15612
  await sourceFile.close();
15614
15613
  } catch (closeError) {
15615
- log11.warn(`Failed to close source file: ${closeError}`);
15614
+ log10.warn(`Failed to close source file: ${closeError}`);
15616
15615
  }
15617
15616
  }
15618
15617
  }
@@ -15649,7 +15648,7 @@ async function collectFileMetaInfos(paths, fss) {
15649
15648
  if (found2)
15650
15649
  break;
15651
15650
  } catch (error) {
15652
- log12.error(`Failed to create FileMetaInfo for ${path29} with fs=${fs3}:`, error);
15651
+ log11.error(`Failed to create FileMetaInfo for ${path29} with fs=${fs3}:`, error);
15653
15652
  }
15654
15653
  }
15655
15654
  }
@@ -15665,14 +15664,14 @@ async function createFileMetaInfo(filePath, fs3) {
15665
15664
  throw new Error(`Failed to stat file ${filePath}: ${error.message}`);
15666
15665
  }
15667
15666
  }
15668
- var log12;
15667
+ var log11;
15669
15668
  var init_incremental_file_collector = __esm({
15670
15669
  "internal/domain/fs/vo/incremental-file-collector.ts"() {
15671
15670
  "use strict";
15672
15671
  init_fileinfo();
15673
15672
  init_filemeta();
15674
15673
  init_log();
15675
- log12 = getDomainLogger("fs", { component: "incremental-file-collector" });
15674
+ log11 = getDomainLogger("fs", { component: "incremental-file-collector" });
15676
15675
  }
15677
15676
  });
15678
15677
 
@@ -16136,7 +16135,7 @@ function createOverlayFs(opts) {
16136
16135
  const options = new OverlayOptions(opts);
16137
16136
  return new OverlayFs(options);
16138
16137
  }
16139
- var log13, OverlayFs;
16138
+ var log12, OverlayFs;
16140
16139
  var init_overlayfs = __esm({
16141
16140
  "internal/domain/fs/entity/overlayfs.ts"() {
16142
16141
  "use strict";
@@ -16144,7 +16143,7 @@ var init_overlayfs = __esm({
16144
16143
  init_overlayoptions();
16145
16144
  init_overlaydir();
16146
16145
  init_log();
16147
- log13 = getDomainLogger("fs", { component: "overlayfs" });
16146
+ log12 = getDomainLogger("fs", { component: "overlayfs" });
16148
16147
  OverlayFs = class _OverlayFs {
16149
16148
  fss;
16150
16149
  mergeDirs;
@@ -16625,7 +16624,7 @@ var init_overlayfs_factory = __esm({
16625
16624
  function newFilesystemsCollector(sourceProject) {
16626
16625
  return new FilesystemsCollector(sourceProject);
16627
16626
  }
16628
- var path15, log14, RootMapping, FilesystemsCollector;
16627
+ var path15, log13, RootMapping, FilesystemsCollector;
16629
16628
  var init_filesystemscollector = __esm({
16630
16629
  "internal/domain/fs/vo/filesystemscollector.ts"() {
16631
16630
  "use strict";
@@ -16633,7 +16632,7 @@ var init_filesystemscollector = __esm({
16633
16632
  init_basefs();
16634
16633
  path15 = __toESM2(require("path"));
16635
16634
  init_log();
16636
- log14 = getDomainLogger("fs", { component: "filesystemscollector" });
16635
+ log13 = getDomainLogger("fs", { component: "filesystemscollector" });
16637
16636
  RootMapping = class {
16638
16637
  from;
16639
16638
  // Target path
@@ -16775,14 +16774,14 @@ var init_filesystemscollector = __esm({
16775
16774
  function newOsFs() {
16776
16775
  return new OsFs();
16777
16776
  }
16778
- var fs2, path16, log15, OsFileInfo, OsFile, OsFs;
16777
+ var fs2, path16, log14, OsFileInfo, OsFile, OsFs;
16779
16778
  var init_osfs = __esm({
16780
16779
  "internal/domain/fs/vo/osfs.ts"() {
16781
16780
  "use strict";
16782
16781
  fs2 = __toESM2(require("fs/promises"));
16783
16782
  path16 = __toESM2(require("path"));
16784
16783
  init_log();
16785
- log15 = getDomainLogger("fs", { component: "osfs" });
16784
+ log14 = getDomainLogger("fs", { component: "osfs" });
16786
16785
  OsFileInfo = class {
16787
16786
  constructor(stats, _name) {
16788
16787
  this.stats = stats;
@@ -16825,7 +16824,7 @@ var init_osfs = __esm({
16825
16824
  try {
16826
16825
  await this.handle.close();
16827
16826
  } catch (error) {
16828
- log15.error(`\u274C Error closing file handle for ${this.filePath}:`, error);
16827
+ log14.error(`\u274C Error closing file handle for ${this.filePath}:`, error);
16829
16828
  throw error;
16830
16829
  }
16831
16830
  this.handle = null;
@@ -18919,7 +18918,7 @@ var init_pageparser = __esm({
18919
18918
  function parseBytes2(input, config2 = {}) {
18920
18919
  const [items, err] = ParseBytes(input, config2);
18921
18920
  if (err) {
18922
- log16.error("Error parsing bytes:", err);
18921
+ log15.error("Error parsing bytes:", err);
18923
18922
  throw err;
18924
18923
  }
18925
18924
  return items;
@@ -18954,13 +18953,13 @@ function posFromInput(filename, input, offset) {
18954
18953
  function stringToBytes(str2) {
18955
18954
  return new TextEncoder().encode(str2);
18956
18955
  }
18957
- var log16;
18956
+ var log15;
18958
18957
  var init_pageparser2 = __esm({
18959
18958
  "internal/domain/markdown/vo/pageparser.ts"() {
18960
18959
  "use strict";
18961
18960
  init_log();
18962
18961
  init_pageparser();
18963
- log16 = getDomainLogger("markdown", { component: "pageparser" });
18962
+ log15 = getDomainLogger("markdown", { component: "pageparser" });
18964
18963
  }
18965
18964
  });
18966
18965
 
@@ -18968,7 +18967,7 @@ var init_pageparser2 = __esm({
18968
18967
  function createSourceParseInfo(source, handlers) {
18969
18968
  return new SourceParseInfo(source, handlers);
18970
18969
  }
18971
- var log17, SourceParseInfo;
18970
+ var log16, SourceParseInfo;
18972
18971
  var init_parseinfo = __esm({
18973
18972
  "internal/domain/markdown/vo/parseinfo.ts"() {
18974
18973
  "use strict";
@@ -18976,7 +18975,7 @@ var init_parseinfo = __esm({
18976
18975
  init_item();
18977
18976
  init_pagelexer();
18978
18977
  init_log();
18979
- log17 = getDomainLogger("markdown", { component: "parseinfo" });
18978
+ log16 = getDomainLogger("markdown", { component: "parseinfo" });
18980
18979
  SourceParseInfo = class {
18981
18980
  source;
18982
18981
  posMainContent = -1;
@@ -19029,7 +19028,7 @@ var init_parseinfo = __esm({
19029
19028
  const it = iter.Next();
19030
19029
  try {
19031
19030
  if (it.Type === 7 /* TypeIgnore */) {
19032
- log17.info(`Ignoring item at position ${it.Pos()}: ${it.ValStr(this.source)}`);
19031
+ log16.info(`Ignoring item at position ${it.Pos()}: ${it.ValStr(this.source)}`);
19033
19032
  } else if (it.IsFrontMatter()) {
19034
19033
  await this.handlers.frontMatterHandler()(it);
19035
19034
  const next2 = iter.Peek();
@@ -19045,7 +19044,7 @@ var init_parseinfo = __esm({
19045
19044
  } else if (it.IsEOF()) {
19046
19045
  break;
19047
19046
  } else if (it.IsError()) {
19048
- log17.error(`Error parsing item at position ${it.Pos()}: ${it.Err}`);
19047
+ log16.error(`Error parsing item at position ${it.Pos()}: ${it.Err}`);
19049
19048
  throw this.createError(it.Err || new Error("Unknown parsing error"), it);
19050
19049
  } else {
19051
19050
  await this.handlers.bytesHandler()(it);
@@ -19104,12 +19103,12 @@ function indexNonWhiteSpace2(source, char2) {
19104
19103
  function isSpace3(b) {
19105
19104
  return b === 32 || b === 9 || b === 13 || b === 10;
19106
19105
  }
19107
- var log18, ShortcodeImpl, ShortcodeParser, TOC_SHORTCODE_PLACEHOLDER, SHORTCODE_PLACEHOLDER_PREFIX;
19106
+ var log17, ShortcodeImpl, ShortcodeParser, TOC_SHORTCODE_PLACEHOLDER, SHORTCODE_PLACEHOLDER_PREFIX;
19108
19107
  var init_shortcode = __esm({
19109
19108
  "internal/domain/markdown/vo/shortcode.ts"() {
19110
19109
  "use strict";
19111
19110
  init_log();
19112
- log18 = getDomainLogger("markdown", { component: "vo/shortcode" });
19111
+ log17 = getDomainLogger("markdown", { component: "vo/shortcode" });
19113
19112
  ShortcodeImpl = class {
19114
19113
  name;
19115
19114
  params;
@@ -19274,7 +19273,7 @@ var init_shortcode = __esm({
19274
19273
  }
19275
19274
  } else if (currItem.IsShortcodeParam()) {
19276
19275
  if (!pt.IsValueNext()) {
19277
- log18.warn(`${errorPrefix}: shortcode "${sc.name}" has a parameter without a value`);
19276
+ log17.warn(`${errorPrefix}: shortcode "${sc.name}" has a parameter without a value`);
19278
19277
  continue;
19279
19278
  }
19280
19279
  if (pt.Peek().IsShortcodeParamVal()) {
@@ -19417,13 +19416,13 @@ var init_type6 = __esm({
19417
19416
  });
19418
19417
 
19419
19418
  // internal/domain/markdown/vo/content.ts
19420
- var log19, INTERNAL_SUMMARY_DIVIDER_BASE, INTERNAL_SUMMARY_DIVIDER_PRE, Content;
19419
+ var log18, INTERNAL_SUMMARY_DIVIDER_BASE, INTERNAL_SUMMARY_DIVIDER_PRE, Content;
19421
19420
  var init_content = __esm({
19422
19421
  "internal/domain/markdown/vo/content.ts"() {
19423
19422
  "use strict";
19424
19423
  init_type6();
19425
19424
  init_log();
19426
- log19 = getDomainLogger("markdown", { component: "content" });
19425
+ log18 = getDomainLogger("markdown", { component: "content" });
19427
19426
  INTERNAL_SUMMARY_DIVIDER_BASE = "HUGOMORE42";
19428
19427
  INTERNAL_SUMMARY_DIVIDER_PRE = new TextEncoder().encode(`
19429
19428
 
@@ -22470,7 +22469,7 @@ var init_parserresult = __esm({
22470
22469
  });
22471
22470
 
22472
22471
  // internal/domain/markdown/entity/markdown.ts
22473
- var log20, MarkdownImpl;
22472
+ var log19, MarkdownImpl;
22474
22473
  var init_markdown3 = __esm({
22475
22474
  "internal/domain/markdown/entity/markdown.ts"() {
22476
22475
  "use strict";
@@ -22483,7 +22482,7 @@ var init_markdown3 = __esm({
22483
22482
  init_shortcode();
22484
22483
  init_content();
22485
22484
  init_log();
22486
- log20 = getDomainLogger("markdown", { component: "MarkdownImpl" });
22485
+ log19 = getDomainLogger("markdown", { component: "MarkdownImpl" });
22487
22486
  MarkdownImpl = class {
22488
22487
  constructor(renderer, highlighter) {
22489
22488
  this.renderer = renderer;
@@ -22559,7 +22558,7 @@ var init_markdown3 = __esm({
22559
22558
  if (parseResult.frontMatter) {
22560
22559
  parseResult.frontMatter.params = fm;
22561
22560
  }
22562
- log20.debug(`Merged tags: YAML [${existingTags.join(", ")}] + inline [${inlineTags.join(", ")}] = [${allTags.join(", ")}]`);
22561
+ log19.debug(`Merged tags: YAML [${existingTags.join(", ")}] + inline [${inlineTags.join(", ")}] = [${allTags.join(", ")}]`);
22563
22562
  }
22564
22563
  }
22565
22564
  const summary = parseResult.content.getDividedSummary(htmlContent);
@@ -31100,14 +31099,14 @@ var init_paths = __esm({
31100
31099
  });
31101
31100
 
31102
31101
  // internal/domain/content/entity/translator.ts
31103
- var log21, Translator;
31102
+ var log20, Translator;
31104
31103
  var init_translator = __esm({
31105
31104
  "internal/domain/content/entity/translator.ts"() {
31106
31105
  "use strict";
31107
31106
  init_log();
31108
31107
  init_js_yaml();
31109
31108
  init_paths();
31110
- log21 = getDomainLogger("content", { component: "translator" });
31109
+ log20 = getDomainLogger("content", { component: "translator" });
31111
31110
  Translator = class {
31112
31111
  contentLanguage;
31113
31112
  translateFuncs = /* @__PURE__ */ new Map();
@@ -31129,7 +31128,7 @@ var init_translator = __esm({
31129
31128
  return result;
31130
31129
  }
31131
31130
  }
31132
- log21.info(`Translation func for language ${lang2} not found, use default.`);
31131
+ log20.info(`Translation func for language ${lang2} not found, use default.`);
31133
31132
  const defaultTranslateFunc = this.translateFuncs.get(this.contentLanguage.toLowerCase());
31134
31133
  if (defaultTranslateFunc) {
31135
31134
  const result = defaultTranslateFunc(translationID);
@@ -31137,7 +31136,7 @@ var init_translator = __esm({
31137
31136
  return result;
31138
31137
  }
31139
31138
  }
31140
- log21.info("i18n not initialized; if you need string translations, check that you have a bundle in /i18n that matches the site language or the default language.");
31139
+ log20.info("i18n not initialized; if you need string translations, check that you have a bundle in /i18n that matches the site language or the default language.");
31141
31140
  return `[i18n] ${translationID}`;
31142
31141
  }
31143
31142
  /**
@@ -31166,17 +31165,17 @@ var init_translator = __esm({
31166
31165
  if (translation) {
31167
31166
  return translation;
31168
31167
  }
31169
- log21.warn(`i18n|MISSING_TRANSLATION|${langKey}|${translationID}`);
31168
+ log20.warn(`i18n|MISSING_TRANSLATION|${langKey}|${translationID}`);
31170
31169
  return "";
31171
31170
  };
31172
31171
  this.translateFuncs.set(langKey, translateFunc);
31173
- log21.info(`\u2705 Loaded i18n translations for language: ${langKey} (${translations.length} items)`);
31172
+ log20.info(`\u2705 Loaded i18n translations for language: ${langKey} (${translations.length} items)`);
31174
31173
  } catch (error) {
31175
- log21.error(`\u274C Failed to load i18n file ${path29}:`, error);
31174
+ log20.error(`\u274C Failed to load i18n file ${path29}:`, error);
31176
31175
  }
31177
31176
  }
31178
31177
  }, {});
31179
- log21.info(`\u{1F30D} Translation setup complete. Loaded ${this.translateFuncs.size} languages: [${Array.from(this.translateFuncs.keys()).join(", ")}]`);
31178
+ log20.info(`\u{1F30D} Translation setup complete. Loaded ${this.translateFuncs.size} languages: [${Array.from(this.translateFuncs.keys()).join(", ")}]`);
31180
31179
  } catch (error) {
31181
31180
  throw error;
31182
31181
  }
@@ -31195,14 +31194,14 @@ var init_translator = __esm({
31195
31194
  const cleanContent = content.charCodeAt(0) === 65279 ? content.slice(1) : content;
31196
31195
  return cleanContent;
31197
31196
  } catch (error) {
31198
- log21.error("\u274C Failed to read i18n file:", error);
31197
+ log20.error("\u274C Failed to read i18n file:", error);
31199
31198
  throw error;
31200
31199
  } finally {
31201
31200
  if (file) {
31202
31201
  try {
31203
31202
  await file.close();
31204
31203
  } catch (closeError) {
31205
- log21.warn(`Failed to close i18n file: ${closeError}`);
31204
+ log20.warn(`Failed to close i18n file: ${closeError}`);
31206
31205
  }
31207
31206
  }
31208
31207
  }
@@ -31214,7 +31213,7 @@ var init_translator = __esm({
31214
31213
  try {
31215
31214
  const parsed = load(content);
31216
31215
  if (!Array.isArray(parsed)) {
31217
- log21.warn("i18n YAML content is not an array");
31216
+ log20.warn("i18n YAML content is not an array");
31218
31217
  return [];
31219
31218
  }
31220
31219
  return parsed.filter((item) => item && typeof item === "object" && item.id && item.translation).map((item) => ({
@@ -31222,7 +31221,7 @@ var init_translator = __esm({
31222
31221
  translation: String(item.translation)
31223
31222
  }));
31224
31223
  } catch (error) {
31225
- log21.error("\u274C Failed to parse i18n YAML content:", error);
31224
+ log20.error("\u274C Failed to parse i18n YAML content:", error);
31226
31225
  return [];
31227
31226
  }
31228
31227
  }
@@ -31248,7 +31247,7 @@ async function createTranslator(services) {
31248
31247
  try {
31249
31248
  await translator.setupTranslateFuncs(services);
31250
31249
  } catch (error) {
31251
- log22.warn("Failed to setup translator, continuing without i18n support:", error);
31250
+ log21.warn("Failed to setup translator, continuing without i18n support:", error);
31252
31251
  }
31253
31252
  return translator;
31254
31253
  }
@@ -31285,7 +31284,7 @@ async function createContent(services) {
31285
31284
  pageBuilder.contentHub = contentHub;
31286
31285
  return contentHub;
31287
31286
  }
31288
- var log22;
31287
+ var log21;
31289
31288
  var init_hub = __esm({
31290
31289
  "internal/domain/content/factory/hub.ts"() {
31291
31290
  "use strict";
@@ -31293,7 +31292,7 @@ var init_hub = __esm({
31293
31292
  init_markdown5();
31294
31293
  init_translator();
31295
31294
  init_log();
31296
- log22 = getDomainLogger("content", { component: "content" });
31295
+ log21 = getDomainLogger("content", { component: "content" });
31297
31296
  }
31298
31297
  });
31299
31298
 
@@ -31321,12 +31320,12 @@ var init_kind = __esm({
31321
31320
  });
31322
31321
 
31323
31322
  // internal/domain/content/vo/identity.ts
31324
- var log23, Identity;
31323
+ var log22, Identity;
31325
31324
  var init_identity = __esm({
31326
31325
  "internal/domain/content/vo/identity.ts"() {
31327
31326
  "use strict";
31328
31327
  init_log();
31329
- log23 = getDomainLogger("content", { component: "identity" });
31328
+ log22 = getDomainLogger("content", { component: "identity" });
31330
31329
  Identity = class {
31331
31330
  id;
31332
31331
  lang;
@@ -31378,7 +31377,7 @@ function isContentExt(ext) {
31378
31377
  function newFileInfo2(fi) {
31379
31378
  return FileInfo7.newFileInfo(fi);
31380
31379
  }
31381
- var crypto, path17, log24, contentFileExtensions, contentFileExtensionsSet, FileInfo7;
31380
+ var crypto, path17, log23, contentFileExtensions, contentFileExtensionsSet, FileInfo7;
31382
31381
  var init_fileinfo2 = __esm({
31383
31382
  "internal/domain/content/vo/fileinfo.ts"() {
31384
31383
  "use strict";
@@ -31386,7 +31385,7 @@ var init_fileinfo2 = __esm({
31386
31385
  crypto = __toESM2(require("crypto"));
31387
31386
  path17 = __toESM2(require("path"));
31388
31387
  init_log();
31389
- log24 = getDomainLogger("content", { component: "FileInfo" });
31388
+ log23 = getDomainLogger("content", { component: "FileInfo" });
31390
31389
  contentFileExtensions = [
31391
31390
  ".md"
31392
31391
  ];
@@ -33615,14 +33614,14 @@ function posFromInput2(filename, input, offset) {
33615
33614
  function newPageSource(file) {
33616
33615
  return new Source(file);
33617
33616
  }
33618
- var pageIDCounter, log25, Source;
33617
+ var pageIDCounter, log24, Source;
33619
33618
  var init_pagesource = __esm({
33620
33619
  "internal/domain/content/entity/pagesource.ts"() {
33621
33620
  "use strict";
33622
33621
  init_log();
33623
33622
  init_identity();
33624
33623
  pageIDCounter = 0;
33625
- log25 = getDomainLogger("content", { component: "pagesource" });
33624
+ log24 = getDomainLogger("content", { component: "pagesource" });
33626
33625
  Source = class {
33627
33626
  id;
33628
33627
  identity;
@@ -33754,11 +33753,11 @@ var init_pagesource = __esm({
33754
33753
  */
33755
33754
  async content() {
33756
33755
  try {
33757
- log25.error(`Reading content not implemented from: ${this.file.filename()}`);
33756
+ log24.error(`Reading content not implemented from: ${this.file.filename()}`);
33758
33757
  return new Uint8Array(0);
33759
33758
  } catch (error) {
33760
33759
  const errorMsg = `failed to read content source for "${this.file.filename()}": ${error}`;
33761
- log25.error(errorMsg);
33760
+ log24.error(errorMsg);
33762
33761
  throw new Error(errorMsg);
33763
33762
  }
33764
33763
  }
@@ -33779,7 +33778,7 @@ function addLeadingSlash(path29) {
33779
33778
  }
33780
33779
  return path29;
33781
33780
  }
33782
- var log26, ambiguousContentNode, ContentTreeReverseIndexMap, ContentTreeReverseIndex, pagePredicates, PageMapQueryPagesBelowPathImpl, PageMapQueryPagesInSectionImpl, PageMap;
33781
+ var log25, ambiguousContentNode, ContentTreeReverseIndexMap, ContentTreeReverseIndex, pagePredicates, PageMapQueryPagesBelowPathImpl, PageMapQueryPagesInSectionImpl, PageMap;
33783
33782
  var init_pagemap = __esm({
33784
33783
  "internal/domain/content/entity/pagemap.ts"() {
33785
33784
  "use strict";
@@ -33789,7 +33788,7 @@ var init_pagemap = __esm({
33789
33788
  init_doctree();
33790
33789
  init_sort();
33791
33790
  init_log();
33792
- log26 = getDomainLogger("content", { component: "pagemap" });
33791
+ log25 = getDomainLogger("content", { component: "pagemap" });
33793
33792
  ambiguousContentNode = new PageTreesNode();
33794
33793
  ContentTreeReverseIndexMap = class {
33795
33794
  initOnce = false;
@@ -33892,7 +33891,7 @@ var init_pagemap = __esm({
33892
33891
  try {
33893
33892
  await walker.walk();
33894
33893
  } catch (err) {
33895
- log26.error(`setupReverseIndex error: ${err}`);
33894
+ log25.error(`setupReverseIndex error: ${err}`);
33896
33895
  }
33897
33896
  });
33898
33897
  }
@@ -34047,7 +34046,7 @@ var init_pagemap = __esm({
34047
34046
  try {
34048
34047
  await rw.walk();
34049
34048
  } catch (err) {
34050
- log26.error(`forEachResourceInPage error: ${err}`);
34049
+ log25.error(`forEachResourceInPage error: ${err}`);
34051
34050
  }
34052
34051
  }
34053
34052
  /**
@@ -34101,7 +34100,7 @@ var init_pagemap = __esm({
34101
34100
  sortByWeight(pages);
34102
34101
  return Promise.resolve(pages);
34103
34102
  } catch (err) {
34104
- log26.error(`getPagesInSection error: ${err}`);
34103
+ log25.error(`getPagesInSection error: ${err}`);
34105
34104
  }
34106
34105
  return Promise.resolve(pas);
34107
34106
  });
@@ -34137,7 +34136,7 @@ var init_pagemap = __esm({
34137
34136
  sortByDefault(pages);
34138
34137
  return pages;
34139
34138
  } catch (err) {
34140
- log26.error(`getPagesWithTerm error: ${err}`);
34139
+ log25.error(`getPagesWithTerm error: ${err}`);
34141
34140
  }
34142
34141
  return pas;
34143
34142
  });
@@ -34165,7 +34164,7 @@ var init_pagemap = __esm({
34165
34164
  sortByDefault(pages);
34166
34165
  return pages;
34167
34166
  } catch (err) {
34168
- log26.error(`getTermsForPageInTaxonomy error: ${err}`);
34167
+ log25.error(`getTermsForPageInTaxonomy error: ${err}`);
34169
34168
  }
34170
34169
  return pas;
34171
34170
  });
@@ -34205,7 +34204,7 @@ var init_pagemap = __esm({
34205
34204
  sortByDefault(pages);
34206
34205
  return pages;
34207
34206
  } catch (err) {
34208
- log26.error(`getSections error: ${err}`);
34207
+ log25.error(`getSections error: ${err}`);
34209
34208
  }
34210
34209
  return pagesList;
34211
34210
  }
@@ -34224,13 +34223,13 @@ var init_pagemap = __esm({
34224
34223
  });
34225
34224
 
34226
34225
  // internal/domain/content/entity/pagecollector.ts
34227
- var log27, PagesCollector;
34226
+ var log26, PagesCollector;
34228
34227
  var init_pagecollector = __esm({
34229
34228
  "internal/domain/content/entity/pagecollector.ts"() {
34230
34229
  "use strict";
34231
34230
  init_content3();
34232
34231
  init_log();
34233
- log27 = getDomainLogger("content", { component: "pagecollector" });
34232
+ log26 = getDomainLogger("content", { component: "pagecollector" });
34234
34233
  PagesCollector = class {
34235
34234
  m;
34236
34235
  fs;
@@ -34250,7 +34249,7 @@ var init_pagecollector = __esm({
34250
34249
  await this.collectDir(cfs, dirPath, root2);
34251
34250
  }
34252
34251
  } catch (error) {
34253
- log27.error(`Failed to collect directory: ${error}, continuing...`);
34252
+ log26.error(`Failed to collect directory: ${error}, continuing...`);
34254
34253
  }
34255
34254
  }
34256
34255
  /**
@@ -34262,7 +34261,7 @@ var init_pagecollector = __esm({
34262
34261
  hookPre: async (dir2, path30, readdir2) => {
34263
34262
  const fullPath = path30;
34264
34263
  if (this.processedPaths.has(fullPath)) {
34265
- log27.warn("Path already processed!", {
34264
+ log26.warn("Path already processed!", {
34266
34265
  path: fullPath,
34267
34266
  dirName: dir2.name(),
34268
34267
  dirIsDir: dir2.isDir(),
@@ -34290,7 +34289,7 @@ var init_pagecollector = __esm({
34290
34289
  info: root2
34291
34290
  });
34292
34291
  } catch (error) {
34293
- log27.error(`Failed to collect directory: ${error}`, {
34292
+ log26.error(`Failed to collect directory: ${error}`, {
34294
34293
  path: path29,
34295
34294
  rootName: root2.name(),
34296
34295
  rootIsDir: root2.isDir(),
@@ -34339,7 +34338,7 @@ var init_entity2 = __esm({
34339
34338
  });
34340
34339
 
34341
34340
  // internal/domain/content/entity/content.ts
34342
- var log28, Content2;
34341
+ var log27, Content2;
34343
34342
  var init_content2 = __esm({
34344
34343
  "internal/domain/content/entity/content.ts"() {
34345
34344
  "use strict";
@@ -34348,7 +34347,7 @@ var init_content2 = __esm({
34348
34347
  init_fileinfo2();
34349
34348
  init_log();
34350
34349
  init_paths();
34351
- log28 = getDomainLogger("content", { component: "content" });
34350
+ log27 = getDomainLogger("content", { component: "content" });
34352
34351
  Content2 = class {
34353
34352
  fs;
34354
34353
  converter;
@@ -34386,7 +34385,7 @@ var init_content2 = __esm({
34386
34385
  }
34387
34386
  async collectPages() {
34388
34387
  if (this.pageCollected) {
34389
- log28.info("Pages have already been collected, skipping.");
34388
+ log27.info("Pages have already been collected, skipping.");
34390
34389
  return;
34391
34390
  }
34392
34391
  try {
@@ -34485,7 +34484,7 @@ var init_content2 = __esm({
34485
34484
  try {
34486
34485
  await w.walk();
34487
34486
  } catch (error) {
34488
- log28.error(`WalkPages failed for langIndex ${langIndex}:`, error);
34487
+ log27.error(`WalkPages failed for langIndex ${langIndex}:`, error);
34489
34488
  throw error;
34490
34489
  }
34491
34490
  }
@@ -34530,7 +34529,7 @@ var init_content2 = __esm({
34530
34529
  page: () => sp,
34531
34530
  owner: () => t
34532
34531
  }).catch((err) => {
34533
- log28.error("Error in taxonomy walker:", err);
34532
+ log27.error("Error in taxonomy walker:", err);
34534
34533
  });
34535
34534
  return [false, null];
34536
34535
  }
@@ -34567,7 +34566,7 @@ var init_content2 = __esm({
34567
34566
  }
34568
34567
  return null;
34569
34568
  } catch (error) {
34570
- log28.error(`\u274C Content.getPageFromPath error for path "${path29}":`, error);
34569
+ log27.error(`\u274C Content.getPageFromPath error for path "${path29}":`, error);
34571
34570
  return null;
34572
34571
  }
34573
34572
  }
@@ -34583,7 +34582,7 @@ var init_content2 = __esm({
34583
34582
  }
34584
34583
  return null;
34585
34584
  } catch (error) {
34586
- log28.error(`\u274C Content.getPageFromPath error for path "${file.path()}":`, error);
34585
+ log27.error(`\u274C Content.getPageFromPath error for path "${file.path()}":`, error);
34587
34586
  return null;
34588
34587
  }
34589
34588
  }
@@ -34593,7 +34592,7 @@ var init_content2 = __esm({
34593
34592
  try {
34594
34593
  await this.addOrUpdateFile(fileMetaInfo, affectedPageKeys);
34595
34594
  } catch (error) {
34596
- log28.error(`Failed to process file change for ${filePath}:`, error);
34595
+ log27.error(`Failed to process file change for ${filePath}:`, error);
34597
34596
  }
34598
34597
  }
34599
34598
  return affectedPageKeys;
@@ -34617,7 +34616,7 @@ var init_content2 = __esm({
34617
34616
  page.pageIdentity().markStale();
34618
34617
  }
34619
34618
  } catch (error) {
34620
- log28.error(`Failed to add/update file in PageMap: ${fileMetaInfo.fileName()}`, error);
34619
+ log27.error(`Failed to add/update file in PageMap: ${fileMetaInfo.fileName()}`, error);
34621
34620
  throw error;
34622
34621
  }
34623
34622
  }
@@ -34629,7 +34628,7 @@ var init_content2 = __esm({
34629
34628
  */
34630
34629
  translate(lang2, translationID) {
34631
34630
  if (!this.translator) {
34632
- log28.warn("Translator not initialized, returning fallback translation");
34631
+ log27.warn("Translator not initialized, returning fallback translation");
34633
34632
  return `[i18n] ${translationID}`;
34634
34633
  }
34635
34634
  return this.translator.translate(lang2, translationID);
@@ -34763,7 +34762,7 @@ var init_pagecontent = __esm({
34763
34762
  });
34764
34763
 
34765
34764
  // internal/domain/content/entity/section.ts
34766
- var log29, PAGE_HOME_BASE, Section;
34765
+ var log28, PAGE_HOME_BASE, Section;
34767
34766
  var init_section = __esm({
34768
34767
  "internal/domain/content/entity/section.ts"() {
34769
34768
  "use strict";
@@ -34773,7 +34772,7 @@ var init_section = __esm({
34773
34772
  init_kind();
34774
34773
  init_doctree();
34775
34774
  init_log();
34776
- log29 = getDomainLogger("content", { component: "section" });
34775
+ log28 = getDomainLogger("content", { component: "section" });
34777
34776
  PAGE_HOME_BASE = "/";
34778
34777
  Section = class {
34779
34778
  home;
@@ -34848,7 +34847,7 @@ var init_section = __esm({
34848
34847
  try {
34849
34848
  await walker.walk();
34850
34849
  } catch (error) {
34851
- log29.error("Error walking pages:", error);
34850
+ log28.error("Error walking pages:", error);
34852
34851
  throw error;
34853
34852
  }
34854
34853
  if (!this.home) {
@@ -35037,12 +35036,12 @@ var init_pageoutput = __esm({
35037
35036
  });
35038
35037
 
35039
35038
  // internal/domain/content/entity/paginator.ts
35040
- var log30, PaginatorImpl, PagerImpl, PaginatorManagerImpl;
35039
+ var log29, PaginatorImpl, PagerImpl, PaginatorManagerImpl;
35041
35040
  var init_paginator = __esm({
35042
35041
  "internal/domain/content/entity/paginator.ts"() {
35043
35042
  "use strict";
35044
35043
  init_log();
35045
- log30 = getDomainLogger("content", { component: "paginator" });
35044
+ log29 = getDomainLogger("content", { component: "paginator" });
35046
35045
  PaginatorImpl = class {
35047
35046
  paginatedElements;
35048
35047
  _pagers;
@@ -35411,7 +35410,7 @@ var init_paths2 = __esm({
35411
35410
  });
35412
35411
 
35413
35412
  // internal/domain/content/entity/page.ts
35414
- var import_path10, log31, PageImpl, TaxonomyPageImpl, TermPageImpl;
35413
+ var import_path10, log30, PageImpl, TaxonomyPageImpl, TermPageImpl;
35415
35414
  var init_page = __esm({
35416
35415
  "internal/domain/content/entity/page.ts"() {
35417
35416
  "use strict";
@@ -35425,7 +35424,7 @@ var init_page = __esm({
35425
35424
  init_sort();
35426
35425
  import_path10 = __toESM2(require("path"));
35427
35426
  init_log();
35428
- log31 = getDomainLogger("content", { component: "page" });
35427
+ log30 = getDomainLogger("content", { component: "page" });
35429
35428
  PageImpl = class {
35430
35429
  source;
35431
35430
  content;
@@ -36496,13 +36495,13 @@ function newPartialTemplateNamespace() {
36496
36495
  function newShortcodeTemplateNamespace() {
36497
36496
  return new ShortcodeTemplateNamespace();
36498
36497
  }
36499
- var log32, BaseNamespace, RegularTemplateNamespace, PartialTemplateNamespace, ShortcodeTemplateNamespace;
36498
+ var log31, BaseNamespace, RegularTemplateNamespace, PartialTemplateNamespace, ShortcodeTemplateNamespace;
36500
36499
  var init_namespace = __esm({
36501
36500
  "internal/domain/template/vo/namespace.ts"() {
36502
36501
  "use strict";
36503
36502
  init_type8();
36504
36503
  init_log();
36505
- log32 = getDomainLogger("template", { component: "namespace" });
36504
+ log31 = getDomainLogger("template", { component: "namespace" });
36506
36505
  BaseNamespace = class {
36507
36506
  templates = /* @__PURE__ */ new Map();
36508
36507
  mutex = /* @__PURE__ */ new Set();
@@ -39417,12 +39416,12 @@ var require_dist = __commonJS({
39417
39416
  });
39418
39417
 
39419
39418
  // pkg/cahce/cache.ts
39420
- var log33, ConcurrentCache, globalBuildCache;
39419
+ var log32, ConcurrentCache, globalBuildCache;
39421
39420
  var init_cache2 = __esm({
39422
39421
  "pkg/cahce/cache.ts"() {
39423
39422
  "use strict";
39424
39423
  init_log();
39425
- log33 = getDomainLogger("content", { component: "cache" });
39424
+ log32 = getDomainLogger("content", { component: "cache" });
39426
39425
  ConcurrentCache = class {
39427
39426
  cache = /* @__PURE__ */ new Map();
39428
39427
  pendingPromises = /* @__PURE__ */ new Map();
@@ -39518,7 +39517,7 @@ var init_cache2 = __esm({
39518
39517
  }
39519
39518
  } catch (error) {
39520
39519
  this.pendingPromises.delete(key3);
39521
- log33.error(`Failed to create value for key ${String(key3)} : ${error}`);
39520
+ log32.error(`Failed to create value for key ${String(key3)} : ${error}`);
39522
39521
  throw error;
39523
39522
  }
39524
39523
  }
@@ -39569,7 +39568,7 @@ var init_cache2 = __esm({
39569
39568
  function newParser(funcMap = /* @__PURE__ */ new Map()) {
39570
39569
  return new Parser(funcMap);
39571
39570
  }
39572
- var import_text_template, import_text_template2, log34, Parser;
39571
+ var import_text_template, import_text_template2, log33, Parser;
39573
39572
  var init_parser = __esm({
39574
39573
  "internal/domain/template/entity/parser.ts"() {
39575
39574
  "use strict";
@@ -39579,7 +39578,7 @@ var init_parser = __esm({
39579
39578
  init_info();
39580
39579
  init_log();
39581
39580
  init_cache2();
39582
- log34 = getDomainLogger("template", { component: "parser" });
39581
+ log33 = getDomainLogger("template", { component: "parser" });
39583
39582
  Parser = class {
39584
39583
  prototypeText;
39585
39584
  prototypeTextClone;
@@ -39673,7 +39672,7 @@ var init_parser = __esm({
39673
39672
  return [ts, true, null];
39674
39673
  } catch (error) {
39675
39674
  const templateError = error instanceof TemplateError ? error : new TemplateError(`Parse overlap failed: ${error.message}`, "PARSE_OVERLAP_FAILED");
39676
- log34.error(`Failed to parse template overlap for key: ${cacheKey}: ${templateError.message}`);
39675
+ log33.error(`Failed to parse template overlap for key: ${cacheKey}: ${templateError.message}`);
39677
39676
  return [null, false, templateError];
39678
39677
  }
39679
39678
  });
@@ -39710,12 +39709,12 @@ var init_parser = __esm({
39710
39709
  if (state.template.Tree) {
39711
39710
  const [, addErr] = overlayTmpl.AddParseTree(name, state.template.Tree);
39712
39711
  if (addErr) {
39713
- log34.error(`AddParseTree failed: ${addErr.message} with name ${name}`);
39712
+ log33.error(`AddParseTree failed: ${addErr.message} with name ${name}`);
39714
39713
  throw new TemplateError(`AddParseTree failed: ${addErr.message}`, "ADD_PARSE_TREE_FAILED");
39715
39714
  }
39716
39715
  }
39717
39716
  } catch (error) {
39718
- log34.error(`Error adding dependency ${name} to template ${overlay.name}:`, error);
39717
+ log33.error(`Error adding dependency ${name} to template ${overlay.name}:`, error);
39719
39718
  throw new TemplateError(`Failed to add dependency ${name}: ${error.message}`, "DEPENDENCY_ADD_FAILED");
39720
39719
  }
39721
39720
  }
@@ -39807,7 +39806,7 @@ var init_parser = __esm({
39807
39806
  }
39808
39807
  }
39809
39808
  } catch (error) {
39810
- log34.error(`Error getting dependencies for template ${tmpl.Name()}:`, error);
39809
+ log33.error(`Error getting dependencies for template ${tmpl.Name()}:`, error);
39811
39810
  }
39812
39811
  return resultMap;
39813
39812
  }
@@ -40051,7 +40050,7 @@ var init_lookup = __esm({
40051
40050
  function newTemplateEngine(executor, lookup, parser, templateNamespace, partialNamespace, shortcodeNamespace, fs3) {
40052
40051
  return new TemplateEngine(executor, lookup, parser, templateNamespace, partialNamespace, shortcodeNamespace, fs3);
40053
40052
  }
40054
- var log35, TemplateEngine;
40053
+ var log34, TemplateEngine;
40055
40054
  var init_template = __esm({
40056
40055
  "internal/domain/template/entity/template.ts"() {
40057
40056
  "use strict";
@@ -40060,7 +40059,7 @@ var init_template = __esm({
40060
40059
  init_info();
40061
40060
  init_log();
40062
40061
  init_paths();
40063
- log35 = getDomainLogger("template", { component: "template-engine" });
40062
+ log34 = getDomainLogger("template", { component: "template-engine" });
40064
40063
  TemplateEngine = class {
40065
40064
  executor;
40066
40065
  lookup;
@@ -40166,7 +40165,7 @@ var init_template = __esm({
40166
40165
  return [tmpl, name, true, null];
40167
40166
  }
40168
40167
  } catch (error) {
40169
- log35.error("Error finding template:", error);
40168
+ log34.error("Error finding template:", error);
40170
40169
  }
40171
40170
  }
40172
40171
  return [null, null, false, null];
@@ -40206,7 +40205,7 @@ var init_template = __esm({
40206
40205
  try {
40207
40206
  await this.addTemplateFileInfo(normalizedName, fi);
40208
40207
  } catch (error) {
40209
- log35.error("Error adding template:", new TemplateError(`Failed to add template ${normalizedName}: ${error.message}`, "LOAD_TEMPLATE_FAILED"));
40208
+ log34.error("Error adding template:", new TemplateError(`Failed to add template ${normalizedName}: ${error.message}`, "LOAD_TEMPLATE_FAILED"));
40210
40209
  }
40211
40210
  };
40212
40211
  try {
@@ -40414,17 +40413,17 @@ function updateEngineDependentFunctions(engine) {
40414
40413
  try {
40415
40414
  func.updateEngine(engine);
40416
40415
  } catch (error) {
40417
- log36.error(`\u274C Failed to update function ${func.getFunctionName()}:`, error);
40416
+ log35.error(`\u274C Failed to update function ${func.getFunctionName()}:`, error);
40418
40417
  }
40419
40418
  }
40420
40419
  }
40421
- var crypto2, log36, engineDependentFunctions, PartialFunction, DefaultTemplateRegistry;
40420
+ var crypto2, log35, engineDependentFunctions, PartialFunction, DefaultTemplateRegistry;
40422
40421
  var init_registry = __esm({
40423
40422
  "internal/domain/template/vo/registry.ts"() {
40424
40423
  "use strict";
40425
40424
  init_log();
40426
40425
  crypto2 = __toESM2(require("crypto"));
40427
- log36 = getDomainLogger("template", { component: "registry" });
40426
+ log35 = getDomainLogger("template", { component: "registry" });
40428
40427
  engineDependentFunctions = [];
40429
40428
  PartialFunction = class {
40430
40429
  engine = null;
@@ -40436,14 +40435,14 @@ var init_registry = __esm({
40436
40435
  }
40437
40436
  execute = async (name, context) => {
40438
40437
  if (!this.engine) {
40439
- log36.error(`Partial function called but engine not set: ${name}`);
40438
+ log35.error(`Partial function called but engine not set: ${name}`);
40440
40439
  return `<!-- Partial function called but engine not ready: ${name} -->`;
40441
40440
  }
40442
40441
  try {
40443
40442
  const templateName = name.startsWith("partials/") ? name : `partials/${name}`;
40444
40443
  return await this.executePartial(templateName, context);
40445
40444
  } catch (error) {
40446
- log36.error(`Partial execution failed for "${name}":`, error);
40445
+ log35.error(`Partial execution failed for "${name}":`, error);
40447
40446
  return `<!-- Partial execution failed: ${name} - ${error.message} -->`;
40448
40447
  }
40449
40448
  };
@@ -40457,21 +40456,21 @@ var init_registry = __esm({
40457
40456
  try {
40458
40457
  const [templateObj, found2, err] = await this.engine.getPartial(templateName);
40459
40458
  if (err) {
40460
- log36.error(`Error getting partial template:`, err);
40459
+ log35.error(`Error getting partial template:`, err);
40461
40460
  return `<!-- Error getting partial template: ${templateName} - ${err.message} -->`;
40462
40461
  }
40463
40462
  if (!found2 || !templateObj) {
40464
- log36.warn(`Template not found: ${templateName}`);
40463
+ log35.warn(`Template not found: ${templateName}`);
40465
40464
  return `<!-- Template not found: ${templateName} -->`;
40466
40465
  }
40467
40466
  const [result, execErr] = await templateObj.Execute(context);
40468
40467
  if (execErr) {
40469
- log36.error(`Template execution error:`, execErr);
40468
+ log35.error(`Template execution error:`, execErr);
40470
40469
  return `<!-- Template execution error: ${templateName} - ${execErr.message} -->`;
40471
40470
  }
40472
40471
  return result;
40473
40472
  } catch (error) {
40474
- log36.error(`Sync partial execution failed:`, error);
40473
+ log35.error(`Sync partial execution failed:`, error);
40475
40474
  return `<!-- Partial sync execution failed: ${templateName} - ${error.message} -->`;
40476
40475
  }
40477
40476
  }
@@ -40822,11 +40821,11 @@ var init_registry = __esm({
40822
40821
  });
40823
40822
  funcMap.set("split", (str2, sep3) => {
40824
40823
  if (str2 === null || str2 === void 0) {
40825
- log36.warn("split function: first argument is null or undefined");
40824
+ log35.warn("split function: first argument is null or undefined");
40826
40825
  return [];
40827
40826
  }
40828
40827
  if (typeof str2 !== "string") {
40829
- log36.warn("split function: first argument must be a string, got:", typeof str2, "value:", str2);
40828
+ log35.warn("split function: first argument must be a string, got:", typeof str2, "value:", str2);
40830
40829
  if (Array.isArray(str2)) {
40831
40830
  return str2;
40832
40831
  }
@@ -40837,11 +40836,11 @@ var init_registry = __esm({
40837
40836
  });
40838
40837
  funcMap.set("splitRegex", (str2, regexPattern) => {
40839
40838
  if (str2 === null || str2 === void 0) {
40840
- log36.warn("splitRegex function: first argument is null or undefined");
40839
+ log35.warn("splitRegex function: first argument is null or undefined");
40841
40840
  return [];
40842
40841
  }
40843
40842
  if (typeof str2 !== "string") {
40844
- log36.warn("splitRegex function: first argument must be a string, got:", typeof str2, "value:", str2);
40843
+ log35.warn("splitRegex function: first argument must be a string, got:", typeof str2, "value:", str2);
40845
40844
  if (Array.isArray(str2)) {
40846
40845
  return str2;
40847
40846
  }
@@ -40850,7 +40849,7 @@ var init_registry = __esm({
40850
40849
  const regex2 = new RegExp(regexPattern);
40851
40850
  return stringValue.split(regex2);
40852
40851
  } catch (error) {
40853
- log36.warn("splitRegex function: invalid regex pattern:", regexPattern, "error:", error);
40852
+ log35.warn("splitRegex function: invalid regex pattern:", regexPattern, "error:", error);
40854
40853
  return [stringValue];
40855
40854
  }
40856
40855
  }
@@ -40858,7 +40857,7 @@ var init_registry = __esm({
40858
40857
  const regex2 = new RegExp(regexPattern);
40859
40858
  return str2.split(regex2);
40860
40859
  } catch (error) {
40861
- log36.warn("splitRegex function: invalid regex pattern:", regexPattern, "error:", error);
40860
+ log35.warn("splitRegex function: invalid regex pattern:", regexPattern, "error:", error);
40862
40861
  return [str2];
40863
40862
  }
40864
40863
  });
@@ -41643,7 +41642,7 @@ var init_registry = __esm({
41643
41642
  try {
41644
41643
  return this.doIndex(item, indices);
41645
41644
  } catch (error) {
41646
- log36.error(`Index of type ${typeof item} with args [${indices.join(", ")}] failed:`, error);
41645
+ log35.error(`Index of type ${typeof item} with args [${indices.join(", ")}] failed:`, error);
41647
41646
  return null;
41648
41647
  }
41649
41648
  });
@@ -42221,7 +42220,7 @@ var init_registry = __esm({
42221
42220
  for (let i = 0; i < args.length; i++) {
42222
42221
  message = message.replace(/%[sd%]/, String(args[i]));
42223
42222
  }
42224
- log36.error("Template Error:", message);
42223
+ log35.error("Template Error:", message);
42225
42224
  return "";
42226
42225
  });
42227
42226
  funcMap.set("warnf", (format3, ...args) => {
@@ -42229,7 +42228,7 @@ var init_registry = __esm({
42229
42228
  for (let i = 0; i < args.length; i++) {
42230
42229
  message = message.replace(/%[sd%]/, String(args[i]));
42231
42230
  }
42232
- log36.warn("Template Warning:", message);
42231
+ log35.warn("Template Warning:", message);
42233
42232
  return "";
42234
42233
  });
42235
42234
  funcMap.set("fmt", () => ({
@@ -42256,7 +42255,7 @@ var init_registry = __esm({
42256
42255
  for (let i = 0; i < args.length; i++) {
42257
42256
  message = message.replace(/%[sd%]/, String(args[i]));
42258
42257
  }
42259
- log36.error("Template Error:", message);
42258
+ log35.error("Template Error:", message);
42260
42259
  return "";
42261
42260
  },
42262
42261
  // Erroridf formats args according to a format specifier and logs an ERROR with ID
@@ -42266,7 +42265,7 @@ var init_registry = __esm({
42266
42265
  for (let i = 0; i < args.length; i++) {
42267
42266
  message = message.replace(/%[sd%]/, String(args[i]));
42268
42267
  }
42269
- log36.error("Template Error:", message);
42268
+ log35.error("Template Error:", message);
42270
42269
  return "";
42271
42270
  },
42272
42271
  // Warnf formats args according to a format specifier and logs a WARNING
@@ -42276,7 +42275,7 @@ var init_registry = __esm({
42276
42275
  for (let i = 0; i < args.length; i++) {
42277
42276
  message = message.replace(/%[sd%]/, String(args[i]));
42278
42277
  }
42279
- log36.error("Template Warning:", message);
42278
+ log35.error("Template Warning:", message);
42280
42279
  return "";
42281
42280
  },
42282
42281
  // Warnidf formats args according to a format specifier and logs a WARNING with ID
@@ -42286,7 +42285,7 @@ var init_registry = __esm({
42286
42285
  for (let i = 0; i < args.length; i++) {
42287
42286
  message = message.replace(/%[sd%]/, String(args[i]));
42288
42287
  }
42289
- log36.error("Template Warning:", message);
42288
+ log35.error("Template Warning:", message);
42290
42289
  return "";
42291
42290
  }
42292
42291
  }));
@@ -42934,7 +42933,7 @@ var init_template3 = __esm({
42934
42933
  });
42935
42934
 
42936
42935
  // internal/domain/content/entity/pagebuilder.ts
42937
- var log37, PageBuilder;
42936
+ var log36, PageBuilder;
42938
42937
  var init_pagebuilder = __esm({
42939
42938
  "internal/domain/content/entity/pagebuilder.ts"() {
42940
42939
  "use strict";
@@ -42950,7 +42949,7 @@ var init_pagebuilder = __esm({
42950
42949
  init_paginator();
42951
42950
  init_shortcode2();
42952
42951
  init_template3();
42953
- log37 = getDomainLogger("content", { component: "pagebuilder" });
42952
+ log36 = getDomainLogger("content", { component: "pagebuilder" });
42954
42953
  PageBuilder = class {
42955
42954
  urlSvc;
42956
42955
  langSvc;
@@ -43197,7 +43196,7 @@ var init_pagebuilder = __esm({
43197
43196
  };
43198
43197
  return;
43199
43198
  }
43200
- log37.info(`Lazy rendering not enabled, rendering immediately for page: ${p2.path()}`);
43199
+ log36.info(`Lazy rendering not enabled, rendering immediately for page: ${p2.path()}`);
43201
43200
  const contentResult = await this.renderableDocument?.render({
43202
43201
  maxSummaryLength: 300,
43203
43202
  // Default summary length
@@ -43317,24 +43316,24 @@ var init_pagebuilder = __esm({
43317
43316
  createShortcodeRenderer(p2) {
43318
43317
  return async (shortcode) => {
43319
43318
  if (!this.templateSvc) {
43320
- log37.warn(`Template service not available for shortcode: ${shortcode.name}`);
43319
+ log36.warn(`Template service not available for shortcode: ${shortcode.name}`);
43321
43320
  return "";
43322
43321
  }
43323
43322
  try {
43324
43323
  if (!shortcode.name) {
43325
- log37.warn("Shortcode missing name");
43324
+ log36.warn("Shortcode missing name");
43326
43325
  return "";
43327
43326
  }
43328
43327
  return await this.doRenderShortcode(shortcode, null, 0, p2);
43329
43328
  } catch (error) {
43330
- log37.error(`Error rendering shortcode "${shortcode.name}":`, error);
43329
+ log36.error(`Error rendering shortcode "${shortcode.name}":`, error);
43331
43330
  return "";
43332
43331
  }
43333
43332
  };
43334
43333
  }
43335
43334
  async doRenderShortcode(sc, parent, level, page) {
43336
43335
  if (sc.inline) {
43337
- log37.warn("Inline shortcodes are not supported yet.");
43336
+ log36.warn("Inline shortcodes are not supported yet.");
43338
43337
  return "";
43339
43338
  }
43340
43339
  let data = new ShortcodeWithPage(
@@ -43363,7 +43362,7 @@ var init_pagebuilder = __esm({
43363
43362
  );
43364
43363
  inner += nestedResult;
43365
43364
  } else {
43366
- log37.error(
43365
+ log36.error(
43367
43366
  `Illegal state on shortcode rendering of "${sc.name}". Illegal type in inner data: ${typeof innerData}`
43368
43367
  );
43369
43368
  return "";
@@ -43437,7 +43436,7 @@ var init_pagebuilder = __esm({
43437
43436
  }
43438
43437
  return resStr;
43439
43438
  } catch (error) {
43440
- log37.error(`Error rendering shortcode markdown:`, error);
43439
+ log36.error(`Error rendering shortcode markdown:`, error);
43441
43440
  return "";
43442
43441
  }
43443
43442
  }
@@ -43654,7 +43653,7 @@ function toInt(v) {
43654
43653
  }
43655
43654
  throw new Error(`cannot convert ${typeof v} to int`);
43656
43655
  }
43657
- var log38, Term;
43656
+ var log37, Term;
43658
43657
  var init_term = __esm({
43659
43658
  "internal/domain/content/entity/term.ts"() {
43660
43659
  "use strict";
@@ -43664,7 +43663,7 @@ var init_term = __esm({
43664
43663
  init_frontmatter();
43665
43664
  init_doctree();
43666
43665
  init_log();
43667
- log38 = getDomainLogger("content", { component: "term" });
43666
+ log37 = getDomainLogger("content", { component: "term" });
43668
43667
  Term = class {
43669
43668
  terms;
43670
43669
  fsSvc;
@@ -43698,7 +43697,7 @@ var init_term = __esm({
43698
43697
  try {
43699
43698
  weight2 = toInt(w);
43700
43699
  } catch (err) {
43701
- log38.warn(`Unable to convert taxonomy weight ${w} to int for "${ps.paths().path()}"`);
43700
+ log37.warn(`Unable to convert taxonomy weight ${w} to int for "${ps.paths().path()}"`);
43702
43701
  }
43703
43702
  }
43704
43703
  for (let i = 0; i < vals.length; i++) {
@@ -43789,12 +43788,12 @@ var init_content3 = __esm({
43789
43788
  });
43790
43789
 
43791
43790
  // internal/domain/site/entity/pager.ts
43792
- var log39, SitePager;
43791
+ var log38, SitePager;
43793
43792
  var init_pager = __esm({
43794
43793
  "internal/domain/site/entity/pager.ts"() {
43795
43794
  "use strict";
43796
43795
  init_log();
43797
- log39 = getDomainLogger("site", { component: "pager" });
43796
+ log38 = getDomainLogger("site", { component: "pager" });
43798
43797
  SitePager = class _SitePager {
43799
43798
  page;
43800
43799
  pager;
@@ -43901,14 +43900,14 @@ var init_pager = __esm({
43901
43900
  });
43902
43901
 
43903
43902
  // internal/domain/site/entity/page.ts
43904
- var import_path11, log40, Page2;
43903
+ var import_path11, log39, Page2;
43905
43904
  var init_page2 = __esm({
43906
43905
  "internal/domain/site/entity/page.ts"() {
43907
43906
  "use strict";
43908
43907
  import_path11 = __toESM2(require("path"));
43909
43908
  init_log();
43910
43909
  init_pager();
43911
- log40 = getDomainLogger("site", { component: "page" });
43910
+ log39 = getDomainLogger("site", { component: "page" });
43912
43911
  Page2 = class _Page {
43913
43912
  // Services
43914
43913
  tmplSvc;
@@ -43947,7 +43946,7 @@ var init_page2 = __esm({
43947
43946
  await this.renderResources();
43948
43947
  await this.renderPage();
43949
43948
  } catch (error) {
43950
- log40.error(`Failed to render page ${this.paths().path()}: ${error}`);
43949
+ log39.error(`Failed to render page ${this.paths().path()}: ${error}`);
43951
43950
  }
43952
43951
  }
43953
43952
  getPageOutput() {
@@ -43964,7 +43963,7 @@ var init_page2 = __esm({
43964
43963
  const layouts = this.layouts();
43965
43964
  const { preparer: tmpl, found: found2 } = await this.tmplSvc.lookupLayout(layouts);
43966
43965
  if (!found2) {
43967
- log40.warn(`Failed to find layout: ${layouts.join(",")} for page ${this.paths().path()}`);
43966
+ log39.warn(`Failed to find layout: ${layouts.join(",")} for page ${this.paths().path()}`);
43968
43967
  return;
43969
43968
  }
43970
43969
  const targetFilenames = [];
@@ -44056,7 +44055,7 @@ var init_page2 = __esm({
44056
44055
  try {
44057
44056
  await stream.close();
44058
44057
  } catch (closeError) {
44059
- log40.warn(`Failed to close resource stream: ${closeError}`);
44058
+ log39.warn(`Failed to close resource stream: ${closeError}`);
44060
44059
  }
44061
44060
  }
44062
44061
  }
@@ -44444,7 +44443,7 @@ var init_page2 = __esm({
44444
44443
  }
44445
44444
  return this._paginator;
44446
44445
  } catch (error) {
44447
- log40.error("Error during pagination:", error);
44446
+ log39.error("Error during pagination:", error);
44448
44447
  return null;
44449
44448
  }
44450
44449
  }
@@ -44457,7 +44456,7 @@ var init_page2 = __esm({
44457
44456
  this._paginator = null;
44458
44457
  }
44459
44458
  } catch (error) {
44460
- log40.error("Error initializing Paginator:", error);
44459
+ log39.error("Error initializing Paginator:", error);
44461
44460
  this._paginator = null;
44462
44461
  }
44463
44462
  }
@@ -44493,7 +44492,7 @@ var init_page2 = __esm({
44493
44492
  sitePage(p2) {
44494
44493
  try {
44495
44494
  if (p2 === null) {
44496
- log40.warn(`Invalid content page provided: ${p2}`);
44495
+ log39.warn(`Invalid content page provided: ${p2}`);
44497
44496
  return null;
44498
44497
  }
44499
44498
  return new _Page(
@@ -44504,7 +44503,7 @@ var init_page2 = __esm({
44504
44503
  this.site
44505
44504
  );
44506
44505
  } catch (error) {
44507
- log40.error(`Error creating site page: ${error}`);
44506
+ log39.error(`Error creating site page: ${error}`);
44508
44507
  return null;
44509
44508
  }
44510
44509
  }
@@ -44960,12 +44959,12 @@ __export2(taxonomies_builder_exports, {
44960
44959
  WeightedPage: () => WeightedPage,
44961
44960
  WeightedPages: () => WeightedPages
44962
44961
  });
44963
- var log41, WeightedPage, WeightedPages, Taxonomy3, OrderedTaxonomyEntry, OrderedTaxonomy, TaxonomyList, TaxonomiesBuilder;
44962
+ var log40, WeightedPage, WeightedPages, Taxonomy3, OrderedTaxonomyEntry, OrderedTaxonomy, TaxonomyList, TaxonomiesBuilder;
44964
44963
  var init_taxonomies_builder = __esm({
44965
44964
  "internal/domain/site/entity/taxonomies-builder.ts"() {
44966
44965
  "use strict";
44967
44966
  init_log();
44968
- log41 = getDomainLogger("site", { component: "taxonomies-builder" });
44967
+ log40 = getDomainLogger("site", { component: "taxonomies-builder" });
44969
44968
  WeightedPage = class {
44970
44969
  page;
44971
44970
  // Site Page (wrapped)
@@ -45003,7 +45002,7 @@ var init_taxonomies_builder = __esm({
45003
45002
  // Page returns the first page (equivalent to Go's Page method)
45004
45003
  page() {
45005
45004
  if (this.length === 0) {
45006
- log41.error("Page called on empty WeightedPages");
45005
+ log40.error("Page called on empty WeightedPages");
45007
45006
  return null;
45008
45007
  }
45009
45008
  return this[0];
@@ -45181,7 +45180,7 @@ var init_taxonomies_builder = __esm({
45181
45180
  );
45182
45181
  return taxonomies;
45183
45182
  } catch (error) {
45184
- log41.error(`Failed to create taxonomies: ${error}`);
45183
+ log40.error(`Failed to create taxonomies: ${error}`);
45185
45184
  throw error;
45186
45185
  }
45187
45186
  }
@@ -45193,12 +45192,12 @@ var init_taxonomies_builder = __esm({
45193
45192
  function newEmptyMenus() {
45194
45193
  return new Menus({});
45195
45194
  }
45196
- var log42, Menu2, Menus;
45195
+ var log41, Menu2, Menus;
45197
45196
  var init_menu = __esm({
45198
45197
  "internal/domain/site/valueobject/menu.ts"() {
45199
45198
  "use strict";
45200
45199
  init_log();
45201
- log42 = getDomainLogger("site", { component: "menu" });
45200
+ log41 = getDomainLogger("site", { component: "menu" });
45202
45201
  Menu2 = class _Menu {
45203
45202
  _title;
45204
45203
  _url;
@@ -45510,20 +45509,20 @@ var init_path3 = __esm({
45510
45509
  });
45511
45510
 
45512
45511
  // internal/domain/site/entity/pagegraph.ts
45513
- var log43, PageGraph;
45512
+ var log42, PageGraph;
45514
45513
  var init_pagegraph = __esm({
45515
45514
  "internal/domain/site/entity/pagegraph.ts"() {
45516
45515
  "use strict";
45517
45516
  init_path3();
45518
45517
  init_log();
45519
- log43 = getDomainLogger("site", { component: "PageGraph" });
45518
+ log42 = getDomainLogger("site", { component: "PageGraph" });
45520
45519
  PageGraph = class {
45521
45520
  allSlugs;
45522
45521
  /** Map of page slug → outgoing links (simplified slugs) */
45523
45522
  outgoingLinks = /* @__PURE__ */ new Map();
45524
45523
  constructor(slugs) {
45525
45524
  this.allSlugs = [...slugs];
45526
- log43.info(`PageGraph initialized with ${slugs.length} items (pages + resources)`);
45525
+ log42.info(`PageGraph initialized with ${slugs.length} items (pages + resources)`);
45527
45526
  }
45528
45527
  /**
45529
45528
  * Register outgoing links for a page (called during Pass 2)
@@ -61680,7 +61679,7 @@ var init_is_absolute_url = __esm({
61680
61679
  function createHtmlLinkProcessor(graph, options) {
61681
61680
  return new HtmlLinkProcessor(graph, options);
61682
61681
  }
61683
- var import_path13, log44, defaultOptions2, HtmlLinkProcessor;
61682
+ var import_path13, log43, defaultOptions2, HtmlLinkProcessor;
61684
61683
  var init_html_link_processor = __esm({
61685
61684
  "internal/domain/site/service/html-link-processor.ts"() {
61686
61685
  "use strict";
@@ -61692,7 +61691,7 @@ var init_html_link_processor = __esm({
61692
61691
  import_path13 = __toESM2(require("path"));
61693
61692
  init_path3();
61694
61693
  init_log();
61695
- log44 = getDomainLogger("site", { component: "HtmlLinkProcessor" });
61694
+ log43 = getDomainLogger("site", { component: "HtmlLinkProcessor" });
61696
61695
  defaultOptions2 = {
61697
61696
  markdownLinkResolution: "shortest",
61698
61697
  prettyLinks: true,
@@ -61723,7 +61722,7 @@ var init_html_link_processor = __esm({
61723
61722
  */
61724
61723
  async processLinks(srcSlug, html9) {
61725
61724
  if (!html9 || typeof html9 !== "string") {
61726
- log44.error(`[HtmlLinkProcessor] Invalid HTML input: ${typeof html9}`);
61725
+ log43.error(`[HtmlLinkProcessor] Invalid HTML input: ${typeof html9}`);
61727
61726
  return { html: html9 || "", outgoingLinks: [] };
61728
61727
  }
61729
61728
  const opts = this.options;
@@ -61861,7 +61860,7 @@ var init_html_link_processor = __esm({
61861
61860
  });
61862
61861
 
61863
61862
  // internal/domain/site/entity/site.ts
61864
- var log45, Site;
61863
+ var log44, Site;
61865
61864
  var init_site = __esm({
61866
61865
  "internal/domain/site/entity/site.ts"() {
61867
61866
  "use strict";
@@ -61873,7 +61872,7 @@ var init_site = __esm({
61873
61872
  init_pagegraph();
61874
61873
  init_html_link_processor();
61875
61874
  init_page_filter();
61876
- log45 = getDomainLogger("site", { component: "site" });
61875
+ log44 = getDomainLogger("site", { component: "site" });
61877
61876
  Site = class {
61878
61877
  // Services
61879
61878
  configSvc;
@@ -61982,7 +61981,7 @@ var init_site = __esm({
61982
61981
  }
61983
61982
  } catch (error) {
61984
61983
  const message = error instanceof Error ? error.message : String(error);
61985
- log45.error(`\u274C Site build failed: ${message}`);
61984
+ log44.error(`\u274C Site build failed: ${message}`);
61986
61985
  throw error;
61987
61986
  }
61988
61987
  }
@@ -62011,7 +62010,7 @@ var init_site = __esm({
62011
62010
  }
62012
62011
  } catch (error) {
62013
62012
  const message = error instanceof Error ? error.message : String(error);
62014
- log45.error(`\u274C Site build failed: ${message}`);
62013
+ log44.error(`\u274C Site build failed: ${message}`);
62015
62014
  throw error;
62016
62015
  }
62017
62016
  }
@@ -62024,7 +62023,7 @@ var init_site = __esm({
62024
62023
  await this.buildPageGraph();
62025
62024
  } catch (error) {
62026
62025
  const message = error instanceof Error ? error.message : String(error);
62027
- log45.error(`\u274C Setup failed: ${message}`);
62026
+ log44.error(`\u274C Setup failed: ${message}`);
62028
62027
  throw error;
62029
62028
  }
62030
62029
  }
@@ -62070,16 +62069,16 @@ var init_site = __esm({
62070
62069
  this.home = sitePage;
62071
62070
  }
62072
62071
  });
62073
- log45.info(`\u{1F4CA} Processing wikilinks for ${pages.length} pages...`);
62072
+ log44.info(`\u{1F4CA} Processing wikilinks for ${pages.length} pages...`);
62074
62073
  for (const page of pages) {
62075
62074
  try {
62076
62075
  await page.WikilinkContent();
62077
62076
  } catch (error) {
62078
62077
  const message = error instanceof Error ? error.message : String(error);
62079
- log45.warn(`\u26A0\uFE0F Failed to process wikilinks for ${page.slug()}: ${message}`);
62078
+ log44.warn(`\u26A0\uFE0F Failed to process wikilinks for ${page.slug()}: ${message}`);
62080
62079
  }
62081
62080
  }
62082
- log45.info(`\u2705 Wikilink processing complete`);
62081
+ log44.info(`\u2705 Wikilink processing complete`);
62083
62082
  for (let i = 0; i < pages.length; i++) {
62084
62083
  const page = pages[i];
62085
62084
  const pagePath = page.file().paths().base();
@@ -62110,16 +62109,16 @@ var init_site = __esm({
62110
62109
  this.home = sitePage;
62111
62110
  }
62112
62111
  });
62113
- log45.info(`\u{1F4CA} Processing wikilinks for ${pages.length} pages...`);
62112
+ log44.info(`\u{1F4CA} Processing wikilinks for ${pages.length} pages...`);
62114
62113
  for (const page of pages) {
62115
62114
  try {
62116
62115
  await page.WikilinkContent();
62117
62116
  } catch (error) {
62118
62117
  const message = error instanceof Error ? error.message : String(error);
62119
- log45.warn(`\u26A0\uFE0F Failed to process wikilinks for ${page.slug()}: ${message}`);
62118
+ log44.warn(`\u26A0\uFE0F Failed to process wikilinks for ${page.slug()}: ${message}`);
62120
62119
  }
62121
62120
  }
62122
- log45.info(`\u2705 Wikilink processing complete`);
62121
+ log44.info(`\u2705 Wikilink processing complete`);
62123
62122
  const totalPages = pages.length;
62124
62123
  for (let i = 0; i < pages.length; i++) {
62125
62124
  const page = pages[i];
@@ -62311,7 +62310,7 @@ var init_site = __esm({
62311
62310
  const sitePage = this.sitePageSync(cp);
62312
62311
  pages.push(sitePage);
62313
62312
  } catch (error) {
62314
- log45.error(`\u274C [Site.sitePages] Failed to convert page ${i}:`, error);
62313
+ log44.error(`\u274C [Site.sitePages] Failed to convert page ${i}:`, error);
62315
62314
  }
62316
62315
  }
62317
62316
  return pages;
@@ -62359,12 +62358,12 @@ var init_site = __esm({
62359
62358
  const langIndex = this.languageSvc.getLanguageIndex(this.language.getCurrentLanguage());
62360
62359
  const contentPage = this.contentSvc.getPageFromPathSync(langIndex, key3);
62361
62360
  if (!contentPage) {
62362
- log45.warn(`\u26A0\uFE0F GetPage: No page found for key "${key3}"`);
62361
+ log44.warn(`\u26A0\uFE0F GetPage: No page found for key "${key3}"`);
62363
62362
  return null;
62364
62363
  }
62365
62364
  return this.sitePageSync(contentPage);
62366
62365
  } catch (error) {
62367
- log45.error(`\u274C Error getting page "${key3}": ${error}`);
62366
+ log44.error(`\u274C Error getting page "${key3}": ${error}`);
62368
62367
  return null;
62369
62368
  }
62370
62369
  }
@@ -62376,7 +62375,7 @@ var init_site = __esm({
62376
62375
  try {
62377
62376
  await this.staticCopySvc.copyStaticFiles(this.staticCopySvc.staticFs(), this.staticCopySvc.publishFs());
62378
62377
  } catch (error) {
62379
- log45.error("\u274C Static file copy failed:", error);
62378
+ log44.error("\u274C Static file copy failed:", error);
62380
62379
  throw error;
62381
62380
  }
62382
62381
  }
@@ -62400,7 +62399,7 @@ var init_site = __esm({
62400
62399
  */
62401
62400
  async buildPageGraph() {
62402
62401
  if (this.pageGraph) {
62403
- log45.debug("PageGraph already built, skipping rebuild");
62402
+ log44.debug("PageGraph already built, skipping rebuild");
62404
62403
  return;
62405
62404
  }
62406
62405
  try {
@@ -62413,15 +62412,15 @@ var init_site = __esm({
62413
62412
  });
62414
62413
  }
62415
62414
  const pageSlugs = allPages.map((page) => page.slug());
62416
- log45.info(`\u{1F4C4} Collected ${pageSlugs.length} page slugs`);
62415
+ log44.info(`\u{1F4C4} Collected ${pageSlugs.length} page slugs`);
62417
62416
  const resourceSlugs = await this.collectResourceSlugs(allPages);
62418
- log45.info(`\u{1F5BC}\uFE0F Collected ${resourceSlugs.length} resource slugs`);
62417
+ log44.info(`\u{1F5BC}\uFE0F Collected ${resourceSlugs.length} resource slugs`);
62419
62418
  const allSlugs = [...pageSlugs, ...resourceSlugs];
62420
62419
  this.pageGraph = new PageGraph(allSlugs);
62421
- log45.info(`\u2705 PageGraph built: ${pageSlugs.length} pages + ${resourceSlugs.length} resources = ${allSlugs.length} total`);
62420
+ log44.info(`\u2705 PageGraph built: ${pageSlugs.length} pages + ${resourceSlugs.length} resources = ${allSlugs.length} total`);
62422
62421
  } catch (error) {
62423
62422
  const message = error instanceof Error ? error.message : String(error);
62424
- log45.error(`\u274C Failed to build PageGraph: ${message}`);
62423
+ log44.error(`\u274C Failed to build PageGraph: ${message}`);
62425
62424
  throw error;
62426
62425
  }
62427
62426
  }
@@ -62449,12 +62448,12 @@ var init_site = __esm({
62449
62448
  }
62450
62449
  } catch (error) {
62451
62450
  const message = error instanceof Error ? error.message : String(error);
62452
- log45.debug(`\u26A0\uFE0F Failed to get resources for page ${page.slug()}: ${message}`);
62451
+ log44.debug(`\u26A0\uFE0F Failed to get resources for page ${page.slug()}: ${message}`);
62453
62452
  }
62454
62453
  }
62455
62454
  } catch (error) {
62456
62455
  const message = error instanceof Error ? error.message : String(error);
62457
- log45.warn(`\u26A0\uFE0F Failed to collect resource slugs: ${message}`);
62456
+ log44.warn(`\u26A0\uFE0F Failed to collect resource slugs: ${message}`);
62458
62457
  }
62459
62458
  return resourceSlugs;
62460
62459
  }
@@ -62474,7 +62473,7 @@ var init_site = __esm({
62474
62473
  */
62475
62474
  async ProcessWikilinks(srcSlug, html9) {
62476
62475
  if (!this.pageGraph) {
62477
- log45.warn("\u26A0\uFE0F PageGraph not built yet, returning original HTML");
62476
+ log44.warn("\u26A0\uFE0F PageGraph not built yet, returning original HTML");
62478
62477
  return html9;
62479
62478
  }
62480
62479
  try {
@@ -62487,7 +62486,7 @@ var init_site = __esm({
62487
62486
  const urlObj = new URL2(baseURL);
62488
62487
  baseURL = urlObj.pathname.replace(/\/$/, "");
62489
62488
  } catch (e) {
62490
- log45.warn(`Failed to parse baseURL as URL: ${baseURL}, treating as path`);
62489
+ log44.warn(`Failed to parse baseURL as URL: ${baseURL}, treating as path`);
62491
62490
  }
62492
62491
  }
62493
62492
  if (baseURL === "/") {
@@ -62507,7 +62506,7 @@ var init_site = __esm({
62507
62506
  return result.html;
62508
62507
  } catch (error) {
62509
62508
  const message = error instanceof Error ? error.message : String(error);
62510
- log45.error(`\u274C Failed to process wikilinks for ${srcSlug}: ${message}`);
62509
+ log44.error(`\u274C Failed to process wikilinks for ${srcSlug}: ${message}`);
62511
62510
  return html9;
62512
62511
  }
62513
62512
  }
@@ -62532,7 +62531,7 @@ var init_site = __esm({
62532
62531
  */
62533
62532
  GetBacklinks(targetSlug) {
62534
62533
  if (!this.pageGraph) {
62535
- log45.warn(`\u26A0\uFE0F PageGraph not built yet, cannot get backlinks for ${targetSlug}`);
62534
+ log44.warn(`\u26A0\uFE0F PageGraph not built yet, cannot get backlinks for ${targetSlug}`);
62536
62535
  return [];
62537
62536
  }
62538
62537
  return this.pageGraph.getBacklinks(targetSlug);
@@ -62552,7 +62551,7 @@ var init_site = __esm({
62552
62551
  */
62553
62552
  async GetContentIndex() {
62554
62553
  if (!this.pageGraph) {
62555
- log45.warn(`\u26A0\uFE0F PageGraph not built yet, cannot generate content index`);
62554
+ log44.warn(`\u26A0\uFE0F PageGraph not built yet, cannot generate content index`);
62556
62555
  return /* @__PURE__ */ new Map();
62557
62556
  }
62558
62557
  const contentIndex = /* @__PURE__ */ new Map();
@@ -62570,7 +62569,7 @@ var init_site = __esm({
62570
62569
  content: truncatedContent
62571
62570
  });
62572
62571
  }
62573
- log45.debug(`[Site] Generated contentIndex with ${contentIndex.size} entries`);
62572
+ log44.debug(`[Site] Generated contentIndex with ${contentIndex.size} entries`);
62574
62573
  return contentIndex;
62575
62574
  }
62576
62575
  };
@@ -62594,13 +62593,13 @@ async function openFileForWriting(fs3, filename) {
62594
62593
  function isFileNotFoundError(error) {
62595
62594
  return error && (error.code === "ENOENT" || error.code === "FILE_NOT_FOUND" || error.message?.includes("not found") || error.message?.includes("no such file"));
62596
62595
  }
62597
- var import_path15, log46, Publisher, MultiWriter;
62596
+ var import_path15, log45, Publisher, MultiWriter;
62598
62597
  var init_publisher = __esm({
62599
62598
  "internal/domain/site/entity/publisher.ts"() {
62600
62599
  "use strict";
62601
62600
  import_path15 = __toESM2(require("path"));
62602
62601
  init_log();
62603
- log46 = getDomainLogger("site", { component: "publisher" });
62602
+ log45 = getDomainLogger("site", { component: "publisher" });
62604
62603
  Publisher = class {
62605
62604
  fs;
62606
62605
  constructor(fs3) {
@@ -62691,12 +62690,12 @@ var init_publisher = __esm({
62691
62690
  });
62692
62691
 
62693
62692
  // internal/domain/site/entity/ref.ts
62694
- var log47, Ref;
62693
+ var log46, Ref;
62695
62694
  var init_ref = __esm({
62696
62695
  "internal/domain/site/entity/ref.ts"() {
62697
62696
  "use strict";
62698
62697
  init_log();
62699
- log47 = getDomainLogger("site", { component: "ref" });
62698
+ log46 = getDomainLogger("site", { component: "ref" });
62700
62699
  Ref = class {
62701
62700
  site;
62702
62701
  contentSvc;
@@ -62753,7 +62752,7 @@ var init_ref = __esm({
62753
62752
  try {
62754
62753
  refURL = new globalThis.URL(normalizedRef, "http://example.com");
62755
62754
  } catch (error) {
62756
- log47.error(`Failed to parse ref URL: ${error}`);
62755
+ log46.error(`Failed to parse ref URL: ${error}`);
62757
62756
  return this.notFoundURL;
62758
62757
  }
62759
62758
  let target = null;
@@ -62778,7 +62777,7 @@ var init_ref = __esm({
62778
62777
  link2 = sitePage.permalink();
62779
62778
  }
62780
62779
  } catch (error) {
62781
- log47.error(`[${page.pageIdentity().pageLanguage()}] REF_NOT_FOUND: Ref "${ref}": ${error}`);
62780
+ log46.error(`[${page.pageIdentity().pageLanguage()}] REF_NOT_FOUND: Ref "${ref}": ${error}`);
62782
62781
  return this.notFoundURL;
62783
62782
  }
62784
62783
  }
@@ -62800,11 +62799,11 @@ var init_ref = __esm({
62800
62799
  logNotFound(ref, what, page, position3) {
62801
62800
  const lang2 = page.pageIdentity().pageLanguage();
62802
62801
  if (position3 && position3.isValid()) {
62803
- log47.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}": ${position3.toString()}: ${what}`);
62802
+ log46.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}": ${position3.toString()}: ${what}`);
62804
62803
  } else if (!page) {
62805
- log47.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}": ${what}`);
62804
+ log46.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}": ${what}`);
62806
62805
  } else {
62807
- log47.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}" from page "${page.path()}": ${what}`);
62806
+ log46.error(`[${lang2}] REF_NOT_FOUND: Ref "${ref}" from page "${page.path()}": ${what}`);
62808
62807
  }
62809
62808
  }
62810
62809
  };
@@ -62812,12 +62811,12 @@ var init_ref = __esm({
62812
62811
  });
62813
62812
 
62814
62813
  // internal/domain/site/entity/language.ts
62815
- var log48, CollatorWrapper, Language2;
62814
+ var log47, CollatorWrapper, Language2;
62816
62815
  var init_language3 = __esm({
62817
62816
  "internal/domain/site/entity/language.ts"() {
62818
62817
  "use strict";
62819
62818
  init_log();
62820
- log48 = getDomainLogger("site", { component: "language" });
62819
+ log47 = getDomainLogger("site", { component: "language" });
62821
62820
  CollatorWrapper = class {
62822
62821
  collator;
62823
62822
  constructor(collator) {
@@ -63047,12 +63046,12 @@ var init_author = __esm({
63047
63046
  function newOrganization() {
63048
63047
  return new Organization2();
63049
63048
  }
63050
- var log49, Organization2;
63049
+ var log48, Organization2;
63051
63050
  var init_organization = __esm({
63052
63051
  "internal/domain/site/valueobject/organization.ts"() {
63053
63052
  "use strict";
63054
63053
  init_log();
63055
- log49 = getDomainLogger("site", { component: "organization" });
63054
+ log48 = getDomainLogger("site", { component: "organization" });
63056
63055
  Organization2 = class {
63057
63056
  _name;
63058
63057
  _description;
@@ -63196,13 +63195,13 @@ var init_version = __esm({
63196
63195
  function newNavigation(langSvc) {
63197
63196
  return new Navigation(langSvc);
63198
63197
  }
63199
- var log50, Navigation;
63198
+ var log49, Navigation;
63200
63199
  var init_navigation = __esm({
63201
63200
  "internal/domain/site/entity/navigation.ts"() {
63202
63201
  "use strict";
63203
63202
  init_log();
63204
63203
  init_menu();
63205
- log50 = getDomainLogger("site", { component: "navigation" });
63204
+ log49 = getDomainLogger("site", { component: "navigation" });
63206
63205
  Navigation = class {
63207
63206
  taxonomies;
63208
63207
  taxonomiesBuilder = null;
@@ -63228,7 +63227,7 @@ var init_navigation = __esm({
63228
63227
  }
63229
63228
  async generateMenusForLanguage(lang2, langIndex) {
63230
63229
  if (!this.menuBuilder) {
63231
- log50.error("Menu builder not set, cannot generate menus");
63230
+ log49.error("Menu builder not set, cannot generate menus");
63232
63231
  return;
63233
63232
  }
63234
63233
  if (this.menuCache.get(lang2) === true) {
@@ -63239,12 +63238,12 @@ var init_navigation = __esm({
63239
63238
  this.menus.set(lang2, generatedMenus);
63240
63239
  this.menuCache.set(lang2, true);
63241
63240
  } catch (error) {
63242
- log50.error(`Failed to generate menus for language ${lang2}: ${error}`);
63241
+ log49.error(`Failed to generate menus for language ${lang2}: ${error}`);
63243
63242
  }
63244
63243
  }
63245
63244
  async generateTaxonomiesForLanguage(lang2, langIndex, site) {
63246
63245
  if (!this.taxonomiesBuilder) {
63247
- log50.error("Taxonomies builder not set, cannot generate taxonomies");
63246
+ log49.error("Taxonomies builder not set, cannot generate taxonomies");
63248
63247
  return;
63249
63248
  }
63250
63249
  if (this.taxonomiesCache.get(lang2) === true) {
@@ -63255,7 +63254,7 @@ var init_navigation = __esm({
63255
63254
  this.taxonomies.set(lang2, generatedTaxonomies);
63256
63255
  this.taxonomiesCache.set(lang2, true);
63257
63256
  } catch (error) {
63258
- log50.error(`Failed to generate taxonomies for language ${lang2}: ${error}`);
63257
+ log49.error(`Failed to generate taxonomies for language ${lang2}: ${error}`);
63259
63258
  }
63260
63259
  }
63261
63260
  getMenus(lang2) {
@@ -63273,13 +63272,13 @@ var init_navigation = __esm({
63273
63272
  });
63274
63273
 
63275
63274
  // internal/domain/site/entity/menu-builder.ts
63276
- var log51, MenuBuilder;
63275
+ var log50, MenuBuilder;
63277
63276
  var init_menu_builder = __esm({
63278
63277
  "internal/domain/site/entity/menu-builder.ts"() {
63279
63278
  "use strict";
63280
63279
  init_log();
63281
63280
  init_menu();
63282
- log51 = getDomainLogger("site", { component: "menu-builder" });
63281
+ log50 = getDomainLogger("site", { component: "menu-builder" });
63283
63282
  MenuBuilder = class {
63284
63283
  contentService;
63285
63284
  site;
@@ -63315,7 +63314,7 @@ var init_menu_builder = __esm({
63315
63314
  await this.processMenuSection(menuName, menuSection, pageUrl, page, menuMap);
63316
63315
  }
63317
63316
  } catch (error) {
63318
- log51.error(`Error processing page for menu: ${error}`);
63317
+ log50.error(`Error processing page for menu: ${error}`);
63319
63318
  }
63320
63319
  }
63321
63320
  /**
@@ -63441,7 +63440,7 @@ var init_menu_builder = __esm({
63441
63440
  const sitePage = await this.site.sitePage(page);
63442
63441
  return sitePage.RelPermalink;
63443
63442
  } catch (error) {
63444
- log51.error(`Error generating page URL for ${page.path()}: ${error}`);
63443
+ log50.error(`Error generating page URL for ${page.path()}: ${error}`);
63445
63444
  return this.fallbackUrlFromPath(page.path());
63446
63445
  }
63447
63446
  }
@@ -63452,7 +63451,7 @@ var init_menu_builder = __esm({
63452
63451
  try {
63453
63452
  return this.site.getURL().relURL(url);
63454
63453
  } catch (error) {
63455
- log51.error(`Error processing menu item URL ${url}: ${error}`);
63454
+ log50.error(`Error processing menu item URL ${url}: ${error}`);
63456
63455
  return url;
63457
63456
  }
63458
63457
  }
@@ -63578,7 +63577,7 @@ var init_menu_builder = __esm({
63578
63577
  function createNavigationFactory(langService, contentService, site) {
63579
63578
  return new NavigationFactory(langService, contentService, site);
63580
63579
  }
63581
- var log52, NavigationFactory;
63580
+ var log51, NavigationFactory;
63582
63581
  var init_navigation_factory = __esm({
63583
63582
  "internal/domain/site/factory/navigation-factory.ts"() {
63584
63583
  "use strict";
@@ -63586,7 +63585,7 @@ var init_navigation_factory = __esm({
63586
63585
  init_menu_builder();
63587
63586
  init_taxonomies_builder();
63588
63587
  init_log();
63589
- log52 = getDomainLogger("site", { component: "navigation-factory" });
63588
+ log51 = getDomainLogger("site", { component: "navigation-factory" });
63590
63589
  NavigationFactory = class {
63591
63590
  langService;
63592
63591
  contentService;
@@ -63608,7 +63607,7 @@ var init_navigation_factory = __esm({
63608
63607
  navigation.setTaxonomiesBuilder(taxonomiesBuilder);
63609
63608
  return navigation;
63610
63609
  } catch (error) {
63611
- log52.error(`Failed to create Navigation entity: ${error}`);
63610
+ log51.error(`Failed to create Navigation entity: ${error}`);
63612
63611
  throw error;
63613
63612
  }
63614
63613
  }
@@ -63665,7 +63664,7 @@ function newSite(services) {
63665
63664
  );
63666
63665
  return site;
63667
63666
  }
63668
- var log53;
63667
+ var log52;
63669
63668
  var init_site2 = __esm({
63670
63669
  "internal/domain/site/factory/site.ts"() {
63671
63670
  "use strict";
@@ -63679,7 +63678,7 @@ var init_site2 = __esm({
63679
63678
  init_version();
63680
63679
  init_navigation_factory();
63681
63680
  init_log();
63682
- log53 = getDomainLogger("site", { component: "factory" });
63681
+ log52 = getDomainLogger("site", { component: "factory" });
63683
63682
  }
63684
63683
  });
63685
63684
 
@@ -63691,7 +63690,7 @@ var init_type9 = __esm({
63691
63690
  });
63692
63691
 
63693
63692
  // internal/domain/resources/entity/resource.ts
63694
- var import_crypto, import_stream, import_promises, log54, ResourceHash, PublishOnce, ResourceImpl;
63693
+ var import_crypto, import_stream, import_promises, log53, ResourceHash, PublishOnce, ResourceImpl;
63695
63694
  var init_resource = __esm({
63696
63695
  "internal/domain/resources/entity/resource.ts"() {
63697
63696
  "use strict";
@@ -63701,7 +63700,7 @@ var init_resource = __esm({
63701
63700
  init_paths();
63702
63701
  import_promises = require("stream/promises");
63703
63702
  init_log();
63704
- log54 = getDomainLogger("resources", { component: "publisher" });
63703
+ log53 = getDomainLogger("resources", { component: "publisher" });
63705
63704
  ResourceHash = class {
63706
63705
  value = "";
63707
63706
  size = 0;
@@ -63785,7 +63784,7 @@ var init_resource = __esm({
63785
63784
  async publish() {
63786
63785
  const targetPath = this.targetPath();
63787
63786
  if (!this.publisher) {
63788
- log54.error("\u26A0\uFE0F [Resource.publish] No publisher for: %s", targetPath);
63787
+ log53.error("\u26A0\uFE0F [Resource.publish] No publisher for: %s", targetPath);
63789
63788
  return;
63790
63789
  }
63791
63790
  await this.publishOnce.do(async () => {
@@ -63796,21 +63795,21 @@ var init_resource = __esm({
63796
63795
  readSeeker = await this.readSeekCloser();
63797
63796
  await this.copyStreamToFile(readSeeker, publicWriter);
63798
63797
  } catch (error) {
63799
- log54.errorf("\u274C [Resource.publish] Error publishing %s: %s", targetPath, error);
63798
+ log53.errorf("\u274C [Resource.publish] Error publishing %s: %s", targetPath, error);
63800
63799
  throw error;
63801
63800
  } finally {
63802
63801
  if (readSeeker) {
63803
63802
  try {
63804
63803
  await readSeeker.close();
63805
63804
  } catch (closeError) {
63806
- log54.errorf("\u274C [Resource.publish] Failed to close ReadSeekCloser %s: %s", targetPath, closeError);
63805
+ log53.errorf("\u274C [Resource.publish] Failed to close ReadSeekCloser %s: %s", targetPath, closeError);
63807
63806
  }
63808
63807
  }
63809
63808
  if (publicWriter) {
63810
63809
  try {
63811
63810
  await publicWriter.file.close();
63812
63811
  } catch (closeError) {
63813
- log54.errorf("\u274C [Resource.publish] Failed to close public writer %s: %s", targetPath, closeError);
63812
+ log53.errorf("\u274C [Resource.publish] Failed to close public writer %s: %s", targetPath, closeError);
63814
63813
  }
63815
63814
  }
63816
63815
  }
@@ -63825,7 +63824,7 @@ var init_resource = __esm({
63825
63824
  try {
63826
63825
  await (0, import_promises.pipeline)(source, destination);
63827
63826
  } catch (err) {
63828
- log54.errorf("\u274C [copyStreamToFile] Error during pipeline for %s: %s", targetPath, err);
63827
+ log53.errorf("\u274C [copyStreamToFile] Error during pipeline for %s: %s", targetPath, err);
63829
63828
  throw err;
63830
63829
  }
63831
63830
  }
@@ -94484,14 +94483,14 @@ var init_template4 = __esm({
94484
94483
  });
94485
94484
 
94486
94485
  // internal/domain/resources/entity/publisher.ts
94487
- var path25, import_stream2, log55, Publisher2, FileWritable;
94486
+ var path25, import_stream2, log54, Publisher2, FileWritable;
94488
94487
  var init_publisher2 = __esm({
94489
94488
  "internal/domain/resources/entity/publisher.ts"() {
94490
94489
  "use strict";
94491
94490
  path25 = __toESM2(require("path"));
94492
94491
  init_log();
94493
94492
  import_stream2 = require("stream");
94494
- log55 = getDomainLogger("resources", { component: "publisher" });
94493
+ log54 = getDomainLogger("resources", { component: "publisher" });
94495
94494
  Publisher2 = class {
94496
94495
  pubFs;
94497
94496
  urlSvc;
@@ -94531,7 +94530,7 @@ var init_publisher2 = __esm({
94531
94530
  try {
94532
94531
  await originalClose();
94533
94532
  } catch (error2) {
94534
- log55.errorf("\u274C [Publisher.File.close] Error closing publish file (retry) %s, $s", cleanFilename, error2);
94533
+ log54.errorf("\u274C [Publisher.File.close] Error closing publish file (retry) %s, $s", cleanFilename, error2);
94535
94534
  throw error2;
94536
94535
  }
94537
94536
  };
@@ -94593,14 +94592,14 @@ var init_publisher2 = __esm({
94593
94592
  });
94594
94593
 
94595
94594
  // internal/domain/resources/entity/http.ts
94596
- var http2, https2, log56, HttpClient4;
94595
+ var http2, https2, log55, HttpClient4;
94597
94596
  var init_http2 = __esm({
94598
94597
  "internal/domain/resources/entity/http.ts"() {
94599
94598
  "use strict";
94600
94599
  init_log();
94601
94600
  http2 = __toESM2(require("http"));
94602
94601
  https2 = __toESM2(require("https"));
94603
- log56 = getDomainLogger("resources", { component: "http-client" });
94602
+ log55 = getDomainLogger("resources", { component: "http-client" });
94604
94603
  HttpClient4 = class {
94605
94604
  defaultTimeout = 3e4;
94606
94605
  // 30 seconds
@@ -94633,12 +94632,12 @@ var init_http2 = __esm({
94633
94632
  };
94634
94633
  const request = httpModule.request(requestOptions, (response) => {
94635
94634
  if (response.statusCode && response.statusCode >= 300 && response.statusCode < 400 && response.headers.location) {
94636
- log56.infof("\u{1F504} [HttpClient.fromRemote] Redirecting from %s to %s", uri, response.headers.location);
94635
+ log55.infof("\u{1F504} [HttpClient.fromRemote] Redirecting from %s to %s", uri, response.headers.location);
94637
94636
  this.fromRemote(response.headers.location, options).then(resolve5);
94638
94637
  return;
94639
94638
  }
94640
94639
  if (!response.statusCode || response.statusCode < 200 || response.statusCode >= 300) {
94641
- log56.errorf(
94640
+ log55.errorf(
94642
94641
  "\u274C [HttpClient.fromRemote] HTTP error %d when fetching %s: %s",
94643
94642
  response.statusCode || 0,
94644
94643
  uri,
@@ -94655,34 +94654,34 @@ var init_http2 = __esm({
94655
94654
  try {
94656
94655
  const buffer = Buffer.concat(chunks);
94657
94656
  const content = buffer.toString("utf8");
94658
- log56.infof(
94657
+ log55.infof(
94659
94658
  "\u2705 [HttpClient.fromRemote] Successfully fetched %d bytes from %s",
94660
94659
  content.length,
94661
94660
  uri
94662
94661
  );
94663
94662
  resolve5(content);
94664
94663
  } catch (error) {
94665
- log56.errorf("\u274C [HttpClient.fromRemote] Error converting response to string from %s: %s", uri, error);
94664
+ log55.errorf("\u274C [HttpClient.fromRemote] Error converting response to string from %s: %s", uri, error);
94666
94665
  resolve5(null);
94667
94666
  }
94668
94667
  });
94669
94668
  response.on("error", (error) => {
94670
- log56.errorf("\u274C [HttpClient.fromRemote] Response error when fetching %s: %s", uri, error.message);
94669
+ log55.errorf("\u274C [HttpClient.fromRemote] Response error when fetching %s: %s", uri, error.message);
94671
94670
  resolve5(null);
94672
94671
  });
94673
94672
  });
94674
94673
  request.on("error", (error) => {
94675
- log56.errorf("\u274C [HttpClient.fromRemote] Request error when fetching %s: %s", uri, error.message);
94674
+ log55.errorf("\u274C [HttpClient.fromRemote] Request error when fetching %s: %s", uri, error.message);
94676
94675
  resolve5(null);
94677
94676
  });
94678
94677
  request.on("timeout", () => {
94679
94678
  request.destroy();
94680
- log56.errorf("\u274C [HttpClient.fromRemote] Request timeout when fetching %s", uri);
94679
+ log55.errorf("\u274C [HttpClient.fromRemote] Request timeout when fetching %s", uri);
94681
94680
  resolve5(null);
94682
94681
  });
94683
94682
  request.end();
94684
94683
  } catch (error) {
94685
- log56.errorf("\u274C [HttpClient.fromRemote] Error fetching content from %s: %s", uri, error);
94684
+ log55.errorf("\u274C [HttpClient.fromRemote] Error fetching content from %s: %s", uri, error);
94686
94685
  resolve5(null);
94687
94686
  }
94688
94687
  });
@@ -94692,7 +94691,7 @@ var init_http2 = __esm({
94692
94691
  });
94693
94692
 
94694
94693
  // internal/domain/resources/entity/resources.ts
94695
- var path26, import_crypto3, log57, Resources;
94694
+ var path26, import_crypto3, log56, Resources;
94696
94695
  var init_resources = __esm({
94697
94696
  "internal/domain/resources/entity/resources.ts"() {
94698
94697
  "use strict";
@@ -94707,7 +94706,7 @@ var init_resources = __esm({
94707
94706
  path26 = __toESM2(require("path"));
94708
94707
  import_crypto3 = require("crypto");
94709
94708
  init_log();
94710
- log57 = getDomainLogger("resources", { component: "resources" });
94709
+ log56 = getDomainLogger("resources", { component: "resources" });
94711
94710
  Resources = class {
94712
94711
  cache = /* @__PURE__ */ new Map();
94713
94712
  workspace;
@@ -94760,7 +94759,7 @@ var init_resources = __esm({
94760
94759
  }
94761
94760
  return resource;
94762
94761
  } catch (error) {
94763
- log57.errorf("\u274C [Resources.getResource] Error getting resource %s, %s", cleanPath, error);
94762
+ log56.errorf("\u274C [Resources.getResource] Error getting resource %s, %s", cleanPath, error);
94764
94763
  return null;
94765
94764
  }
94766
94765
  }
@@ -94780,7 +94779,7 @@ var init_resources = __esm({
94780
94779
  }
94781
94780
  return resource;
94782
94781
  } catch (error) {
94783
- log57.errorf("\u274C [Resources.getResourceWithOpener] Error getting resource with opener %s, %s", cleanPath, error);
94782
+ log56.errorf("\u274C [Resources.getResourceWithOpener] Error getting resource with opener %s, %s", cleanPath, error);
94784
94783
  return null;
94785
94784
  }
94786
94785
  }
@@ -94802,11 +94801,11 @@ var init_resources = __esm({
94802
94801
  if (result) {
94803
94802
  this.cache.set(cacheKey, result);
94804
94803
  } else {
94805
- log57.warnf("\u26A0\uFE0F [Resources.executeAsTemplate] Template execution returned null for resource %s", resource.key());
94804
+ log56.warnf("\u26A0\uFE0F [Resources.executeAsTemplate] Template execution returned null for resource %s", resource.key());
94806
94805
  }
94807
94806
  return result;
94808
94807
  } catch (error) {
94809
- log57.errorf("\u274C [Resources.executeAsTemplate] Error executing template %s, %s", resource.key(), error);
94808
+ log56.errorf("\u274C [Resources.executeAsTemplate] Error executing template %s, %s", resource.key(), error);
94810
94809
  throw error;
94811
94810
  }
94812
94811
  }
@@ -94828,11 +94827,11 @@ var init_resources = __esm({
94828
94827
  if (result) {
94829
94828
  this.cache.set(cacheKey, result);
94830
94829
  } else {
94831
- log57.warnf("\u26A0\uFE0F [Resources.minify] Minification returned null for resource %s", resource.key());
94830
+ log56.warnf("\u26A0\uFE0F [Resources.minify] Minification returned null for resource %s", resource.key());
94832
94831
  }
94833
94832
  return result;
94834
94833
  } catch (error) {
94835
- log57.errorf("\u274C [Resources.minify] Error minifying resource %s, %s", resource.key(), error);
94834
+ log56.errorf("\u274C [Resources.minify] Error minifying resource %s, %s", resource.key(), error);
94836
94835
  throw error;
94837
94836
  }
94838
94837
  }
@@ -94851,11 +94850,11 @@ var init_resources = __esm({
94851
94850
  if (res) {
94852
94851
  this.cache.set(cacheKey, res);
94853
94852
  } else {
94854
- log57.warnf("\u26A0\uFE0F [Resources.fingerprint] Fingerprint operation returned null for resource %s", resource.key());
94853
+ log56.warnf("\u26A0\uFE0F [Resources.fingerprint] Fingerprint operation returned null for resource %s", resource.key());
94855
94854
  }
94856
94855
  return res;
94857
94856
  } catch (error) {
94858
- log57.errorf("\u274C [Resources.fingerprint] Error fingerprinting resource %s, %s", resource.key(), error);
94857
+ log56.errorf("\u274C [Resources.fingerprint] Error fingerprinting resource %s, %s", resource.key(), error);
94859
94858
  throw error;
94860
94859
  }
94861
94860
  }
@@ -94882,7 +94881,7 @@ var init_resources = __esm({
94882
94881
  }
94883
94882
  return resource;
94884
94883
  } catch (error) {
94885
- log57.errorf("\u274C [Resources.fromRemote] Error getting remote resource %s, %s", uri, error);
94884
+ log56.errorf("\u274C [Resources.fromRemote] Error getting remote resource %s, %s", uri, error);
94886
94885
  return null;
94887
94886
  }
94888
94887
  }
@@ -94918,7 +94917,7 @@ var init_resources = __esm({
94918
94917
  );
94919
94918
  return resource;
94920
94919
  } catch (error) {
94921
- log57.errorf("\u274C [Resources.buildResource] Error building resource for %s, %s", pathname, error);
94920
+ log56.errorf("\u274C [Resources.buildResource] Error building resource for %s, %s", pathname, error);
94922
94921
  return null;
94923
94922
  }
94924
94923
  }
@@ -94977,7 +94976,7 @@ var init_resources = __esm({
94977
94976
  try {
94978
94977
  await file.close();
94979
94978
  } catch (closeError) {
94980
- log57.warnf("\u274C [Resources.createReadSeekCloser] Error closing file after read error %s, %s", file.path, closeError);
94979
+ log56.warnf("\u274C [Resources.createReadSeekCloser] Error closing file after read error %s, %s", file.path, closeError);
94981
94980
  }
94982
94981
  return this.newReadSeekerNoOpCloserFromString("");
94983
94982
  }
@@ -95215,12 +95214,12 @@ var init_resources2 = __esm({
95215
95214
  });
95216
95215
 
95217
95216
  // internal/application/batch-task-queue.ts
95218
- var log58, BatchTaskQueue;
95217
+ var log57, BatchTaskQueue;
95219
95218
  var init_batch_task_queue = __esm({
95220
95219
  "internal/application/batch-task-queue.ts"() {
95221
95220
  "use strict";
95222
95221
  init_log();
95223
- log58 = getDomainLogger("application", { component: "batch-task-queue" });
95222
+ log57 = getDomainLogger("application", { component: "batch-task-queue" });
95224
95223
  BatchTaskQueue = class {
95225
95224
  queue = [];
95226
95225
  currentIndex = 0;
@@ -95228,7 +95227,7 @@ var init_batch_task_queue = __esm({
95228
95227
  constructor(batches) {
95229
95228
  this.queue = batches;
95230
95229
  this.totalBatches = batches.length;
95231
- log58.info(`Task queue initialized with ${this.totalBatches} batches`);
95230
+ log57.info(`Task queue initialized with ${this.totalBatches} batches`);
95232
95231
  }
95233
95232
  /**
95234
95233
  * 获取下一个任务批次(线程安全)
@@ -95281,7 +95280,7 @@ function createTaskBatches(tasks2, batchSize) {
95281
95280
  for (let i = 0; i < tasks2.length; i += batchSize) {
95282
95281
  batches.push(tasks2.slice(i, i + batchSize));
95283
95282
  }
95284
- log59.info(`\u{1F4E6} Created ${batches.length} batches (${batchSize} tasks per batch)`);
95283
+ log58.info(`\u{1F4E6} Created ${batches.length} batches (${batchSize} tasks per batch)`);
95285
95284
  return batches;
95286
95285
  }
95287
95286
  async function runWorkerLoop(poolManager, taskQueue, workerIndex, totalPages, completedPages, onProgress) {
@@ -95289,11 +95288,11 @@ async function runWorkerLoop(poolManager, taskQueue, workerIndex, totalPages, co
95289
95288
  while (true) {
95290
95289
  const batch = taskQueue.nextBatch();
95291
95290
  if (!batch) {
95292
- log59.debug(`Worker ${workerIndex} finished - no more tasks`);
95291
+ log58.debug(`Worker ${workerIndex} finished - no more tasks`);
95293
95292
  break;
95294
95293
  }
95295
95294
  const progress = taskQueue.getProgress();
95296
- log59.info(`\u{1F504} Worker ${workerIndex} processing batch ${progress.completed}/${progress.total} (${batch.length} tasks)`);
95295
+ log58.info(`\u{1F504} Worker ${workerIndex} processing batch ${progress.completed}/${progress.total} (${batch.length} tasks)`);
95297
95296
  const task = {
95298
95297
  type: "process-batch",
95299
95298
  pageTasks: batch
@@ -95314,9 +95313,9 @@ async function runWorkerLoop(poolManager, taskQueue, workerIndex, totalPages, co
95314
95313
  totalPages
95315
95314
  }
95316
95315
  });
95317
- log59.info(`\u2705 Worker ${workerIndex} completed batch: ${result.processedCount} tasks in ${result.duration.toFixed(2)}ms`);
95316
+ log58.info(`\u2705 Worker ${workerIndex} completed batch: ${result.processedCount} tasks in ${result.duration.toFixed(2)}ms`);
95318
95317
  } else {
95319
- log59.error(`\u274C Worker ${workerIndex} failed: ${response.error}`);
95318
+ log58.error(`\u274C Worker ${workerIndex} failed: ${response.error}`);
95320
95319
  results.push({
95321
95320
  success: false,
95322
95321
  processedCount: 0,
@@ -95345,7 +95344,7 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95345
95344
  });
95346
95345
  const pageTasks = await collectAllPageTasks(projDir, modulesDir);
95347
95346
  if (pageTasks.length === 0) {
95348
- log59.warn("\u26A0\uFE0F No page tasks found to process");
95347
+ log58.warn("\u26A0\uFE0F No page tasks found to process");
95349
95348
  onProgress?.({
95350
95349
  stage: "completion",
95351
95350
  message: "No pages to process",
@@ -95369,7 +95368,7 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95369
95368
  const cpuCount = os.cpus().length;
95370
95369
  const workerCount = Math.max(2, Math.floor(cpuCount * 0.6));
95371
95370
  const batchSize = calculateOptimalBatchSize(pageTasks.length, workerCount);
95372
- log59.info(`\u2699\uFE0F Using ${workerCount} workers with batch size ${batchSize}`);
95371
+ log58.info(`\u2699\uFE0F Using ${workerCount} workers with batch size ${batchSize}`);
95373
95372
  onProgress?.({
95374
95373
  stage: "config",
95375
95374
  message: `Creating worker pool with ${workerCount} workers...`,
@@ -95382,7 +95381,7 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95382
95381
  message: "Initializing workers...",
95383
95382
  percentage: 50
95384
95383
  });
95385
- log59.info("\u{1F527} Initializing workers...");
95384
+ log58.info("\u{1F527} Initializing workers...");
95386
95385
  const initStartTime = performance.now();
95387
95386
  const initTasks = [];
95388
95387
  for (let i = 0; i < workerCount; i++) {
@@ -95395,7 +95394,7 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95395
95394
  }
95396
95395
  await Promise.all(initTasks);
95397
95396
  const initDuration = performance.now() - initStartTime;
95398
- log59.info(`\u2705 All workers initialized in ${initDuration.toFixed(2)}ms`);
95397
+ log58.info(`\u2705 All workers initialized in ${initDuration.toFixed(2)}ms`);
95399
95398
  onProgress?.({
95400
95399
  stage: "build",
95401
95400
  message: `Creating ${Math.ceil(pageTasks.length / batchSize)} task batches...`,
@@ -95408,7 +95407,7 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95408
95407
  message: "Starting parallel page rendering...",
95409
95408
  percentage: 70
95410
95409
  });
95411
- log59.info("\u{1F3C3} Starting worker loops...");
95410
+ log58.info("\u{1F3C3} Starting worker loops...");
95412
95411
  const processingStartTime = performance.now();
95413
95412
  const completedPages = { count: 0 };
95414
95413
  const workerLoops = [];
@@ -95432,8 +95431,8 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95432
95431
  message: `Parallel SSG completed! Processed ${totalProcessed} pages with ${workerCount} workers`,
95433
95432
  percentage: 100
95434
95433
  });
95435
- log59.info("\u2728 Parallel SSG completed!");
95436
- log59.info("\u{1F4CA} Statistics:", {
95434
+ log58.info("\u2728 Parallel SSG completed!");
95435
+ log58.info("\u{1F4CA} Statistics:", {
95437
95436
  totalTasks: pageTasks.length,
95438
95437
  processedTasks: totalProcessed,
95439
95438
  successfulBatches: successCount,
@@ -95455,13 +95454,13 @@ async function processSSGParallel(projDir, modulesDir, markdown, onProgress, htt
95455
95454
  };
95456
95455
  } catch (error) {
95457
95456
  const message = error instanceof Error ? error.message : String(error);
95458
- log59.error(`\u274C Parallel SSG failed: ${message}`);
95457
+ log58.error(`\u274C Parallel SSG failed: ${message}`);
95459
95458
  throw error;
95460
95459
  } finally {
95461
95460
  process.chdir(originalCwd);
95462
95461
  }
95463
95462
  }
95464
- var os, log59;
95463
+ var os, log58;
95465
95464
  var init_ssg_parallel = __esm({
95466
95465
  "internal/application/ssg-parallel.ts"() {
95467
95466
  "use strict";
@@ -95470,7 +95469,7 @@ var init_ssg_parallel = __esm({
95470
95469
  init_batch_task_queue();
95471
95470
  init_ssg();
95472
95471
  os = __toESM2(require("os"));
95473
- log59 = getDomainLogger("ssg", { component: "parallel" });
95472
+ log58 = getDomainLogger("ssg", { component: "parallel" });
95474
95473
  }
95475
95474
  });
95476
95475
 
@@ -95632,7 +95631,7 @@ function createCustomizedFunctions(config2, site, resources) {
95632
95631
  try {
95633
95632
  return await resources.getResource(filename);
95634
95633
  } catch (error) {
95635
- log60.warn(`Resource not found: ${filename}`, error);
95634
+ log59.warn(`Resource not found: ${filename}`, error);
95636
95635
  return Promise.resolve(null);
95637
95636
  }
95638
95637
  },
@@ -95683,7 +95682,7 @@ async function createTemplateAdapter(templateEngine, site) {
95683
95682
  execute: async (data) => {
95684
95683
  const [result, execErr] = await tmpl.Execute(data);
95685
95684
  if (execErr) {
95686
- log60.errorf("template exec error: %s", execErr);
95685
+ log59.errorf("template exec error: %s", execErr);
95687
95686
  throw execErr;
95688
95687
  }
95689
95688
  return result;
@@ -95698,7 +95697,7 @@ async function createTemplateAdapter(templateEngine, site) {
95698
95697
  try {
95699
95698
  return await preparer.execute(data);
95700
95699
  } catch (error) {
95701
- log60.error(`\u274C Template execution error: ${error}`);
95700
+ log59.error(`\u274C Template execution error: ${error}`);
95702
95701
  return `<html><body>Template execution error: ${error}</body></html>`;
95703
95702
  }
95704
95703
  }
@@ -95748,11 +95747,11 @@ function createSiteForSSG(config2, fs3, content) {
95748
95747
  try {
95749
95748
  const page = content.getPageFromPath(langIndex, path29);
95750
95749
  if (!page) {
95751
- log60.error(`\u26A0\uFE0F Application.getPageFromPath: content domain returned null for path: "${path29}"`);
95750
+ log59.error(`\u26A0\uFE0F Application.getPageFromPath: content domain returned null for path: "${path29}"`);
95752
95751
  }
95753
95752
  return page;
95754
95753
  } catch (error) {
95755
- log60.error(`\u274C Application.getPageFromPath error delegating to content domain:`, error);
95754
+ log59.error(`\u274C Application.getPageFromPath error delegating to content domain:`, error);
95756
95755
  return null;
95757
95756
  }
95758
95757
  },
@@ -95760,11 +95759,11 @@ function createSiteForSSG(config2, fs3, content) {
95760
95759
  try {
95761
95760
  const page = content.getPageFromPath(langIndex, path29);
95762
95761
  if (!page) {
95763
- log60.warn(`\u26A0\uFE0F Application.getPageFromPathSync: content domain returned null for path: ${path29}`);
95762
+ log59.warn(`\u26A0\uFE0F Application.getPageFromPathSync: content domain returned null for path: ${path29}`);
95764
95763
  }
95765
95764
  return page;
95766
95765
  } catch (error) {
95767
- log60.error(`\u274C Application.getPageFromPathSync error delegating to content domain:`, error);
95766
+ log59.error(`\u274C Application.getPageFromPathSync error delegating to content domain:`, error);
95768
95767
  return null;
95769
95768
  }
95770
95769
  },
@@ -95815,16 +95814,16 @@ async function generateStaticSite(projDir, modulesDir, markdown) {
95815
95814
  let startTime = performance.now();
95816
95815
  const config2 = await loadConfiguration(projDir, modulesDir);
95817
95816
  let endTime = performance.now();
95818
- log60.info(`\u2705 Configuration loaded in ${(endTime - startTime).toFixed(2)} ms`);
95817
+ log59.info(`\u2705 Configuration loaded in ${(endTime - startTime).toFixed(2)} ms`);
95819
95818
  const markdownRenderer = markdown;
95820
95819
  startTime = performance.now();
95821
95820
  const modules = await createModule(config2);
95822
95821
  endTime = performance.now();
95823
- log60.info(`\u2705 Modules created in ${(endTime - startTime).toFixed(2)} ms`);
95822
+ log59.info(`\u2705 Modules created in ${(endTime - startTime).toFixed(2)} ms`);
95824
95823
  startTime = performance.now();
95825
95824
  const filesystem = await createFileSystem(config2, modules);
95826
95825
  endTime = performance.now();
95827
- log60.info(`\u2705 Filesystem created in ${(endTime - startTime).toFixed(2)} ms`);
95826
+ log59.info(`\u2705 Filesystem created in ${(endTime - startTime).toFixed(2)} ms`);
95828
95827
  const content = await createContentEngine(filesystem, config2, modules, markdownRenderer);
95829
95828
  const site = createSiteForSSG(config2, filesystem, content);
95830
95829
  const resources = createResourcesEngine(config2, filesystem);
@@ -95842,16 +95841,16 @@ async function generateStaticSite(projDir, modulesDir, markdown) {
95842
95841
  startTime = performance.now();
95843
95842
  await content.collectPages();
95844
95843
  endTime = performance.now();
95845
- log60.info(`\u2705 Pages collected in ${(endTime - startTime).toFixed(2)} ms`);
95844
+ log59.info(`\u2705 Pages collected in ${(endTime - startTime).toFixed(2)} ms`);
95846
95845
  const templateAdapter = await createTemplateAdapter(templateEngine, site);
95847
95846
  startTime = performance.now();
95848
95847
  await site.build(templateAdapter);
95849
95848
  endTime = performance.now();
95850
95849
  setDomainInstances(site, content, filesystem, config2, modules, resources, templateEngine);
95851
- log60.info(`\u2705 Site built in ${(endTime - startTime).toFixed(2)} ms`);
95850
+ log59.info(`\u2705 Site built in ${(endTime - startTime).toFixed(2)} ms`);
95852
95851
  } catch (error) {
95853
95852
  const message = error instanceof Error ? error.message : String(error);
95854
- log60.error(`\u274C Static site generation failed: ${message}`);
95853
+ log59.error(`\u274C Static site generation failed: ${message}`);
95855
95854
  throw new Error(`Failed to generate static site: ${message}`);
95856
95855
  }
95857
95856
  }
@@ -95866,7 +95865,7 @@ async function processSSG(projDir, modulesDir, markdown) {
95866
95865
  }
95867
95866
  } catch (error) {
95868
95867
  const message = error instanceof Error ? error.message : String(error);
95869
- log60.error(`\u274C SSG processing failed: ${message}`);
95868
+ log59.error(`\u274C SSG processing failed: ${message}`);
95870
95869
  throw new Error(`Failed to process SSG: ${message}`);
95871
95870
  }
95872
95871
  }
@@ -95942,7 +95941,7 @@ async function generateStaticSiteWithProgress(projDir, modulesDir, markdown, onP
95942
95941
  return getDomainInstances();
95943
95942
  } catch (error) {
95944
95943
  const message = error instanceof Error ? error.message : String(error);
95945
- log60.error(`\u274C Static site generation failed: ${message}`);
95944
+ log59.error(`\u274C Static site generation failed: ${message}`);
95946
95945
  throw new Error(`Failed to generate static site: ${message}`);
95947
95946
  }
95948
95947
  }
@@ -95999,7 +95998,7 @@ async function processSSGWithProgress(projDir, modulesDir, markdown, onProgress,
95999
95998
  }
96000
95999
  } catch (error) {
96001
96000
  const message = error instanceof Error ? error.message : String(error);
96002
- log60.error(`\u274C SSG processing failed: ${message}`);
96001
+ log59.error(`\u274C SSG processing failed: ${message}`);
96003
96002
  throw new Error(`Failed to process SSG: ${message}`);
96004
96003
  }
96005
96004
  }
@@ -96014,29 +96013,29 @@ async function serveSSG(projDir, modulesDir, markdown, onProgress, httpClient) {
96014
96013
  return await generateStaticSiteWithProgress(projDir, modulesDir, markdown, onProgress, httpClient);
96015
96014
  } catch (error) {
96016
96015
  const message = error instanceof Error ? error.message : String(error);
96017
- log60.error(`\u274C SSG processing failed: ${message}`);
96016
+ log59.error(`\u274C SSG processing failed: ${message}`);
96018
96017
  throw new Error(`Failed to process SSG: ${message}`);
96019
96018
  }
96020
96019
  }
96021
96020
  async function collectAllPageTasks(projDir, modulesDir, markdown, onProgress, httpClient) {
96022
96021
  if (tasks.length > 0) {
96023
- log60.info("Page tasks already collected, returning cached tasks");
96022
+ log59.info("Page tasks already collected, returning cached tasks");
96024
96023
  return tasks;
96025
96024
  }
96026
96025
  try {
96027
96026
  let startTime = performance.now();
96028
96027
  const config2 = await loadConfiguration(projDir, modulesDir);
96029
96028
  let endTime = performance.now();
96030
- log60.info(`\u2705 Configuration loaded in ${(endTime - startTime).toFixed(2)} ms`);
96029
+ log59.info(`\u2705 Configuration loaded in ${(endTime - startTime).toFixed(2)} ms`);
96031
96030
  const markdownRenderer = markdown;
96032
96031
  startTime = performance.now();
96033
96032
  const modules = await createModuleWithProgress(config2, onProgress, httpClient);
96034
96033
  endTime = performance.now();
96035
- log60.info(`\u2705 Modules created in ${(endTime - startTime).toFixed(2)} ms`);
96034
+ log59.info(`\u2705 Modules created in ${(endTime - startTime).toFixed(2)} ms`);
96036
96035
  startTime = performance.now();
96037
96036
  const filesystem = await createFileSystem(config2, modules);
96038
96037
  endTime = performance.now();
96039
- log60.info(`\u2705 Filesystem created in ${(endTime - startTime).toFixed(2)} ms`);
96038
+ log59.info(`\u2705 Filesystem created in ${(endTime - startTime).toFixed(2)} ms`);
96040
96039
  const content = await createContentEngine(filesystem, config2, modules, markdownRenderer);
96041
96040
  const site = createSiteForSSG(config2, filesystem, content);
96042
96041
  const resources = createResourcesEngine(config2, filesystem);
@@ -96054,7 +96053,7 @@ async function collectAllPageTasks(projDir, modulesDir, markdown, onProgress, ht
96054
96053
  startTime = performance.now();
96055
96054
  await content.collectPages();
96056
96055
  endTime = performance.now();
96057
- log60.info(`\u2705 Pages collected in ${(endTime - startTime).toFixed(2)} ms`);
96056
+ log59.info(`\u2705 Pages collected in ${(endTime - startTime).toFixed(2)} ms`);
96058
96057
  startTime = performance.now();
96059
96058
  const languageKeys = config2.getLanguage().languageKeys();
96060
96059
  for (const langKey of languageKeys) {
@@ -96069,24 +96068,24 @@ async function collectAllPageTasks(projDir, modulesDir, markdown, onProgress, ht
96069
96068
  page.pageIdentity().clearStale();
96070
96069
  }
96071
96070
  });
96072
- log60.debug(`Collected pages for language: ${langKey}`);
96071
+ log59.debug(`Collected pages for language: ${langKey}`);
96073
96072
  }
96074
96073
  endTime = performance.now();
96075
- log60.info(`\u2705 Page tasks collected in ${(endTime - startTime).toFixed(2)} ms`);
96074
+ log59.info(`\u2705 Page tasks collected in ${(endTime - startTime).toFixed(2)} ms`);
96076
96075
  const templateAdapter = await createTemplateAdapter(templateEngine, site);
96077
96076
  startTime = performance.now();
96078
96077
  await site.build(templateAdapter);
96079
96078
  endTime = performance.now();
96080
- log60.info(`\u2705 Site built in ${(endTime - startTime).toFixed(2)} ms`);
96079
+ log59.info(`\u2705 Site built in ${(endTime - startTime).toFixed(2)} ms`);
96081
96080
  setDomainInstances(site, content, filesystem, config2, modules, resources, templateEngine);
96082
96081
  return tasks;
96083
96082
  } catch (error) {
96084
96083
  const message = error instanceof Error ? error.message : String(error);
96085
- log60.error(`\u274C Static site generation failed: ${message}`);
96084
+ log59.error(`\u274C Static site generation failed: ${message}`);
96086
96085
  throw new Error(`Failed to generate static site: ${message}`);
96087
96086
  }
96088
96087
  }
96089
- var import_path16, log60, configCache, modulesCache, fsCache, contentCache, resourcesCache, templateEngineCache, siteCache, createDomainInstances, tasks;
96088
+ var import_path16, log59, configCache, modulesCache, fsCache, contentCache, resourcesCache, templateEngineCache, siteCache, createDomainInstances, tasks;
96090
96089
  var init_ssg = __esm({
96091
96090
  "internal/application/ssg.ts"() {
96092
96091
  "use strict";
@@ -96100,7 +96099,7 @@ var init_ssg = __esm({
96100
96099
  import_path16 = __toESM2(require("path"));
96101
96100
  init_resources2();
96102
96101
  init_ssg_parallel();
96103
- log60 = getDomainLogger("ssg", { component: "application" });
96102
+ log59 = getDomainLogger("ssg", { component: "application" });
96104
96103
  createDomainInstances = (site, content, fs3, config2, modules, resources) => {
96105
96104
  return {
96106
96105
  site,
@@ -96116,13 +96115,13 @@ var init_ssg = __esm({
96116
96115
  });
96117
96116
 
96118
96117
  // internal/application/worker/worker-state.ts
96119
- var log61, WorkerState;
96118
+ var log60, WorkerState;
96120
96119
  var init_worker_state = __esm({
96121
96120
  "internal/application/worker/worker-state.ts"() {
96122
96121
  "use strict";
96123
96122
  init_log();
96124
96123
  init_page_filter();
96125
- log61 = getDomainLogger("application", { component: "worker-state" });
96124
+ log60 = getDomainLogger("application", { component: "worker-state" });
96126
96125
  WorkerState = class {
96127
96126
  constructor(projDir, moduleDir) {
96128
96127
  this.projDir = projDir;
@@ -96134,17 +96133,17 @@ var init_worker_state = __esm({
96134
96133
  */
96135
96134
  async initialize() {
96136
96135
  if (this.initialized) {
96137
- log61.warn("Worker already initialized, skipping...");
96136
+ log60.warn("Worker already initialized, skipping...");
96138
96137
  return;
96139
96138
  }
96140
96139
  const startTime = performance.now();
96141
- log61.info("\u{1F680} Initializing worker environment...", {
96140
+ log60.info("\u{1F680} Initializing worker environment...", {
96142
96141
  projDir: this.projDir,
96143
96142
  moduleDir: this.moduleDir
96144
96143
  });
96145
96144
  this.initialized = true;
96146
96145
  const duration = performance.now() - startTime;
96147
- log61.info(`\u2705 Worker environment initialized in ${duration.toFixed(2)}ms`);
96146
+ log60.info(`\u2705 Worker environment initialized in ${duration.toFixed(2)}ms`);
96148
96147
  }
96149
96148
  /**
96150
96149
  * 处理一个批次的页面任务
@@ -96158,13 +96157,13 @@ var init_worker_state = __esm({
96158
96157
  }
96159
96158
  const startTime = performance.now();
96160
96159
  const errors2 = [];
96161
- log61.info(`\u{1F4E6} Processing batch: ${pageTasks.length} tasks`);
96160
+ log60.info(`\u{1F4E6} Processing batch: ${pageTasks.length} tasks`);
96162
96161
  try {
96163
96162
  setPageFilter(pageTasks);
96164
- log61.debug(`Filter set for ${pageTasks.length} tasks`);
96163
+ log60.debug(`Filter set for ${pageTasks.length} tasks`);
96165
96164
  const { generateStaticSite: generateStaticSite2 } = await Promise.resolve().then(() => (init_ssg(), ssg_exports));
96166
96165
  await generateStaticSite2(this.projDir, this.moduleDir);
96167
- log61.debug("\u2705 Tasks processed (filtered)");
96166
+ log60.debug("\u2705 Tasks processed (filtered)");
96168
96167
  const duration = performance.now() - startTime;
96169
96168
  const result = {
96170
96169
  success: true,
@@ -96173,12 +96172,12 @@ var init_worker_state = __esm({
96173
96172
  duration,
96174
96173
  errors: errors2
96175
96174
  };
96176
- log61.info(`\u2705 Batch processed: ${pageTasks.length} tasks in ${duration.toFixed(2)}ms`);
96175
+ log60.info(`\u2705 Batch processed: ${pageTasks.length} tasks in ${duration.toFixed(2)}ms`);
96177
96176
  return result;
96178
96177
  } catch (error) {
96179
96178
  const message = error instanceof Error ? error.message : String(error);
96180
96179
  const errorMsg = `Batch processing failed: ${message}`;
96181
- log61.error(`\u274C ${errorMsg}`);
96180
+ log60.error(`\u274C ${errorMsg}`);
96182
96181
  errors2.push(errorMsg);
96183
96182
  const duration = performance.now() - startTime;
96184
96183
  return {
@@ -96196,7 +96195,7 @@ var init_worker_state = __esm({
96196
96195
  * 清理资源
96197
96196
  */
96198
96197
  async cleanup() {
96199
- log61.info("\u{1F9F9} Cleaning up worker resources...");
96198
+ log60.info("\u{1F9F9} Cleaning up worker resources...");
96200
96199
  this.initialized = false;
96201
96200
  }
96202
96201
  /**
@@ -96233,7 +96232,7 @@ async function handleWorkerTask(task) {
96233
96232
  }
96234
96233
  } catch (error) {
96235
96234
  const message = error instanceof Error ? error.message : String(error);
96236
- log62.error(`Worker task failed: ${message}`);
96235
+ log61.error(`Worker task failed: ${message}`);
96237
96236
  return {
96238
96237
  success: false,
96239
96238
  error: message
@@ -96247,7 +96246,7 @@ async function handleInit(task) {
96247
96246
  error: "Missing projDir or moduleDir for init task"
96248
96247
  };
96249
96248
  }
96250
- log62.info("\u{1F527} Initializing worker...");
96249
+ log61.info("\u{1F527} Initializing worker...");
96251
96250
  workerState = new WorkerState(task.projDir, task.moduleDir);
96252
96251
  await workerState.initialize();
96253
96252
  return {
@@ -96301,13 +96300,13 @@ async function handleCleanup() {
96301
96300
  data: { message: "Worker cleaned up successfully" }
96302
96301
  };
96303
96302
  }
96304
- var log62, workerState;
96303
+ var log61, workerState;
96305
96304
  var init_worker_main = __esm({
96306
96305
  "internal/application/worker/worker-main.ts"() {
96307
96306
  "use strict";
96308
96307
  init_worker_state();
96309
96308
  init_log();
96310
- log62 = getDomainLogger("application", { component: "worker-main" });
96309
+ log61 = getDomainLogger("application", { component: "worker-main" });
96311
96310
  workerState = null;
96312
96311
  }
96313
96312
  });
@@ -96318,14 +96317,14 @@ __export2(pool_manager_exports, {
96318
96317
  WorkerPoolManager: () => WorkerPoolManager
96319
96318
  });
96320
96319
  module.exports = __toCommonJS2(pool_manager_exports);
96321
- var workerpool, os2, log63, WorkerPoolManager;
96320
+ var workerpool, os2, log62, WorkerPoolManager;
96322
96321
  var init_pool_manager = __esm({
96323
96322
  "internal/application/worker/pool-manager.ts"() {
96324
96323
  init_log();
96325
96324
  workerpool = __toESM2(require("workerpool"));
96326
96325
  init_worker_main();
96327
96326
  os2 = __toESM2(require("os"));
96328
- log63 = getDomainLogger("application", { component: "pool-manager" });
96327
+ log62 = getDomainLogger("application", { component: "pool-manager" });
96329
96328
  WorkerPoolManager = class {
96330
96329
  pool = null;
96331
96330
  environment;
@@ -96333,7 +96332,7 @@ var init_pool_manager = __esm({
96333
96332
  constructor(config2 = {}) {
96334
96333
  this.environment = this.detectEnvironment();
96335
96334
  this.workerCount = config2.workerCount || this.calculateOptimalWorkerCount();
96336
- log63.info("Worker pool manager created", {
96335
+ log62.info("Worker pool manager created", {
96337
96336
  environment: this.environment,
96338
96337
  workerCount: this.workerCount
96339
96338
  });
@@ -96346,20 +96345,20 @@ var init_pool_manager = __esm({
96346
96345
  */
96347
96346
  detectEnvironment() {
96348
96347
  if (typeof Worker !== "undefined" && typeof globalThis.window !== "undefined") {
96349
- log63.debug("Detected Web Worker support (browser/Electron environment)");
96348
+ log62.debug("Detected Web Worker support (browser/Electron environment)");
96350
96349
  return "browser";
96351
96350
  }
96352
96351
  if (typeof process !== "undefined" && process.versions && process.versions.node) {
96353
96352
  try {
96354
96353
  require.resolve("worker_threads");
96355
- log63.debug("Detected Node.js Worker Threads support");
96354
+ log62.debug("Detected Node.js Worker Threads support");
96356
96355
  return "node";
96357
96356
  } catch {
96358
- log63.debug("Node.js detected but worker_threads unavailable, falling back to browser mode");
96357
+ log62.debug("Node.js detected but worker_threads unavailable, falling back to browser mode");
96359
96358
  return "browser";
96360
96359
  }
96361
96360
  }
96362
- log63.debug("Using browser mode as default");
96361
+ log62.debug("Using browser mode as default");
96363
96362
  return "browser";
96364
96363
  }
96365
96364
  /**
@@ -96382,11 +96381,11 @@ var init_pool_manager = __esm({
96382
96381
  */
96383
96382
  async initialize() {
96384
96383
  if (this.pool) {
96385
- log63.warn("Worker pool already initialized");
96384
+ log62.warn("Worker pool already initialized");
96386
96385
  return;
96387
96386
  }
96388
96387
  const startTime = performance.now();
96389
- log63.info(`\u{1F680} Initializing ${this.environment} worker pool with ${this.workerCount} workers...`);
96388
+ log62.info(`\u{1F680} Initializing ${this.environment} worker pool with ${this.workerCount} workers...`);
96390
96389
  try {
96391
96390
  if (this.environment === "node") {
96392
96391
  await this.initializeNodePool();
@@ -96394,25 +96393,25 @@ var init_pool_manager = __esm({
96394
96393
  await this.initializeBrowserPool();
96395
96394
  }
96396
96395
  const duration = performance.now() - startTime;
96397
- log63.info(`\u2705 Worker pool initialized in ${duration.toFixed(2)}ms`);
96396
+ log62.info(`\u2705 Worker pool initialized in ${duration.toFixed(2)}ms`);
96398
96397
  } catch (error) {
96399
96398
  const message = error instanceof Error ? error.message : String(error);
96400
96399
  if (this.environment === "node") {
96401
- log63.warn(`\u274C Node worker pool initialization failed: ${message}`);
96402
- log63.warn("\u{1F504} Attempting fallback to browser workers...");
96400
+ log62.warn(`\u274C Node worker pool initialization failed: ${message}`);
96401
+ log62.warn("\u{1F504} Attempting fallback to browser workers...");
96403
96402
  try {
96404
96403
  this.environment = "browser";
96405
96404
  await this.initializeBrowserPool();
96406
96405
  const duration = performance.now() - startTime;
96407
- log63.info(`\u2705 Successfully initialized browser worker pool as fallback in ${duration.toFixed(2)}ms`);
96406
+ log62.info(`\u2705 Successfully initialized browser worker pool as fallback in ${duration.toFixed(2)}ms`);
96408
96407
  return;
96409
96408
  } catch (fallbackError) {
96410
96409
  const fallbackMessage = fallbackError instanceof Error ? fallbackError.message : String(fallbackError);
96411
- log63.error(`\u274C Fallback to browser workers also failed: ${fallbackMessage}`);
96410
+ log62.error(`\u274C Fallback to browser workers also failed: ${fallbackMessage}`);
96412
96411
  throw new Error(`Worker pool initialization failed. Node: ${message}, Browser: ${fallbackMessage}`);
96413
96412
  }
96414
96413
  }
96415
- log63.error(`\u274C Failed to initialize worker pool: ${message}`);
96414
+ log62.error(`\u274C Failed to initialize worker pool: ${message}`);
96416
96415
  throw error;
96417
96416
  }
96418
96417
  }
@@ -96422,13 +96421,13 @@ var init_pool_manager = __esm({
96422
96421
  async initializeNodePool() {
96423
96422
  const path29 = require("path");
96424
96423
  const workerPath = path29.join(__dirname, "worker", "worker-node.js");
96425
- log63.debug(`Initializing Node.js worker pool with path: ${workerPath}`);
96424
+ log62.debug(`Initializing Node.js worker pool with path: ${workerPath}`);
96426
96425
  this.pool = workerpool.pool(workerPath, {
96427
96426
  minWorkers: this.workerCount,
96428
96427
  maxWorkers: this.workerCount,
96429
96428
  workerType: "thread"
96430
96429
  });
96431
- log63.debug(`Node.js worker pool created with ${this.workerCount} workers`, {
96430
+ log62.debug(`Node.js worker pool created with ${this.workerCount} workers`, {
96432
96431
  workerPath
96433
96432
  });
96434
96433
  }
@@ -96446,7 +96445,7 @@ var init_pool_manager = __esm({
96446
96445
  // 使用 Web Workers
96447
96446
  });
96448
96447
  this.pool.proxy().then((proxy) => {
96449
- log63.debug(`Browser worker pool created with ${this.workerCount} workers`);
96448
+ log62.debug(`Browser worker pool created with ${this.workerCount} workers`);
96450
96449
  });
96451
96450
  }
96452
96451
  /**
@@ -96466,7 +96465,7 @@ var init_pool_manager = __esm({
96466
96465
  }
96467
96466
  } catch (error) {
96468
96467
  const message = error instanceof Error ? error.message : String(error);
96469
- log63.error(`Worker task execution failed: ${message}`);
96468
+ log62.error(`Worker task execution failed: ${message}`);
96470
96469
  return {
96471
96470
  success: false,
96472
96471
  error: message
@@ -96491,13 +96490,13 @@ var init_pool_manager = __esm({
96491
96490
  */
96492
96491
  async terminate() {
96493
96492
  if (!this.pool) {
96494
- log63.warn("Worker pool already terminated");
96493
+ log62.warn("Worker pool already terminated");
96495
96494
  return;
96496
96495
  }
96497
- log63.info("\u{1F9F9} Terminating worker pool...");
96496
+ log62.info("\u{1F9F9} Terminating worker pool...");
96498
96497
  await this.pool.terminate();
96499
96498
  this.pool = null;
96500
- log63.info("\u2705 Worker pool terminated");
96499
+ log62.info("\u2705 Worker pool terminated");
96501
96500
  }
96502
96501
  };
96503
96502
  }