@mdfriday/foundry 26.4.19 → 26.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (298) hide show
  1. package/dist/cjs/index.js +1 -1
  2. package/dist/cjs/obsidian/mobile.js +1 -1
  3. package/dist/cjs/worker/pool-manager.js +341 -362
  4. package/dist/cjs/worker/worker-node.js +110 -132
  5. package/dist/esm/index.js +1 -1
  6. package/dist/esm/obsidian/mobile.js +1 -1
  7. package/dist/types/internal/application/batch-task-queue.d.ts +17 -0
  8. package/dist/types/internal/application/container.d.ts +68 -1
  9. package/dist/types/internal/application/identity.d.ts +173 -0
  10. package/dist/types/internal/application/incremental-build-coordinator.d.ts +28 -0
  11. package/dist/types/internal/application/incremental-ssg.d.ts +4 -0
  12. package/dist/types/internal/application/index.d.ts +5 -4
  13. package/dist/types/internal/application/publish.d.ts +37 -0
  14. package/dist/types/internal/application/ssg-parallel.d.ts +6 -0
  15. package/dist/types/internal/application/ssg.d.ts +15 -0
  16. package/dist/types/internal/application/wiki-service-config.d.ts +65 -0
  17. package/dist/types/internal/application/wiki-service.d.ts +199 -0
  18. package/dist/types/internal/application/worker/pool-manager.d.ts +43 -0
  19. package/dist/types/internal/application/worker/worker-browser.d.ts +6 -0
  20. package/dist/types/internal/application/worker/worker-main.d.ts +12 -0
  21. package/dist/types/internal/application/worker/worker-state.d.ts +23 -0
  22. package/dist/types/internal/application/workspace.d.ts +98 -0
  23. package/dist/types/internal/domain/config/entity/config.d.ts +40 -0
  24. package/dist/types/internal/domain/config/entity/language.d.ts +51 -0
  25. package/dist/types/internal/domain/config/entity/markdown.d.ts +36 -0
  26. package/dist/types/internal/domain/config/entity/module.d.ts +36 -0
  27. package/dist/types/internal/domain/config/entity/root.d.ts +39 -0
  28. package/dist/types/internal/domain/config/entity/service.d.ts +36 -0
  29. package/dist/types/internal/domain/config/entity/social.d.ts +43 -0
  30. package/dist/types/internal/domain/config/entity/taxonomy.d.ts +39 -0
  31. package/dist/types/internal/domain/config/factory/config.d.ts +3 -0
  32. package/dist/types/internal/domain/config/factory/loader.d.ts +24 -0
  33. package/dist/types/internal/domain/config/factory/provider.d.ts +10 -0
  34. package/dist/types/internal/domain/config/factory/sourcedescriptor.d.ts +12 -0
  35. package/dist/types/internal/domain/config/type.d.ts +56 -0
  36. package/dist/types/internal/domain/config/vo/language.d.ts +6 -0
  37. package/dist/types/internal/domain/config/vo/markdown.d.ts +13 -0
  38. package/dist/types/internal/domain/config/vo/module.d.ts +9 -0
  39. package/dist/types/internal/domain/config/vo/root.d.ts +6 -0
  40. package/dist/types/internal/domain/config/vo/service.d.ts +6 -0
  41. package/dist/types/internal/domain/config/vo/social.d.ts +16 -0
  42. package/dist/types/internal/domain/config/vo/taxonomy.d.ts +12 -0
  43. package/dist/types/internal/domain/content/entity/content.d.ts +36 -0
  44. package/dist/types/internal/domain/content/entity/page.d.ts +23 -0
  45. package/dist/types/internal/domain/content/entity/pagebuilder.d.ts +83 -0
  46. package/dist/types/internal/domain/content/entity/pagecollector.d.ts +3 -0
  47. package/dist/types/internal/domain/content/entity/pagecontent.d.ts +14 -0
  48. package/dist/types/internal/domain/content/entity/pagemap.d.ts +69 -0
  49. package/dist/types/internal/domain/content/entity/pagesource.d.ts +52 -0
  50. package/dist/types/internal/domain/content/entity/pagetrees.d.ts +12 -0
  51. package/dist/types/internal/domain/content/entity/paginator.d.ts +19 -0
  52. package/dist/types/internal/domain/content/entity/section.d.ts +15 -0
  53. package/dist/types/internal/domain/content/entity/shortcode.d.ts +39 -0
  54. package/dist/types/internal/domain/content/entity/standalone.d.ts +9 -0
  55. package/dist/types/internal/domain/content/entity/taxonomy.d.ts +15 -0
  56. package/dist/types/internal/domain/content/entity/term.d.ts +6 -0
  57. package/dist/types/internal/domain/content/entity/translator.d.ts +22 -0
  58. package/dist/types/internal/domain/content/type.d.ts +6 -0
  59. package/dist/types/internal/domain/content/vo/classifier.d.ts +24 -0
  60. package/dist/types/internal/domain/content/vo/frontmatter.d.ts +65 -0
  61. package/dist/types/internal/domain/content/vo/kind.d.ts +10 -0
  62. package/dist/types/internal/domain/fs/entity/basefs.d.ts +23 -0
  63. package/dist/types/internal/domain/fs/entity/fs.d.ts +13 -0
  64. package/dist/types/internal/domain/fs/entity/originfs.d.ts +6 -0
  65. package/dist/types/internal/domain/fs/entity/overlaydir.d.ts +44 -0
  66. package/dist/types/internal/domain/fs/entity/overlayfs.d.ts +79 -0
  67. package/dist/types/internal/domain/fs/entity/service.d.ts +15 -0
  68. package/dist/types/internal/domain/fs/factory/fs.d.ts +4 -0
  69. package/dist/types/internal/domain/fs/type.d.ts +95 -0
  70. package/dist/types/internal/domain/fs/vo/dir.d.ts +41 -0
  71. package/dist/types/internal/domain/fs/vo/file.d.ts +28 -0
  72. package/dist/types/internal/domain/fs/vo/fileinfo.d.ts +23 -0
  73. package/dist/types/internal/domain/fs/vo/filemeta.d.ts +45 -0
  74. package/dist/types/internal/domain/fs/vo/filesystemscollector.d.ts +17 -0
  75. package/dist/types/internal/domain/fs/vo/filevitural.d.ts +8 -0
  76. package/dist/types/internal/domain/fs/vo/osfs.d.ts +12 -0
  77. package/dist/types/internal/domain/fs/vo/overlay-factory.d.ts +4 -0
  78. package/dist/types/internal/domain/fs/vo/overlayfs-factory.d.ts +42 -0
  79. package/dist/types/internal/domain/fs/vo/overlayoptions.d.ts +44 -0
  80. package/dist/types/internal/domain/fs/vo/static-copier.d.ts +22 -0
  81. package/dist/types/internal/domain/fs/vo/walkway.d.ts +22 -0
  82. package/dist/types/internal/domain/identity/entity/user.d.ts +100 -0
  83. package/dist/types/internal/domain/identity/factory/user-factory.d.ts +183 -0
  84. package/dist/types/internal/domain/identity/repository/index.d.ts +30 -0
  85. package/dist/types/internal/domain/identity/type.d.ts +17 -0
  86. package/dist/types/internal/domain/identity/value-object/device.d.ts +26 -0
  87. package/dist/types/internal/domain/identity/value-object/email.d.ts +29 -0
  88. package/dist/types/internal/domain/identity/value-object/license.d.ts +91 -0
  89. package/dist/types/internal/domain/identity/value-object/server-config.d.ts +37 -0
  90. package/dist/types/internal/domain/identity/value-object/sync-config.d.ts +47 -0
  91. package/dist/types/internal/domain/identity/value-object/token.d.ts +35 -0
  92. package/dist/types/internal/domain/markdown/entity/markdown.d.ts +41 -0
  93. package/dist/types/internal/domain/markdown/factory/it/config.d.ts +60 -0
  94. package/dist/types/internal/domain/markdown/factory/it/index.d.ts +21 -1
  95. package/dist/types/internal/domain/markdown/factory/it/parserresult.d.ts +3 -0
  96. package/dist/types/internal/domain/markdown/factory/it/plugins/callout-plugin.d.ts +40 -0
  97. package/dist/types/internal/domain/markdown/factory/it/plugins/latex-plugin.d.ts +23 -0
  98. package/dist/types/internal/domain/markdown/factory/it/plugins/mermaid-plugin.d.ts +24 -0
  99. package/dist/types/internal/domain/markdown/factory/it/plugins/tag-plugin.d.ts +71 -0
  100. package/dist/types/internal/domain/markdown/factory/it/plugins/wikilink-plugin.d.ts +28 -0
  101. package/dist/types/internal/domain/markdown/factory/it/plugins/wikilink.d.ts +31 -0
  102. package/dist/types/internal/domain/markdown/factory/it/tableofcontents.d.ts +21 -0
  103. package/dist/types/internal/domain/markdown/factory/it/util/path.d.ts +11 -0
  104. package/dist/types/internal/domain/markdown/factory/it/util/slugger-fallback.d.ts +6 -0
  105. package/dist/types/internal/domain/markdown/type.d.ts +159 -0
  106. package/dist/types/internal/domain/markdown/vo/config.d.ts +48 -0
  107. package/dist/types/internal/domain/markdown/vo/content.d.ts +92 -0
  108. package/dist/types/internal/domain/markdown/vo/context.d.ts +9 -0
  109. package/dist/types/internal/domain/markdown/vo/highlight.d.ts +15 -0
  110. package/dist/types/internal/domain/markdown/vo/pageparser.d.ts +9 -0
  111. package/dist/types/internal/domain/markdown/vo/parseinfo.d.ts +36 -0
  112. package/dist/types/internal/domain/markdown/vo/parserresult.d.ts +6 -0
  113. package/dist/types/internal/domain/markdown/vo/shortcode.d.ts +31 -1
  114. package/dist/types/internal/domain/markdown/vo/tableofcontents.d.ts +21 -0
  115. package/dist/types/internal/domain/module/entity/lang.d.ts +12 -0
  116. package/dist/types/internal/domain/module/entity/module.d.ts +73 -0
  117. package/dist/types/internal/domain/module/factory/module.d.ts +6 -0
  118. package/dist/types/internal/domain/module/type.d.ts +58 -0
  119. package/dist/types/internal/domain/module/vo/cache.d.ts +48 -0
  120. package/dist/types/internal/domain/module/vo/httpclient.d.ts +14 -0
  121. package/dist/types/internal/domain/module/vo/module.d.ts +76 -0
  122. package/dist/types/internal/domain/module/vo/mount.d.ts +39 -0
  123. package/dist/types/internal/domain/module/vo/themes.d.ts +38 -0
  124. package/dist/types/internal/domain/module/vo/zipextractor.d.ts +31 -0
  125. package/dist/types/internal/domain/paths/entity/path.d.ts +28 -0
  126. package/dist/types/internal/domain/paths/factory/pathfactory.d.ts +82 -0
  127. package/dist/types/internal/domain/paths/type.d.ts +133 -1
  128. package/dist/types/internal/domain/paths/vo/pathcomponents.d.ts +94 -0
  129. package/dist/types/internal/domain/paths/vo/pathparser.d.ts +77 -0
  130. package/dist/types/internal/domain/publish/entity/publisher.d.ts +26 -0
  131. package/dist/types/internal/domain/publish/factory/publisher-factory.d.ts +17 -0
  132. package/dist/types/internal/domain/publish/repository/http-client.d.ts +21 -0
  133. package/dist/types/internal/domain/publish/repository/manifest-repository.d.ts +27 -0
  134. package/dist/types/internal/domain/publish/type.d.ts +49 -0
  135. package/dist/types/internal/domain/publish/value-object/ftp-publisher.d.ts +30 -0
  136. package/dist/types/internal/domain/publish/value-object/mdfriday-publisher.d.ts +57 -0
  137. package/dist/types/internal/domain/publish/value-object/netlify-publisher.d.ts +55 -0
  138. package/dist/types/internal/domain/publish/value-object/publish-config.d.ts +38 -0
  139. package/dist/types/internal/domain/publish/value-object/publish-manifest.d.ts +50 -0
  140. package/dist/types/internal/domain/resources/entity/http.d.ts +11 -0
  141. package/dist/types/internal/domain/resources/entity/integrity.d.ts +4 -0
  142. package/dist/types/internal/domain/resources/entity/minifier.d.ts +4 -0
  143. package/dist/types/internal/domain/resources/entity/publisher.d.ts +24 -0
  144. package/dist/types/internal/domain/resources/entity/resource.d.ts +4 -0
  145. package/dist/types/internal/domain/resources/entity/resources.d.ts +40 -0
  146. package/dist/types/internal/domain/resources/entity/template.d.ts +4 -0
  147. package/dist/types/internal/domain/resources/factory/resource.d.ts +4 -0
  148. package/dist/types/internal/domain/site/entity/language.d.ts +55 -0
  149. package/dist/types/internal/domain/site/entity/menu-builder.d.ts +50 -0
  150. package/dist/types/internal/domain/site/entity/navigation.d.ts +8 -0
  151. package/dist/types/internal/domain/site/entity/page.d.ts +88 -0
  152. package/dist/types/internal/domain/site/entity/pagegraph.d.ts +85 -0
  153. package/dist/types/internal/domain/site/entity/pager.d.ts +6 -0
  154. package/dist/types/internal/domain/site/entity/publisher.d.ts +26 -0
  155. package/dist/types/internal/domain/site/entity/ref.d.ts +27 -0
  156. package/dist/types/internal/domain/site/entity/site.d.ts +178 -0
  157. package/dist/types/internal/domain/site/factory/navigation-factory.d.ts +6 -0
  158. package/dist/types/internal/domain/site/factory/site.d.ts +4 -0
  159. package/dist/types/internal/domain/site/service/html-link-processor.d.ts +44 -0
  160. package/dist/types/internal/domain/site/type.d.ts +100 -0
  161. package/dist/types/internal/domain/site/valueobject/author.d.ts +16 -0
  162. package/dist/types/internal/domain/site/valueobject/baseurl.d.ts +39 -0
  163. package/dist/types/internal/domain/site/valueobject/menu.d.ts +49 -0
  164. package/dist/types/internal/domain/site/valueobject/organization.d.ts +37 -0
  165. package/dist/types/internal/domain/site/valueobject/path.d.ts +50 -0
  166. package/dist/types/internal/domain/site/valueobject/version.d.ts +14 -0
  167. package/dist/types/internal/domain/template/entity/executor.d.ts +22 -0
  168. package/dist/types/internal/domain/template/entity/lookup.d.ts +55 -0
  169. package/dist/types/internal/domain/template/entity/parser.d.ts +40 -0
  170. package/dist/types/internal/domain/template/entity/template.d.ts +87 -0
  171. package/dist/types/internal/domain/template/factory/template.d.ts +61 -0
  172. package/dist/types/internal/domain/template/type.d.ts +109 -0
  173. package/dist/types/internal/domain/template/vo/baseof.d.ts +47 -0
  174. package/dist/types/internal/domain/template/vo/info.d.ts +28 -0
  175. package/dist/types/internal/domain/template/vo/namespace.d.ts +91 -0
  176. package/dist/types/internal/domain/template/vo/registry.d.ts +160 -0
  177. package/dist/types/internal/domain/wiki/entity/concept.d.ts +31 -0
  178. package/dist/types/internal/domain/wiki/entity/connection.d.ts +29 -0
  179. package/dist/types/internal/domain/wiki/entity/conversation.d.ts +65 -0
  180. package/dist/types/internal/domain/wiki/entity/embedding-index.d.ts +60 -0
  181. package/dist/types/internal/domain/wiki/entity/entity.d.ts +32 -0
  182. package/dist/types/internal/domain/wiki/entity/knowledge-base.d.ts +292 -0
  183. package/dist/types/internal/domain/wiki/entity/operation-log.d.ts +82 -0
  184. package/dist/types/internal/domain/wiki/factory/wiki-factory.d.ts +41 -0
  185. package/dist/types/internal/domain/wiki/index.d.ts +22 -0
  186. package/dist/types/internal/domain/wiki/repository/conversation-repository.interface.d.ts +29 -0
  187. package/dist/types/internal/domain/wiki/repository/crypto-service.d.ts +16 -0
  188. package/dist/types/internal/domain/wiki/repository/embedding-provider.d.ts +12 -0
  189. package/dist/types/internal/domain/wiki/repository/file-system.d.ts +43 -0
  190. package/dist/types/internal/domain/wiki/repository/index.d.ts +14 -0
  191. package/dist/types/internal/domain/wiki/repository/kb-repository.interface.d.ts +30 -0
  192. package/dist/types/internal/domain/wiki/repository/llm-http-client.d.ts +40 -0
  193. package/dist/types/internal/domain/wiki/repository/llm-provider.d.ts +34 -0
  194. package/dist/types/internal/domain/wiki/repository/path-service.d.ts +32 -0
  195. package/dist/types/internal/domain/wiki/repository/wiki-page-repository.interface.d.ts +49 -0
  196. package/dist/types/internal/domain/wiki/value-object/connection-type.d.ts +24 -0
  197. package/dist/types/internal/domain/wiki/value-object/content-annotator.d.ts +61 -0
  198. package/dist/types/internal/domain/wiki/value-object/entity-id.d.ts +17 -0
  199. package/dist/types/internal/domain/wiki/value-object/entity-type.d.ts +24 -0
  200. package/dist/types/internal/domain/wiki/value-object/extraction-parser.d.ts +27 -0
  201. package/dist/types/internal/domain/wiki/value-object/extraction-result.d.ts +32 -0
  202. package/dist/types/internal/domain/wiki/value-object/retrieval.d.ts +228 -0
  203. package/dist/types/internal/domain/wiki/value-object/source-record.d.ts +17 -0
  204. package/dist/types/internal/domain/wiki/value-object/wiki-config.d.ts +40 -0
  205. package/dist/types/internal/domain/wiki/value-object/wiki-index-generator.d.ts +31 -0
  206. package/dist/types/internal/domain/wiki/value-object/wiki-page-renderer.d.ts +42 -0
  207. package/dist/types/internal/domain/workspace/entity/authentication.d.ts +29 -0
  208. package/dist/types/internal/domain/workspace/entity/project.d.ts +173 -0
  209. package/dist/types/internal/domain/workspace/entity/workspace.d.ts +85 -0
  210. package/dist/types/internal/domain/workspace/factory/workspace-factory.d.ts +107 -0
  211. package/dist/types/internal/domain/workspace/repository/file-system.d.ts +241 -0
  212. package/dist/types/internal/domain/workspace/repository/index.d.ts +6 -0
  213. package/dist/types/internal/domain/workspace/repository.d.ts +72 -0
  214. package/dist/types/internal/domain/workspace/type.d.ts +18 -0
  215. package/dist/types/internal/domain/workspace/value-object/folder-structure.d.ts +41 -0
  216. package/dist/types/internal/domain/workspace/value-object/project-metadata.d.ts +36 -0
  217. package/dist/types/internal/domain/workspace/value-object/workspace-metadata.d.ts +7 -0
  218. package/dist/types/internal/infrastructure/embedding/embedding-provider.interface.d.ts +33 -0
  219. package/dist/types/internal/infrastructure/embedding/index.d.ts +5 -0
  220. package/dist/types/internal/infrastructure/embedding/ollama-embedding-provider.d.ts +24 -0
  221. package/dist/types/internal/infrastructure/http/netlify-http-client.d.ts +20 -0
  222. package/dist/types/internal/infrastructure/http/node-http-client.d.ts +3 -0
  223. package/dist/types/internal/infrastructure/index.d.ts +8 -0
  224. package/dist/types/internal/infrastructure/llm/fetch-http-client.d.ts +24 -0
  225. package/dist/types/internal/infrastructure/llm/index.d.ts +6 -0
  226. package/dist/types/internal/infrastructure/llm/llm-config.d.ts +80 -0
  227. package/dist/types/internal/infrastructure/llm/lmstudio-provider.d.ts +55 -0
  228. package/dist/types/internal/infrastructure/llm/node-llm-http-client.d.ts +21 -0
  229. package/dist/types/internal/infrastructure/llm/ollama-provider.d.ts +17 -0
  230. package/dist/types/internal/infrastructure/llm/openai-compatible-provider.d.ts +70 -0
  231. package/dist/types/internal/infrastructure/llm/provider-factory.d.ts +36 -0
  232. package/dist/types/internal/infrastructure/llm/provider.d.ts +77 -0
  233. package/dist/types/internal/infrastructure/node/index.d.ts +11 -0
  234. package/dist/types/internal/infrastructure/node/node-conversation-repository.d.ts +21 -0
  235. package/dist/types/internal/infrastructure/node/node-crypto-service.d.ts +10 -0
  236. package/dist/types/internal/infrastructure/node/node-file-system.d.ts +29 -0
  237. package/dist/types/internal/infrastructure/node/node-kb-repository.d.ts +18 -0
  238. package/dist/types/internal/infrastructure/node/node-path-service.d.ts +14 -0
  239. package/dist/types/internal/infrastructure/node/node-wiki-page-repository.d.ts +25 -0
  240. package/dist/types/internal/infrastructure/persistence/node-file-system.d.ts +8 -0
  241. package/dist/types/internal/infrastructure/persistence/node-manifest-repository.d.ts +31 -0
  242. package/dist/types/internal/infrastructure/persistence/node-snapshot-repository.d.ts +28 -0
  243. package/dist/types/internal/infrastructure/persistence/node-workspace-repository.d.ts +9 -0
  244. package/dist/types/pkg/cahce/cache.d.ts +56 -0
  245. package/dist/types/pkg/lang/data.d.ts +21 -0
  246. package/dist/types/pkg/lang/index.d.ts +46 -0
  247. package/dist/types/pkg/lang/service.d.ts +49 -0
  248. package/dist/types/pkg/lang/types.d.ts +29 -0
  249. package/dist/types/pkg/log/http.d.ts +16 -0
  250. package/dist/types/pkg/log/manager.d.ts +57 -0
  251. package/dist/types/pkg/maps/scratch.d.ts +25 -0
  252. package/dist/types/pkg/md/parser/item.d.ts +3 -3
  253. package/dist/types/pkg/media/type.d.ts +19 -0
  254. package/dist/types/pkg/page-filter/index.d.ts +29 -0
  255. package/dist/types/pkg/paths/index.d.ts +9 -0
  256. package/dist/types/pkg/text/index.d.ts +4 -0
  257. package/dist/types/pkg/web/server/livereload-server.d.ts +7 -0
  258. package/dist/types/pkg/web/watcher/content-file-watcher.d.ts +3 -0
  259. package/package.json +21 -15
  260. package/dist/types/index.d.ts +0 -20
  261. package/dist/types/internal/interfaces/obsidian/adapters/identity-adapter.d.ts +0 -5
  262. package/dist/types/internal/interfaces/obsidian/adapters/index.d.ts +0 -2
  263. package/dist/types/internal/interfaces/obsidian/adapters/workspace-adapter.d.ts +0 -8
  264. package/dist/types/internal/interfaces/obsidian/desktop/adapters/identity-adapter.d.ts +0 -6
  265. package/dist/types/internal/interfaces/obsidian/desktop/adapters/index.d.ts +0 -2
  266. package/dist/types/internal/interfaces/obsidian/desktop/adapters/workspace-adapter.d.ts +0 -12
  267. package/dist/types/internal/interfaces/obsidian/desktop/container.d.ts +0 -7
  268. package/dist/types/internal/interfaces/obsidian/desktop/index.d.ts +0 -22
  269. package/dist/types/internal/interfaces/obsidian/index.d.ts +0 -7
  270. package/dist/types/internal/interfaces/obsidian/mobile/adapters/identity-adapter.d.ts +0 -9
  271. package/dist/types/internal/interfaces/obsidian/mobile/adapters/index.d.ts +0 -2
  272. package/dist/types/internal/interfaces/obsidian/mobile/adapters/workspace-adapter.d.ts +0 -13
  273. package/dist/types/internal/interfaces/obsidian/mobile/config-types.d.ts +0 -13
  274. package/dist/types/internal/interfaces/obsidian/mobile/container.d.ts +0 -6
  275. package/dist/types/internal/interfaces/obsidian/mobile/index.d.ts +0 -16
  276. package/dist/types/internal/interfaces/obsidian/mobile.d.ts +0 -2
  277. package/dist/types/internal/interfaces/obsidian/services/auth.service.d.ts +0 -11
  278. package/dist/types/internal/interfaces/obsidian/services/build.service.d.ts +0 -9
  279. package/dist/types/internal/interfaces/obsidian/services/config.service.d.ts +0 -31
  280. package/dist/types/internal/interfaces/obsidian/services/domain.service.d.ts +0 -15
  281. package/dist/types/internal/interfaces/obsidian/services/license.service.d.ts +0 -22
  282. package/dist/types/internal/interfaces/obsidian/services/project.service.d.ts +0 -17
  283. package/dist/types/internal/interfaces/obsidian/services/publish.service.d.ts +0 -11
  284. package/dist/types/internal/interfaces/obsidian/services/serve.service.d.ts +0 -18
  285. package/dist/types/internal/interfaces/obsidian/services/workspace.service.d.ts +0 -10
  286. package/dist/types/internal/interfaces/obsidian/types/auth.d.ts +0 -27
  287. package/dist/types/internal/interfaces/obsidian/types/build.d.ts +0 -23
  288. package/dist/types/internal/interfaces/obsidian/types/config.d.ts +0 -16
  289. package/dist/types/internal/interfaces/obsidian/types/domain.d.ts +0 -46
  290. package/dist/types/internal/interfaces/obsidian/types/index.d.ts +0 -9
  291. package/dist/types/internal/interfaces/obsidian/types/license.d.ts +0 -87
  292. package/dist/types/internal/interfaces/obsidian/types/project.d.ts +0 -56
  293. package/dist/types/internal/interfaces/obsidian/types/publish.d.ts +0 -33
  294. package/dist/types/internal/interfaces/obsidian/types/serve.d.ts +0 -46
  295. package/dist/types/internal/interfaces/obsidian/types/workspace.d.ts +0 -27
  296. package/dist/types/pkg/log/browser-manager.d.ts +0 -20
  297. package/dist/types/pkg/log/browser.d.ts +0 -25
  298. package/dist/types/pkg/media/buildin.d.ts +0 -3
@@ -782,8 +782,8 @@ var init_module2 = __esm({
782
782
  /**
783
783
  * Find import by path
784
784
  */
785
- findImport(path29) {
786
- return this.moduleConfig.imports.find((imp) => imp.path === path29);
785
+ findImport(path30) {
786
+ return this.moduleConfig.imports.find((imp) => imp.path === path30);
787
787
  }
788
788
  /**
789
789
  * Find mount by source
@@ -1076,9 +1076,6 @@ function getLanguageService() {
1076
1076
  }
1077
1077
  return serviceInstance;
1078
1078
  }
1079
- function createLanguageService() {
1080
- return new DefaultLanguageService();
1081
- }
1082
1079
  var DefaultLanguageService, serviceInstance;
1083
1080
  var init_service3 = __esm({
1084
1081
  "pkg/lang/service.ts"() {
@@ -1170,19 +1167,6 @@ var init_service3 = __esm({
1170
1167
  });
1171
1168
 
1172
1169
  // pkg/lang/index.ts
1173
- var lang_exports = {};
1174
- __export(lang_exports, {
1175
- ALL_LANGUAGES: () => ALL_LANGUAGES,
1176
- CODE_NAME_MAP: () => CODE_NAME_MAP,
1177
- DefaultLanguageService: () => DefaultLanguageService,
1178
- LANGUAGE_MAP: () => LANGUAGE_MAP,
1179
- LTR_LANGUAGES: () => LTR_LANGUAGES,
1180
- RTL_LANGUAGES: () => RTL_LANGUAGES,
1181
- createLanguageService: () => createLanguageService,
1182
- getLanguageService: () => getLanguageService,
1183
- lang: () => lang,
1184
- languages: () => languages
1185
- });
1186
1170
  var lang, languages;
1187
1171
  var init_lang = __esm({
1188
1172
  "pkg/lang/index.ts"() {
@@ -3150,7 +3134,7 @@ var require_BufferList = __commonJS({
3150
3134
  this.head = this.tail = null;
3151
3135
  this.length = 0;
3152
3136
  };
3153
- BufferList.prototype.join = function join12(s2) {
3137
+ BufferList.prototype.join = function join13(s2) {
3154
3138
  if (this.length === 0)
3155
3139
  return "";
3156
3140
  var p2 = this.head;
@@ -3265,7 +3249,7 @@ var require_stream_writable = __commonJS({
3265
3249
  "node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) {
3266
3250
  "use strict";
3267
3251
  var pna = require_process_nextick_args();
3268
- module2.exports = Writable2;
3252
+ module2.exports = Writable3;
3269
3253
  function CorkedRequest(state) {
3270
3254
  var _this = this;
3271
3255
  this.next = null;
@@ -3276,7 +3260,7 @@ var require_stream_writable = __commonJS({
3276
3260
  }
3277
3261
  var asyncWrite = !process.browser && ["v0.10", "v0.9."].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick;
3278
3262
  var Duplex;
3279
- Writable2.WritableState = WritableState;
3263
+ Writable3.WritableState = WritableState;
3280
3264
  var util2 = Object.create(require_util());
3281
3265
  util2.inherits = require_inherits();
3282
3266
  var internalUtil = {
@@ -3293,7 +3277,7 @@ var require_stream_writable = __commonJS({
3293
3277
  return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array;
3294
3278
  }
3295
3279
  var destroyImpl = require_destroy();
3296
- util2.inherits(Writable2, Stream);
3280
+ util2.inherits(Writable3, Stream);
3297
3281
  function nop() {
3298
3282
  }
3299
3283
  function WritableState(options, stream) {
@@ -3362,11 +3346,11 @@ var require_stream_writable = __commonJS({
3362
3346
  var realHasInstance;
3363
3347
  if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") {
3364
3348
  realHasInstance = Function.prototype[Symbol.hasInstance];
3365
- Object.defineProperty(Writable2, Symbol.hasInstance, {
3349
+ Object.defineProperty(Writable3, Symbol.hasInstance, {
3366
3350
  value: function(object) {
3367
3351
  if (realHasInstance.call(this, object))
3368
3352
  return true;
3369
- if (this !== Writable2)
3353
+ if (this !== Writable3)
3370
3354
  return false;
3371
3355
  return object && object._writableState instanceof WritableState;
3372
3356
  }
@@ -3376,10 +3360,10 @@ var require_stream_writable = __commonJS({
3376
3360
  return object instanceof this;
3377
3361
  };
3378
3362
  }
3379
- function Writable2(options) {
3363
+ function Writable3(options) {
3380
3364
  Duplex = Duplex || require_stream_duplex();
3381
- if (!realHasInstance.call(Writable2, this) && !(this instanceof Duplex)) {
3382
- return new Writable2(options);
3365
+ if (!realHasInstance.call(Writable3, this) && !(this instanceof Duplex)) {
3366
+ return new Writable3(options);
3383
3367
  }
3384
3368
  this._writableState = new WritableState(options, this);
3385
3369
  this.writable = true;
@@ -3395,7 +3379,7 @@ var require_stream_writable = __commonJS({
3395
3379
  }
3396
3380
  Stream.call(this);
3397
3381
  }
3398
- Writable2.prototype.pipe = function() {
3382
+ Writable3.prototype.pipe = function() {
3399
3383
  this.emit("error", new Error("Cannot pipe, not readable"));
3400
3384
  };
3401
3385
  function writeAfterEnd(stream, cb) {
@@ -3418,7 +3402,7 @@ var require_stream_writable = __commonJS({
3418
3402
  }
3419
3403
  return valid2;
3420
3404
  }
3421
- Writable2.prototype.write = function(chunk, encoding, cb) {
3405
+ Writable3.prototype.write = function(chunk, encoding, cb) {
3422
3406
  var state = this._writableState;
3423
3407
  var ret = false;
3424
3408
  var isBuf = !state.objectMode && _isUint8Array(chunk);
@@ -3443,11 +3427,11 @@ var require_stream_writable = __commonJS({
3443
3427
  }
3444
3428
  return ret;
3445
3429
  };
3446
- Writable2.prototype.cork = function() {
3430
+ Writable3.prototype.cork = function() {
3447
3431
  var state = this._writableState;
3448
3432
  state.corked++;
3449
3433
  };
3450
- Writable2.prototype.uncork = function() {
3434
+ Writable3.prototype.uncork = function() {
3451
3435
  var state = this._writableState;
3452
3436
  if (state.corked) {
3453
3437
  state.corked--;
@@ -3455,7 +3439,7 @@ var require_stream_writable = __commonJS({
3455
3439
  clearBuffer(this, state);
3456
3440
  }
3457
3441
  };
3458
- Writable2.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
3442
+ Writable3.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
3459
3443
  if (typeof encoding === "string")
3460
3444
  encoding = encoding.toLowerCase();
3461
3445
  if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1))
@@ -3469,7 +3453,7 @@ var require_stream_writable = __commonJS({
3469
3453
  }
3470
3454
  return chunk;
3471
3455
  }
3472
- Object.defineProperty(Writable2.prototype, "writableHighWaterMark", {
3456
+ Object.defineProperty(Writable3.prototype, "writableHighWaterMark", {
3473
3457
  // making it explicit this property is not enumerable
3474
3458
  // because otherwise some prototype manipulation in
3475
3459
  // userland will fail
@@ -3622,11 +3606,11 @@ var require_stream_writable = __commonJS({
3622
3606
  state.bufferedRequest = entry;
3623
3607
  state.bufferProcessing = false;
3624
3608
  }
3625
- Writable2.prototype._write = function(chunk, encoding, cb) {
3609
+ Writable3.prototype._write = function(chunk, encoding, cb) {
3626
3610
  cb(new Error("_write() is not implemented"));
3627
3611
  };
3628
- Writable2.prototype._writev = null;
3629
- Writable2.prototype.end = function(chunk, encoding, cb) {
3612
+ Writable3.prototype._writev = null;
3613
+ Writable3.prototype.end = function(chunk, encoding, cb) {
3630
3614
  var state = this._writableState;
3631
3615
  if (typeof chunk === "function") {
3632
3616
  cb = chunk;
@@ -3705,7 +3689,7 @@ var require_stream_writable = __commonJS({
3705
3689
  }
3706
3690
  state.corkedRequestsFree.next = corkReq;
3707
3691
  }
3708
- Object.defineProperty(Writable2.prototype, "destroyed", {
3692
+ Object.defineProperty(Writable3.prototype, "destroyed", {
3709
3693
  get: function() {
3710
3694
  if (this._writableState === void 0) {
3711
3695
  return false;
@@ -3719,9 +3703,9 @@ var require_stream_writable = __commonJS({
3719
3703
  this._writableState.destroyed = value2;
3720
3704
  }
3721
3705
  });
3722
- Writable2.prototype.destroy = destroyImpl.destroy;
3723
- Writable2.prototype._undestroy = destroyImpl.undestroy;
3724
- Writable2.prototype._destroy = function(err, cb) {
3706
+ Writable3.prototype.destroy = destroyImpl.destroy;
3707
+ Writable3.prototype._undestroy = destroyImpl.undestroy;
3708
+ Writable3.prototype._destroy = function(err, cb) {
3725
3709
  this.end();
3726
3710
  cb(err);
3727
3711
  };
@@ -3743,15 +3727,15 @@ var require_stream_duplex = __commonJS({
3743
3727
  module2.exports = Duplex;
3744
3728
  var util2 = Object.create(require_util());
3745
3729
  util2.inherits = require_inherits();
3746
- var Readable = require_stream_readable();
3747
- var Writable2 = require_stream_writable();
3748
- util2.inherits(Duplex, Readable);
3730
+ var Readable3 = require_stream_readable();
3731
+ var Writable3 = require_stream_writable();
3732
+ util2.inherits(Duplex, Readable3);
3749
3733
  {
3750
- keys = objectKeys(Writable2.prototype);
3734
+ keys = objectKeys(Writable3.prototype);
3751
3735
  for (v = 0; v < keys.length; v++) {
3752
3736
  method = keys[v];
3753
3737
  if (!Duplex.prototype[method])
3754
- Duplex.prototype[method] = Writable2.prototype[method];
3738
+ Duplex.prototype[method] = Writable3.prototype[method];
3755
3739
  }
3756
3740
  }
3757
3741
  var keys;
@@ -3760,8 +3744,8 @@ var require_stream_duplex = __commonJS({
3760
3744
  function Duplex(options) {
3761
3745
  if (!(this instanceof Duplex))
3762
3746
  return new Duplex(options);
3763
- Readable.call(this, options);
3764
- Writable2.call(this, options);
3747
+ Readable3.call(this, options);
3748
+ Writable3.call(this, options);
3765
3749
  if (options && options.readable === false)
3766
3750
  this.readable = false;
3767
3751
  if (options && options.writable === false)
@@ -4076,10 +4060,10 @@ var require_stream_readable = __commonJS({
4076
4060
  "node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) {
4077
4061
  "use strict";
4078
4062
  var pna = require_process_nextick_args();
4079
- module2.exports = Readable;
4063
+ module2.exports = Readable3;
4080
4064
  var isArray = require_isarray();
4081
4065
  var Duplex;
4082
- Readable.ReadableState = ReadableState;
4066
+ Readable3.ReadableState = ReadableState;
4083
4067
  var EE = require("events").EventEmitter;
4084
4068
  var EElistenerCount = function(emitter, type2) {
4085
4069
  return emitter.listeners(type2).length;
@@ -4107,7 +4091,7 @@ var require_stream_readable = __commonJS({
4107
4091
  var BufferList = require_BufferList();
4108
4092
  var destroyImpl = require_destroy();
4109
4093
  var StringDecoder;
4110
- util2.inherits(Readable, Stream);
4094
+ util2.inherits(Readable3, Stream);
4111
4095
  var kProxyEvents = ["error", "close", "destroy", "pause", "resume"];
4112
4096
  function prependListener(emitter, event, fn) {
4113
4097
  if (typeof emitter.prependListener === "function")
@@ -4162,10 +4146,10 @@ var require_stream_readable = __commonJS({
4162
4146
  this.encoding = options.encoding;
4163
4147
  }
4164
4148
  }
4165
- function Readable(options) {
4149
+ function Readable3(options) {
4166
4150
  Duplex = Duplex || require_stream_duplex();
4167
- if (!(this instanceof Readable))
4168
- return new Readable(options);
4151
+ if (!(this instanceof Readable3))
4152
+ return new Readable3(options);
4169
4153
  this._readableState = new ReadableState(options, this);
4170
4154
  this.readable = true;
4171
4155
  if (options) {
@@ -4176,7 +4160,7 @@ var require_stream_readable = __commonJS({
4176
4160
  }
4177
4161
  Stream.call(this);
4178
4162
  }
4179
- Object.defineProperty(Readable.prototype, "destroyed", {
4163
+ Object.defineProperty(Readable3.prototype, "destroyed", {
4180
4164
  get: function() {
4181
4165
  if (this._readableState === void 0) {
4182
4166
  return false;
@@ -4190,13 +4174,13 @@ var require_stream_readable = __commonJS({
4190
4174
  this._readableState.destroyed = value2;
4191
4175
  }
4192
4176
  });
4193
- Readable.prototype.destroy = destroyImpl.destroy;
4194
- Readable.prototype._undestroy = destroyImpl.undestroy;
4195
- Readable.prototype._destroy = function(err, cb) {
4177
+ Readable3.prototype.destroy = destroyImpl.destroy;
4178
+ Readable3.prototype._undestroy = destroyImpl.undestroy;
4179
+ Readable3.prototype._destroy = function(err, cb) {
4196
4180
  this.push(null);
4197
4181
  cb(err);
4198
4182
  };
4199
- Readable.prototype.push = function(chunk, encoding) {
4183
+ Readable3.prototype.push = function(chunk, encoding) {
4200
4184
  var state = this._readableState;
4201
4185
  var skipChunkCheck;
4202
4186
  if (!state.objectMode) {
@@ -4213,7 +4197,7 @@ var require_stream_readable = __commonJS({
4213
4197
  }
4214
4198
  return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);
4215
4199
  };
4216
- Readable.prototype.unshift = function(chunk) {
4200
+ Readable3.prototype.unshift = function(chunk) {
4217
4201
  return readableAddChunk(this, chunk, null, true, false);
4218
4202
  };
4219
4203
  function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {
@@ -4281,10 +4265,10 @@ var require_stream_readable = __commonJS({
4281
4265
  function needMoreData(state) {
4282
4266
  return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);
4283
4267
  }
4284
- Readable.prototype.isPaused = function() {
4268
+ Readable3.prototype.isPaused = function() {
4285
4269
  return this._readableState.flowing === false;
4286
4270
  };
4287
- Readable.prototype.setEncoding = function(enc) {
4271
+ Readable3.prototype.setEncoding = function(enc) {
4288
4272
  if (!StringDecoder)
4289
4273
  StringDecoder = require_string_decoder().StringDecoder;
4290
4274
  this._readableState.decoder = new StringDecoder(enc);
@@ -4327,7 +4311,7 @@ var require_stream_readable = __commonJS({
4327
4311
  }
4328
4312
  return state.length;
4329
4313
  }
4330
- Readable.prototype.read = function(n2) {
4314
+ Readable3.prototype.read = function(n2) {
4331
4315
  debug("read", n2);
4332
4316
  n2 = parseInt(n2, 10);
4333
4317
  var state = this._readableState;
@@ -4437,10 +4421,10 @@ var require_stream_readable = __commonJS({
4437
4421
  }
4438
4422
  state.readingMore = false;
4439
4423
  }
4440
- Readable.prototype._read = function(n2) {
4424
+ Readable3.prototype._read = function(n2) {
4441
4425
  this.emit("error", new Error("_read() is not implemented"));
4442
4426
  };
4443
- Readable.prototype.pipe = function(dest, pipeOpts) {
4427
+ Readable3.prototype.pipe = function(dest, pipeOpts) {
4444
4428
  var src = this;
4445
4429
  var state = this._readableState;
4446
4430
  switch (state.pipesCount) {
@@ -4550,7 +4534,7 @@ var require_stream_readable = __commonJS({
4550
4534
  }
4551
4535
  };
4552
4536
  }
4553
- Readable.prototype.unpipe = function(dest) {
4537
+ Readable3.prototype.unpipe = function(dest) {
4554
4538
  var state = this._readableState;
4555
4539
  var unpipeInfo = { hasUnpiped: false };
4556
4540
  if (state.pipesCount === 0)
@@ -4588,7 +4572,7 @@ var require_stream_readable = __commonJS({
4588
4572
  dest.emit("unpipe", this, unpipeInfo);
4589
4573
  return this;
4590
4574
  };
4591
- Readable.prototype.on = function(ev, fn) {
4575
+ Readable3.prototype.on = function(ev, fn) {
4592
4576
  var res = Stream.prototype.on.call(this, ev, fn);
4593
4577
  if (ev === "data") {
4594
4578
  if (this._readableState.flowing !== false)
@@ -4607,12 +4591,12 @@ var require_stream_readable = __commonJS({
4607
4591
  }
4608
4592
  return res;
4609
4593
  };
4610
- Readable.prototype.addListener = Readable.prototype.on;
4594
+ Readable3.prototype.addListener = Readable3.prototype.on;
4611
4595
  function nReadingNextTick(self2) {
4612
4596
  debug("readable nexttick read 0");
4613
4597
  self2.read(0);
4614
4598
  }
4615
- Readable.prototype.resume = function() {
4599
+ Readable3.prototype.resume = function() {
4616
4600
  var state = this._readableState;
4617
4601
  if (!state.flowing) {
4618
4602
  debug("resume");
@@ -4639,7 +4623,7 @@ var require_stream_readable = __commonJS({
4639
4623
  if (state.flowing && !state.reading)
4640
4624
  stream.read(0);
4641
4625
  }
4642
- Readable.prototype.pause = function() {
4626
+ Readable3.prototype.pause = function() {
4643
4627
  debug("call pause flowing=%j", this._readableState.flowing);
4644
4628
  if (false !== this._readableState.flowing) {
4645
4629
  debug("pause");
@@ -4654,7 +4638,7 @@ var require_stream_readable = __commonJS({
4654
4638
  while (state.flowing && stream.read() !== null) {
4655
4639
  }
4656
4640
  }
4657
- Readable.prototype.wrap = function(stream) {
4641
+ Readable3.prototype.wrap = function(stream) {
4658
4642
  var _this = this;
4659
4643
  var state = this._readableState;
4660
4644
  var paused = false;
@@ -4702,7 +4686,7 @@ var require_stream_readable = __commonJS({
4702
4686
  };
4703
4687
  return this;
4704
4688
  };
4705
- Object.defineProperty(Readable.prototype, "readableHighWaterMark", {
4689
+ Object.defineProperty(Readable3.prototype, "readableHighWaterMark", {
4706
4690
  // making it explicit this property is not enumerable
4707
4691
  // because otherwise some prototype manipulation in
4708
4692
  // userland will fail
@@ -4711,7 +4695,7 @@ var require_stream_readable = __commonJS({
4711
4695
  return this._readableState.highWaterMark;
4712
4696
  }
4713
4697
  });
4714
- Readable._fromList = fromList;
4698
+ Readable3._fromList = fromList;
4715
4699
  function fromList(n2, state) {
4716
4700
  if (state.length === 0)
4717
4701
  return null;
@@ -5875,8 +5859,8 @@ var require_utils = __commonJS({
5875
5859
  var result = transform[inputType][outputType](input);
5876
5860
  return result;
5877
5861
  };
5878
- exports2.resolve = function(path29) {
5879
- var parts = path29.split("/");
5862
+ exports2.resolve = function(path30) {
5863
+ var parts = path30.split("/");
5880
5864
  var result = [];
5881
5865
  for (var index2 = 0; index2 < parts.length; index2++) {
5882
5866
  var part = parts[index2];
@@ -6429,11 +6413,11 @@ var require_ConvertWorker = __commonJS({
6429
6413
  var require_NodejsStreamOutputAdapter = __commonJS({
6430
6414
  "node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js"(exports2, module2) {
6431
6415
  "use strict";
6432
- var Readable = require_readable().Readable;
6416
+ var Readable3 = require_readable().Readable;
6433
6417
  var utils = require_utils();
6434
- utils.inherits(NodejsStreamOutputAdapter, Readable);
6418
+ utils.inherits(NodejsStreamOutputAdapter, Readable3);
6435
6419
  function NodejsStreamOutputAdapter(helper, options, updateCb) {
6436
- Readable.call(this, options);
6420
+ Readable3.call(this, options);
6437
6421
  this._helper = helper;
6438
6422
  var self2 = this;
6439
6423
  helper.on("data", function(data, meta) {
@@ -11708,18 +11692,18 @@ var require_object = __commonJS({
11708
11692
  var object = new ZipObject(name, zipObjectContent, o);
11709
11693
  this.files[name] = object;
11710
11694
  };
11711
- var parentFolder = function(path29) {
11712
- if (path29.slice(-1) === "/") {
11713
- path29 = path29.substring(0, path29.length - 1);
11695
+ var parentFolder = function(path30) {
11696
+ if (path30.slice(-1) === "/") {
11697
+ path30 = path30.substring(0, path30.length - 1);
11714
11698
  }
11715
- var lastSlash = path29.lastIndexOf("/");
11716
- return lastSlash > 0 ? path29.substring(0, lastSlash) : "";
11699
+ var lastSlash = path30.lastIndexOf("/");
11700
+ return lastSlash > 0 ? path30.substring(0, lastSlash) : "";
11717
11701
  };
11718
- var forceTrailingSlash = function(path29) {
11719
- if (path29.slice(-1) !== "/") {
11720
- path29 += "/";
11702
+ var forceTrailingSlash = function(path30) {
11703
+ if (path30.slice(-1) !== "/") {
11704
+ path30 += "/";
11721
11705
  }
11722
- return path29;
11706
+ return path30;
11723
11707
  };
11724
11708
  var folderAdd = function(name, createFolders) {
11725
11709
  createFolders = typeof createFolders !== "undefined" ? createFolders : defaults2.createFolders;
@@ -15271,8 +15255,8 @@ var init_basefs = __esm({
15271
15255
  const absPath = this.toAbsolutePath(name);
15272
15256
  return await this.fs.mkdir(absPath, perm);
15273
15257
  }
15274
- async mkdirAll(path29, perm) {
15275
- const absPath = this.toAbsolutePath(path29);
15258
+ async mkdirAll(path30, perm) {
15259
+ const absPath = this.toAbsolutePath(path30);
15276
15260
  return await this.fs.mkdirAll(absPath, perm);
15277
15261
  }
15278
15262
  async openFile(name, flag, perm) {
@@ -15283,8 +15267,8 @@ var init_basefs = __esm({
15283
15267
  const absPath = this.toAbsolutePath(name);
15284
15268
  return await this.fs.remove(absPath);
15285
15269
  }
15286
- async removeAll(path29) {
15287
- const absPath = this.toAbsolutePath(path29);
15270
+ async removeAll(path30) {
15271
+ const absPath = this.toAbsolutePath(path30);
15288
15272
  return await this.fs.removeAll(absPath);
15289
15273
  }
15290
15274
  async rename(oldname, newname) {
@@ -15528,9 +15512,9 @@ var init_static_copier = __esm({
15528
15512
  async walkSourceFiles(sourceFs, targetDir) {
15529
15513
  let fileCount = 0;
15530
15514
  try {
15531
- await this.walkFileSystem(sourceFs, "/", async (path29, isDir) => {
15515
+ await this.walkFileSystem(sourceFs, "/", async (path30, isDir) => {
15532
15516
  if (!isDir) {
15533
- await this.copyFile(sourceFs, path29, this.toFs, targetDir);
15517
+ await this.copyFile(sourceFs, path30, this.toFs, targetDir);
15534
15518
  fileCount++;
15535
15519
  }
15536
15520
  });
@@ -15614,8 +15598,8 @@ var init_static_copier = __esm({
15614
15598
  /**
15615
15599
  * Get directory name from path
15616
15600
  */
15617
- dirname(path29) {
15618
- const parts = path29.split("/").filter((part) => part.length > 0);
15601
+ dirname(path30) {
15602
+ const parts = path30.split("/").filter((part) => part.length > 0);
15619
15603
  if (parts.length <= 1)
15620
15604
  return "/";
15621
15605
  return "/" + parts.slice(0, -1).join("/");
@@ -15628,16 +15612,16 @@ var init_static_copier = __esm({
15628
15612
  async function collectFileMetaInfos(paths, fss) {
15629
15613
  const result = /* @__PURE__ */ new Map();
15630
15614
  let found2 = false;
15631
- for (const path29 of paths) {
15615
+ for (const path30 of paths) {
15632
15616
  for (const fs3 of fss) {
15633
15617
  try {
15634
- const fileMetaInfo = await createFileMetaInfo(path29, fs3);
15635
- result.set(path29, fileMetaInfo);
15618
+ const fileMetaInfo = await createFileMetaInfo(path30, fs3);
15619
+ result.set(path30, fileMetaInfo);
15636
15620
  found2 = true;
15637
15621
  if (found2)
15638
15622
  break;
15639
15623
  } catch (error) {
15640
- log11.error(`Failed to create FileMetaInfo for ${path29} with fs=${fs3}:`, error);
15624
+ log11.error(`Failed to create FileMetaInfo for ${path30} with fs=${fs3}:`, error);
15641
15625
  }
15642
15626
  }
15643
15627
  }
@@ -15746,8 +15730,8 @@ var init_fs = __esm({
15746
15730
  /**
15747
15731
  * Create new base path filesystem
15748
15732
  */
15749
- newBasePathFs(source, path29) {
15750
- return newBaseFs(source, [path29]);
15733
+ newBasePathFs(source, path30) {
15734
+ return newBaseFs(source, [path30]);
15751
15735
  }
15752
15736
  async walkPrompts(start, cb, conf) {
15753
15737
  return await this.walk(this.prompts, start, cb, conf);
@@ -16289,11 +16273,11 @@ var init_overlayfs = __esm({
16289
16273
  /**
16290
16274
  * Create directory tree (write operation)
16291
16275
  */
16292
- async mkdirAll(path29, perm) {
16276
+ async mkdirAll(path30, perm) {
16293
16277
  if (!this.firstWritable) {
16294
16278
  throw new OverlayFsError("filesystem is read-only", "READ_ONLY");
16295
16279
  }
16296
- return await this.writeFs().mkdirAll(path29, perm);
16280
+ return await this.writeFs().mkdirAll(path30, perm);
16297
16281
  }
16298
16282
  /**
16299
16283
  * Open file for reading (searches all filesystems)
@@ -16352,11 +16336,11 @@ var init_overlayfs = __esm({
16352
16336
  /**
16353
16337
  * Remove directory tree (write operation)
16354
16338
  */
16355
- async removeAll(path29) {
16339
+ async removeAll(path30) {
16356
16340
  if (!this.firstWritable) {
16357
16341
  throw new OverlayFsError("filesystem is read-only", "READ_ONLY");
16358
16342
  }
16359
- return await this.writeFs().removeAll(path29);
16343
+ return await this.writeFs().removeAll(path30);
16360
16344
  }
16361
16345
  /**
16362
16346
  * Rename file (write operation)
@@ -19092,7 +19076,7 @@ function indexNonWhiteSpace2(source, char2) {
19092
19076
  function isSpace2(b) {
19093
19077
  return b === 32 || b === 9 || b === 13 || b === 10;
19094
19078
  }
19095
- var log17, ShortcodeImpl, ShortcodeParser, TOC_SHORTCODE_PLACEHOLDER, SHORTCODE_PLACEHOLDER_PREFIX;
19079
+ var log17, ShortcodeImpl, ShortcodeParser, SHORTCODE_PLACEHOLDER_PREFIX, TOC_SHORTCODE_PLACEHOLDER;
19096
19080
  var init_shortcode = __esm({
19097
19081
  "internal/domain/markdown/vo/shortcode.ts"() {
19098
19082
  "use strict";
@@ -19333,8 +19317,8 @@ var init_shortcode = __esm({
19333
19317
  return Array.from(this.nameSet);
19334
19318
  }
19335
19319
  };
19336
- TOC_SHORTCODE_PLACEHOLDER = createShortcodePlaceholder("TOC", 0, 0);
19337
19320
  SHORTCODE_PLACEHOLDER_PREFIX = "HAHAHUGOSHORTCODE";
19321
+ TOC_SHORTCODE_PLACEHOLDER = createShortcodePlaceholder("TOC", 0, 0);
19338
19322
  }
19339
19323
  });
19340
19324
 
@@ -28910,8 +28894,8 @@ function wikilinkInlineRule(state, silent) {
28910
28894
  function renderWikilinkLink(tokens, idx) {
28911
28895
  const token = tokens[idx];
28912
28896
  const meta = token.meta;
28913
- const [path29, _anchor] = splitAnchor(meta.url);
28914
- const slug3 = slugifyFilePath(path29);
28897
+ const [path30, _anchor] = splitAnchor(meta.url);
28898
+ const slug3 = slugifyFilePath(path30);
28915
28899
  const displayText = meta.alias ?? meta.filepath;
28916
28900
  const escapedText = escapeHtml2(displayText);
28917
28901
  return `<a class="internal" data-slug="${slug3}" data-wikilink="${escapeHtml2(meta.url)}">${escapedText}</a>`;
@@ -29841,10 +29825,11 @@ var init_markdown5 = __esm({
29841
29825
  });
29842
29826
 
29843
29827
  // internal/domain/paths/type.ts
29844
- var PathType, PATH_CONSTANTS;
29828
+ var import_path5, PathType, PATH_CONSTANTS;
29845
29829
  var init_type7 = __esm({
29846
29830
  "internal/domain/paths/type.ts"() {
29847
29831
  "use strict";
29832
+ import_path5 = require("path");
29848
29833
  PathType = /* @__PURE__ */ ((PathType2) => {
29849
29834
  PathType2[PathType2["File"] = 0] = "File";
29850
29835
  PathType2[PathType2["ContentResource"] = 1] = "ContentResource";
@@ -29860,14 +29845,8 @@ var init_type7 = __esm({
29860
29845
  PATH_SEPARATOR: "/",
29861
29846
  EXTENSION_SEPARATOR: ".",
29862
29847
  LANGUAGE_SEPARATOR: ".",
29863
- // System-specific path separator detection
29864
- SYSTEM_PATH_SEPARATOR: (() => {
29865
- try {
29866
- return require("path").sep;
29867
- } catch {
29868
- return "/";
29869
- }
29870
- })(),
29848
+ // System-specific path separator (imported from Node.js path module)
29849
+ SYSTEM_PATH_SEPARATOR: import_path5.sep,
29871
29850
  // Component folder constants - matching golang files/classifier.go
29872
29851
  COMPONENT_FOLDER_CONTENT: "content",
29873
29852
  COMPONENT_FOLDER_STATIC: "static",
@@ -29877,8 +29856,8 @@ var init_type7 = __esm({
29877
29856
  COMPONENT_FOLDER_ASSETS: "assets",
29878
29857
  COMPONENT_FOLDER_I18N: "i18n",
29879
29858
  // Path normalization utility
29880
- normalizePath: (path29) => {
29881
- let p2 = path29.replace(/\\/g, "/");
29859
+ normalizePath: (path30) => {
29860
+ let p2 = path30.replace(/\\/g, "/");
29882
29861
  if (p2.startsWith("//")) {
29883
29862
  p2 = p2.substring(1);
29884
29863
  }
@@ -30128,8 +30107,8 @@ var init_path2 = __esm({
30128
30107
  if (this.components.component) {
30129
30108
  return this.components.component;
30130
30109
  }
30131
- const path29 = this.components.normalized;
30132
- const parts = path29.split("/").filter((p2) => p2.length > 0);
30110
+ const path30 = this.components.normalized;
30111
+ const parts = path30.split("/").filter((p2) => p2.length > 0);
30133
30112
  if (parts.length === 0) {
30134
30113
  return "content";
30135
30114
  }
@@ -30457,10 +30436,10 @@ var init_path2 = __esm({
30457
30436
  /**
30458
30437
  * Create a path from string components
30459
30438
  */
30460
- static fromString(component, path29) {
30439
+ static fromString(component, path30) {
30461
30440
  const components = new PathComponentsImpl(
30462
- path29,
30463
- path29,
30441
+ path30,
30442
+ path30,
30464
30443
  { containerLow: -1, containerHigh: -1, sectionHigh: -1, identifierLanguage: -1 },
30465
30444
  [],
30466
30445
  0 /* File */,
@@ -30471,8 +30450,8 @@ var init_path2 = __esm({
30471
30450
  /**
30472
30451
  * Check if a path has a specific extension
30473
30452
  */
30474
- static hasExtension(path29, extension) {
30475
- const pathExt = path29.ext();
30453
+ static hasExtension(path30, extension) {
30454
+ const pathExt = path30.ext();
30476
30455
  const targetExt = extension.startsWith(".") ? extension : "." + extension;
30477
30456
  return pathExt.toLowerCase() === targetExt.toLowerCase();
30478
30457
  }
@@ -30530,20 +30509,20 @@ var init_pathparser = __esm({
30530
30509
  /**
30531
30510
  * Parse a path with component information
30532
30511
  */
30533
- parse(component, path29) {
30534
- let normalizedPath = path29;
30512
+ parse(component, path30) {
30513
+ let normalizedPath = path30;
30535
30514
  if (!normalizedPath || normalizedPath === "") {
30536
30515
  normalizedPath = "/";
30537
30516
  }
30538
30517
  const normalized = this.normalizer.normalize(normalizedPath);
30539
- const pathComponents = this.createPathComponents(component, normalized, path29);
30518
+ const pathComponents = this.createPathComponents(component, normalized, path30);
30540
30519
  return new Path(pathComponents);
30541
30520
  }
30542
30521
  /**
30543
30522
  * Parse and return only the identity
30544
30523
  */
30545
- parseIdentity(component, path29) {
30546
- const parsed = this.parse(component, path29);
30524
+ parseIdentity(component, path30) {
30525
+ const parsed = this.parse(component, path30);
30547
30526
  return {
30548
30527
  identifierBase: () => parsed.base()
30549
30528
  };
@@ -30551,8 +30530,8 @@ var init_pathparser = __esm({
30551
30530
  /**
30552
30531
  * Parse and return base and base name without identifier
30553
30532
  */
30554
- parseBaseAndBaseNameNoIdentifier(component, path29) {
30555
- const parsed = this.parse(component, path29);
30533
+ parseBaseAndBaseNameNoIdentifier(component, path30) {
30534
+ const parsed = this.parse(component, path30);
30556
30535
  return [parsed.base(), parsed.baseNameNoIdentifier()];
30557
30536
  }
30558
30537
  /**
@@ -30681,8 +30660,8 @@ var init_pathparser = __esm({
30681
30660
  this.toLowerCase = toLowerCase;
30682
30661
  this.replaceSpaces = replaceSpaces;
30683
30662
  }
30684
- normalize(path29) {
30685
- let result = path29;
30663
+ normalize(path30) {
30664
+ let result = path30;
30686
30665
  result = result.replace(/\\/g, "/");
30687
30666
  if (this.toLowerCase) {
30688
30667
  result = result.toLowerCase();
@@ -30698,8 +30677,8 @@ var init_pathparser = __esm({
30698
30677
  this.toLowerCase = toLowerCase;
30699
30678
  this.replaceSpaces = replaceSpaces;
30700
30679
  }
30701
- normalize(path29) {
30702
- let result = path29;
30680
+ normalize(path30) {
30681
+ let result = path30;
30703
30682
  result = result.replace(/\\/g, "/");
30704
30683
  if (this.toLowerCase) {
30705
30684
  result = result.toLowerCase();
@@ -30719,12 +30698,12 @@ var init_pathparser = __esm({
30719
30698
  const htmlExts = PATH_CONSTANTS.HTML_EXTENSIONS;
30720
30699
  return htmlExts.includes(ext.toLowerCase());
30721
30700
  }
30722
- hasExt(path29) {
30723
- for (let i = path29.length - 1; i >= 0; i--) {
30724
- if (path29[i] === ".") {
30701
+ hasExt(path30) {
30702
+ for (let i = path30.length - 1; i >= 0; i--) {
30703
+ if (path30[i] === ".") {
30725
30704
  return true;
30726
30705
  }
30727
- if (path29[i] === "/") {
30706
+ if (path30[i] === "/") {
30728
30707
  return false;
30729
30708
  }
30730
30709
  }
@@ -30735,10 +30714,10 @@ var init_pathparser = __esm({
30735
30714
  /**
30736
30715
  * Parse a path string into basic components
30737
30716
  */
30738
- static parseBasic(path29) {
30739
- const lastSlash = path29.lastIndexOf("/");
30740
- const dir2 = lastSlash >= 0 ? path29.substring(0, lastSlash) : "";
30741
- const name = lastSlash >= 0 ? path29.substring(lastSlash + 1) : path29;
30717
+ static parseBasic(path30) {
30718
+ const lastSlash = path30.lastIndexOf("/");
30719
+ const dir2 = lastSlash >= 0 ? path30.substring(0, lastSlash) : "";
30720
+ const name = lastSlash >= 0 ? path30.substring(lastSlash + 1) : path30;
30742
30721
  const lastDot = name.lastIndexOf(".");
30743
30722
  const ext = lastDot >= 0 ? name.substring(lastDot) : "";
30744
30723
  const nameWithoutExt = lastDot >= 0 ? name.substring(0, lastDot) : name;
@@ -30753,43 +30732,43 @@ var init_pathparser = __esm({
30753
30732
  /**
30754
30733
  * Normalize a path string using basic rules
30755
30734
  */
30756
- static normalizeBasic(path29) {
30735
+ static normalizeBasic(path30) {
30757
30736
  const normalizer = new BasicPathNormalizer();
30758
- return normalizer.normalize(path29);
30737
+ return normalizer.normalize(path30);
30759
30738
  }
30760
30739
  /**
30761
30740
  * Check if a path represents a bundle
30762
30741
  */
30763
- static isBundle(path29) {
30764
- const basic = _PathParserUtils.parseBasic(path29);
30742
+ static isBundle(path30) {
30743
+ const basic = _PathParserUtils.parseBasic(path30);
30765
30744
  const indexNames = PATH_CONSTANTS.INDEX_NAMES;
30766
30745
  return indexNames.includes(basic.nameWithoutExt);
30767
30746
  }
30768
30747
  /**
30769
30748
  * Extract section from path
30770
30749
  */
30771
- static extractSection(path29) {
30772
- const normalized = path29.startsWith("/") ? path29.substring(1) : path29;
30750
+ static extractSection(path30) {
30751
+ const normalized = path30.startsWith("/") ? path30.substring(1) : path30;
30773
30752
  const firstSlash = normalized.indexOf("/");
30774
30753
  return firstSlash >= 0 ? normalized.substring(0, firstSlash) : normalized;
30775
30754
  }
30776
30755
  /**
30777
30756
  * Remove extension from path
30778
30757
  */
30779
- static removeExtension(path29) {
30780
- const lastDot = path29.lastIndexOf(".");
30781
- const lastSlash = path29.lastIndexOf("/");
30758
+ static removeExtension(path30) {
30759
+ const lastDot = path30.lastIndexOf(".");
30760
+ const lastSlash = path30.lastIndexOf("/");
30782
30761
  if (lastDot > lastSlash) {
30783
- return path29.substring(0, lastDot);
30762
+ return path30.substring(0, lastDot);
30784
30763
  }
30785
- return path29;
30764
+ return path30;
30786
30765
  }
30787
30766
  /**
30788
30767
  * Check if path has extension
30789
30768
  */
30790
- static hasExtension(path29) {
30769
+ static hasExtension(path30) {
30791
30770
  const checker = new DefaultFileExtensionChecker();
30792
- return checker.hasExt(path29);
30771
+ return checker.hasExt(path30);
30793
30772
  }
30794
30773
  };
30795
30774
  }
@@ -30820,11 +30799,11 @@ var init_pathfactory = __esm({
30820
30799
  /**
30821
30800
  * Create a Path from component and path string
30822
30801
  */
30823
- create(component, path29, config2) {
30802
+ create(component, path30, config2) {
30824
30803
  if (this.pool) {
30825
30804
  const pooledPath = this.pool.get();
30826
30805
  }
30827
- return this.processor.parse(component, path29);
30806
+ return this.processor.parse(component, path30);
30828
30807
  }
30829
30808
  /**
30830
30809
  * Create a Path from PathComponents
@@ -30836,12 +30815,12 @@ var init_pathfactory = __esm({
30836
30815
  * Create multiple paths from an array of path strings
30837
30816
  */
30838
30817
  createMany(component, paths, config2) {
30839
- return paths.map((path29) => this.create(component, path29, config2));
30818
+ return paths.map((path30) => this.create(component, path30, config2));
30840
30819
  }
30841
30820
  /**
30842
30821
  * Create a path with custom configuration
30843
30822
  */
30844
- createWithConfig(component, path29, normalizeConfig) {
30823
+ createWithConfig(component, path30, normalizeConfig) {
30845
30824
  const config2 = {};
30846
30825
  if (normalizeConfig?.toLowerCase !== void 0) {
30847
30826
  config2.normalize = normalizeConfig.toLowerCase;
@@ -30852,7 +30831,7 @@ var init_pathfactory = __esm({
30852
30831
  if (normalizeConfig?.customNormalizer !== void 0) {
30853
30832
  config2.normalizer = normalizeConfig.customNormalizer;
30854
30833
  }
30855
- return this.create(component, path29, config2);
30834
+ return this.create(component, path30, config2);
30856
30835
  }
30857
30836
  };
30858
30837
  DefaultPathFactory = class extends PathFactoryImpl {
@@ -30876,9 +30855,9 @@ var init_pathfactory = __esm({
30876
30855
  const components = PathComponentsFactory.createEmpty();
30877
30856
  return new Path(components);
30878
30857
  }
30879
- put(path29) {
30858
+ put(path30) {
30880
30859
  if (this.pool.length < this.maxSize) {
30881
- this.pool.push(path29);
30860
+ this.pool.push(path30);
30882
30861
  }
30883
30862
  }
30884
30863
  /**
@@ -30912,8 +30891,8 @@ var init_pathfactory = __esm({
30912
30891
  /**
30913
30892
  * Set the path
30914
30893
  */
30915
- withPath(path29) {
30916
- this.path = path29;
30894
+ withPath(path30) {
30895
+ this.path = path30;
30917
30896
  return this;
30918
30897
  }
30919
30898
  /**
@@ -30961,38 +30940,38 @@ var init_pathfactory = __esm({
30961
30940
  /**
30962
30941
  * Create a content path
30963
30942
  */
30964
- static createContentPath(path29) {
30965
- return _PathFactoryUtils.defaultFactory.create("content", path29);
30943
+ static createContentPath(path30) {
30944
+ return _PathFactoryUtils.defaultFactory.create("content", path30);
30966
30945
  }
30967
30946
  /**
30968
30947
  * Create a static resource path
30969
30948
  */
30970
- static createStaticPath(path29) {
30971
- return _PathFactoryUtils.defaultFactory.create("static", path29);
30949
+ static createStaticPath(path30) {
30950
+ return _PathFactoryUtils.defaultFactory.create("static", path30);
30972
30951
  }
30973
30952
  /**
30974
30953
  * Create a layout path
30975
30954
  */
30976
- static createLayoutPath(path29) {
30977
- return _PathFactoryUtils.defaultFactory.create("layouts", path29);
30955
+ static createLayoutPath(path30) {
30956
+ return _PathFactoryUtils.defaultFactory.create("layouts", path30);
30978
30957
  }
30979
30958
  /**
30980
30959
  * Create an archetype path
30981
30960
  */
30982
- static createArchetypePath(path29) {
30983
- return _PathFactoryUtils.defaultFactory.create("archetypes", path29);
30961
+ static createArchetypePath(path30) {
30962
+ return _PathFactoryUtils.defaultFactory.create("archetypes", path30);
30984
30963
  }
30985
30964
  /**
30986
30965
  * Create a data path
30987
30966
  */
30988
- static createDataPath(path29) {
30989
- return _PathFactoryUtils.defaultFactory.create("data", path29);
30967
+ static createDataPath(path30) {
30968
+ return _PathFactoryUtils.defaultFactory.create("data", path30);
30990
30969
  }
30991
30970
  /**
30992
30971
  * Create a theme path
30993
30972
  */
30994
- static createThemePath(path29) {
30995
- return _PathFactoryUtils.defaultFactory.create("themes", path29);
30973
+ static createThemePath(path30) {
30974
+ return _PathFactoryUtils.defaultFactory.create("themes", path30);
30996
30975
  }
30997
30976
  /**
30998
30977
  * Create paths from a configuration object
@@ -31006,7 +30985,7 @@ var init_pathfactory = __esm({
31006
30985
  factoryConfig.replaceSpaces = config2.replaceSpaces;
31007
30986
  }
31008
30987
  const factory = new PathFactoryImpl(factoryConfig);
31009
- return config2.paths.map((path29) => factory.create(config2.component, path29));
30988
+ return config2.paths.map((path30) => factory.create(config2.component, path30));
31010
30989
  }
31011
30990
  /**
31012
30991
  * Get a path builder instance
@@ -31017,9 +30996,9 @@ var init_pathfactory = __esm({
31017
30996
  /**
31018
30997
  * Create a path with pooling
31019
30998
  */
31020
- static createWithPool(component, path29, pool2) {
30999
+ static createWithPool(component, path30, pool2) {
31021
31000
  const factory = new PathFactoryImpl(void 0, pool2);
31022
- return factory.create(component, path29);
31001
+ return factory.create(component, path30);
31023
31002
  }
31024
31003
  };
31025
31004
  }
@@ -31125,12 +31104,12 @@ var init_translator = __esm({
31125
31104
  async setupTranslateFuncs(fsService) {
31126
31105
  try {
31127
31106
  await fsService.walkI18n("", {
31128
- walkFn: async (path29, info) => {
31129
- if (!path29.endsWith(".yaml") && !path29.endsWith(".yml")) {
31107
+ walkFn: async (path30, info) => {
31108
+ if (!path30.endsWith(".yaml") && !path30.endsWith(".yml")) {
31130
31109
  return;
31131
31110
  }
31132
31111
  try {
31133
- const normalizedPath = PATH_CONSTANTS.normalizePath(path29);
31112
+ const normalizedPath = PATH_CONSTANTS.normalizePath(path30);
31134
31113
  const filename = normalizedPath.split("/").pop() || "";
31135
31114
  const langKey = filename.replace(/\.(yaml|yml)$/, "").toLowerCase();
31136
31115
  const content = await this.readI18nFile(info);
@@ -31150,7 +31129,7 @@ var init_translator = __esm({
31150
31129
  this.translateFuncs.set(langKey, translateFunc);
31151
31130
  log20.info(`\u2705 Loaded i18n translations for language: ${langKey} (${translations.length} items)`);
31152
31131
  } catch (error) {
31153
- log20.error(`\u274C Failed to load i18n file ${path29}:`, error);
31132
+ log20.error(`\u274C Failed to load i18n file ${path30}:`, error);
31154
31133
  }
31155
31134
  }
31156
31135
  }, {});
@@ -31777,7 +31756,7 @@ function getParam(p2, key3, stringToLower) {
31777
31756
  return v;
31778
31757
  }
31779
31758
  }
31780
- var import_path9, FrontMatterParserImpl;
31759
+ var import_path10, FrontMatterParserImpl;
31781
31760
  var init_frontmatter = __esm({
31782
31761
  "internal/domain/content/vo/frontmatter.ts"() {
31783
31762
  "use strict";
@@ -31785,7 +31764,7 @@ var init_frontmatter = __esm({
31785
31764
  init_cast2();
31786
31765
  init_string2();
31787
31766
  init_types3();
31788
- import_path9 = __toESM(require("path"));
31767
+ import_path10 = __toESM(require("path"));
31789
31768
  FrontMatterParserImpl = class {
31790
31769
  params;
31791
31770
  langSvc;
@@ -31972,7 +31951,7 @@ var init_frontmatter = __esm({
31972
31951
  organization.website = Cast.toString(orgValue.website);
31973
31952
  }
31974
31953
  if (orgValue.logo !== void 0 && orgValue.logo !== null) {
31975
- organization.logo = import_path9.default.join(baseURL, Cast.toString(orgValue.logo));
31954
+ organization.logo = import_path10.default.join(baseURL, Cast.toString(orgValue.logo));
31976
31955
  }
31977
31956
  const contact = this.parseContact(orgValue.contact);
31978
31957
  if (contact) {
@@ -32090,7 +32069,7 @@ var init_frontmatter = __esm({
32090
32069
  author.website = Cast.toString(authorValue.website);
32091
32070
  }
32092
32071
  if (authorValue.avatar !== void 0 && authorValue.avatar !== null) {
32093
- author.avatar = import_path9.default.join(baseURL, Cast.toString(authorValue.avatar));
32072
+ author.avatar = import_path10.default.join(baseURL, Cast.toString(authorValue.avatar));
32094
32073
  }
32095
32074
  const contact = this.parseContact(authorValue.contact);
32096
32075
  if (contact) {
@@ -32146,8 +32125,8 @@ var init_frontmatter = __esm({
32146
32125
  * Convert path to slash preserving leading slash
32147
32126
  * Equivalent to Go's paths.ToSlashPreserveLeading
32148
32127
  */
32149
- toSlashPreserveLeading(path29) {
32150
- return path29.replace(/\\/g, "/");
32128
+ toSlashPreserveLeading(path30) {
32129
+ return path30.replace(/\\/g, "/");
32151
32130
  }
32152
32131
  };
32153
32132
  }
@@ -32572,9 +32551,9 @@ var init_radix = __esm({
32572
32551
  // from the root down to a given leaf. Where WalkPrefix walks
32573
32552
  // all the entries *under* the given prefix, this walks the
32574
32553
  // entries *above* the given prefix.
32575
- async walkPath(path29, fn) {
32554
+ async walkPath(path30, fn) {
32576
32555
  let n2 = this.root;
32577
- let search2 = path29;
32556
+ let search2 = path30;
32578
32557
  while (true) {
32579
32558
  if (n2.leaf !== null && await fn(n2.leaf.key, n2.leaf.val)) {
32580
32559
  return;
@@ -33709,8 +33688,8 @@ var init_pagesource = __esm({
33709
33688
  * 3. Handle index files (index → parent folder)
33710
33689
  * 4. Handle _index files (Hugo-style section index)
33711
33690
  */
33712
- pathToSlug(path29) {
33713
- let slug3 = path29.replace(/^\//, "");
33691
+ pathToSlug(path30) {
33692
+ let slug3 = path30.replace(/^\//, "");
33714
33693
  slug3 = slug3.replace(/\.md$/, "");
33715
33694
  if (slug3.endsWith("/index")) {
33716
33695
  slug3 = slug3.replace(/\/index$/, "");
@@ -33757,17 +33736,17 @@ var init_pagesource = __esm({
33757
33736
  });
33758
33737
 
33759
33738
  // internal/domain/content/entity/pagemap.ts
33760
- function addTrailingSlash(path29) {
33761
- if (!path29.endsWith("/")) {
33762
- path29 += "/";
33739
+ function addTrailingSlash(path30) {
33740
+ if (!path30.endsWith("/")) {
33741
+ path30 += "/";
33763
33742
  }
33764
- return path29;
33743
+ return path30;
33765
33744
  }
33766
- function addLeadingSlash(path29) {
33767
- if (!path29.startsWith("/")) {
33768
- path29 = "/" + path29;
33745
+ function addLeadingSlash(path30) {
33746
+ if (!path30.startsWith("/")) {
33747
+ path30 = "/" + path30;
33769
33748
  }
33770
- return path29;
33749
+ return path30;
33771
33750
  }
33772
33751
  var log25, ambiguousContentNode, ContentTreeReverseIndexMap, ContentTreeReverseIndex, pagePredicates, PageMapQueryPagesBelowPathImpl, PageMapQueryPagesInSectionImpl, PageMap;
33773
33752
  var init_pagemap = __esm({
@@ -33820,8 +33799,8 @@ var init_pagemap = __esm({
33820
33799
  path;
33821
33800
  keyPart;
33822
33801
  include;
33823
- constructor(path29, keyPart, include = pagePredicates.shouldListLocal) {
33824
- this.path = path29;
33802
+ constructor(path30, keyPart, include = pagePredicates.shouldListLocal) {
33803
+ this.path = path30;
33825
33804
  this.keyPart = keyPart;
33826
33805
  this.include = include;
33827
33806
  }
@@ -33833,8 +33812,8 @@ var init_pagemap = __esm({
33833
33812
  recursive;
33834
33813
  includeSelf;
33835
33814
  index;
33836
- constructor(path29, keyPart, recursive, includeSelf, index2, include) {
33837
- super(path29, keyPart, include);
33815
+ constructor(path30, keyPart, recursive, includeSelf, index2, include) {
33816
+ super(path30, keyPart, include);
33838
33817
  this.recursive = recursive;
33839
33818
  this.includeSelf = includeSelf;
33840
33819
  this.index = index2;
@@ -34202,12 +34181,12 @@ var init_pagemap = __esm({
34202
34181
  /**
34203
34182
  * Helper method to get directory from path
34204
34183
  */
34205
- pathDir(path29) {
34206
- const lastSlash = path29.lastIndexOf("/");
34184
+ pathDir(path30) {
34185
+ const lastSlash = path30.lastIndexOf("/");
34207
34186
  if (lastSlash === -1) {
34208
34187
  return "";
34209
34188
  }
34210
- return path29.substring(0, lastSlash);
34189
+ return path30.substring(0, lastSlash);
34211
34190
  }
34212
34191
  };
34213
34192
  }
@@ -34246,11 +34225,11 @@ var init_pagecollector = __esm({
34246
34225
  /**
34247
34226
  * CollectDir - exact replica of Go's collectDir method
34248
34227
  */
34249
- async collectDir(fs3, path29, root2) {
34228
+ async collectDir(fs3, path30, root2) {
34250
34229
  try {
34251
- await this.fs.walkContent(fs3, path29, {
34252
- hookPre: async (dir2, path30, readdir2) => {
34253
- const fullPath = path30;
34230
+ await this.fs.walkContent(fs3, path30, {
34231
+ hookPre: async (dir2, path31, readdir2) => {
34232
+ const fullPath = path31;
34254
34233
  if (this.processedPaths.has(fullPath)) {
34255
34234
  log26.warn("Path already processed!", {
34256
34235
  path: fullPath,
@@ -34281,7 +34260,7 @@ var init_pagecollector = __esm({
34281
34260
  });
34282
34261
  } catch (error) {
34283
34262
  log26.error(`Failed to collect directory: ${error}`, {
34284
- path: path29,
34263
+ path: path30,
34285
34264
  rootName: root2.name(),
34286
34265
  rootIsDir: root2.isDir(),
34287
34266
  stack: error.stack || "No stack trace available"
@@ -34291,7 +34270,7 @@ var init_pagecollector = __esm({
34291
34270
  }
34292
34271
  async handleBundleLeaf(dir2, bundle, inPath, readdir2) {
34293
34272
  const bundlePath = bundle.paths();
34294
- const walk2 = async (path29, info) => {
34273
+ const walk2 = async (path30, info) => {
34295
34274
  if (info.isDir()) {
34296
34275
  return;
34297
34276
  }
@@ -34543,10 +34522,10 @@ var init_content2 = __esm({
34543
34522
  * GetPageFromPath - TypeScript equivalent of Go's PageFinder.GetPageFromPath
34544
34523
  * This is the core content domain business logic for finding pages by path
34545
34524
  */
34546
- getPageFromPath(langIndex, path29) {
34525
+ getPageFromPath(langIndex, path30) {
34547
34526
  try {
34548
34527
  const pathProcessor = PathDomain.createProcessor();
34549
- const ps = pathProcessor.parse(PATH_CONSTANTS.COMPONENT_FOLDER_CONTENT, path29);
34528
+ const ps = pathProcessor.parse(PATH_CONSTANTS.COMPONENT_FOLDER_CONTENT, path30);
34550
34529
  const tree = this.pageMap.treePages.shape(0, langIndex);
34551
34530
  let node = tree.get(ps.base());
34552
34531
  if (node) {
@@ -34557,7 +34536,7 @@ var init_content2 = __esm({
34557
34536
  }
34558
34537
  return null;
34559
34538
  } catch (error) {
34560
- log27.error(`\u274C Content.getPageFromPath error for path "${path29}":`, error);
34539
+ log27.error(`\u274C Content.getPageFromPath error for path "${path30}":`, error);
34561
34540
  return null;
34562
34541
  }
34563
34542
  }
@@ -35364,15 +35343,15 @@ var init_scratch = __esm({
35364
35343
  function sanitize(input) {
35365
35344
  return input.replace(/[\s\t\n\r]+/g, "-").replace(/[^\w\-_]/g, "").replace(/-+/g, "-").replace(/^-|-$/g, "");
35366
35345
  }
35367
- function addContextRoot(root2, path29) {
35368
- if (!root2 || path29.startsWith(root2)) {
35369
- return path29;
35346
+ function addContextRoot(root2, path30) {
35347
+ if (!root2 || path30.startsWith(root2)) {
35348
+ return path30;
35370
35349
  }
35371
- return joinPaths(root2, path29);
35350
+ return joinPaths(root2, path30);
35372
35351
  }
35373
- function makePermalink(baseURL, path29) {
35352
+ function makePermalink(baseURL, path30) {
35374
35353
  const base2 = baseURL.replace(/\/$/, "");
35375
- const cleanPath = path29.replace(/^\//, "");
35354
+ const cleanPath = path30.replace(/^\//, "");
35376
35355
  const fullURL = `${base2}/${cleanPath}`;
35377
35356
  try {
35378
35357
  return new URL(fullURL);
@@ -35401,7 +35380,7 @@ var init_paths2 = __esm({
35401
35380
  });
35402
35381
 
35403
35382
  // internal/domain/content/entity/page.ts
35404
- var import_path10, log30, PageImpl, TaxonomyPageImpl, TermPageImpl;
35383
+ var import_path11, log30, PageImpl, TaxonomyPageImpl, TermPageImpl;
35405
35384
  var init_page = __esm({
35406
35385
  "internal/domain/content/entity/page.ts"() {
35407
35386
  "use strict";
@@ -35413,7 +35392,7 @@ var init_page = __esm({
35413
35392
  init_paths2();
35414
35393
  init_doctree();
35415
35394
  init_sort();
35416
- import_path10 = __toESM(require("path"));
35395
+ import_path11 = __toESM(require("path"));
35417
35396
  init_log();
35418
35397
  log30 = getDomainLogger("content", { component: "page" });
35419
35398
  PageImpl = class {
@@ -35491,8 +35470,8 @@ var init_page = __esm({
35491
35470
  * 3. Handle index files (index → parent folder)
35492
35471
  * 4. Handle _index files (Hugo-style section index)
35493
35472
  */
35494
- pathToSlug(path29) {
35495
- let slug3 = path29.replace(/^\//, "");
35473
+ pathToSlug(path30) {
35474
+ let slug3 = path30.replace(/^\//, "");
35496
35475
  slug3 = slug3.replace(/\.md$/, "");
35497
35476
  if (slug3.endsWith("/index")) {
35498
35477
  slug3 = slug3.replace(/\/index$/, "");
@@ -35519,7 +35498,7 @@ var init_page = __esm({
35519
35498
  if (/^(https?:)?\/\//.test(src)) {
35520
35499
  return src;
35521
35500
  }
35522
- src = import_path10.default.normalize(src);
35501
+ src = import_path11.default.normalize(src);
35523
35502
  src = src.replace(/\\/g, "/");
35524
35503
  if (src.startsWith("/")) {
35525
35504
  src = src.slice(1);
@@ -40397,6 +40376,7 @@ var init_registry = __esm({
40397
40376
  "use strict";
40398
40377
  init_log();
40399
40378
  crypto2 = __toESM(require("crypto"));
40379
+ init_lang();
40400
40380
  log35 = getDomainLogger("template", { component: "registry" });
40401
40381
  engineDependentFunctions = [];
40402
40382
  PartialFunction = class {
@@ -40591,8 +40571,8 @@ var init_registry = __esm({
40591
40571
  }
40592
40572
  },
40593
40573
  // PathEscape escapes special characters in a URL path
40594
- PathEscape: (path29) => {
40595
- return encodeURIComponent(path29).replace(/%2F/g, "/").replace(/[!'()*]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);
40574
+ PathEscape: (path30) => {
40575
+ return encodeURIComponent(path30).replace(/%2F/g, "/").replace(/[!'()*]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);
40596
40576
  },
40597
40577
  // QueryEscape escapes special characters in a URL query
40598
40578
  QueryEscape: (query) => {
@@ -40712,37 +40692,36 @@ var init_registry = __esm({
40712
40692
  * Equivalent to Go's registerLang()
40713
40693
  */
40714
40694
  registerLanguageFunctions(funcMap, services) {
40715
- const { lang: lang2 } = (init_lang(), __toCommonJS(lang_exports));
40716
40695
  funcMap.set("lang", () => ({
40717
40696
  // Get all language codes
40718
- getAllCodes: () => lang2.getAllCodes(),
40697
+ getAllCodes: () => lang.getAllCodes(),
40719
40698
  // Get all language names
40720
- getAllNames: () => lang2.getAllNames(),
40699
+ getAllNames: () => lang.getAllNames(),
40721
40700
  // Get language codes by direction
40722
- getCodesByDirection: (direction) => lang2.getCodesByDirection(direction),
40701
+ getCodesByDirection: (direction) => lang.getCodesByDirection(direction),
40723
40702
  // Get language names by direction
40724
- getNamesByDirection: (direction) => lang2.getNamesByDirection(direction),
40703
+ getNamesByDirection: (direction) => lang.getNamesByDirection(direction),
40725
40704
  // Get code-name mapping
40726
- getCodeNameMap: () => lang2.getCodeNameMap(),
40705
+ getCodeNameMap: () => lang.getCodeNameMap(),
40727
40706
  // Get code-name mapping by direction
40728
- getCodeNameMapByDirection: (direction) => lang2.getCodeNameMapByDirection(direction),
40707
+ getCodeNameMapByDirection: (direction) => lang.getCodeNameMapByDirection(direction),
40729
40708
  // Get language name by code
40730
- getNameByCode: (code2) => lang2.getNameByCode(code2),
40709
+ getNameByCode: (code2) => lang.getNameByCode(code2),
40731
40710
  // Get language info by code
40732
- getLanguageInfo: (code2) => lang2.getLanguageInfo(code2),
40711
+ getLanguageInfo: (code2) => lang.getLanguageInfo(code2),
40733
40712
  // Check if language is supported
40734
- isSupported: (code2) => lang2.isSupported(code2),
40713
+ isSupported: (code2) => lang.isSupported(code2),
40735
40714
  // Get language direction
40736
- getDirection: (code2) => lang2.getDirection(code2),
40715
+ getDirection: (code2) => lang.getDirection(code2),
40737
40716
  // Check if language is LTR
40738
- isLTR: (code2) => lang2.isLTR(code2),
40717
+ isLTR: (code2) => lang.isLTR(code2),
40739
40718
  // Check if language is RTL
40740
- isRTL: (code2) => lang2.isRTL(code2)
40719
+ isRTL: (code2) => lang.isRTL(code2)
40741
40720
  }));
40742
- funcMap.set("langName", (code2) => lang2.getNameByCode(code2) || code2);
40743
- funcMap.set("langDirection", (code2) => lang2.getDirection(code2) || "ltr");
40744
- funcMap.set("isLTR", (code2) => lang2.isLTR(code2));
40745
- funcMap.set("isRTL", (code2) => lang2.isRTL(code2));
40721
+ funcMap.set("langName", (code2) => lang.getNameByCode(code2) || code2);
40722
+ funcMap.set("langDirection", (code2) => lang.getDirection(code2) || "ltr");
40723
+ funcMap.set("isLTR", (code2) => lang.isLTR(code2));
40724
+ funcMap.set("isRTL", (code2) => lang.isRTL(code2));
40746
40725
  funcMap.set("i18n", (key3) => {
40747
40726
  return services.translate(key3);
40748
40727
  });
@@ -41748,11 +41727,11 @@ var init_registry = __esm({
41748
41727
  }
41749
41728
  }
41750
41729
  }
41751
- const getNestedValue = (obj, path29) => {
41752
- if (!path29 || path29 === "value") {
41730
+ const getNestedValue = (obj, path30) => {
41731
+ if (!path30 || path30 === "value") {
41753
41732
  return obj;
41754
41733
  }
41755
- const keys = path29.split(".");
41734
+ const keys = path30.split(".");
41756
41735
  let current = obj;
41757
41736
  for (const key3 of keys) {
41758
41737
  if (current === null || current === void 0) {
@@ -42317,23 +42296,23 @@ var init_registry = __esm({
42317
42296
  registerPathFunctions(funcMap) {
42318
42297
  funcMap.set("path", () => ({
42319
42298
  // Base returns the last element of path
42320
- Base: (path29) => {
42321
- if (!path29)
42299
+ Base: (path30) => {
42300
+ if (!path30)
42322
42301
  return ".";
42323
- path29 = path29.replace(/\\/g, "/");
42324
- path29 = path29.replace(/\/+$/, "");
42325
- if (!path29)
42302
+ path30 = path30.replace(/\\/g, "/");
42303
+ path30 = path30.replace(/\/+$/, "");
42304
+ if (!path30)
42326
42305
  return "/";
42327
- const parts = path29.split("/");
42306
+ const parts = path30.split("/");
42328
42307
  return parts[parts.length - 1] || "/";
42329
42308
  },
42330
42309
  // Clean returns the shortest path name equivalent to path
42331
- Clean: (path29) => {
42332
- if (!path29)
42310
+ Clean: (path30) => {
42311
+ if (!path30)
42333
42312
  return ".";
42334
- path29 = path29.replace(/\\/g, "/");
42335
- const isAbs = path29.startsWith("/");
42336
- const parts = path29.split("/").filter((p2) => p2 && p2 !== ".");
42313
+ path30 = path30.replace(/\\/g, "/");
42314
+ const isAbs = path30.startsWith("/");
42315
+ const parts = path30.split("/").filter((p2) => p2 && p2 !== ".");
42337
42316
  const stack = [];
42338
42317
  for (const part of parts) {
42339
42318
  if (part === "..") {
@@ -42346,56 +42325,56 @@ var init_registry = __esm({
42346
42325
  stack.push(part);
42347
42326
  }
42348
42327
  }
42349
- path29 = stack.join("/");
42328
+ path30 = stack.join("/");
42350
42329
  if (isAbs)
42351
- path29 = "/" + path29;
42352
- return path29 || (isAbs ? "/" : ".");
42330
+ path30 = "/" + path30;
42331
+ return path30 || (isAbs ? "/" : ".");
42353
42332
  },
42354
42333
  // Dir returns all but the last element of path
42355
- Dir: (path29) => {
42356
- if (!path29)
42334
+ Dir: (path30) => {
42335
+ if (!path30)
42357
42336
  return ".";
42358
- path29 = path29.replace(/\/+$/, "");
42359
- if (!path29)
42337
+ path30 = path30.replace(/\/+$/, "");
42338
+ if (!path30)
42360
42339
  return "/";
42361
- const parts = path29.split("/");
42340
+ const parts = path30.split("/");
42362
42341
  parts.pop();
42363
42342
  return parts.join("/") || ".";
42364
42343
  },
42365
42344
  // Ext returns the file name extension
42366
- Ext: (path29) => {
42367
- const base2 = path29.split("/").pop() || "";
42345
+ Ext: (path30) => {
42346
+ const base2 = path30.split("/").pop() || "";
42368
42347
  const dot = base2.lastIndexOf(".");
42369
42348
  if (dot === -1 || dot === 0)
42370
42349
  return "";
42371
42350
  return base2.substring(dot);
42372
42351
  },
42373
42352
  // IsAbs reports whether the path is absolute
42374
- IsAbs: (path29) => {
42375
- return path29.startsWith("/");
42353
+ IsAbs: (path30) => {
42354
+ return path30.startsWith("/");
42376
42355
  },
42377
42356
  // Join joins any number of path elements into a single path
42378
42357
  Join: (...elements) => {
42379
42358
  if (elements.length === 0)
42380
42359
  return ".";
42381
42360
  const parts = elements.filter((e) => e).map((e) => e.replace(/^\/+|\/+$/g, ""));
42382
- let path29 = parts.join("/");
42361
+ let path30 = parts.join("/");
42383
42362
  if (elements[0] && elements[0].startsWith("/")) {
42384
- path29 = "/" + path29;
42363
+ path30 = "/" + path30;
42385
42364
  }
42386
- return path29 || ".";
42365
+ return path30 || ".";
42387
42366
  },
42388
42367
  // Split splits path immediately following the final slash
42389
- Split: (path29) => {
42390
- if (!path29)
42368
+ Split: (path30) => {
42369
+ if (!path30)
42391
42370
  return [".", ""];
42392
- const lastSlash = path29.lastIndexOf("/");
42371
+ const lastSlash = path30.lastIndexOf("/");
42393
42372
  if (lastSlash === -1) {
42394
- return ["", path29];
42373
+ return ["", path30];
42395
42374
  }
42396
42375
  return [
42397
- path29.substring(0, lastSlash),
42398
- path29.substring(lastSlash + 1)
42376
+ path30.substring(0, lastSlash),
42377
+ path30.substring(lastSlash + 1)
42399
42378
  ];
42400
42379
  }
42401
42380
  }));
@@ -42681,11 +42660,11 @@ var init_registry = __esm({
42681
42660
  * Get nested value from object using dot notation path
42682
42661
  * Following golang's path resolution logic
42683
42662
  */
42684
- getNestedValue(obj, path29) {
42685
- if (!obj || !path29) {
42663
+ getNestedValue(obj, path30) {
42664
+ if (!obj || !path30) {
42686
42665
  return void 0;
42687
42666
  }
42688
- const cleanPath = path29.replace(/^\\.+/, "");
42667
+ const cleanPath = path30.replace(/^\\.+/, "");
42689
42668
  const parts = cleanPath.split(".");
42690
42669
  let current = obj;
42691
42670
  for (let i = 0; i < parts.length; i++) {
@@ -43220,14 +43199,14 @@ var init_pagebuilder = __esm({
43220
43199
  * Parse kind - exact replica of Go's parseKind method
43221
43200
  */
43222
43201
  async parseKind() {
43223
- const path29 = this.source.file.paths();
43202
+ const path30 = this.source.file.paths();
43224
43203
  let kind = "";
43225
43204
  if (this.fm) {
43226
43205
  kind = this.fm.kind || "";
43227
43206
  }
43228
43207
  if (kind === "") {
43229
43208
  kind = getKindMain("page");
43230
- const base2 = path29.baseNoLeadingSlash();
43209
+ const base2 = path30.baseNoLeadingSlash();
43231
43210
  switch (base2) {
43232
43211
  case PAGE_HOME_BASE:
43233
43212
  case "":
@@ -43242,9 +43221,9 @@ var init_pagebuilder = __esm({
43242
43221
  default:
43243
43222
  if (this.source.file.isBranchBundle()) {
43244
43223
  kind = getKindMain("section");
43245
- const v = this.taxonomy.getTaxonomy(path29.path());
43224
+ const v = this.taxonomy.getTaxonomy(path30.path());
43246
43225
  if (!this.taxonomy.isZero(v)) {
43247
- if (this.taxonomy.isTaxonomyPath(path29.path())) {
43226
+ if (this.taxonomy.isTaxonomyPath(path30.path())) {
43248
43227
  kind = getKindMain("taxonomy");
43249
43228
  } else {
43250
43229
  kind = getKindMain("term");
@@ -43887,11 +43866,11 @@ var init_pager = __esm({
43887
43866
  });
43888
43867
 
43889
43868
  // internal/domain/site/entity/page.ts
43890
- var import_path11, log39, Page2;
43869
+ var import_path12, log39, Page2;
43891
43870
  var init_page2 = __esm({
43892
43871
  "internal/domain/site/entity/page.ts"() {
43893
43872
  "use strict";
43894
- import_path11 = __toESM(require("path"));
43873
+ import_path12 = __toESM(require("path"));
43895
43874
  init_log();
43896
43875
  init_pager();
43897
43876
  log39 = getDomainLogger("site", { component: "page" });
@@ -44011,14 +43990,14 @@ var init_page2 = __esm({
44011
43990
  } else {
44012
43991
  prefix = this.site.getLanguage().getCurrentLanguage();
44013
43992
  }
44014
- targetFilenames.push(import_path11.default.join(prefix, this.getPageOutput().targetFilePath()));
43993
+ targetFilenames.push(import_path12.default.join(prefix, this.getPageOutput().targetFilePath()));
44015
43994
  await this.renderAndWritePage(tmpl, targetFilenames);
44016
43995
  const current = await this.current();
44017
43996
  if (current) {
44018
43997
  let currentPager = current.next();
44019
43998
  while (currentPager) {
44020
43999
  this.setCurrent(currentPager);
44021
- const paginationTargets = [import_path11.default.join(prefix, currentPager.url(), this.getPageOutput().targetFileBase())];
44000
+ const paginationTargets = [import_path12.default.join(prefix, currentPager.url(), this.getPageOutput().targetFileBase())];
44022
44001
  await this.renderAndWritePage(tmpl, paginationTargets);
44023
44002
  currentPager = currentPager.next();
44024
44003
  }
@@ -44051,7 +44030,7 @@ var init_page2 = __esm({
44051
44030
  prefix = this.site.getLanguage().getCurrentLanguage();
44052
44031
  }
44053
44032
  let resourcePath = pageSource.path();
44054
- targetFilenames.push(import_path11.default.join(prefix, resourcePath));
44033
+ targetFilenames.push(import_path12.default.join(prefix, resourcePath));
44055
44034
  let stream = null;
44056
44035
  try {
44057
44036
  const opener = () => pageSource.pageFile().open();
@@ -44706,11 +44685,11 @@ var init_baseurl = __esm({
44706
44685
  /**
44707
44686
  * Returns the appropriate root URL based on the path.
44708
44687
  */
44709
- getRoot(path29) {
44688
+ getRoot(path30) {
44710
44689
  if (this.isRelative) {
44711
44690
  return this.basePath;
44712
44691
  }
44713
- if (path29.startsWith("/")) {
44692
+ if (path30.startsWith("/")) {
44714
44693
  return this.withoutPath;
44715
44694
  }
44716
44695
  return this.withPath;
@@ -46127,8 +46106,8 @@ function assertNonEmpty(part, name) {
46127
46106
  throw new Error("`" + name + "` cannot be empty");
46128
46107
  }
46129
46108
  }
46130
- function assertPath(path29, name) {
46131
- if (!path29) {
46109
+ function assertPath(path30, name) {
46110
+ if (!path30) {
46132
46111
  throw new Error("Setting `" + name + "` requires `path` to be set too");
46133
46112
  }
46134
46113
  }
@@ -46313,13 +46292,13 @@ var init_lib5 = __esm({
46313
46292
  * @returns {undefined}
46314
46293
  * Nothing.
46315
46294
  */
46316
- set path(path29) {
46317
- if (isUrl(path29)) {
46318
- path29 = (0, import_node_url.fileURLToPath)(path29);
46295
+ set path(path30) {
46296
+ if (isUrl(path30)) {
46297
+ path30 = (0, import_node_url.fileURLToPath)(path30);
46319
46298
  }
46320
- assertNonEmpty(path29, "path");
46321
- if (this.path !== path29) {
46322
- this.history.push(path29);
46299
+ assertNonEmpty(path30, "path");
46300
+ if (this.path !== path30) {
46301
+ this.history.push(path30);
46323
46302
  }
46324
46303
  }
46325
46304
  /**
@@ -59080,7 +59059,7 @@ var init_is_absolute_url = __esm({
59080
59059
  function createHtmlLinkProcessor(graph, options) {
59081
59060
  return new HtmlLinkProcessor(graph, options);
59082
59061
  }
59083
- var import_path13, log43, defaultOptions2, HtmlLinkProcessor;
59062
+ var import_path14, log43, defaultOptions2, HtmlLinkProcessor;
59084
59063
  var init_html_link_processor = __esm({
59085
59064
  "internal/domain/site/service/html-link-processor.ts"() {
59086
59065
  "use strict";
@@ -59089,7 +59068,7 @@ var init_html_link_processor = __esm({
59089
59068
  init_rehype_stringify();
59090
59069
  init_unist_util_visit();
59091
59070
  init_is_absolute_url();
59092
- import_path13 = __toESM(require("path"));
59071
+ import_path14 = __toESM(require("path"));
59093
59072
  init_path3();
59094
59073
  init_log();
59095
59074
  log43 = getDomainLogger("site", { component: "HtmlLinkProcessor" });
@@ -59227,7 +59206,7 @@ var init_html_link_processor = __esm({
59227
59206
  node.properties["data-slug"] = full;
59228
59207
  }
59229
59208
  if (opts.prettyLinks && isInternal && node.children.length === 1 && node.children[0].type === "text" && !node.children[0].value.startsWith("#")) {
59230
- node.children[0].value = import_path13.default.basename(node.children[0].value);
59209
+ node.children[0].value = import_path14.default.basename(node.children[0].value);
59231
59210
  }
59232
59211
  }
59233
59212
  if (["img", "video", "audio", "iframe"].includes(node.tagName) && node.properties && typeof node.properties.src === "string") {
@@ -60051,14 +60030,14 @@ var init_site = __esm({
60051
60030
 
60052
60031
  // internal/domain/site/entity/publisher.ts
60053
60032
  async function openFileForWriting(fs3, filename) {
60054
- const cleanFilename = import_path15.default.normalize(filename);
60033
+ const cleanFilename = import_path16.default.normalize(filename);
60055
60034
  try {
60056
60035
  return await fs3.create(cleanFilename);
60057
60036
  } catch (error) {
60058
60037
  if (!isFileNotFoundError(error)) {
60059
60038
  throw error;
60060
60039
  }
60061
- const dir2 = import_path15.default.dirname(cleanFilename);
60040
+ const dir2 = import_path16.default.dirname(cleanFilename);
60062
60041
  await fs3.mkdirAll(dir2, 511);
60063
60042
  return await fs3.create(cleanFilename);
60064
60043
  }
@@ -60066,11 +60045,11 @@ async function openFileForWriting(fs3, filename) {
60066
60045
  function isFileNotFoundError(error) {
60067
60046
  return error && (error.code === "ENOENT" || error.code === "FILE_NOT_FOUND" || error.message?.includes("not found") || error.message?.includes("no such file"));
60068
60047
  }
60069
- var import_path15, log45, Publisher, MultiWriter;
60048
+ var import_path16, log45, Publisher, MultiWriter;
60070
60049
  var init_publisher = __esm({
60071
60050
  "internal/domain/site/entity/publisher.ts"() {
60072
60051
  "use strict";
60073
- import_path15 = __toESM(require("path"));
60052
+ import_path16 = __toESM(require("path"));
60074
60053
  init_log();
60075
60054
  log45 = getDomainLogger("site", { component: "publisher" });
60076
60055
  Publisher = class {
@@ -60931,8 +60910,8 @@ var init_menu_builder = __esm({
60931
60910
  /**
60932
60911
  * Fallback URL generation from path (used when site page conversion fails)
60933
60912
  */
60934
- fallbackUrlFromPath(path29) {
60935
- let url = path29.replace(/\.md$/, "");
60913
+ fallbackUrlFromPath(path30) {
60914
+ let url = path30.replace(/\.md$/, "");
60936
60915
  if (!url.startsWith("/")) {
60937
60916
  url = "/" + url;
60938
60917
  }
@@ -61163,7 +61142,7 @@ var init_type9 = __esm({
61163
61142
  });
61164
61143
 
61165
61144
  // internal/domain/resources/entity/resource.ts
61166
- var import_crypto, import_stream, import_promises, log53, ResourceHash, PublishOnce, ResourceImpl;
61145
+ var import_crypto, import_stream, import_promises, import_stream2, log53, ResourceHash, PublishOnce, ResourceImpl;
61167
61146
  var init_resource = __esm({
61168
61147
  "internal/domain/resources/entity/resource.ts"() {
61169
61148
  "use strict";
@@ -61172,6 +61151,7 @@ var init_resource = __esm({
61172
61151
  import_stream = require("stream");
61173
61152
  init_paths();
61174
61153
  import_promises = require("stream/promises");
61154
+ import_stream2 = require("stream");
61175
61155
  init_log();
61176
61156
  log53 = getDomainLogger("resources", { component: "publisher" });
61177
61157
  ResourceHash = class {
@@ -61312,8 +61292,7 @@ var init_resource = __esm({
61312
61292
  if (result && typeof result.read === "function") {
61313
61293
  const testChunk = result.read();
61314
61294
  if (testChunk) {
61315
- const Readable = require("stream").Readable;
61316
- const newStream = new Readable();
61295
+ const newStream = new import_stream2.Readable();
61317
61296
  newStream.push(testChunk);
61318
61297
  let remainingChunk;
61319
61298
  while ((remainingChunk = result.read()) !== null) {
@@ -81128,16 +81107,16 @@ function parseAbsoluteUrl(input) {
81128
81107
  }
81129
81108
  function parseFileUrl(input) {
81130
81109
  const match2 = fileRegex.exec(input);
81131
- const path29 = match2[2];
81132
- return makeUrl("file:", "", match2[1] || "", "", isAbsolutePath(path29) ? path29 : "/" + path29, match2[3] || "", match2[4] || "");
81110
+ const path30 = match2[2];
81111
+ return makeUrl("file:", "", match2[1] || "", "", isAbsolutePath(path30) ? path30 : "/" + path30, match2[3] || "", match2[4] || "");
81133
81112
  }
81134
- function makeUrl(scheme, user, host, port, path29, query, hash) {
81113
+ function makeUrl(scheme, user, host, port, path30, query, hash) {
81135
81114
  return {
81136
81115
  scheme,
81137
81116
  user,
81138
81117
  host,
81139
81118
  port,
81140
- path: path29,
81119
+ path: path30,
81141
81120
  query,
81142
81121
  hash,
81143
81122
  type: 7
@@ -81167,11 +81146,11 @@ function parseUrl(input) {
81167
81146
  url.type = input ? input.startsWith("?") ? 3 : input.startsWith("#") ? 2 : 4 : 1;
81168
81147
  return url;
81169
81148
  }
81170
- function stripPathFilename(path29) {
81171
- if (path29.endsWith("/.."))
81172
- return path29;
81173
- const index2 = path29.lastIndexOf("/");
81174
- return path29.slice(0, index2 + 1);
81149
+ function stripPathFilename(path30) {
81150
+ if (path30.endsWith("/.."))
81151
+ return path30;
81152
+ const index2 = path30.lastIndexOf("/");
81153
+ return path30.slice(0, index2 + 1);
81175
81154
  }
81176
81155
  function mergePaths(url, base2) {
81177
81156
  normalizePath(base2, base2.type);
@@ -81209,14 +81188,14 @@ function normalizePath(url, type2) {
81209
81188
  pieces[pointer++] = piece;
81210
81189
  positive++;
81211
81190
  }
81212
- let path29 = "";
81191
+ let path30 = "";
81213
81192
  for (let i = 1; i < pointer; i++) {
81214
- path29 += "/" + pieces[i];
81193
+ path30 += "/" + pieces[i];
81215
81194
  }
81216
- if (!path29 || addTrailingSlash2 && !path29.endsWith("/..")) {
81217
- path29 += "/";
81195
+ if (!path30 || addTrailingSlash2 && !path30.endsWith("/..")) {
81196
+ path30 += "/";
81218
81197
  }
81219
- url.path = path29;
81198
+ url.path = path30;
81220
81199
  }
81221
81200
  function resolve3(input, base2) {
81222
81201
  if (!input && !base2)
@@ -81251,13 +81230,13 @@ function resolve3(input, base2) {
81251
81230
  case 3:
81252
81231
  return queryHash;
81253
81232
  case 4: {
81254
- const path29 = url.path.slice(1);
81255
- if (!path29)
81233
+ const path30 = url.path.slice(1);
81234
+ if (!path30)
81256
81235
  return queryHash || ".";
81257
- if (isRelative(base2 || input) && !isRelative(path29)) {
81258
- return "./" + path29 + queryHash;
81236
+ if (isRelative(base2 || input) && !isRelative(path30)) {
81237
+ return "./" + path30 + queryHash;
81259
81238
  }
81260
- return path29 + queryHash;
81239
+ return path30 + queryHash;
81261
81240
  }
81262
81241
  case 5:
81263
81242
  return url.path + queryHash;
@@ -81275,11 +81254,11 @@ var init_resolve_uri = __esm({
81275
81254
  });
81276
81255
 
81277
81256
  // node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs
81278
- function stripFilename(path29) {
81279
- if (!path29)
81257
+ function stripFilename(path30) {
81258
+ if (!path30)
81280
81259
  return "";
81281
- const index2 = path29.lastIndexOf("/");
81282
- return path29.slice(0, index2 + 1);
81260
+ const index2 = path30.lastIndexOf("/");
81261
+ return path30.slice(0, index2 + 1);
81283
81262
  }
81284
81263
  function resolver(mapUrl, sourceRoot) {
81285
81264
  const from = stripFilename(mapUrl);
@@ -92387,13 +92366,13 @@ var init_template4 = __esm({
92387
92366
  });
92388
92367
 
92389
92368
  // internal/domain/resources/entity/publisher.ts
92390
- var path25, import_stream2, log54, Publisher2, FileWritable;
92369
+ var path25, import_stream3, log54, Publisher2, FileWritable;
92391
92370
  var init_publisher2 = __esm({
92392
92371
  "internal/domain/resources/entity/publisher.ts"() {
92393
92372
  "use strict";
92394
92373
  path25 = __toESM(require("path"));
92395
92374
  init_log();
92396
- import_stream2 = require("stream");
92375
+ import_stream3 = require("stream");
92397
92376
  log54 = getDomainLogger("resources", { component: "publisher" });
92398
92377
  Publisher2 = class {
92399
92378
  pubFs;
@@ -92479,7 +92458,7 @@ var init_publisher2 = __esm({
92479
92458
  return error && (error.code === "ENOENT" || error.message?.includes("no such file or directory") || error.message?.includes("not found"));
92480
92459
  }
92481
92460
  };
92482
- FileWritable = class extends import_stream2.Writable {
92461
+ FileWritable = class extends import_stream3.Writable {
92483
92462
  file;
92484
92463
  constructor(file) {
92485
92464
  super();
@@ -92595,7 +92574,7 @@ var init_http2 = __esm({
92595
92574
  });
92596
92575
 
92597
92576
  // internal/domain/resources/entity/resources.ts
92598
- var path26, import_crypto3, log56, Resources;
92577
+ var path26, import_crypto3, import_stream4, log56, Resources;
92599
92578
  var init_resources = __esm({
92600
92579
  "internal/domain/resources/entity/resources.ts"() {
92601
92580
  "use strict";
@@ -92610,6 +92589,7 @@ var init_resources = __esm({
92610
92589
  path26 = __toESM(require("path"));
92611
92590
  import_crypto3 = require("crypto");
92612
92591
  init_log();
92592
+ import_stream4 = require("stream");
92613
92593
  log56 = getDomainLogger("resources", { component: "resources" });
92614
92594
  Resources = class {
92615
92595
  cache = /* @__PURE__ */ new Map();
@@ -92890,8 +92870,7 @@ var init_resources = __esm({
92890
92870
  * This follows golang's NewReadSeekerNoOpCloserFromString pattern
92891
92871
  */
92892
92872
  newReadSeekerNoOpCloserFromString(content) {
92893
- const { Readable } = require("stream");
92894
- const stream = new Readable({
92873
+ const stream = new import_stream4.Readable({
92895
92874
  read() {
92896
92875
  }
92897
92876
  });
@@ -93141,7 +93120,7 @@ function getDomainInstances() {
93141
93120
  }
93142
93121
  async function loadConfiguration(projDir, modulesDir) {
93143
93122
  const osFs = newOsFs();
93144
- const configFilePath = import_path16.default.join(projDir, "config.json");
93123
+ const configFilePath = import_path17.default.join(projDir, "config.json");
93145
93124
  return await loadConfigWithParams(osFs, configFilePath, projDir, modulesDir);
93146
93125
  }
93147
93126
  async function createModule(config2) {
@@ -93387,11 +93366,11 @@ function createSiteForSSG(config2, fs3, content) {
93387
93366
  searchPage: async (pages, page) => {
93388
93367
  return [];
93389
93368
  },
93390
- getPageFromPath: async (langIndex, path29) => {
93369
+ getPageFromPath: async (langIndex, path30) => {
93391
93370
  try {
93392
- const page = content.getPageFromPath(langIndex, path29);
93371
+ const page = content.getPageFromPath(langIndex, path30);
93393
93372
  if (!page) {
93394
- log57.error(`\u26A0\uFE0F Application.getPageFromPath: content domain returned null for path: "${path29}"`);
93373
+ log57.error(`\u26A0\uFE0F Application.getPageFromPath: content domain returned null for path: "${path30}"`);
93395
93374
  }
93396
93375
  return page;
93397
93376
  } catch (error) {
@@ -93399,11 +93378,11 @@ function createSiteForSSG(config2, fs3, content) {
93399
93378
  return null;
93400
93379
  }
93401
93380
  },
93402
- getPageFromPathSync: (langIndex, path29) => {
93381
+ getPageFromPathSync: (langIndex, path30) => {
93403
93382
  try {
93404
- const page = content.getPageFromPath(langIndex, path29);
93383
+ const page = content.getPageFromPath(langIndex, path30);
93405
93384
  if (!page) {
93406
- log57.warn(`\u26A0\uFE0F Application.getPageFromPathSync: content domain returned null for path: ${path29}`);
93385
+ log57.warn(`\u26A0\uFE0F Application.getPageFromPathSync: content domain returned null for path: ${path30}`);
93407
93386
  }
93408
93387
  return page;
93409
93388
  } catch (error) {
@@ -93438,14 +93417,14 @@ function createSiteForSSG(config2, fs3, content) {
93438
93417
  },
93439
93418
  workingDir: () => config2.getProvider().getString("workingDir") || process.cwd(),
93440
93419
  // ResourceService implementation (placeholder)
93441
- getResource: async (path29) => {
93420
+ getResource: async (path30) => {
93442
93421
  return null;
93443
93422
  },
93444
- getResourceWithOpener: async (path29, opener) => {
93423
+ getResourceWithOpener: async (path30, opener) => {
93445
93424
  return {
93446
- name: () => path29,
93425
+ name: () => path30,
93447
93426
  readSeekCloser: opener,
93448
- targetPath: () => path29
93427
+ targetPath: () => path30
93449
93428
  };
93450
93429
  },
93451
93430
  // URLService implementation
@@ -93724,7 +93703,7 @@ async function collectAllPageTasks(projDir, modulesDir, markdown, onProgress, ht
93724
93703
  throw new Error(`Failed to generate static site: ${message}`);
93725
93704
  }
93726
93705
  }
93727
- var import_path16, log57, configCache, modulesCache, fsCache, contentCache, resourcesCache, templateEngineCache, siteCache, createDomainInstances, tasks;
93706
+ var import_path17, log57, configCache, modulesCache, fsCache, contentCache, resourcesCache, templateEngineCache, siteCache, createDomainInstances, tasks;
93728
93707
  var init_ssg = __esm({
93729
93708
  "internal/application/ssg.ts"() {
93730
93709
  "use strict";
@@ -93735,7 +93714,7 @@ var init_ssg = __esm({
93735
93714
  init_template3();
93736
93715
  init_site2();
93737
93716
  init_log();
93738
- import_path16 = __toESM(require("path"));
93717
+ import_path17 = __toESM(require("path"));
93739
93718
  init_resources2();
93740
93719
  log57 = getDomainLogger("ssg", { component: "application" });
93741
93720
  createDomainInstances = (site, content, fs3, config2, modules, resources) => {
@@ -93947,6 +93926,7 @@ async function handleCleanup() {
93947
93926
 
93948
93927
  // internal/application/worker/pool-manager.ts
93949
93928
  var os = __toESM(require("os"));
93929
+ var path29 = __toESM(require("path"));
93950
93930
  var log60 = getDomainLogger("application", { component: "pool-manager" });
93951
93931
  var WorkerPoolManager = class {
93952
93932
  pool = null;
@@ -94042,7 +94022,6 @@ var WorkerPoolManager = class {
94042
94022
  * 初始化 Node.js Worker 池
94043
94023
  */
94044
94024
  async initializeNodePool() {
94045
- const path29 = require("path");
94046
94025
  const workerPath = path29.join(__dirname, "worker", "worker-node.js");
94047
94026
  log60.debug(`Initializing Node.js worker pool with path: ${workerPath}`);
94048
94027
  this.pool = workerpool.pool(workerPath, {