gt 2.14.35 → 2.14.36

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 (429) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/dist/api/collectUserEditDiffs.js +112 -155
  3. package/dist/api/collectUserEditDiffs.js.map +1 -0
  4. package/dist/api/downloadFileBatch.js +164 -241
  5. package/dist/api/downloadFileBatch.js.map +1 -0
  6. package/dist/api/saveLocalEdits.js +37 -41
  7. package/dist/api/saveLocalEdits.js.map +1 -0
  8. package/dist/bin/bin-entry.js +17 -7
  9. package/dist/bin/bin-entry.js.map +1 -0
  10. package/dist/bin/bin-main.js +43 -61
  11. package/dist/bin/bin-main.js.map +1 -0
  12. package/dist/cli/base.js +382 -497
  13. package/dist/cli/base.js.map +1 -0
  14. package/dist/cli/commands/download.js +41 -49
  15. package/dist/cli/commands/download.js.map +1 -0
  16. package/dist/cli/commands/enqueue.js +26 -25
  17. package/dist/cli/commands/enqueue.js.map +1 -0
  18. package/dist/cli/commands/setupProject.js +33 -36
  19. package/dist/cli/commands/setupProject.js.map +1 -0
  20. package/dist/cli/commands/stage.js +53 -61
  21. package/dist/cli/commands/stage.js.map +1 -0
  22. package/dist/cli/commands/translate.js +75 -112
  23. package/dist/cli/commands/translate.js.map +1 -0
  24. package/dist/cli/commands/upload.js +185 -213
  25. package/dist/cli/commands/upload.js.map +1 -0
  26. package/dist/cli/commands/utils/validation.js +39 -34
  27. package/dist/cli/commands/utils/validation.js.map +1 -0
  28. package/dist/cli/flags.js +35 -62
  29. package/dist/cli/flags.js.map +1 -0
  30. package/dist/cli/inline.js +112 -137
  31. package/dist/cli/inline.js.map +1 -0
  32. package/dist/cli/next.js +17 -12
  33. package/dist/cli/next.js.map +1 -0
  34. package/dist/cli/node.js +19 -15
  35. package/dist/cli/node.js.map +1 -0
  36. package/dist/cli/python.js +13 -8
  37. package/dist/cli/python.js.map +1 -0
  38. package/dist/cli/react.js +61 -78
  39. package/dist/cli/react.js.map +1 -0
  40. package/dist/config/defaults.js +16 -11
  41. package/dist/config/defaults.js.map +1 -0
  42. package/dist/config/generateSettings.js +167 -269
  43. package/dist/config/generateSettings.js.map +1 -0
  44. package/dist/config/optionPresets.js +78 -96
  45. package/dist/config/optionPresets.js.map +1 -0
  46. package/dist/config/resolveConfig.js +27 -32
  47. package/dist/config/resolveConfig.js.map +1 -0
  48. package/dist/config/utils.js +7 -3
  49. package/dist/config/utils.js.map +1 -0
  50. package/dist/config/validateSettings.js +19 -30
  51. package/dist/config/validateSettings.js.map +1 -0
  52. package/dist/console/colors.js +18 -13
  53. package/dist/console/colors.js.map +1 -0
  54. package/dist/console/displayTranslateSummary.js +40 -37
  55. package/dist/console/displayTranslateSummary.js.map +1 -0
  56. package/dist/console/formatting.js +8 -5
  57. package/dist/console/formatting.js.map +1 -0
  58. package/dist/console/index.d.ts +11 -9
  59. package/dist/console/index.js +53 -50
  60. package/dist/console/index.js.map +1 -0
  61. package/dist/console/inkFields.d.ts +23 -0
  62. package/dist/console/inkFields.js +87 -0
  63. package/dist/console/inkFields.js.map +1 -0
  64. package/dist/console/inkLayout.d.ts +7 -0
  65. package/dist/console/inkLayout.js +139 -0
  66. package/dist/console/inkLayout.js.map +1 -0
  67. package/dist/console/inkLocaleData.d.ts +4 -0
  68. package/dist/console/inkLocaleData.js +32 -0
  69. package/dist/console/inkLocaleData.js.map +1 -0
  70. package/dist/console/inkPrompts.d.ts +8 -0
  71. package/dist/console/inkPrompts.js +496 -0
  72. package/dist/console/inkPrompts.js.map +1 -0
  73. package/dist/console/inkSession.d.ts +3 -0
  74. package/dist/console/inkSession.js +42 -0
  75. package/dist/console/inkSession.js.map +1 -0
  76. package/dist/console/inkTerminal.d.ts +4 -0
  77. package/dist/console/inkTerminal.js +15 -0
  78. package/dist/console/inkTerminal.js.map +1 -0
  79. package/dist/console/inkTypes.d.ts +66 -0
  80. package/dist/console/inkTypes.js +1 -0
  81. package/dist/console/inkUtils.d.ts +24 -0
  82. package/dist/console/inkUtils.js +87 -0
  83. package/dist/console/inkUtils.js.map +1 -0
  84. package/dist/console/logger.js +209 -249
  85. package/dist/console/logger.js.map +1 -0
  86. package/dist/console/logging.d.ts +14 -0
  87. package/dist/console/logging.js +203 -162
  88. package/dist/console/logging.js.map +1 -0
  89. package/dist/console/promptParsing.d.ts +5 -0
  90. package/dist/console/promptParsing.js +28 -0
  91. package/dist/console/promptParsing.js.map +1 -0
  92. package/dist/console/terminalSession.d.ts +5 -0
  93. package/dist/console/terminalSession.js +38 -0
  94. package/dist/console/terminalSession.js.map +1 -0
  95. package/dist/extraction/index.js +3 -2
  96. package/dist/extraction/mapToUpdates.js +19 -18
  97. package/dist/extraction/mapToUpdates.js.map +1 -0
  98. package/dist/extraction/postProcess.js +68 -86
  99. package/dist/extraction/postProcess.js.map +1 -0
  100. package/dist/formats/files/aggregateFiles.js +223 -304
  101. package/dist/formats/files/aggregateFiles.js.map +1 -0
  102. package/dist/formats/files/collectFiles.js +53 -54
  103. package/dist/formats/files/collectFiles.js.map +1 -0
  104. package/dist/formats/files/convertToFileTranslationData.js +21 -19
  105. package/dist/formats/files/convertToFileTranslationData.js.map +1 -0
  106. package/dist/formats/files/fileMapping.js +82 -119
  107. package/dist/formats/files/fileMapping.js.map +1 -0
  108. package/dist/formats/files/preprocess/mdx.js +15 -12
  109. package/dist/formats/files/preprocess/mdx.js.map +1 -0
  110. package/dist/formats/files/preprocess/mintlify.js +15 -13
  111. package/dist/formats/files/preprocess/mintlify.js.map +1 -0
  112. package/dist/formats/files/preprocessContent.js +20 -21
  113. package/dist/formats/files/preprocessContent.js.map +1 -0
  114. package/dist/formats/files/save.js +18 -15
  115. package/dist/formats/files/save.js.map +1 -0
  116. package/dist/formats/files/supportedFiles.js +27 -22
  117. package/dist/formats/files/supportedFiles.js.map +1 -0
  118. package/dist/formats/files/transformFormat.js +93 -100
  119. package/dist/formats/files/transformFormat.js.map +1 -0
  120. package/dist/formats/json/extractJson.js +83 -110
  121. package/dist/formats/json/extractJson.js.map +1 -0
  122. package/dist/formats/json/flattenJson.js +41 -48
  123. package/dist/formats/json/flattenJson.js.map +1 -0
  124. package/dist/formats/json/jsonPath.js +20 -15
  125. package/dist/formats/json/jsonPath.js.map +1 -0
  126. package/dist/formats/json/jsonPointer.js +17 -17
  127. package/dist/formats/json/jsonPointer.js.map +1 -0
  128. package/dist/formats/json/mergeJson.js +230 -371
  129. package/dist/formats/json/mergeJson.js.map +1 -0
  130. package/dist/formats/json/parseJson.js +74 -111
  131. package/dist/formats/json/parseJson.js.map +1 -0
  132. package/dist/formats/json/transformJson.js +53 -61
  133. package/dist/formats/json/transformJson.js.map +1 -0
  134. package/dist/formats/json/utils.js +158 -187
  135. package/dist/formats/json/utils.js.map +1 -0
  136. package/dist/formats/parseKeyedMetadata.js +85 -106
  137. package/dist/formats/parseKeyedMetadata.js.map +1 -0
  138. package/dist/formats/utils.js +13 -23
  139. package/dist/formats/utils.js.map +1 -0
  140. package/dist/formats/yaml/extractYaml.js +32 -31
  141. package/dist/formats/yaml/extractYaml.js.map +1 -0
  142. package/dist/formats/yaml/mergeYaml.js +43 -60
  143. package/dist/formats/yaml/mergeYaml.js.map +1 -0
  144. package/dist/formats/yaml/parseYaml.js +34 -23
  145. package/dist/formats/yaml/parseYaml.js.map +1 -0
  146. package/dist/formats/yaml/utils.js +19 -21
  147. package/dist/formats/yaml/utils.js.map +1 -0
  148. package/dist/fs/clearLocaleDirs.js +82 -114
  149. package/dist/fs/clearLocaleDirs.js.map +1 -0
  150. package/dist/fs/config/downloadedVersions.js +174 -188
  151. package/dist/fs/config/downloadedVersions.js.map +1 -0
  152. package/dist/fs/config/loadConfig.js +12 -8
  153. package/dist/fs/config/loadConfig.js.map +1 -0
  154. package/dist/fs/config/parseFilesConfig.js +166 -227
  155. package/dist/fs/config/parseFilesConfig.js.map +1 -0
  156. package/dist/fs/config/setupConfig.js +43 -52
  157. package/dist/fs/config/setupConfig.js.map +1 -0
  158. package/dist/fs/config/updateConfig.js +44 -56
  159. package/dist/fs/config/updateConfig.js.map +1 -0
  160. package/dist/fs/config/updateVersions.js +27 -28
  161. package/dist/fs/config/updateVersions.js.map +1 -0
  162. package/dist/fs/copyFile.js +33 -37
  163. package/dist/fs/copyFile.js.map +1 -0
  164. package/dist/fs/createLoadTranslationsFile.js +32 -48
  165. package/dist/fs/createLoadTranslationsFile.js.map +1 -0
  166. package/dist/fs/determineFramework/detectPythonLibrary.js +30 -34
  167. package/dist/fs/determineFramework/detectPythonLibrary.js.map +1 -0
  168. package/dist/fs/determineFramework/index.js +46 -64
  169. package/dist/fs/determineFramework/index.js.map +1 -0
  170. package/dist/fs/determineFramework/matchPyprojectDependency.js +65 -78
  171. package/dist/fs/determineFramework/matchPyprojectDependency.js.map +1 -0
  172. package/dist/fs/determineFramework/matchRequirementsTxtDependency.js +21 -19
  173. package/dist/fs/determineFramework/matchRequirementsTxtDependency.js.map +1 -0
  174. package/dist/fs/determineFramework/matchSetupPyDependency.js +60 -81
  175. package/dist/fs/determineFramework/matchSetupPyDependency.js.map +1 -0
  176. package/dist/fs/determineFramework/resolveGtDependency.js +15 -15
  177. package/dist/fs/determineFramework/resolveGtDependency.js.map +1 -0
  178. package/dist/fs/findFilepath.js +63 -78
  179. package/dist/fs/findFilepath.js.map +1 -0
  180. package/dist/fs/loadJSON.js +18 -15
  181. package/dist/fs/loadJSON.js.map +1 -0
  182. package/dist/fs/matchFiles.js +12 -7
  183. package/dist/fs/matchFiles.js.map +1 -0
  184. package/dist/fs/saveJSON.js +10 -6
  185. package/dist/fs/saveJSON.js.map +1 -0
  186. package/dist/fs/utils.js +19 -15
  187. package/dist/fs/utils.js.map +1 -0
  188. package/dist/functions.d.ts +2 -1
  189. package/dist/functions.js +3 -6
  190. package/dist/generated/version.d.ts +1 -1
  191. package/dist/generated/version.js +6 -2
  192. package/dist/generated/version.js.map +1 -0
  193. package/dist/git/branches.js +77 -83
  194. package/dist/git/branches.js.map +1 -0
  195. package/dist/hooks/postProcess.js +97 -114
  196. package/dist/hooks/postProcess.js.map +1 -0
  197. package/dist/index.js +23 -31
  198. package/dist/index.js.map +1 -0
  199. package/dist/locadex/setupFlow.js +11 -8
  200. package/dist/locadex/setupFlow.js.map +1 -0
  201. package/dist/main.js +17 -7
  202. package/dist/main.js.map +1 -0
  203. package/dist/next/config/parseNextConfig.js +32 -51
  204. package/dist/next/config/parseNextConfig.js.map +1 -0
  205. package/dist/next/jsx/utils.js +25 -37
  206. package/dist/next/jsx/utils.js.map +1 -0
  207. package/dist/next/parse/handleInitGT.js +87 -154
  208. package/dist/next/parse/handleInitGT.js.map +1 -0
  209. package/dist/next/parse/wrapContent.js +136 -158
  210. package/dist/next/parse/wrapContent.js.map +1 -0
  211. package/dist/python/parse/createPythonInlineUpdates.js +36 -33
  212. package/dist/python/parse/createPythonInlineUpdates.js.map +1 -0
  213. package/dist/react/config/createESBuildConfig.js +115 -115
  214. package/dist/react/config/createESBuildConfig.js.map +1 -0
  215. package/dist/react/jsx/evaluateJsx.js +90 -124
  216. package/dist/react/jsx/evaluateJsx.js.map +1 -0
  217. package/dist/react/jsx/utils/buildImportMap.js +24 -28
  218. package/dist/react/jsx/utils/buildImportMap.js.map +1 -0
  219. package/dist/react/jsx/utils/constants.js +79 -87
  220. package/dist/react/jsx/utils/constants.js.map +1 -0
  221. package/dist/react/jsx/utils/extractSourceCode.js +36 -37
  222. package/dist/react/jsx/utils/extractSourceCode.js.map +1 -0
  223. package/dist/react/jsx/utils/getCalleeNameFromExpression.js +30 -30
  224. package/dist/react/jsx/utils/getCalleeNameFromExpression.js.map +1 -0
  225. package/dist/react/jsx/utils/getPathsAndAliases.js +70 -105
  226. package/dist/react/jsx/utils/getPathsAndAliases.js.map +1 -0
  227. package/dist/react/jsx/utils/isNumberLiteral.js +13 -11
  228. package/dist/react/jsx/utils/isNumberLiteral.js.map +1 -0
  229. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.js +103 -148
  230. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.js.map +1 -0
  231. package/dist/react/jsx/utils/jsxParsing/autoInsertion.js +305 -389
  232. package/dist/react/jsx/utils/jsxParsing/autoInsertion.js.map +1 -0
  233. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.js +122 -193
  234. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.js.map +1 -0
  235. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.js +50 -64
  236. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.js.map +1 -0
  237. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.js +41 -68
  238. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.js.map +1 -0
  239. package/dist/react/jsx/utils/jsxParsing/parseJsx.js +760 -1107
  240. package/dist/react/jsx/utils/jsxParsing/parseJsx.js.map +1 -0
  241. package/dist/react/jsx/utils/jsxParsing/parseTProps.js +35 -71
  242. package/dist/react/jsx/utils/jsxParsing/parseTProps.js.map +1 -0
  243. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.js +39 -58
  244. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.js.map +1 -0
  245. package/dist/react/jsx/utils/jsxParsing/types.js +10 -24
  246. package/dist/react/jsx/utils/jsxParsing/types.js.map +1 -0
  247. package/dist/react/jsx/utils/mapAttributeName.js +13 -13
  248. package/dist/react/jsx/utils/mapAttributeName.js.map +1 -0
  249. package/dist/react/jsx/utils/parseAst.js +142 -272
  250. package/dist/react/jsx/utils/parseAst.js.map +1 -0
  251. package/dist/react/jsx/utils/parseString.js +726 -1090
  252. package/dist/react/jsx/utils/parseString.js.map +1 -0
  253. package/dist/react/jsx/utils/parseStringFunction.js +274 -401
  254. package/dist/react/jsx/utils/parseStringFunction.js.map +1 -0
  255. package/dist/react/jsx/utils/resolveImportPath.js +104 -108
  256. package/dist/react/jsx/utils/resolveImportPath.js.map +1 -0
  257. package/dist/react/jsx/utils/stringParsing/derivation/containsDeriveCall.js +18 -24
  258. package/dist/react/jsx/utils/stringParsing/derivation/containsDeriveCall.js.map +1 -0
  259. package/dist/react/jsx/utils/stringParsing/derivation/handleDerivation.js +412 -579
  260. package/dist/react/jsx/utils/stringParsing/derivation/handleDerivation.js.map +1 -0
  261. package/dist/react/jsx/utils/stringParsing/derivation/index.js +57 -67
  262. package/dist/react/jsx/utils/stringParsing/derivation/index.js.map +1 -0
  263. package/dist/react/jsx/utils/stringParsing/derivation/isDeriveCall.js +26 -36
  264. package/dist/react/jsx/utils/stringParsing/derivation/isDeriveCall.js.map +1 -0
  265. package/dist/react/jsx/utils/stringParsing/processTaggedTemplateCall/handleTaggedTemplateTranslationCall.js +29 -24
  266. package/dist/react/jsx/utils/stringParsing/processTaggedTemplateCall/handleTaggedTemplateTranslationCall.js.map +1 -0
  267. package/dist/react/jsx/utils/stringParsing/processTaggedTemplateCall/index.js +34 -32
  268. package/dist/react/jsx/utils/stringParsing/processTaggedTemplateCall/index.js.map +1 -0
  269. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.js +80 -117
  270. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.js.map +1 -0
  271. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleDeriveTranslationCall.js +24 -19
  272. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleDeriveTranslationCall.js.map +1 -0
  273. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.js +18 -21
  274. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.js.map +1 -0
  275. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.js +45 -50
  276. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.js.map +1 -0
  277. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.js +54 -59
  278. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.js.map +1 -0
  279. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.js +56 -69
  280. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.js.map +1 -0
  281. package/dist/react/jsx/utils/validateStringFunction.js +21 -29
  282. package/dist/react/jsx/utils/validateStringFunction.js.map +1 -0
  283. package/dist/react/jsx/wrapJsx.js +192 -375
  284. package/dist/react/jsx/wrapJsx.js.map +1 -0
  285. package/dist/react/parse/addVitePlugin/index.js +40 -34
  286. package/dist/react/parse/addVitePlugin/index.js.map +1 -0
  287. package/dist/react/parse/addVitePlugin/installCompiler.js +18 -20
  288. package/dist/react/parse/addVitePlugin/installCompiler.js.map +1 -0
  289. package/dist/react/parse/addVitePlugin/updateViteConfig.js +107 -111
  290. package/dist/react/parse/addVitePlugin/updateViteConfig.js.map +1 -0
  291. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.js +23 -26
  292. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.js.map +1 -0
  293. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.js +29 -43
  294. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.js.map +1 -0
  295. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.js +70 -104
  296. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.js.map +1 -0
  297. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.js +23 -29
  298. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.js.map +1 -0
  299. package/dist/react/parse/createDictionaryUpdates.js +121 -185
  300. package/dist/react/parse/createDictionaryUpdates.js.map +1 -0
  301. package/dist/react/parse/createInlineUpdates.js +123 -139
  302. package/dist/react/parse/createInlineUpdates.js.map +1 -0
  303. package/dist/react/parse/wrapContent.js +131 -156
  304. package/dist/react/parse/wrapContent.js.map +1 -0
  305. package/dist/react/utils/flattenDictionary.js +55 -70
  306. package/dist/react/utils/flattenDictionary.js.map +1 -0
  307. package/dist/react/utils/getEntryAndMetadata.js +14 -10
  308. package/dist/react/utils/getEntryAndMetadata.js.map +1 -0
  309. package/dist/react/utils/getVariableName.js +36 -33
  310. package/dist/react/utils/getVariableName.js.map +1 -0
  311. package/dist/setup/detectFramework.js +85 -102
  312. package/dist/setup/detectFramework.js.map +1 -0
  313. package/dist/setup/frameworkUtils.js +17 -28
  314. package/dist/setup/frameworkUtils.js.map +1 -0
  315. package/dist/setup/userInput.js +24 -31
  316. package/dist/setup/userInput.js.map +1 -0
  317. package/dist/setup/wizard.js +141 -143
  318. package/dist/setup/wizard.js.map +1 -0
  319. package/dist/state/mintlifyRefMap.js +12 -9
  320. package/dist/state/mintlifyRefMap.js.map +1 -0
  321. package/dist/state/recentDownloads.js +26 -23
  322. package/dist/state/recentDownloads.js.map +1 -0
  323. package/dist/state/translateWarnings.js +17 -8
  324. package/dist/state/translateWarnings.js.map +1 -0
  325. package/dist/translation/parse.js +77 -98
  326. package/dist/translation/parse.js.map +1 -0
  327. package/dist/translation/stage.js +28 -43
  328. package/dist/translation/stage.js.map +1 -0
  329. package/dist/translation/validate.js +68 -91
  330. package/dist/translation/validate.js.map +1 -0
  331. package/dist/types/libraries.js +93 -91
  332. package/dist/types/libraries.js.map +1 -0
  333. package/dist/types/parsing.js +19 -10
  334. package/dist/types/parsing.js.map +1 -0
  335. package/dist/utils/addExplicitAnchorIds.js +270 -389
  336. package/dist/utils/addExplicitAnchorIds.js.map +1 -0
  337. package/dist/utils/calculateTimeoutMs.js +11 -6
  338. package/dist/utils/calculateTimeoutMs.js.map +1 -0
  339. package/dist/utils/constants.js +15 -12
  340. package/dist/utils/constants.js.map +1 -0
  341. package/dist/utils/credentials.js +67 -114
  342. package/dist/utils/credentials.js.map +1 -0
  343. package/dist/utils/fetch.js +22 -20
  344. package/dist/utils/fetch.js.map +1 -0
  345. package/dist/utils/flattenJsonFiles.js +27 -34
  346. package/dist/utils/flattenJsonFiles.js.map +1 -0
  347. package/dist/utils/gitDiff.js +30 -32
  348. package/dist/utils/gitDiff.js.map +1 -0
  349. package/dist/utils/gt.js +7 -2
  350. package/dist/utils/gt.js.map +1 -0
  351. package/dist/utils/hash.js +14 -9
  352. package/dist/utils/hash.js.map +1 -0
  353. package/dist/utils/headers.js +10 -13
  354. package/dist/utils/headers.js.map +1 -0
  355. package/dist/utils/installPackage.js +70 -75
  356. package/dist/utils/installPackage.js.map +1 -0
  357. package/dist/utils/localizeRelativeAssets.js +114 -157
  358. package/dist/utils/localizeRelativeAssets.js.map +1 -0
  359. package/dist/utils/localizeStaticImports.js +229 -371
  360. package/dist/utils/localizeStaticImports.js.map +1 -0
  361. package/dist/utils/localizeStaticUrls.js +241 -424
  362. package/dist/utils/localizeStaticUrls.js.map +1 -0
  363. package/dist/utils/mintlifyTitleFallback.js +64 -72
  364. package/dist/utils/mintlifyTitleFallback.js.map +1 -0
  365. package/dist/utils/monorepoVersionCheck.js +177 -215
  366. package/dist/utils/monorepoVersionCheck.js.map +1 -0
  367. package/dist/utils/packageInfo.js +17 -16
  368. package/dist/utils/packageInfo.js.map +1 -0
  369. package/dist/utils/packageJson.js +51 -66
  370. package/dist/utils/packageJson.js.map +1 -0
  371. package/dist/utils/packageManager.js +237 -260
  372. package/dist/utils/packageManager.js.map +1 -0
  373. package/dist/utils/parse/needsCJS.js +36 -69
  374. package/dist/utils/parse/needsCJS.js.map +1 -0
  375. package/dist/utils/persistPostprocessHashes.js +30 -32
  376. package/dist/utils/persistPostprocessHashes.js.map +1 -0
  377. package/dist/utils/processAnchorIds.js +32 -54
  378. package/dist/utils/processAnchorIds.js.map +1 -0
  379. package/dist/utils/processOpenApi.js +469 -578
  380. package/dist/utils/processOpenApi.js.map +1 -0
  381. package/dist/utils/resolveMintlifyRefs.js +89 -105
  382. package/dist/utils/resolveMintlifyRefs.js.map +1 -0
  383. package/dist/utils/resolvePublish.js +46 -54
  384. package/dist/utils/resolvePublish.js.map +1 -0
  385. package/dist/utils/sanitizeFileContent.js +20 -27
  386. package/dist/utils/sanitizeFileContent.js.map +1 -0
  387. package/dist/utils/sharedStaticAssets.js +248 -366
  388. package/dist/utils/sharedStaticAssets.js.map +1 -0
  389. package/dist/utils/splitMintlifyLanguageRefs.js +208 -282
  390. package/dist/utils/splitMintlifyLanguageRefs.js.map +1 -0
  391. package/dist/utils/validateMdx.js +26 -23
  392. package/dist/utils/validateMdx.js.map +1 -0
  393. package/dist/utils/wrapPlainUrls.js +58 -70
  394. package/dist/utils/wrapPlainUrls.js.map +1 -0
  395. package/dist/workflows/download.js +92 -126
  396. package/dist/workflows/download.js.map +1 -0
  397. package/dist/workflows/enqueue.js +47 -54
  398. package/dist/workflows/enqueue.js.map +1 -0
  399. package/dist/workflows/publish.js +29 -29
  400. package/dist/workflows/publish.js.map +1 -0
  401. package/dist/workflows/setupProject.js +39 -40
  402. package/dist/workflows/setupProject.js.map +1 -0
  403. package/dist/workflows/stage.js +61 -65
  404. package/dist/workflows/stage.js.map +1 -0
  405. package/dist/workflows/steps/BranchStep.js +118 -163
  406. package/dist/workflows/steps/BranchStep.js.map +1 -0
  407. package/dist/workflows/steps/DownloadStep.js +107 -137
  408. package/dist/workflows/steps/DownloadStep.js.map +1 -0
  409. package/dist/workflows/steps/EnqueueStep.js +32 -32
  410. package/dist/workflows/steps/EnqueueStep.js.map +1 -0
  411. package/dist/workflows/steps/PollJobsStep.js +208 -292
  412. package/dist/workflows/steps/PollJobsStep.js.map +1 -0
  413. package/dist/workflows/steps/PublishStep.js +33 -38
  414. package/dist/workflows/steps/PublishStep.js.map +1 -0
  415. package/dist/workflows/steps/SetupStep.js +71 -72
  416. package/dist/workflows/steps/SetupStep.js.map +1 -0
  417. package/dist/workflows/steps/TagStep.js +39 -44
  418. package/dist/workflows/steps/TagStep.js.map +1 -0
  419. package/dist/workflows/steps/UploadSourcesStep.js +108 -140
  420. package/dist/workflows/steps/UploadSourcesStep.js.map +1 -0
  421. package/dist/workflows/steps/UploadTranslationsStep.js +61 -71
  422. package/dist/workflows/steps/UploadTranslationsStep.js.map +1 -0
  423. package/dist/workflows/steps/UserEditDiffsStep.js +32 -34
  424. package/dist/workflows/steps/UserEditDiffsStep.js.map +1 -0
  425. package/dist/workflows/steps/WorkflowStep.js +6 -2
  426. package/dist/workflows/steps/WorkflowStep.js.map +1 -0
  427. package/dist/workflows/upload.js +45 -46
  428. package/dist/workflows/upload.js.map +1 -0
  429. package/package.json +14 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJson.js","names":[],"sources":["../../src/utils/packageJson.ts"],"sourcesContent":["import { logger } from '../console/logger.js';\n\nimport chalk from 'chalk';\nimport path from 'node:path';\nimport fs from 'node:fs';\nimport { exitSync } from '../console/logging.js';\nimport { PACKAGE_VERSION } from '../generated/version.js';\n\n// search for package.json such that we can run init in non-js projects\nexport async function searchForPackageJson(\n cwd: string = process.cwd()\n): Promise<Record<string, unknown> | null> {\n // Get the current working directory (where the CLI is being run)\n const packageJsonPath = path.join(cwd, 'package.json');\n\n // Check if package.json exists\n if (!fs.existsSync(packageJsonPath)) {\n return null;\n }\n try {\n return JSON.parse(await fs.promises.readFile(packageJsonPath, 'utf8'));\n } catch {\n return null;\n }\n}\n\nexport async function getPackageJson(\n cwd: string = process.cwd()\n): Promise<Record<string, unknown> | null> {\n const packageJsonPath = path.join(cwd, 'package.json');\n\n // Check if package.json exists\n if (!fs.existsSync(packageJsonPath)) {\n return null;\n }\n try {\n return JSON.parse(await fs.promises.readFile(packageJsonPath, 'utf8'));\n } catch {\n return null;\n }\n}\n\nexport function getCLIVersion(): string {\n return PACKAGE_VERSION;\n}\n\nexport async function updatePackageJson(\n packageJson: Record<string, unknown>,\n cwd: string = process.cwd()\n) {\n try {\n await fs.promises.writeFile(\n path.join(cwd, 'package.json'),\n JSON.stringify(packageJson, null, 2)\n );\n } catch (error) {\n logger.error(chalk.red('Error updating package.json: ' + String(error)));\n exitSync(1);\n }\n}\n\n// check if a package is installed in the package.json file\nexport function isPackageInstalled(\n packageName: string,\n packageJson: Record<string, unknown>,\n asDevDependency: boolean = false,\n checkBoth: boolean = false\n): boolean {\n const devDependencies =\n (packageJson.devDependencies as Record<string, string> | undefined) ?? {};\n const prodDependencies =\n (packageJson.dependencies as Record<string, string> | undefined) ?? {};\n const dependencies = checkBoth\n ? {\n ...devDependencies,\n ...prodDependencies,\n }\n : asDevDependency\n ? devDependencies\n : prodDependencies;\n\n if (!dependencies) {\n return false;\n }\n return dependencies[packageName] !== undefined;\n}\n\nexport function getPackageVersion(\n packageName: string,\n packageJson: Record<string, unknown>\n): string | undefined {\n const devDependencies =\n (packageJson.devDependencies as Record<string, string> | undefined) ?? {};\n const prodDependencies =\n (packageJson.dependencies as Record<string, string> | undefined) ?? {};\n const dependencies = {\n ...prodDependencies,\n ...devDependencies,\n };\n return dependencies[packageName] ?? undefined;\n}\n"],"mappings":";;;;;;;AASA,eAAsB,qBACpB,MAAc,QAAQ,KAAK,EACc;CAEzC,MAAM,kBAAkB,KAAK,KAAK,KAAK,eAAe;AAGtD,KAAI,CAAC,GAAG,WAAW,gBAAgB,CACjC,QAAO;AAET,KAAI;AACF,SAAO,KAAK,MAAM,MAAM,GAAG,SAAS,SAAS,iBAAiB,OAAO,CAAC;SAChE;AACN,SAAO;;;AAIX,eAAsB,eACpB,MAAc,QAAQ,KAAK,EACc;CACzC,MAAM,kBAAkB,KAAK,KAAK,KAAK,eAAe;AAGtD,KAAI,CAAC,GAAG,WAAW,gBAAgB,CACjC,QAAO;AAET,KAAI;AACF,SAAO,KAAK,MAAM,MAAM,GAAG,SAAS,SAAS,iBAAiB,OAAO,CAAC;SAChE;AACN,SAAO;;;AAIX,SAAgB,gBAAwB;AACtC,QAAO;;AAGT,eAAsB,kBACpB,aACA,MAAc,QAAQ,KAAK,EAC3B;AACA,KAAI;AACF,QAAM,GAAG,SAAS,UAChB,KAAK,KAAK,KAAK,eAAe,EAC9B,KAAK,UAAU,aAAa,MAAM,EAAE,CACrC;UACM,OAAO;AACd,SAAO,MAAM,MAAM,IAAI,kCAAkC,OAAO,MAAM,CAAC,CAAC;AACxE,WAAS,EAAE;;;AAKf,SAAgB,mBACd,aACA,aACA,kBAA2B,OAC3B,YAAqB,OACZ;CACT,MAAM,kBACH,YAAY,mBAA0D,EAAE;CAC3E,MAAM,mBACH,YAAY,gBAAuD,EAAE;CACxE,MAAM,eAAe,YACjB;EACE,GAAG;EACH,GAAG;EACJ,GACD,kBACE,kBACA;AAEN,KAAI,CAAC,aACH,QAAO;AAET,QAAO,aAAa,iBAAiB,KAAA;;AAGvC,SAAgB,kBACd,aACA,aACoB;CACpB,MAAM,kBACH,YAAY,mBAA0D,EAAE;AAO3E,QAAO;EAHL,GAFC,YAAY,gBAAuD,EAAE;EAGtE,GAAG;EAEc,CAAC,gBAAgB,KAAA"}
@@ -1,269 +1,246 @@
1
- // This file is MIT licensed and was adapted from https://github.com/getsentry/sentry-wizard/blob/master/src/utils/package-manager.ts and https://github.com/getsentry/sentry-wizard/blob/master/src/utils/clack/index.ts
2
- import * as fs from 'fs';
3
- import * as path from 'path';
4
- import { getPackageJson, updatePackageJson } from './packageJson.js';
5
- import { promptSelect } from '../console/logging.js';
6
- export class NoPackageManagerError extends Error {
7
- constructor(message) {
8
- super(message);
9
- this.name = 'NoPackageManagerError';
10
- }
11
- }
12
- export const BUN = {
13
- id: 'bun',
14
- name: 'bun',
15
- label: 'Bun',
16
- installCommand: 'add',
17
- installAllCommand: 'bun install',
18
- buildCommand: 'bun run build',
19
- runScriptCommand: 'bun run',
20
- flags: '',
21
- forceInstallFlag: '--force',
22
- devDependencyFlag: '--dev',
23
- detect: (cwd) => ['bun.lockb', 'bun.lock'].some((lockFile) => {
24
- try {
25
- return fs.existsSync(path.join(cwd, lockFile));
26
- }
27
- catch {
28
- return false;
29
- }
30
- }),
31
- addOverride: async (pkgName, pkgVersion) => {
32
- const packageDotJson = await getPackageJson();
33
- if (!packageDotJson) {
34
- return;
35
- }
36
- const overrides = packageDotJson.overrides || {};
37
- await updatePackageJson({
38
- ...packageDotJson,
39
- overrides: {
40
- ...overrides,
41
- [pkgName]: pkgVersion,
42
- },
43
- });
44
- },
1
+ import { getPackageJson, updatePackageJson } from "./packageJson.js";
2
+ import { promptSelect } from "../console/logging.js";
3
+ import * as fs$1 from "fs";
4
+ import * as path$1 from "path";
5
+ //#region src/utils/packageManager.ts
6
+ var NoPackageManagerError = class extends Error {
7
+ constructor(message) {
8
+ super(message);
9
+ this.name = "NoPackageManagerError";
10
+ }
11
+ };
12
+ const BUN = {
13
+ id: "bun",
14
+ name: "bun",
15
+ label: "Bun",
16
+ installCommand: "add",
17
+ installAllCommand: "bun install",
18
+ buildCommand: "bun run build",
19
+ runScriptCommand: "bun run",
20
+ flags: "",
21
+ forceInstallFlag: "--force",
22
+ devDependencyFlag: "--dev",
23
+ detect: (cwd) => ["bun.lockb", "bun.lock"].some((lockFile) => {
24
+ try {
25
+ return fs$1.existsSync(path$1.join(cwd, lockFile));
26
+ } catch {
27
+ return false;
28
+ }
29
+ }),
30
+ addOverride: async (pkgName, pkgVersion) => {
31
+ const packageDotJson = await getPackageJson();
32
+ if (!packageDotJson) return;
33
+ const overrides = packageDotJson.overrides || {};
34
+ await updatePackageJson({
35
+ ...packageDotJson,
36
+ overrides: {
37
+ ...overrides,
38
+ [pkgName]: pkgVersion
39
+ }
40
+ });
41
+ }
45
42
  };
46
- export const DENO = {
47
- id: 'deno',
48
- name: 'deno',
49
- label: 'Deno',
50
- installCommand: 'install',
51
- installAllCommand: 'deno install',
52
- buildCommand: 'deno task build',
53
- runScriptCommand: 'deno task',
54
- flags: '',
55
- forceInstallFlag: '--force',
56
- devDependencyFlag: '--dev',
57
- registry: 'npm',
58
- detect: (cwd) => {
59
- try {
60
- return fs.existsSync(path.join(cwd, 'deno.lock'));
61
- }
62
- catch {
63
- return false;
64
- }
65
- },
66
- addOverride: async (pkgName, pkgVersion) => {
67
- const packageDotJson = await getPackageJson();
68
- if (!packageDotJson) {
69
- return;
70
- }
71
- const overrides = packageDotJson.overrides || {};
72
- await updatePackageJson({
73
- ...packageDotJson,
74
- overrides: {
75
- ...overrides,
76
- [pkgName]: pkgVersion,
77
- },
78
- });
79
- },
43
+ const DENO = {
44
+ id: "deno",
45
+ name: "deno",
46
+ label: "Deno",
47
+ installCommand: "install",
48
+ installAllCommand: "deno install",
49
+ buildCommand: "deno task build",
50
+ runScriptCommand: "deno task",
51
+ flags: "",
52
+ forceInstallFlag: "--force",
53
+ devDependencyFlag: "--dev",
54
+ registry: "npm",
55
+ detect: (cwd) => {
56
+ try {
57
+ return fs$1.existsSync(path$1.join(cwd, "deno.lock"));
58
+ } catch {
59
+ return false;
60
+ }
61
+ },
62
+ addOverride: async (pkgName, pkgVersion) => {
63
+ const packageDotJson = await getPackageJson();
64
+ if (!packageDotJson) return;
65
+ const overrides = packageDotJson.overrides || {};
66
+ await updatePackageJson({
67
+ ...packageDotJson,
68
+ overrides: {
69
+ ...overrides,
70
+ [pkgName]: pkgVersion
71
+ }
72
+ });
73
+ }
80
74
  };
81
- export const YARN_V1 = {
82
- id: 'yarn_v1',
83
- name: 'yarn',
84
- label: 'Yarn V1',
85
- installCommand: 'add',
86
- installAllCommand: 'yarn install',
87
- buildCommand: 'yarn build',
88
- runScriptCommand: 'yarn',
89
- flags: '--ignore-workspace-root-check',
90
- forceInstallFlag: '--force',
91
- devDependencyFlag: '--dev',
92
- detect: (cwd) => {
93
- try {
94
- return fs
95
- .readFileSync(path.join(cwd, 'yarn.lock'), 'utf-8')
96
- .slice(0, 500)
97
- .includes('yarn lockfile v1');
98
- }
99
- catch {
100
- return false;
101
- }
102
- },
103
- addOverride: async (pkgName, pkgVersion) => {
104
- const packageDotJson = await getPackageJson();
105
- if (!packageDotJson) {
106
- return;
107
- }
108
- const resolutions = packageDotJson.resolutions || {};
109
- await updatePackageJson({
110
- ...packageDotJson,
111
- resolutions: {
112
- ...resolutions,
113
- [pkgName]: pkgVersion,
114
- },
115
- });
116
- },
75
+ const YARN_V1 = {
76
+ id: "yarn_v1",
77
+ name: "yarn",
78
+ label: "Yarn V1",
79
+ installCommand: "add",
80
+ installAllCommand: "yarn install",
81
+ buildCommand: "yarn build",
82
+ runScriptCommand: "yarn",
83
+ flags: "--ignore-workspace-root-check",
84
+ forceInstallFlag: "--force",
85
+ devDependencyFlag: "--dev",
86
+ detect: (cwd) => {
87
+ try {
88
+ return fs$1.readFileSync(path$1.join(cwd, "yarn.lock"), "utf-8").slice(0, 500).includes("yarn lockfile v1");
89
+ } catch {
90
+ return false;
91
+ }
92
+ },
93
+ addOverride: async (pkgName, pkgVersion) => {
94
+ const packageDotJson = await getPackageJson();
95
+ if (!packageDotJson) return;
96
+ const resolutions = packageDotJson.resolutions || {};
97
+ await updatePackageJson({
98
+ ...packageDotJson,
99
+ resolutions: {
100
+ ...resolutions,
101
+ [pkgName]: pkgVersion
102
+ }
103
+ });
104
+ }
117
105
  };
118
106
  /** YARN V2/3/4 */
119
- export const YARN_V2 = {
120
- id: 'yarn_v2',
121
- name: 'yarn',
122
- label: 'Yarn V2/3/4',
123
- installCommand: 'add',
124
- installAllCommand: 'yarn install',
125
- buildCommand: 'yarn build',
126
- runScriptCommand: 'yarn',
127
- flags: '',
128
- forceInstallFlag: '--force',
129
- devDependencyFlag: '--dev',
130
- detect: (cwd) => {
131
- try {
132
- return fs
133
- .readFileSync(path.join(cwd, 'yarn.lock'), 'utf-8')
134
- .slice(0, 500)
135
- .includes('__metadata');
136
- }
137
- catch {
138
- return false;
139
- }
140
- },
141
- addOverride: async (pkgName, pkgVersion) => {
142
- const packageDotJson = await getPackageJson();
143
- if (!packageDotJson) {
144
- return;
145
- }
146
- const resolutions = packageDotJson.resolutions || {};
147
- await updatePackageJson({
148
- ...packageDotJson,
149
- resolutions: {
150
- ...resolutions,
151
- [pkgName]: pkgVersion,
152
- },
153
- });
154
- },
107
+ const YARN_V2 = {
108
+ id: "yarn_v2",
109
+ name: "yarn",
110
+ label: "Yarn V2/3/4",
111
+ installCommand: "add",
112
+ installAllCommand: "yarn install",
113
+ buildCommand: "yarn build",
114
+ runScriptCommand: "yarn",
115
+ flags: "",
116
+ forceInstallFlag: "--force",
117
+ devDependencyFlag: "--dev",
118
+ detect: (cwd) => {
119
+ try {
120
+ return fs$1.readFileSync(path$1.join(cwd, "yarn.lock"), "utf-8").slice(0, 500).includes("__metadata");
121
+ } catch {
122
+ return false;
123
+ }
124
+ },
125
+ addOverride: async (pkgName, pkgVersion) => {
126
+ const packageDotJson = await getPackageJson();
127
+ if (!packageDotJson) return;
128
+ const resolutions = packageDotJson.resolutions || {};
129
+ await updatePackageJson({
130
+ ...packageDotJson,
131
+ resolutions: {
132
+ ...resolutions,
133
+ [pkgName]: pkgVersion
134
+ }
135
+ });
136
+ }
155
137
  };
156
- export const PNPM = {
157
- id: 'pnpm',
158
- name: 'pnpm',
159
- label: 'PNPM',
160
- installCommand: 'add',
161
- installAllCommand: 'pnpm install',
162
- buildCommand: 'pnpm build',
163
- runScriptCommand: 'pnpm',
164
- flags: '--ignore-workspace-root-check',
165
- forceInstallFlag: '--force',
166
- devDependencyFlag: '--save-dev',
167
- detect: (cwd) => {
168
- try {
169
- return fs.existsSync(path.join(cwd, 'pnpm-lock.yaml'));
170
- }
171
- catch {
172
- return false;
173
- }
174
- },
175
- addOverride: async (pkgName, pkgVersion) => {
176
- const packageDotJson = await getPackageJson();
177
- if (!packageDotJson) {
178
- return;
179
- }
180
- const pnpm = packageDotJson.pnpm || {};
181
- const overrides = pnpm.overrides || {};
182
- await updatePackageJson({
183
- ...packageDotJson,
184
- pnpm: {
185
- ...pnpm,
186
- overrides: {
187
- ...overrides,
188
- [pkgName]: pkgVersion,
189
- },
190
- },
191
- });
192
- },
138
+ const PNPM = {
139
+ id: "pnpm",
140
+ name: "pnpm",
141
+ label: "PNPM",
142
+ installCommand: "add",
143
+ installAllCommand: "pnpm install",
144
+ buildCommand: "pnpm build",
145
+ runScriptCommand: "pnpm",
146
+ flags: "--ignore-workspace-root-check",
147
+ forceInstallFlag: "--force",
148
+ devDependencyFlag: "--save-dev",
149
+ detect: (cwd) => {
150
+ try {
151
+ return fs$1.existsSync(path$1.join(cwd, "pnpm-lock.yaml"));
152
+ } catch {
153
+ return false;
154
+ }
155
+ },
156
+ addOverride: async (pkgName, pkgVersion) => {
157
+ const packageDotJson = await getPackageJson();
158
+ if (!packageDotJson) return;
159
+ const pnpm = packageDotJson.pnpm || {};
160
+ const overrides = pnpm.overrides || {};
161
+ await updatePackageJson({
162
+ ...packageDotJson,
163
+ pnpm: {
164
+ ...pnpm,
165
+ overrides: {
166
+ ...overrides,
167
+ [pkgName]: pkgVersion
168
+ }
169
+ }
170
+ });
171
+ }
193
172
  };
194
- export const NPM = {
195
- id: 'npm',
196
- name: 'npm',
197
- label: 'NPM',
198
- installCommand: 'install',
199
- installAllCommand: 'npm ci',
200
- buildCommand: 'npm run build',
201
- runScriptCommand: 'npm run',
202
- flags: '',
203
- forceInstallFlag: '--force',
204
- devDependencyFlag: '--save-dev',
205
- detect: (cwd) => {
206
- try {
207
- return fs.existsSync(path.join(cwd, 'package-lock.json'));
208
- }
209
- catch {
210
- return false;
211
- }
212
- },
213
- addOverride: async (pkgName, pkgVersion) => {
214
- const packageDotJson = await getPackageJson();
215
- if (!packageDotJson) {
216
- return;
217
- }
218
- const overrides = packageDotJson.overrides || {};
219
- await updatePackageJson({
220
- ...packageDotJson,
221
- overrides: {
222
- ...overrides,
223
- [pkgName]: pkgVersion,
224
- },
225
- });
226
- },
173
+ const NPM = {
174
+ id: "npm",
175
+ name: "npm",
176
+ label: "NPM",
177
+ installCommand: "install",
178
+ installAllCommand: "npm ci",
179
+ buildCommand: "npm run build",
180
+ runScriptCommand: "npm run",
181
+ flags: "",
182
+ forceInstallFlag: "--force",
183
+ devDependencyFlag: "--save-dev",
184
+ detect: (cwd) => {
185
+ try {
186
+ return fs$1.existsSync(path$1.join(cwd, "package-lock.json"));
187
+ } catch {
188
+ return false;
189
+ }
190
+ },
191
+ addOverride: async (pkgName, pkgVersion) => {
192
+ const packageDotJson = await getPackageJson();
193
+ if (!packageDotJson) return;
194
+ const overrides = packageDotJson.overrides || {};
195
+ await updatePackageJson({
196
+ ...packageDotJson,
197
+ overrides: {
198
+ ...overrides,
199
+ [pkgName]: pkgVersion
200
+ }
201
+ });
202
+ }
227
203
  };
228
- export const packageManagers = [NPM, YARN_V1, YARN_V2, PNPM, BUN, DENO];
229
- export function _detectPackageManger(cwd) {
230
- const foundPackageMangers = packageManagers.filter((packageManager) => packageManager.detect(cwd));
231
- // Only consider a package manager detected if we found exactly one.
232
- // If we find more than one, we should not make any assumptions.
233
- if (foundPackageMangers.length === 1) {
234
- return foundPackageMangers[0];
235
- }
236
- return null;
204
+ const packageManagers = [
205
+ NPM,
206
+ YARN_V1,
207
+ YARN_V2,
208
+ PNPM,
209
+ BUN,
210
+ DENO
211
+ ];
212
+ function _detectPackageManger(cwd) {
213
+ const foundPackageMangers = packageManagers.filter((packageManager) => packageManager.detect(cwd));
214
+ if (foundPackageMangers.length === 1) return foundPackageMangers[0];
215
+ return null;
237
216
  }
238
- // Get the package manager for the current project
239
- // Uses a global cache to avoid prompting the user multiple times
240
- export async function getPackageManager(cwd = process.cwd(), specifiedPackageManager, errorIfNotFound = false) {
241
- const globalWizard = global;
242
- if (globalWizard._gt_wizard_cached_package_manager) {
243
- return globalWizard._gt_wizard_cached_package_manager;
244
- }
245
- if (specifiedPackageManager) {
246
- const packageManager = packageManagers.find((packageManager) => packageManager.id === specifiedPackageManager);
247
- if (packageManager) {
248
- globalWizard._gt_wizard_cached_package_manager = packageManager;
249
- return packageManager;
250
- }
251
- }
252
- const detectedPackageManager = _detectPackageManger(cwd);
253
- if (detectedPackageManager) {
254
- globalWizard._gt_wizard_cached_package_manager = detectedPackageManager;
255
- return detectedPackageManager;
256
- }
257
- if (errorIfNotFound) {
258
- throw new NoPackageManagerError('No package manager found');
259
- }
260
- const selectedPackageManager = await promptSelect({
261
- message: 'Select your package manager.',
262
- options: packageManagers.map((packageManager) => ({
263
- value: packageManager,
264
- label: packageManager.label,
265
- })),
266
- });
267
- globalWizard._gt_wizard_cached_package_manager = selectedPackageManager;
268
- return selectedPackageManager;
217
+ async function getPackageManager(cwd = process.cwd(), specifiedPackageManager, errorIfNotFound = false) {
218
+ const globalWizard = global;
219
+ if (globalWizard._gt_wizard_cached_package_manager) return globalWizard._gt_wizard_cached_package_manager;
220
+ if (specifiedPackageManager) {
221
+ const packageManager = packageManagers.find((packageManager) => packageManager.id === specifiedPackageManager);
222
+ if (packageManager) {
223
+ globalWizard._gt_wizard_cached_package_manager = packageManager;
224
+ return packageManager;
225
+ }
226
+ }
227
+ const detectedPackageManager = _detectPackageManger(cwd);
228
+ if (detectedPackageManager) {
229
+ globalWizard._gt_wizard_cached_package_manager = detectedPackageManager;
230
+ return detectedPackageManager;
231
+ }
232
+ if (errorIfNotFound) throw new NoPackageManagerError("No package manager found");
233
+ const selectedPackageManager = await promptSelect({
234
+ message: "Select your package manager.",
235
+ options: packageManagers.map((packageManager) => ({
236
+ value: packageManager,
237
+ label: packageManager.label
238
+ }))
239
+ });
240
+ globalWizard._gt_wizard_cached_package_manager = selectedPackageManager;
241
+ return selectedPackageManager;
269
242
  }
243
+ //#endregion
244
+ export { BUN, DENO, NPM, NoPackageManagerError, PNPM, YARN_V1, YARN_V2, _detectPackageManger, getPackageManager, packageManagers };
245
+
246
+ //# sourceMappingURL=packageManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageManager.js","names":["fs","path"],"sources":["../../src/utils/packageManager.ts"],"sourcesContent":["// This file is MIT licensed and was adapted from https://github.com/getsentry/sentry-wizard/blob/master/src/utils/package-manager.ts and https://github.com/getsentry/sentry-wizard/blob/master/src/utils/clack/index.ts\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport { getPackageJson, updatePackageJson } from './packageJson.js';\nimport { promptSelect } from '../console/logging.js';\n\nexport interface PackageManager {\n id: string;\n name: string;\n label: string;\n installCommand: string;\n installAllCommand: string;\n buildCommand: string;\n /* The command that the package manager uses to run a script from package.json */\n runScriptCommand: string;\n flags: string;\n forceInstallFlag: string;\n devDependencyFlag: string;\n registry?: string;\n detect: (cwd: string) => boolean;\n addOverride: (pkgName: string, pkgVersion: string) => Promise<void>;\n}\n\nexport class NoPackageManagerError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'NoPackageManagerError';\n }\n}\n\nexport const BUN: PackageManager = {\n id: 'bun',\n name: 'bun',\n label: 'Bun',\n installCommand: 'add',\n installAllCommand: 'bun install',\n buildCommand: 'bun run build',\n runScriptCommand: 'bun run',\n flags: '',\n forceInstallFlag: '--force',\n devDependencyFlag: '--dev',\n detect: (cwd: string) =>\n ['bun.lockb', 'bun.lock'].some((lockFile) => {\n try {\n return fs.existsSync(path.join(cwd, lockFile));\n } catch {\n return false;\n }\n }),\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const overrides = packageDotJson.overrides || {};\n\n await updatePackageJson({\n ...packageDotJson,\n overrides: {\n ...overrides,\n [pkgName]: pkgVersion,\n },\n });\n },\n};\nexport const DENO: PackageManager = {\n id: 'deno',\n name: 'deno',\n label: 'Deno',\n installCommand: 'install',\n installAllCommand: 'deno install',\n buildCommand: 'deno task build',\n runScriptCommand: 'deno task',\n flags: '',\n forceInstallFlag: '--force',\n devDependencyFlag: '--dev',\n registry: 'npm',\n detect: (cwd: string) => {\n try {\n return fs.existsSync(path.join(cwd, 'deno.lock'));\n } catch {\n return false;\n }\n },\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const overrides = packageDotJson.overrides || {};\n\n await updatePackageJson({\n ...packageDotJson,\n overrides: {\n ...overrides,\n [pkgName]: pkgVersion,\n },\n });\n },\n};\nexport const YARN_V1: PackageManager = {\n id: 'yarn_v1',\n name: 'yarn',\n label: 'Yarn V1',\n installCommand: 'add',\n installAllCommand: 'yarn install',\n buildCommand: 'yarn build',\n runScriptCommand: 'yarn',\n flags: '--ignore-workspace-root-check',\n forceInstallFlag: '--force',\n devDependencyFlag: '--dev',\n detect: (cwd: string) => {\n try {\n return fs\n .readFileSync(path.join(cwd, 'yarn.lock'), 'utf-8')\n .slice(0, 500)\n .includes('yarn lockfile v1');\n } catch {\n return false;\n }\n },\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const resolutions = packageDotJson.resolutions || {};\n\n await updatePackageJson({\n ...packageDotJson,\n resolutions: {\n ...resolutions,\n [pkgName]: pkgVersion,\n },\n });\n },\n};\n/** YARN V2/3/4 */\nexport const YARN_V2: PackageManager = {\n id: 'yarn_v2',\n name: 'yarn',\n label: 'Yarn V2/3/4',\n installCommand: 'add',\n installAllCommand: 'yarn install',\n buildCommand: 'yarn build',\n runScriptCommand: 'yarn',\n flags: '',\n forceInstallFlag: '--force',\n devDependencyFlag: '--dev',\n detect: (cwd: string) => {\n try {\n return fs\n .readFileSync(path.join(cwd, 'yarn.lock'), 'utf-8')\n .slice(0, 500)\n .includes('__metadata');\n } catch {\n return false;\n }\n },\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const resolutions = packageDotJson.resolutions || {};\n\n await updatePackageJson({\n ...packageDotJson,\n resolutions: {\n ...resolutions,\n [pkgName]: pkgVersion,\n },\n });\n },\n};\nexport const PNPM: PackageManager = {\n id: 'pnpm',\n name: 'pnpm',\n label: 'PNPM',\n installCommand: 'add',\n installAllCommand: 'pnpm install',\n buildCommand: 'pnpm build',\n runScriptCommand: 'pnpm',\n flags: '--ignore-workspace-root-check',\n forceInstallFlag: '--force',\n devDependencyFlag: '--save-dev',\n detect: (cwd: string) => {\n try {\n return fs.existsSync(path.join(cwd, 'pnpm-lock.yaml'));\n } catch {\n return false;\n }\n },\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const pnpm =\n (packageDotJson.pnpm as\n | { overrides?: Record<string, string> }\n | undefined) || {};\n const overrides = pnpm.overrides || {};\n\n await updatePackageJson({\n ...packageDotJson,\n pnpm: {\n ...pnpm,\n overrides: {\n ...overrides,\n [pkgName]: pkgVersion,\n },\n },\n });\n },\n};\nexport const NPM: PackageManager = {\n id: 'npm',\n name: 'npm',\n label: 'NPM',\n installCommand: 'install',\n installAllCommand: 'npm ci',\n buildCommand: 'npm run build',\n runScriptCommand: 'npm run',\n flags: '',\n forceInstallFlag: '--force',\n devDependencyFlag: '--save-dev',\n detect: (cwd: string) => {\n try {\n return fs.existsSync(path.join(cwd, 'package-lock.json'));\n } catch {\n return false;\n }\n },\n addOverride: async (pkgName, pkgVersion): Promise<void> => {\n const packageDotJson = await getPackageJson();\n if (!packageDotJson) {\n return;\n }\n const overrides = packageDotJson.overrides || {};\n\n await updatePackageJson({\n ...packageDotJson,\n overrides: {\n ...overrides,\n [pkgName]: pkgVersion,\n },\n });\n },\n};\n\nexport const packageManagers = [NPM, YARN_V1, YARN_V2, PNPM, BUN, DENO];\n\nexport function _detectPackageManger(cwd: string): PackageManager | null {\n const foundPackageMangers = packageManagers.filter((packageManager) =>\n packageManager.detect(cwd)\n );\n\n // Only consider a package manager detected if we found exactly one.\n // If we find more than one, we should not make any assumptions.\n if (foundPackageMangers.length === 1) {\n return foundPackageMangers[0];\n }\n\n return null;\n}\n\n// Get the package manager for the current project\n// Uses a global cache to avoid prompting the user multiple times\nexport async function getPackageManager(\n cwd: string = process.cwd(),\n specifiedPackageManager?: string,\n errorIfNotFound: boolean = false\n): Promise<PackageManager> {\n const globalWizard: typeof global & {\n _gt_wizard_cached_package_manager?: PackageManager;\n } = global;\n\n if (globalWizard._gt_wizard_cached_package_manager) {\n return globalWizard._gt_wizard_cached_package_manager;\n }\n\n if (specifiedPackageManager) {\n const packageManager = packageManagers.find(\n (packageManager) => packageManager.id === specifiedPackageManager\n );\n if (packageManager) {\n globalWizard._gt_wizard_cached_package_manager = packageManager;\n return packageManager;\n }\n }\n\n const detectedPackageManager = _detectPackageManger(cwd);\n\n if (detectedPackageManager) {\n globalWizard._gt_wizard_cached_package_manager = detectedPackageManager;\n return detectedPackageManager;\n }\n\n if (errorIfNotFound) {\n throw new NoPackageManagerError('No package manager found');\n }\n\n const selectedPackageManager: PackageManager =\n await promptSelect<PackageManager>({\n message: 'Select your package manager.',\n options: packageManagers.map((packageManager) => ({\n value: packageManager,\n label: packageManager.label,\n })),\n });\n\n globalWizard._gt_wizard_cached_package_manager = selectedPackageManager;\n\n return selectedPackageManager;\n}\n"],"mappings":"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"}