@intlayer/engine 9.3.0 → 9.3.2

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 (297) hide show
  1. package/README.md +24 -24
  2. package/dist/assets/initConfig/templates/cjs.txt +1 -1
  3. package/dist/assets/initConfig/templates/mjs.txt +1 -1
  4. package/dist/assets/initConfig/templates/ts.txt +1 -1
  5. package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -2
  6. package/dist/cjs/_virtual/_utils_asset.cjs +2 -1
  7. package/dist/cjs/buildIntlayerDictionary/buildIntlayerDictionary.cjs.map +1 -1
  8. package/dist/cjs/buildIntlayerDictionary/writeDynamicDictionary.cjs +2 -1
  9. package/dist/cjs/buildIntlayerDictionary/writeDynamicDictionary.cjs.map +1 -1
  10. package/dist/cjs/buildIntlayerDictionary/writeFetchDictionary.cjs.map +1 -1
  11. package/dist/cjs/buildIntlayerDictionary/writeMergedDictionary.cjs +2 -1
  12. package/dist/cjs/buildIntlayerDictionary/writeMergedDictionary.cjs.map +1 -1
  13. package/dist/cjs/buildIntlayerDictionary/writeNestedDictionary.cjs.map +1 -1
  14. package/dist/cjs/buildIntlayerDictionary/writeRemoteDictionary.cjs +4 -2
  15. package/dist/cjs/buildIntlayerDictionary/writeRemoteDictionary.cjs.map +1 -1
  16. package/dist/cjs/buildIntlayerDictionary/writeUnmergedDictionary.cjs.map +1 -1
  17. package/dist/cjs/cleanOutputDir.cjs.map +1 -1
  18. package/dist/cjs/cleanRemovedContentDeclaration.cjs +7 -4
  19. package/dist/cjs/cleanRemovedContentDeclaration.cjs.map +1 -1
  20. package/dist/cjs/cli.cjs +2 -0
  21. package/dist/cjs/createDictionaryEntryPoint/createDictionaryEntryPoint.cjs +5 -3
  22. package/dist/cjs/createDictionaryEntryPoint/createDictionaryEntryPoint.cjs.map +1 -1
  23. package/dist/cjs/createDictionaryEntryPoint/generateDictionaryListContent.cjs.map +1 -1
  24. package/dist/cjs/createDictionaryEntryPoint/getBuiltDictionariesPath.cjs.map +1 -1
  25. package/dist/cjs/createDictionaryEntryPoint/getBuiltDynamicDictionariesPath.cjs.map +1 -1
  26. package/dist/cjs/createDictionaryEntryPoint/getBuiltFetchDictionariesPath.cjs.map +1 -1
  27. package/dist/cjs/createDictionaryEntryPoint/getBuiltRemoteDictionariesPath.cjs.map +1 -1
  28. package/dist/cjs/createDictionaryEntryPoint/getBuiltUnmergedDictionariesPath.cjs.map +1 -1
  29. package/dist/cjs/createType/createModuleAugmentation.cjs +2 -1
  30. package/dist/cjs/createType/createModuleAugmentation.cjs.map +1 -1
  31. package/dist/cjs/createType/createType.cjs.map +1 -1
  32. package/dist/cjs/detectFormatCommand.cjs.map +1 -1
  33. package/dist/cjs/docReview/alignBlocks.cjs +1 -1
  34. package/dist/cjs/docReview/alignBlocks.cjs.map +1 -1
  35. package/dist/cjs/docReview/computeSimilarity.cjs +0 -1
  36. package/dist/cjs/docReview/computeSimilarity.cjs.map +1 -1
  37. package/dist/cjs/docReview/mapChangedLinesToBlocks.cjs +0 -1
  38. package/dist/cjs/docReview/mapChangedLinesToBlocks.cjs.map +1 -1
  39. package/dist/cjs/docReview/normalizeBlock.cjs +0 -1
  40. package/dist/cjs/docReview/normalizeBlock.cjs.map +1 -1
  41. package/dist/cjs/docReview/planActions.cjs +0 -1
  42. package/dist/cjs/docReview/planActions.cjs.map +1 -1
  43. package/dist/cjs/docReview/rebuildDocument.cjs +0 -1
  44. package/dist/cjs/docReview/rebuildDocument.cjs.map +1 -1
  45. package/dist/cjs/docReview/reviewReport.cjs +2 -1
  46. package/dist/cjs/docReview/reviewReport.cjs.map +1 -1
  47. package/dist/cjs/docReview/segmentDocument.cjs +0 -1
  48. package/dist/cjs/docReview/segmentDocument.cjs.map +1 -1
  49. package/dist/cjs/fetchDistantDictionaries.cjs.map +1 -1
  50. package/dist/cjs/filterInvalidDictionaries.cjs.map +1 -1
  51. package/dist/cjs/formatDictionary.cjs.map +1 -1
  52. package/dist/cjs/getContentDeclarationFileTemplate/getContentDeclarationFileTemplate.cjs.map +1 -1
  53. package/dist/cjs/handleAdditionalContentDeclarationFile.cjs +4 -2
  54. package/dist/cjs/handleAdditionalContentDeclarationFile.cjs.map +1 -1
  55. package/dist/cjs/handleContentDeclarationFileChange.cjs +6 -2
  56. package/dist/cjs/handleContentDeclarationFileChange.cjs.map +1 -1
  57. package/dist/cjs/handleContentDeclarationFileMoved.cjs.map +1 -1
  58. package/dist/cjs/handleUnlinkedContentDeclarationFile.cjs +4 -2
  59. package/dist/cjs/handleUnlinkedContentDeclarationFile.cjs.map +1 -1
  60. package/dist/cjs/init/cms.cjs.map +1 -1
  61. package/dist/cjs/init/frameworkSetup/nextAppRouter/detect.cjs.map +1 -1
  62. package/dist/cjs/init/frameworkSetup/nextAppRouter/index.cjs +1 -3
  63. package/dist/cjs/init/frameworkSetup/nextAppRouter/index.cjs.map +1 -1
  64. package/dist/cjs/init/frameworkSetup/nextAppRouter/restructure.cjs +2 -1
  65. package/dist/cjs/init/frameworkSetup/nextAppRouter/restructure.cjs.map +1 -1
  66. package/dist/cjs/init/frameworkSetup/nextAppRouter/templates.cjs +0 -1
  67. package/dist/cjs/init/frameworkSetup/nextAppRouter/templates.cjs.map +1 -1
  68. package/dist/cjs/init/frameworkSetup/tanstackStart/detect.cjs.map +1 -1
  69. package/dist/cjs/init/frameworkSetup/tanstackStart/index.cjs +3 -5
  70. package/dist/cjs/init/frameworkSetup/tanstackStart/index.cjs.map +1 -1
  71. package/dist/cjs/init/frameworkSetup/tanstackStart/restructure.cjs +2 -1
  72. package/dist/cjs/init/frameworkSetup/tanstackStart/restructure.cjs.map +1 -1
  73. package/dist/cjs/init/frameworkSetup/tanstackStart/templates.cjs +18 -12
  74. package/dist/cjs/init/frameworkSetup/tanstackStart/templates.cjs.map +1 -1
  75. package/dist/cjs/init/frameworkSetup/tanstackStart/transforms.cjs +57 -14
  76. package/dist/cjs/init/frameworkSetup/tanstackStart/transforms.cjs.map +1 -1
  77. package/dist/cjs/init/index.cjs +124 -45
  78. package/dist/cjs/init/index.cjs.map +1 -1
  79. package/dist/cjs/init/utils/configManipulation.cjs.map +1 -1
  80. package/dist/cjs/init/utils/fileSystem.cjs +3 -1
  81. package/dist/cjs/init/utils/fileSystem.cjs.map +1 -1
  82. package/dist/cjs/init/utils/githubActions.cjs.map +1 -1
  83. package/dist/cjs/init/utils/index.cjs +3 -0
  84. package/dist/cjs/init/utils/jsonParser.cjs +0 -1
  85. package/dist/cjs/init/utils/jsonParser.cjs.map +1 -1
  86. package/dist/cjs/init/utils/nextCompilerBabel.cjs.map +1 -1
  87. package/dist/cjs/init/utils/packageManager.cjs +105 -7
  88. package/dist/cjs/init/utils/packageManager.cjs.map +1 -1
  89. package/dist/cjs/init/utils/tsConfig.cjs.map +1 -1
  90. package/dist/cjs/init/utils/version.cjs +0 -1
  91. package/dist/cjs/init/utils/version.cjs.map +1 -1
  92. package/dist/cjs/initConfig/index.cjs +12 -8
  93. package/dist/cjs/initConfig/index.cjs.map +1 -1
  94. package/dist/cjs/installSkills/index.cjs.map +1 -1
  95. package/dist/cjs/listDictionariesPath.cjs +6 -5
  96. package/dist/cjs/listDictionariesPath.cjs.map +1 -1
  97. package/dist/cjs/listGitFiles.cjs.map +1 -1
  98. package/dist/cjs/listProjects.cjs +2 -1
  99. package/dist/cjs/listProjects.cjs.map +1 -1
  100. package/dist/cjs/loadDictionaries/getIntlayerBundle.cjs +2 -1
  101. package/dist/cjs/loadDictionaries/getIntlayerBundle.cjs.map +1 -1
  102. package/dist/cjs/loadDictionaries/loadContentDeclaration.cjs +8 -5
  103. package/dist/cjs/loadDictionaries/loadContentDeclaration.cjs.map +1 -1
  104. package/dist/cjs/loadDictionaries/loadDictionaries.cjs.map +1 -1
  105. package/dist/cjs/loadDictionaries/loadLocalDictionaries.cjs.map +1 -1
  106. package/dist/cjs/loadDictionaries/loadMarkdownContentDeclaration.cjs.map +1 -1
  107. package/dist/cjs/loadDictionaries/loadRemoteDictionaries.cjs.map +1 -1
  108. package/dist/cjs/loadDictionaries/loadYamlContentDeclaration.cjs +2 -1
  109. package/dist/cjs/loadDictionaries/loadYamlContentDeclaration.cjs.map +1 -1
  110. package/dist/cjs/loadDictionaries/log.cjs +10 -6
  111. package/dist/cjs/loadDictionaries/log.cjs.map +1 -1
  112. package/dist/cjs/loadDictionaries/logTypeScriptErrors.cjs.map +1 -1
  113. package/dist/cjs/logConfigDetails.cjs +4 -3
  114. package/dist/cjs/logConfigDetails.cjs.map +1 -1
  115. package/dist/cjs/prepareIntlayer.cjs +5 -3
  116. package/dist/cjs/prepareIntlayer.cjs.map +1 -1
  117. package/dist/cjs/reduceDictionaryContent/applyMask.cjs +0 -1
  118. package/dist/cjs/reduceDictionaryContent/applyMask.cjs.map +1 -1
  119. package/dist/cjs/reduceDictionaryContent/reduceDictionaryContent.cjs +2 -1
  120. package/dist/cjs/reduceDictionaryContent/reduceDictionaryContent.cjs.map +1 -1
  121. package/dist/cjs/scan/calculateScore.cjs +0 -1
  122. package/dist/cjs/scan/calculateScore.cjs.map +1 -1
  123. package/dist/cjs/scan/checks.cjs +1 -1
  124. package/dist/cjs/scan/checks.cjs.map +1 -1
  125. package/dist/cjs/scan/parseHtml.cjs +0 -1
  126. package/dist/cjs/scan/parseHtml.cjs.map +1 -1
  127. package/dist/cjs/scan/scanWebsite.cjs.map +1 -1
  128. package/dist/cjs/syncPluginKit/createFileAdapter.cjs +2 -1
  129. package/dist/cjs/syncPluginKit/createFileAdapter.cjs.map +1 -1
  130. package/dist/cjs/syncPluginKit/createSyncPlugin.cjs +4 -1
  131. package/dist/cjs/syncPluginKit/createSyncPlugin.cjs.map +1 -1
  132. package/dist/cjs/syncPluginKit/extractKeyAndLocaleFromPath.cjs +0 -1
  133. package/dist/cjs/syncPluginKit/extractKeyAndLocaleFromPath.cjs.map +1 -1
  134. package/dist/cjs/syncPluginKit/filePathPatternHelpers.cjs +0 -1
  135. package/dist/cjs/syncPluginKit/filePathPatternHelpers.cjs.map +1 -1
  136. package/dist/cjs/utils/autoDecorateContent.cjs.map +1 -1
  137. package/dist/cjs/utils/babelParser.cjs.map +1 -1
  138. package/dist/cjs/utils/buildComponentFilesList.cjs.map +1 -1
  139. package/dist/cjs/utils/buildFilesList.cjs.map +1 -1
  140. package/dist/cjs/utils/chunkArray.cjs +0 -1
  141. package/dist/cjs/utils/chunkArray.cjs.map +1 -1
  142. package/dist/cjs/utils/formatter.cjs.map +1 -1
  143. package/dist/cjs/utils/getContentExtension.cjs +1 -4
  144. package/dist/cjs/utils/getContentExtension.cjs.map +1 -1
  145. package/dist/cjs/utils/getFormatFromExtension.cjs +0 -1
  146. package/dist/cjs/utils/getFormatFromExtension.cjs.map +1 -1
  147. package/dist/cjs/utils/getPathHash.cjs +0 -1
  148. package/dist/cjs/utils/getPathHash.cjs.map +1 -1
  149. package/dist/cjs/utils/mergeChunks.cjs +0 -1
  150. package/dist/cjs/utils/mergeChunks.cjs.map +1 -1
  151. package/dist/cjs/utils/pLimit.cjs +0 -1
  152. package/dist/cjs/utils/pLimit.cjs.map +1 -1
  153. package/dist/cjs/utils/readDictionariesFromDisk.cjs.map +1 -1
  154. package/dist/cjs/utils/reduceObjectFormat.cjs +0 -1
  155. package/dist/cjs/utils/reduceObjectFormat.cjs.map +1 -1
  156. package/dist/cjs/utils/resolveObjectPromises.cjs +0 -1
  157. package/dist/cjs/utils/resolveObjectPromises.cjs.map +1 -1
  158. package/dist/cjs/utils/resolveRelativePath.cjs +4 -1
  159. package/dist/cjs/utils/resolveRelativePath.cjs.map +1 -1
  160. package/dist/cjs/utils/runOnce.cjs +2 -2
  161. package/dist/cjs/utils/runOnce.cjs.map +1 -1
  162. package/dist/cjs/utils/runParallel/bin.cjs.map +1 -1
  163. package/dist/cjs/utils/runParallel/bootstrap.cjs +0 -1
  164. package/dist/cjs/utils/runParallel/bootstrap.cjs.map +1 -1
  165. package/dist/cjs/utils/runParallel/index.cjs.map +1 -1
  166. package/dist/cjs/utils/runParallel/spawnPosix.cjs.map +1 -1
  167. package/dist/cjs/utils/runParallel/spawnWin32.cjs.map +1 -1
  168. package/dist/cjs/utils/sortAlphabetically.cjs +0 -1
  169. package/dist/cjs/utils/sortAlphabetically.cjs.map +1 -1
  170. package/dist/cjs/utils/splitTextByLine.cjs +0 -1
  171. package/dist/cjs/utils/splitTextByLine.cjs.map +1 -1
  172. package/dist/cjs/utils/verifyIdenticObjectFormat.cjs +0 -1
  173. package/dist/cjs/utils/verifyIdenticObjectFormat.cjs.map +1 -1
  174. package/dist/cjs/watcher.cjs +4 -2
  175. package/dist/cjs/watcher.cjs.map +1 -1
  176. package/dist/cjs/writeConfiguration/index.cjs +2 -1
  177. package/dist/cjs/writeConfiguration/index.cjs.map +1 -1
  178. package/dist/cjs/writeContentDeclaration/detectExportedComponentName.cjs +0 -1
  179. package/dist/cjs/writeContentDeclaration/detectExportedComponentName.cjs.map +1 -1
  180. package/dist/cjs/writeContentDeclaration/processContentDeclarationContent.cjs.map +1 -1
  181. package/dist/cjs/writeContentDeclaration/transformJSFile.cjs +26 -23
  182. package/dist/cjs/writeContentDeclaration/transformJSFile.cjs.map +1 -1
  183. package/dist/cjs/writeContentDeclaration/transformJSONFile.cjs +6 -5
  184. package/dist/cjs/writeContentDeclaration/transformJSONFile.cjs.map +1 -1
  185. package/dist/cjs/writeContentDeclaration/writeContentDeclaration.cjs +9 -3
  186. package/dist/cjs/writeContentDeclaration/writeContentDeclaration.cjs.map +1 -1
  187. package/dist/cjs/writeContentDeclaration/writeJSFile.cjs +2 -1
  188. package/dist/cjs/writeContentDeclaration/writeJSFile.cjs.map +1 -1
  189. package/dist/cjs/writeContentDeclaration/writeMarkdownFile.cjs +2 -1
  190. package/dist/cjs/writeContentDeclaration/writeMarkdownFile.cjs.map +1 -1
  191. package/dist/cjs/writeContentDeclaration/writeYamlFile.cjs +4 -2
  192. package/dist/cjs/writeContentDeclaration/writeYamlFile.cjs.map +1 -1
  193. package/dist/cjs/writeFileIfChanged.cjs.map +1 -1
  194. package/dist/esm/_virtual/_utils_asset.mjs +2 -1
  195. package/dist/esm/buildIntlayerDictionary/writeDynamicDictionary.mjs +2 -1
  196. package/dist/esm/buildIntlayerDictionary/writeDynamicDictionary.mjs.map +1 -1
  197. package/dist/esm/buildIntlayerDictionary/writeMergedDictionary.mjs +2 -1
  198. package/dist/esm/buildIntlayerDictionary/writeMergedDictionary.mjs.map +1 -1
  199. package/dist/esm/buildIntlayerDictionary/writeRemoteDictionary.mjs +4 -2
  200. package/dist/esm/buildIntlayerDictionary/writeRemoteDictionary.mjs.map +1 -1
  201. package/dist/esm/cleanRemovedContentDeclaration.mjs +7 -4
  202. package/dist/esm/cleanRemovedContentDeclaration.mjs.map +1 -1
  203. package/dist/esm/cli.mjs +2 -2
  204. package/dist/esm/createDictionaryEntryPoint/createDictionaryEntryPoint.mjs +5 -3
  205. package/dist/esm/createDictionaryEntryPoint/createDictionaryEntryPoint.mjs.map +1 -1
  206. package/dist/esm/createType/createModuleAugmentation.mjs +2 -1
  207. package/dist/esm/createType/createModuleAugmentation.mjs.map +1 -1
  208. package/dist/esm/docReview/alignBlocks.mjs +1 -1
  209. package/dist/esm/docReview/alignBlocks.mjs.map +1 -1
  210. package/dist/esm/docReview/reviewReport.mjs +2 -1
  211. package/dist/esm/docReview/reviewReport.mjs.map +1 -1
  212. package/dist/esm/handleAdditionalContentDeclarationFile.mjs +4 -2
  213. package/dist/esm/handleAdditionalContentDeclarationFile.mjs.map +1 -1
  214. package/dist/esm/handleContentDeclarationFileChange.mjs +6 -2
  215. package/dist/esm/handleContentDeclarationFileChange.mjs.map +1 -1
  216. package/dist/esm/handleUnlinkedContentDeclarationFile.mjs +4 -2
  217. package/dist/esm/handleUnlinkedContentDeclarationFile.mjs.map +1 -1
  218. package/dist/esm/init/frameworkSetup/nextAppRouter/index.mjs +1 -3
  219. package/dist/esm/init/frameworkSetup/nextAppRouter/index.mjs.map +1 -1
  220. package/dist/esm/init/frameworkSetup/nextAppRouter/restructure.mjs +2 -1
  221. package/dist/esm/init/frameworkSetup/nextAppRouter/restructure.mjs.map +1 -1
  222. package/dist/esm/init/frameworkSetup/tanstackStart/index.mjs +4 -6
  223. package/dist/esm/init/frameworkSetup/tanstackStart/index.mjs.map +1 -1
  224. package/dist/esm/init/frameworkSetup/tanstackStart/restructure.mjs +2 -1
  225. package/dist/esm/init/frameworkSetup/tanstackStart/restructure.mjs.map +1 -1
  226. package/dist/esm/init/frameworkSetup/tanstackStart/templates.mjs +17 -10
  227. package/dist/esm/init/frameworkSetup/tanstackStart/templates.mjs.map +1 -1
  228. package/dist/esm/init/frameworkSetup/tanstackStart/transforms.mjs +58 -15
  229. package/dist/esm/init/frameworkSetup/tanstackStart/transforms.mjs.map +1 -1
  230. package/dist/esm/init/index.mjs +125 -46
  231. package/dist/esm/init/index.mjs.map +1 -1
  232. package/dist/esm/init/utils/configManipulation.mjs.map +1 -1
  233. package/dist/esm/init/utils/fileSystem.mjs +3 -1
  234. package/dist/esm/init/utils/fileSystem.mjs.map +1 -1
  235. package/dist/esm/init/utils/index.mjs +2 -2
  236. package/dist/esm/init/utils/packageManager.mjs +103 -8
  237. package/dist/esm/init/utils/packageManager.mjs.map +1 -1
  238. package/dist/esm/initConfig/index.mjs +12 -8
  239. package/dist/esm/initConfig/index.mjs.map +1 -1
  240. package/dist/esm/listDictionariesPath.mjs +6 -5
  241. package/dist/esm/listDictionariesPath.mjs.map +1 -1
  242. package/dist/esm/listProjects.mjs +2 -1
  243. package/dist/esm/listProjects.mjs.map +1 -1
  244. package/dist/esm/loadDictionaries/getIntlayerBundle.mjs +2 -1
  245. package/dist/esm/loadDictionaries/getIntlayerBundle.mjs.map +1 -1
  246. package/dist/esm/loadDictionaries/loadContentDeclaration.mjs +8 -5
  247. package/dist/esm/loadDictionaries/loadContentDeclaration.mjs.map +1 -1
  248. package/dist/esm/loadDictionaries/loadYamlContentDeclaration.mjs +2 -1
  249. package/dist/esm/loadDictionaries/loadYamlContentDeclaration.mjs.map +1 -1
  250. package/dist/esm/loadDictionaries/log.mjs +10 -6
  251. package/dist/esm/loadDictionaries/log.mjs.map +1 -1
  252. package/dist/esm/logConfigDetails.mjs +4 -3
  253. package/dist/esm/logConfigDetails.mjs.map +1 -1
  254. package/dist/esm/prepareIntlayer.mjs +5 -3
  255. package/dist/esm/prepareIntlayer.mjs.map +1 -1
  256. package/dist/esm/reduceDictionaryContent/reduceDictionaryContent.mjs +2 -1
  257. package/dist/esm/reduceDictionaryContent/reduceDictionaryContent.mjs.map +1 -1
  258. package/dist/esm/scan/checks.mjs +1 -1
  259. package/dist/esm/scan/checks.mjs.map +1 -1
  260. package/dist/esm/syncPluginKit/createFileAdapter.mjs +2 -1
  261. package/dist/esm/syncPluginKit/createFileAdapter.mjs.map +1 -1
  262. package/dist/esm/syncPluginKit/createSyncPlugin.mjs +4 -1
  263. package/dist/esm/syncPluginKit/createSyncPlugin.mjs.map +1 -1
  264. package/dist/esm/utils/babelParser.mjs.map +1 -1
  265. package/dist/esm/utils/getContentExtension.mjs +1 -3
  266. package/dist/esm/utils/getContentExtension.mjs.map +1 -1
  267. package/dist/esm/utils/resolveRelativePath.mjs +4 -1
  268. package/dist/esm/utils/resolveRelativePath.mjs.map +1 -1
  269. package/dist/esm/utils/runOnce.mjs +2 -2
  270. package/dist/esm/utils/runOnce.mjs.map +1 -1
  271. package/dist/esm/watcher.mjs +4 -2
  272. package/dist/esm/watcher.mjs.map +1 -1
  273. package/dist/esm/writeConfiguration/index.mjs +2 -1
  274. package/dist/esm/writeConfiguration/index.mjs.map +1 -1
  275. package/dist/esm/writeContentDeclaration/transformJSFile.mjs +26 -23
  276. package/dist/esm/writeContentDeclaration/transformJSFile.mjs.map +1 -1
  277. package/dist/esm/writeContentDeclaration/transformJSONFile.mjs +6 -5
  278. package/dist/esm/writeContentDeclaration/transformJSONFile.mjs.map +1 -1
  279. package/dist/esm/writeContentDeclaration/writeContentDeclaration.mjs +9 -3
  280. package/dist/esm/writeContentDeclaration/writeContentDeclaration.mjs.map +1 -1
  281. package/dist/esm/writeContentDeclaration/writeJSFile.mjs +2 -1
  282. package/dist/esm/writeContentDeclaration/writeJSFile.mjs.map +1 -1
  283. package/dist/esm/writeContentDeclaration/writeMarkdownFile.mjs +2 -1
  284. package/dist/esm/writeContentDeclaration/writeMarkdownFile.mjs.map +1 -1
  285. package/dist/esm/writeContentDeclaration/writeYamlFile.mjs +4 -2
  286. package/dist/esm/writeContentDeclaration/writeYamlFile.mjs.map +1 -1
  287. package/dist/types/cli.d.ts +2 -2
  288. package/dist/types/init/frameworkSetup/tanstackStart/templates.d.ts +9 -4
  289. package/dist/types/init/frameworkSetup/tanstackStart/templates.d.ts.map +1 -1
  290. package/dist/types/init/frameworkSetup/tanstackStart/transforms.d.ts +6 -2
  291. package/dist/types/init/frameworkSetup/tanstackStart/transforms.d.ts.map +1 -1
  292. package/dist/types/init/index.d.ts +2 -7
  293. package/dist/types/init/index.d.ts.map +1 -1
  294. package/dist/types/init/utils/index.d.ts +2 -2
  295. package/dist/types/init/utils/packageManager.d.ts +39 -6
  296. package/dist/types/init/utils/packageManager.d.ts.map +1 -1
  297. package/package.json +10 -10
@@ -35,17 +35,18 @@ const DocumentationRouter = {
35
35
  ViteAndSolid: "https://intlayer.org/doc/environment/vite-and-solid.md",
36
36
  ViteAndSvelte: "https://intlayer.org/doc/environment/vite-and-svelte.md",
37
37
  ViteAndPreact: "https://intlayer.org/doc/environment/vite-and-preact.md",
38
- TanStackRouter: "https://intlayer.org/doc/environment/tanstack.md",
38
+ TanStackRouter: "https://intlayer.org/doc/environment/tanstack-start.md",
39
39
  NuxtAndVue: "https://intlayer.org/doc/environment/nuxt-and-vue.md",
40
40
  Angular: "https://intlayer.org/doc/environment/angular.md",
41
41
  SvelteKit: "https://intlayer.org/doc/environment/sveltekit.md",
42
42
  ReactNativeAndExpo: "https://intlayer.org/doc/environment/react-native-and-expo.md",
43
43
  Lynx: "https://intlayer.org/doc/environment/lynx-and-react.md",
44
44
  Express: "https://intlayer.org/doc/environment/express.md",
45
- NestJS: "https://intlayer.org/doc/environment/nestjs.md",
45
+ NestJS: "https://intlayer.org/doc/environment/nest.md",
46
46
  Fastify: "https://intlayer.org/doc/environment/fastify.md",
47
47
  Default: "https://intlayer.org/doc/get-started",
48
48
  LSP: "https://intlayer.org/doc/lsp.md",
49
+ ESLint: "https://intlayer.org/doc/eslint.md",
49
50
  NextIntl: "https://intlayer.org/blog/intlayer-with-next-intl.md",
50
51
  ReactI18Next: "https://intlayer.org/blog/intlayer-with-react-i18next.md",
51
52
  ReactIntl: "https://intlayer.org/blog/intlayer-with-react-intl.md",
@@ -53,6 +54,26 @@ const DocumentationRouter = {
53
54
  VueI18n: "https://intlayer.org/blog/intlayer-with-vue-i18n.md"
54
55
  };
55
56
  /**
57
+ * The Intlayer lint setup, as `intlayer init` writes it into `.oxlintrc.json`.
58
+ *
59
+ * Declared locally on purpose: `@intlayer/engine` is installed by every Intlayer
60
+ * user, so it must not depend on a lint plugin to write a handful of strings
61
+ * into a JSON file. oxlint resolves a plugin's *rules* but not its shipped
62
+ * *configs*, so the preset cannot be referenced by name there either.
63
+ *
64
+ * Mirrors the `recommended` preset of `eslint-plugin-intlayer`; keep in sync
65
+ * when a rule is enabled by default there.
66
+ */
67
+ const LINT_PLUGIN_PACKAGE_NAME = "eslint-plugin-intlayer";
68
+ /** Intlayer's generated output — never source, never worth linting. */
69
+ const GENERATED_OUTPUT_GLOBS = ["**/.intlayer/**"];
70
+ /** Rules of the `recommended` preset, prefixed by the plugin namespace. */
71
+ const getRecommendedRules = () => ({
72
+ "intlayer/no-raw-text": "warn",
73
+ "intlayer/static-dictionary-key": "error",
74
+ "intlayer/no-dynamic-field-access": "error"
75
+ });
76
+ /**
56
77
  * Helper: Detects the environment and returns the doc URL
57
78
  */
58
79
  const getDocumentationUrl = (packageJson) => {
@@ -143,17 +164,13 @@ const initIntlayer = async (rootDir, options) => {
143
164
  ...packageJson.dependencies ?? {},
144
165
  ...packageJson.devDependencies ?? {}
145
166
  };
146
- const effectiveAllDeps = {
147
- ...allDeps,
148
- ...options?.hintDependencies ?? {}
149
- };
150
167
  const packageManager = require_init_utils_packageManager.detectPackageManager(rootDir);
151
- const linguiPresent = Boolean(effectiveAllDeps["@lingui/core"] || effectiveAllDeps["@lingui/react"] || effectiveAllDeps["@intlayer/lingui"]);
168
+ const linguiPresent = Boolean(allDeps["@lingui/core"] || allDeps["@lingui/react"] || allDeps["@intlayer/lingui"]);
152
169
  const linguiCatalog = linguiPresent ? await require_init_utils_fileSystem.detectLinguiCatalogPattern(rootDir) : null;
153
- const hintLinguiJson = Boolean(options?.hintDependencies?.["__lingui_json__"]);
154
- const { packagesToInstall, devPackagesToInstall, compatSyncConfig, compatVitePluginConfig } = require_init_utils_packageManager.detectMissingIntlayerPackages(effectiveAllDeps, { linguiCatalogFormat: linguiCatalog?.format ?? (linguiPresent ? hintLinguiJson ? "json" : "po" : null) });
170
+ const linguiCatalogFormat = linguiCatalog?.format ?? (linguiPresent ? "po" : null);
171
+ const { packagesToInstall, devPackagesToInstall, compatSyncConfig, compatVitePluginConfig } = require_init_utils_packageManager.detectMissingIntlayerPackages(allDeps, { linguiCatalogFormat });
155
172
  const wantsJsonNamespaces = options?.contentStrategy === "json-namespaces" && !compatSyncConfig;
156
- if (wantsJsonNamespaces && !effectiveAllDeps["@intlayer/sync-json-plugin"] && !devPackagesToInstall.includes("@intlayer/sync-json-plugin")) devPackagesToInstall.push("@intlayer/sync-json-plugin");
173
+ if (wantsJsonNamespaces && !allDeps["@intlayer/sync-json-plugin"] && !devPackagesToInstall.includes("@intlayer/sync-json-plugin")) devPackagesToInstall.push("@intlayer/sync-json-plugin");
157
174
  if (!options?.noInstallPackages) {
158
175
  const withVersion = (packages) => options?.upgradeToVersion ? packages.map((pkg) => `${pkg}@${options.upgradeToVersion}`) : packages;
159
176
  if (packagesToInstall.length > 0) {
@@ -194,7 +211,8 @@ const initIntlayer = async (rootDir, options) => {
194
211
  if (!options?.noGitignore && await require_init_utils_fileSystem.exists(rootDir, gitignorePath)) {
195
212
  const gitignoreContent = await require_init_utils_fileSystem.readFileFromRoot(rootDir, gitignorePath);
196
213
  if (!gitignoreContent.includes("intlayer")) {
197
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, gitignorePath, `${gitignoreContent}\n# Intlayer\n.intlayer\n`);
214
+ const newContent = `${gitignoreContent}\n# Intlayer\n.intlayer\n`;
215
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, gitignorePath, newContent);
198
216
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Added ${(0, _intlayer_config_logger.colorizePath)(".intlayer")} to ${(0, _intlayer_config_logger.colorizePath)(gitignorePath)}`);
199
217
  } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(gitignorePath)} already includes .intlayer`);
200
218
  }
@@ -220,8 +238,10 @@ const initIntlayer = async (rootDir, options) => {
220
238
  const extensionId = "intlayer.intlayer-vs-code-extension";
221
239
  if (!options?.noVscodeExtension) try {
222
240
  let extensionsConfig = { recommendations: [] };
223
- if (await require_init_utils_fileSystem.exists(rootDir, extensionsJsonPath)) extensionsConfig = require_init_utils_jsonParser.parseJSONWithComments(await require_init_utils_fileSystem.readFileFromRoot(rootDir, extensionsJsonPath));
224
- else await require_init_utils_fileSystem.ensureDirectory(rootDir, vscodeDir);
241
+ if (await require_init_utils_fileSystem.exists(rootDir, extensionsJsonPath)) {
242
+ const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, extensionsJsonPath);
243
+ extensionsConfig = require_init_utils_jsonParser.parseJSONWithComments(content);
244
+ } else await require_init_utils_fileSystem.ensureDirectory(rootDir, vscodeDir);
225
245
  if (!extensionsConfig.recommendations) extensionsConfig.recommendations = [];
226
246
  if (!extensionsConfig.recommendations.includes(extensionId)) {
227
247
  extensionsConfig.recommendations.push(extensionId);
@@ -234,8 +254,10 @@ const initIntlayer = async (rootDir, options) => {
234
254
  const settingsJsonPath = (0, node_path.join)(vscodeDir, "settings.json");
235
255
  if (!options?.noLsp) try {
236
256
  let settingsConfig = {};
237
- if (await require_init_utils_fileSystem.exists(rootDir, settingsJsonPath)) settingsConfig = require_init_utils_jsonParser.parseJSONWithComments(await require_init_utils_fileSystem.readFileFromRoot(rootDir, settingsJsonPath));
238
- else await require_init_utils_fileSystem.ensureDirectory(rootDir, vscodeDir);
257
+ if (await require_init_utils_fileSystem.exists(rootDir, settingsJsonPath)) {
258
+ const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, settingsJsonPath);
259
+ settingsConfig = require_init_utils_jsonParser.parseJSONWithComments(content);
260
+ } else await require_init_utils_fileSystem.ensureDirectory(rootDir, vscodeDir);
239
261
  let settingsUpdated = false;
240
262
  if (!settingsConfig["intlayer.languageServer.command"]) {
241
263
  settingsConfig["intlayer.languageServer.command"] = "npx";
@@ -252,12 +274,48 @@ const initIntlayer = async (rootDir, options) => {
252
274
  } catch {
253
275
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.x} Could not update ${(0, _intlayer_config_logger.colorizePath)(settingsJsonPath)}. You may need to add the LSP settings manually.`, { level: "warn" });
254
276
  }
277
+ if (!options?.noEslint && require_init_utils_packageManager.hasLintTooling(allDeps)) {
278
+ const oxlintConfigPath = ".oxlintrc.json";
279
+ if (await require_init_utils_fileSystem.exists(rootDir, oxlintConfigPath)) try {
280
+ const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, oxlintConfigPath);
281
+ const oxlintConfig = require_init_utils_jsonParser.parseJSONWithComments(content);
282
+ oxlintConfig.jsPlugins ??= [];
283
+ oxlintConfig.rules ??= {};
284
+ oxlintConfig.ignorePatterns ??= [];
285
+ let oxlintUpdated = false;
286
+ for (const glob of GENERATED_OUTPUT_GLOBS) if (!oxlintConfig.ignorePatterns.includes(glob)) {
287
+ oxlintConfig.ignorePatterns.push(glob);
288
+ oxlintUpdated = true;
289
+ }
290
+ if (!oxlintConfig.jsPlugins.includes(LINT_PLUGIN_PACKAGE_NAME)) {
291
+ oxlintConfig.jsPlugins.push(LINT_PLUGIN_PACKAGE_NAME);
292
+ oxlintUpdated = true;
293
+ }
294
+ for (const [ruleName, severity] of Object.entries(getRecommendedRules())) if (!oxlintConfig.rules[ruleName]) {
295
+ oxlintConfig.rules[ruleName] = severity;
296
+ oxlintUpdated = true;
297
+ }
298
+ if (oxlintUpdated) {
299
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, oxlintConfigPath, JSON.stringify(oxlintConfig, null, 2));
300
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Added the Intlayer lint rules to ${(0, _intlayer_config_logger.colorizePath)(oxlintConfigPath)}`);
301
+ } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(oxlintConfigPath)} already includes the Intlayer lint rules`);
302
+ } catch {
303
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.x} Could not update ${(0, _intlayer_config_logger.colorizePath)(oxlintConfigPath)}. You may need to add ${(0, _intlayer_config_logger.colorize)(LINT_PLUGIN_PACKAGE_NAME, _intlayer_config_colors.MAGENTA)} manually.`, { level: "warn" });
304
+ }
305
+ else (0, _intlayer_config_logger.logger)([
306
+ (0, _intlayer_config_logger.colorize)("Intlayer lint rules →", _intlayer_config_colors.MAGENTA),
307
+ (0, _intlayer_config_logger.colorize)(`Add ${LINT_PLUGIN_PACKAGE_NAME} to your ESLint flat config to catch hardcoded text and dynamic calls the compiler cannot optimize:`, _intlayer_config_colors.GREY_LIGHT),
308
+ (0, _intlayer_config_logger.colorize)(` import intlayer from '${LINT_PLUGIN_PACKAGE_NAME}';\n export default [...intlayer.configs.recommended];`, _intlayer_config_colors.GREY_LIGHT),
309
+ (0, _intlayer_config_logger.colorizePath)(DocumentationRouter.ESLint)
310
+ ]);
311
+ }
255
312
  const tsConfigFiles = await require_init_utils_tsConfig.findTsConfigFiles(rootDir);
256
313
  let hasTsConfig = false;
257
314
  for (const fileName of tsConfigFiles) if (await require_init_utils_fileSystem.exists(rootDir, fileName)) {
258
315
  hasTsConfig = true;
259
316
  try {
260
- const config = require_init_utils_jsonParser.parseJSONWithComments(await require_init_utils_fileSystem.readFileFromRoot(rootDir, fileName));
317
+ const fileContent = await require_init_utils_fileSystem.readFileFromRoot(rootDir, fileName);
318
+ const config = require_init_utils_jsonParser.parseJSONWithComments(fileContent);
261
319
  const typeDefinition = "./.intlayer/**/*.ts";
262
320
  let updated = false;
263
321
  if (!config.include) {} else if (Array.isArray(config.include) && !config.include.some((pattern) => pattern.includes(".intlayer"))) {
@@ -301,7 +359,9 @@ const initIntlayer = async (rootDir, options) => {
301
359
  ]) if (await require_init_utils_fileSystem.exists(rootDir, configFile)) {
302
360
  const configContent = await require_init_utils_fileSystem.readFileFromRoot(rootDir, configFile);
303
361
  if (!configContent.includes(syncPluginPackage)) {
304
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, configFile, require_init_utils_configManipulation.updateIntlayerConfigWithSyncPlugin(configContent, configFile.split(".").pop(), resolvedSyncConfig));
362
+ const extension = configFile.split(".").pop();
363
+ const updatedConfigContent = require_init_utils_configManipulation.updateIntlayerConfigWithSyncPlugin(configContent, extension, resolvedSyncConfig);
364
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, configFile, updatedConfigContent);
305
365
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(configFile)} with ${syncPluginName} compat plugin`);
306
366
  } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(configFile)} already includes ${syncPluginName} plugin`);
307
367
  break;
@@ -321,15 +381,18 @@ const initIntlayer = async (rootDir, options) => {
321
381
  const { replacesVitePlugin } = compatVitePluginConfig;
322
382
  if (content.includes(compatVitePluginConfig.pluginPackageSource)) (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes ${compatVitePluginConfig.pluginPackageSource}`);
323
383
  else if (replacesVitePlugin && content.includes(replacesVitePlugin.fromPackageSource)) {
324
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.replaceViteConfigPluginImportSource(content, replacesVitePlugin.importName, replacesVitePlugin.fromPackageSource, compatVitePluginConfig.pluginPackageSource));
384
+ const updatedContent = require_init_utils_configManipulation.replaceViteConfigPluginImportSource(content, replacesVitePlugin.importName, replacesVitePlugin.fromPackageSource, compatVitePluginConfig.pluginPackageSource);
385
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
325
386
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to import ${replacesVitePlugin.importName} from ${compatVitePluginConfig.pluginPackageSource}`);
326
387
  } else {
327
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateViteConfigForCompatPlugin(content, extension, compatVitePluginConfig));
388
+ const updatedContent = require_init_utils_configManipulation.updateViteConfigForCompatPlugin(content, extension, compatVitePluginConfig);
389
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
328
390
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include ${compatVitePluginConfig.pluginFunctionName} compat plugin`);
329
391
  }
330
392
  } else if (require_init_utils_configManipulation.hasIntlayerVitePlugin(content)) (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes an Intlayer plugin`);
331
393
  else {
332
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateViteConfig(content, extension));
394
+ const updatedContent = require_init_utils_configManipulation.updateViteConfig(content, extension);
395
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
333
396
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer plugin`);
334
397
  }
335
398
  break;
@@ -345,20 +408,27 @@ const initIntlayer = async (rootDir, options) => {
345
408
  hasAliasConfiguration = true;
346
409
  const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, file);
347
410
  const extension = file.split(".").pop();
348
- if (allDeps["next-i18next"]) if (!content.includes("@intlayer/next-i18next")) {
349
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNextConfigForNextI18next(content, extension));
350
- (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-i18next compat plugin`);
351
- } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-i18next`);
352
- else if (allDeps["next-intl"]) if (!content.includes("@intlayer/next-intl/plugin")) {
353
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNextConfigForNextIntl(content, extension));
354
- (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-intl compat plugin`);
355
- } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-intl/plugin`);
356
- else if (allDeps["next-translate"]) if (!content.includes("@intlayer/next-translate")) {
357
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNextConfigForNextTranslate(content, extension));
358
- (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-translate compat plugin`);
359
- } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-translate`);
360
- else if (!content.includes("next-intlayer")) {
361
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNextConfig(content, extension));
411
+ if (allDeps["next-i18next"]) {
412
+ if (!content.includes("@intlayer/next-i18next")) {
413
+ const updatedContent = require_init_utils_configManipulation.updateNextConfigForNextI18next(content, extension);
414
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
415
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-i18next compat plugin`);
416
+ } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-i18next`);
417
+ } else if (allDeps["next-intl"]) {
418
+ if (!content.includes("@intlayer/next-intl/plugin")) {
419
+ const updatedContent = require_init_utils_configManipulation.updateNextConfigForNextIntl(content, extension);
420
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
421
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-intl compat plugin`);
422
+ } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-intl/plugin`);
423
+ } else if (allDeps["next-translate"]) {
424
+ if (!content.includes("@intlayer/next-translate")) {
425
+ const updatedContent = require_init_utils_configManipulation.updateNextConfigForNextTranslate(content, extension);
426
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
427
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer next-translate compat plugin`);
428
+ } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/next-translate`);
429
+ } else if (!content.includes("next-intlayer")) {
430
+ const updatedContent = require_init_utils_configManipulation.updateNextConfig(content, extension);
431
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
362
432
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer plugin`);
363
433
  }
364
434
  break;
@@ -379,7 +449,9 @@ const initIntlayer = async (rootDir, options) => {
379
449
  if (file.startsWith("astro.config.")) {
380
450
  const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, file);
381
451
  if (!content.includes("astro-intlayer")) {
382
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateAstroConfig(content, file.split(".").pop()));
452
+ const extension = file.split(".").pop();
453
+ const updatedContent = require_init_utils_configManipulation.updateAstroConfig(content, extension);
454
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
383
455
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer integration`);
384
456
  }
385
457
  }
@@ -388,12 +460,15 @@ const initIntlayer = async (rootDir, options) => {
388
460
  for (const file of ["nuxt.config.js", "nuxt.config.ts"]) if (await require_init_utils_fileSystem.exists(rootDir, file)) {
389
461
  hasAliasConfiguration = true;
390
462
  const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, file);
391
- if (allDeps["@nuxtjs/i18n"]) if (!content.includes("@intlayer/nuxtjs-i18n")) {
392
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNuxtConfigForNuxtjsI18n(content));
393
- (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include @intlayer/nuxtjs-i18n module`);
394
- } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/nuxtjs-i18n`);
395
- else if (!content.includes("nuxt-intlayer")) {
396
- await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, require_init_utils_configManipulation.updateNuxtConfig(content));
463
+ if (allDeps["@nuxtjs/i18n"]) {
464
+ if (!content.includes("@intlayer/nuxtjs-i18n")) {
465
+ const updatedContent = require_init_utils_configManipulation.updateNuxtConfigForNuxtjsI18n(content);
466
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
467
+ (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include @intlayer/nuxtjs-i18n module`);
468
+ } else (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(file)} already includes @intlayer/nuxtjs-i18n`);
469
+ } else if (!content.includes("nuxt-intlayer")) {
470
+ const updatedContent = require_init_utils_configManipulation.updateNuxtConfig(content);
471
+ await require_init_utils_fileSystem.writeFileToRoot(rootDir, file, updatedContent);
397
472
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(file)} to include Intlayer module`);
398
473
  }
399
474
  break;
@@ -415,7 +490,8 @@ const initIntlayer = async (rootDir, options) => {
415
490
  const content = await require_init_utils_fileSystem.readFileFromRoot(rootDir, metroConfigFile);
416
491
  if (content.includes("react-native-intlayer")) (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} ${(0, _intlayer_config_logger.colorizePath)(metroConfigFile)} already includes the Intlayer Metro plugin`);
417
492
  else {
418
- const updatedContent = require_init_utils_configManipulation.updateMetroConfig(content, metroConfigFile.split(".").pop());
493
+ const extension = metroConfigFile.split(".").pop();
494
+ const updatedContent = require_init_utils_configManipulation.updateMetroConfig(content, extension);
419
495
  if (updatedContent !== content) {
420
496
  await require_init_utils_fileSystem.writeFileToRoot(rootDir, metroConfigFile, updatedContent);
421
497
  (0, _intlayer_config_logger.logger)(`${_intlayer_config_logger.v} Updated ${(0, _intlayer_config_logger.colorizePath)(metroConfigFile)} to include the Intlayer Metro plugin`);
@@ -459,11 +535,13 @@ const initIntlayer = async (rootDir, options) => {
459
535
  ...backendIntlayerPackages
460
536
  ].some((pkg) => allDeps[pkg])) hasAliasConfiguration = true;
461
537
  if (!hasAliasConfiguration) {
462
- const aliases = (0, _intlayer_config_utils.getAlias)({ configuration: (0, _intlayer_config_node.getConfiguration)({ baseDir: rootDir }) });
538
+ const configuration = (0, _intlayer_config_node.getConfiguration)({ baseDir: rootDir });
539
+ const aliases = (0, _intlayer_config_utils.getAlias)({ configuration });
463
540
  if (hasTsConfig && tsConfigFiles.length > 0) {
464
541
  const tsConfigPath = tsConfigFiles.find((file) => file === "tsconfig.json") || tsConfigFiles[0];
465
542
  if (tsConfigPath) {
466
- const config = require_init_utils_jsonParser.parseJSONWithComments(await require_init_utils_fileSystem.readFileFromRoot(rootDir, tsConfigPath));
543
+ const tsConfigContent = await require_init_utils_fileSystem.readFileFromRoot(rootDir, tsConfigPath);
544
+ const config = require_init_utils_jsonParser.parseJSONWithComments(tsConfigContent);
467
545
  config.compilerOptions ??= {};
468
546
  config.compilerOptions.paths ??= {};
469
547
  let updated = false;
@@ -481,7 +559,8 @@ const initIntlayer = async (rootDir, options) => {
481
559
  } else {
482
560
  const jsConfigPath = "jsconfig.json";
483
561
  if (await require_init_utils_fileSystem.exists(rootDir, jsConfigPath)) {
484
- const config = require_init_utils_jsonParser.parseJSONWithComments(await require_init_utils_fileSystem.readFileFromRoot(rootDir, jsConfigPath));
562
+ const jsConfigContent = await require_init_utils_fileSystem.readFileFromRoot(rootDir, jsConfigPath);
563
+ const config = require_init_utils_jsonParser.parseJSONWithComments(jsConfigContent);
485
564
  config.compilerOptions ??= {};
486
565
  config.compilerOptions.paths ??= {};
487
566
  let updated = false;