gtx-cli 2.6.31 → 2.7.0

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 (348) hide show
  1. package/CHANGELOG.md +4 -1261
  2. package/README.md +12 -3
  3. package/dist/bin/bin-entry.js +2 -1
  4. package/dist/config/generateSettings.d.ts +1 -9
  5. package/dist/config/generateSettings.js +1 -214
  6. package/dist/config/resolveConfig.d.ts +1 -4
  7. package/dist/config/resolveConfig.js +1 -33
  8. package/dist/fs/config/setupConfig.d.ts +1 -17
  9. package/dist/fs/config/setupConfig.js +1 -50
  10. package/dist/fs/matchFiles.d.ts +1 -1
  11. package/dist/fs/matchFiles.js +1 -8
  12. package/dist/functions.d.ts +1 -7
  13. package/dist/functions.js +1 -6
  14. package/dist/index.d.ts +1 -4
  15. package/dist/index.js +1 -27
  16. package/dist/main.js +2 -2
  17. package/dist/next/parse/handleInitGT.d.ts +1 -7
  18. package/dist/next/parse/handleInitGT.js +1 -157
  19. package/dist/next/parse/wrapContent.d.ts +1 -12
  20. package/dist/next/parse/wrapContent.js +1 -164
  21. package/dist/react/parse/wrapContent.d.ts +1 -12
  22. package/dist/react/parse/wrapContent.js +1 -162
  23. package/dist/types/index.d.ts +1 -243
  24. package/dist/types/index.js +1 -1
  25. package/dist/utils/installPackage.d.ts +1 -3
  26. package/dist/utils/installPackage.js +1 -77
  27. package/dist/utils/packageInfo.d.ts +1 -3
  28. package/dist/utils/packageInfo.js +1 -17
  29. package/dist/utils/packageJson.d.ts +1 -6
  30. package/dist/utils/packageJson.js +1 -68
  31. package/dist/utils/packageManager.d.ts +1 -28
  32. package/dist/utils/packageManager.js +1 -269
  33. package/package.json +11 -97
  34. package/dist/api/collectUserEditDiffs.d.ts +0 -9
  35. package/dist/api/collectUserEditDiffs.js +0 -159
  36. package/dist/api/downloadFileBatch.d.ts +0 -23
  37. package/dist/api/downloadFileBatch.js +0 -190
  38. package/dist/api/saveLocalEdits.d.ts +0 -6
  39. package/dist/api/saveLocalEdits.js +0 -38
  40. package/dist/cli/base.d.ts +0 -59
  41. package/dist/cli/base.js +0 -529
  42. package/dist/cli/commands/download.d.ts +0 -8
  43. package/dist/cli/commands/download.js +0 -51
  44. package/dist/cli/commands/enqueue.d.ts +0 -9
  45. package/dist/cli/commands/enqueue.js +0 -27
  46. package/dist/cli/commands/setupProject.d.ts +0 -7
  47. package/dist/cli/commands/setupProject.js +0 -37
  48. package/dist/cli/commands/stage.d.ts +0 -9
  49. package/dist/cli/commands/stage.js +0 -59
  50. package/dist/cli/commands/translate.d.ts +0 -7
  51. package/dist/cli/commands/translate.js +0 -70
  52. package/dist/cli/commands/upload.d.ts +0 -13
  53. package/dist/cli/commands/upload.js +0 -142
  54. package/dist/cli/commands/utils/validation.d.ts +0 -13
  55. package/dist/cli/commands/utils/validation.js +0 -38
  56. package/dist/cli/flags.d.ts +0 -15
  57. package/dist/cli/flags.js +0 -70
  58. package/dist/cli/inline.d.ts +0 -17
  59. package/dist/cli/inline.js +0 -135
  60. package/dist/cli/next.d.ts +0 -10
  61. package/dist/cli/next.js +0 -12
  62. package/dist/cli/node.d.ts +0 -10
  63. package/dist/cli/node.js +0 -9
  64. package/dist/cli/react.d.ts +0 -12
  65. package/dist/cli/react.js +0 -72
  66. package/dist/config/optionPresets.d.ts +0 -3
  67. package/dist/config/optionPresets.js +0 -65
  68. package/dist/config/utils.d.ts +0 -2
  69. package/dist/config/utils.js +0 -4
  70. package/dist/config/validateSettings.d.ts +0 -3
  71. package/dist/config/validateSettings.js +0 -32
  72. package/dist/console/colors.d.ts +0 -6
  73. package/dist/console/colors.js +0 -19
  74. package/dist/console/displayTranslateSummary.d.ts +0 -1
  75. package/dist/console/displayTranslateSummary.js +0 -42
  76. package/dist/console/formatting.d.ts +0 -1
  77. package/dist/console/formatting.js +0 -7
  78. package/dist/console/index.d.ts +0 -34
  79. package/dist/console/index.js +0 -46
  80. package/dist/console/logger.d.ts +0 -35
  81. package/dist/console/logger.js +0 -250
  82. package/dist/console/logging.d.ts +0 -52
  83. package/dist/console/logging.js +0 -175
  84. package/dist/formats/files/aggregateFiles.d.ts +0 -4
  85. package/dist/formats/files/aggregateFiles.js +0 -156
  86. package/dist/formats/files/collectFiles.d.ts +0 -6
  87. package/dist/formats/files/collectFiles.js +0 -49
  88. package/dist/formats/files/convertToFileTranslationData.d.ts +0 -15
  89. package/dist/formats/files/convertToFileTranslationData.js +0 -21
  90. package/dist/formats/files/fileMapping.d.ts +0 -11
  91. package/dist/formats/files/fileMapping.js +0 -115
  92. package/dist/formats/files/preprocess/mdx.d.ts +0 -6
  93. package/dist/formats/files/preprocess/mdx.js +0 -14
  94. package/dist/formats/files/preprocess/mintlify.d.ts +0 -5
  95. package/dist/formats/files/preprocess/mintlify.js +0 -15
  96. package/dist/formats/files/preprocessContent.d.ts +0 -8
  97. package/dist/formats/files/preprocessContent.js +0 -23
  98. package/dist/formats/files/save.d.ts +0 -5
  99. package/dist/formats/files/save.js +0 -17
  100. package/dist/formats/files/supportedFiles.d.ts +0 -11
  101. package/dist/formats/files/supportedFiles.js +0 -20
  102. package/dist/formats/json/extractJson.d.ts +0 -15
  103. package/dist/formats/json/extractJson.js +0 -101
  104. package/dist/formats/json/flattenJson.d.ts +0 -14
  105. package/dist/formats/json/flattenJson.js +0 -64
  106. package/dist/formats/json/mergeJson.d.ts +0 -13
  107. package/dist/formats/json/mergeJson.js +0 -367
  108. package/dist/formats/json/parseJson.d.ts +0 -2
  109. package/dist/formats/json/parseJson.js +0 -109
  110. package/dist/formats/json/utils.d.ts +0 -47
  111. package/dist/formats/json/utils.js +0 -150
  112. package/dist/formats/utils.d.ts +0 -2
  113. package/dist/formats/utils.js +0 -24
  114. package/dist/formats/yaml/mergeYaml.d.ts +0 -5
  115. package/dist/formats/yaml/mergeYaml.js +0 -61
  116. package/dist/formats/yaml/parseYaml.d.ts +0 -5
  117. package/dist/formats/yaml/parseYaml.js +0 -24
  118. package/dist/formats/yaml/utils.d.ts +0 -2
  119. package/dist/formats/yaml/utils.js +0 -23
  120. package/dist/fs/clearLocaleDirs.d.ts +0 -8
  121. package/dist/fs/clearLocaleDirs.js +0 -126
  122. package/dist/fs/config/downloadedVersions.d.ts +0 -21
  123. package/dist/fs/config/downloadedVersions.js +0 -50
  124. package/dist/fs/config/loadConfig.d.ts +0 -1
  125. package/dist/fs/config/loadConfig.js +0 -9
  126. package/dist/fs/config/parseFilesConfig.d.ts +0 -27
  127. package/dist/fs/config/parseFilesConfig.js +0 -150
  128. package/dist/fs/config/updateConfig.d.ts +0 -21
  129. package/dist/fs/config/updateConfig.js +0 -57
  130. package/dist/fs/config/updateVersions.d.ts +0 -11
  131. package/dist/fs/config/updateVersions.js +0 -30
  132. package/dist/fs/copyFile.d.ts +0 -7
  133. package/dist/fs/copyFile.js +0 -39
  134. package/dist/fs/createLoadTranslationsFile.d.ts +0 -1
  135. package/dist/fs/createLoadTranslationsFile.js +0 -49
  136. package/dist/fs/determineFramework.d.ts +0 -5
  137. package/dist/fs/determineFramework.js +0 -53
  138. package/dist/fs/findFilepath.d.ts +0 -36
  139. package/dist/fs/findFilepath.js +0 -90
  140. package/dist/fs/index.d.ts +0 -1
  141. package/dist/fs/index.js +0 -1
  142. package/dist/fs/loadJSON.d.ts +0 -6
  143. package/dist/fs/loadJSON.js +0 -17
  144. package/dist/fs/saveJSON.d.ts +0 -1
  145. package/dist/fs/saveJSON.js +0 -7
  146. package/dist/fs/utils.d.ts +0 -1
  147. package/dist/fs/utils.js +0 -16
  148. package/dist/generated/version.d.ts +0 -1
  149. package/dist/generated/version.js +0 -2
  150. package/dist/git/branches.d.ts +0 -7
  151. package/dist/git/branches.js +0 -88
  152. package/dist/hooks/postProcess.d.ts +0 -4
  153. package/dist/hooks/postProcess.js +0 -110
  154. package/dist/locadex/setupFlow.d.ts +0 -2
  155. package/dist/locadex/setupFlow.js +0 -9
  156. package/dist/next/config/parseNextConfig.d.ts +0 -10
  157. package/dist/next/config/parseNextConfig.js +0 -53
  158. package/dist/next/jsx/utils.d.ts +0 -7
  159. package/dist/next/jsx/utils.js +0 -42
  160. package/dist/react/config/createESBuildConfig.d.ts +0 -2
  161. package/dist/react/config/createESBuildConfig.js +0 -119
  162. package/dist/react/jsx/evaluateJsx.d.ts +0 -24
  163. package/dist/react/jsx/evaluateJsx.js +0 -123
  164. package/dist/react/jsx/utils/buildImportMap.d.ts +0 -9
  165. package/dist/react/jsx/utils/buildImportMap.js +0 -30
  166. package/dist/react/jsx/utils/constants.d.ts +0 -15
  167. package/dist/react/jsx/utils/constants.js +0 -49
  168. package/dist/react/jsx/utils/getCalleeNameFromExpression.d.ts +0 -9
  169. package/dist/react/jsx/utils/getCalleeNameFromExpression.js +0 -32
  170. package/dist/react/jsx/utils/getPathsAndAliases.d.ts +0 -21
  171. package/dist/react/jsx/utils/getPathsAndAliases.js +0 -91
  172. package/dist/react/jsx/utils/isNumberLiteral.d.ts +0 -7
  173. package/dist/react/jsx/utils/isNumberLiteral.js +0 -13
  174. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.d.ts +0 -9
  175. package/dist/react/jsx/utils/jsxParsing/addGTIdentifierToSyntaxTree.js +0 -138
  176. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.d.ts +0 -6
  177. package/dist/react/jsx/utils/jsxParsing/handleChildrenWhitespace.js +0 -197
  178. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.d.ts +0 -13
  179. package/dist/react/jsx/utils/jsxParsing/multiplication/findMultiplicationNode.js +0 -42
  180. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.d.ts +0 -5
  181. package/dist/react/jsx/utils/jsxParsing/multiplication/multiplyJsxTree.js +0 -69
  182. package/dist/react/jsx/utils/jsxParsing/parseJsx.d.ts +0 -33
  183. package/dist/react/jsx/utils/jsxParsing/parseJsx.js +0 -918
  184. package/dist/react/jsx/utils/jsxParsing/parseTProps.d.ts +0 -8
  185. package/dist/react/jsx/utils/jsxParsing/parseTProps.js +0 -65
  186. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.d.ts +0 -2
  187. package/dist/react/jsx/utils/jsxParsing/removeNullChildrenFields.js +0 -61
  188. package/dist/react/jsx/utils/jsxParsing/types.d.ts +0 -48
  189. package/dist/react/jsx/utils/jsxParsing/types.js +0 -34
  190. package/dist/react/jsx/utils/mapAttributeName.d.ts +0 -11
  191. package/dist/react/jsx/utils/mapAttributeName.js +0 -12
  192. package/dist/react/jsx/utils/parseAst.d.ts +0 -31
  193. package/dist/react/jsx/utils/parseAst.js +0 -278
  194. package/dist/react/jsx/utils/parseDeclareStatic.d.ts +0 -15
  195. package/dist/react/jsx/utils/parseDeclareStatic.js +0 -540
  196. package/dist/react/jsx/utils/parseString.d.ts +0 -25
  197. package/dist/react/jsx/utils/parseString.js +0 -540
  198. package/dist/react/jsx/utils/parseStringFunction.d.ts +0 -30
  199. package/dist/react/jsx/utils/parseStringFunction.js +0 -348
  200. package/dist/react/jsx/utils/resolveImportPath.d.ts +0 -11
  201. package/dist/react/jsx/utils/resolveImportPath.js +0 -111
  202. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.d.ts +0 -29
  203. package/dist/react/jsx/utils/stringParsing/processTranslationCall/extractStringEntryMetadata.js +0 -86
  204. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.d.ts +0 -14
  205. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleInvalidTranslationCall.js +0 -24
  206. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.d.ts +0 -19
  207. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleLiteralTranslationCall.js +0 -31
  208. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleStaticTranslationCall.d.ts +0 -22
  209. package/dist/react/jsx/utils/stringParsing/processTranslationCall/handleStaticTranslationCall.js +0 -51
  210. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.d.ts +0 -18
  211. package/dist/react/jsx/utils/stringParsing/processTranslationCall/index.js +0 -39
  212. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.d.ts +0 -24
  213. package/dist/react/jsx/utils/stringParsing/processTranslationCall/routeTranslationCall.js +0 -68
  214. package/dist/react/jsx/utils/stringParsing/types.d.ts +0 -41
  215. package/dist/react/jsx/utils/stringParsing/types.js +0 -1
  216. package/dist/react/jsx/utils/types.d.ts +0 -14
  217. package/dist/react/jsx/utils/types.js +0 -1
  218. package/dist/react/jsx/utils/validateStringFunction.d.ts +0 -7
  219. package/dist/react/jsx/utils/validateStringFunction.js +0 -31
  220. package/dist/react/jsx/wrapJsx.d.ts +0 -51
  221. package/dist/react/jsx/wrapJsx.js +0 -387
  222. package/dist/react/parse/addVitePlugin/index.d.ts +0 -22
  223. package/dist/react/parse/addVitePlugin/index.js +0 -41
  224. package/dist/react/parse/addVitePlugin/installCompiler.d.ts +0 -8
  225. package/dist/react/parse/addVitePlugin/installCompiler.js +0 -22
  226. package/dist/react/parse/addVitePlugin/updateViteConfig.d.ts +0 -19
  227. package/dist/react/parse/addVitePlugin/updateViteConfig.js +0 -120
  228. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.d.ts +0 -9
  229. package/dist/react/parse/addVitePlugin/utils/addCompilerImport.js +0 -34
  230. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.d.ts +0 -11
  231. package/dist/react/parse/addVitePlugin/utils/addPluginInvocation.js +0 -48
  232. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.d.ts +0 -15
  233. package/dist/react/parse/addVitePlugin/utils/checkCompilerImport.js +0 -113
  234. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.d.ts +0 -12
  235. package/dist/react/parse/addVitePlugin/utils/checkPluginInvocation.js +0 -32
  236. package/dist/react/parse/createDictionaryUpdates.d.ts +0 -3
  237. package/dist/react/parse/createDictionaryUpdates.js +0 -187
  238. package/dist/react/parse/createInlineUpdates.d.ts +0 -13
  239. package/dist/react/parse/createInlineUpdates.js +0 -161
  240. package/dist/react/utils/flattenDictionary.d.ts +0 -20
  241. package/dist/react/utils/flattenDictionary.js +0 -75
  242. package/dist/react/utils/getEntryAndMetadata.d.ts +0 -5
  243. package/dist/react/utils/getEntryAndMetadata.js +0 -11
  244. package/dist/react/utils/getVariableName.d.ts +0 -25
  245. package/dist/react/utils/getVariableName.js +0 -37
  246. package/dist/setup/agentInstructions.d.ts +0 -24
  247. package/dist/setup/agentInstructions.js +0 -138
  248. package/dist/setup/detectFramework.d.ts +0 -31
  249. package/dist/setup/detectFramework.js +0 -106
  250. package/dist/setup/frameworkUtils.d.ts +0 -3
  251. package/dist/setup/frameworkUtils.js +0 -30
  252. package/dist/setup/instructions/base.md +0 -29
  253. package/dist/setup/instructions/gt-next.md +0 -107
  254. package/dist/setup/instructions/gt-react.md +0 -98
  255. package/dist/setup/userInput.d.ts +0 -4
  256. package/dist/setup/userInput.js +0 -32
  257. package/dist/setup/wizard.d.ts +0 -3
  258. package/dist/setup/wizard.js +0 -147
  259. package/dist/state/recentDownloads.d.ts +0 -12
  260. package/dist/state/recentDownloads.js +0 -18
  261. package/dist/state/translateWarnings.d.ts +0 -10
  262. package/dist/state/translateWarnings.js +0 -13
  263. package/dist/translation/parse.d.ts +0 -17
  264. package/dist/translation/parse.js +0 -77
  265. package/dist/translation/stage.d.ts +0 -3
  266. package/dist/translation/stage.js +0 -44
  267. package/dist/translation/validate.d.ts +0 -14
  268. package/dist/translation/validate.js +0 -100
  269. package/dist/types/branch.d.ts +0 -14
  270. package/dist/types/branch.js +0 -1
  271. package/dist/types/data/json.d.ts +0 -6
  272. package/dist/types/data/json.js +0 -1
  273. package/dist/types/data.d.ts +0 -37
  274. package/dist/types/data.js +0 -1
  275. package/dist/types/files.d.ts +0 -8
  276. package/dist/types/files.js +0 -1
  277. package/dist/types/libraries.d.ts +0 -31
  278. package/dist/types/libraries.js +0 -72
  279. package/dist/types/parsing.d.ts +0 -3
  280. package/dist/types/parsing.js +0 -1
  281. package/dist/utils/addExplicitAnchorIds.d.ts +0 -24
  282. package/dist/utils/addExplicitAnchorIds.js +0 -416
  283. package/dist/utils/constants.d.ts +0 -5
  284. package/dist/utils/constants.js +0 -6
  285. package/dist/utils/credentials.d.ts +0 -12
  286. package/dist/utils/credentials.js +0 -120
  287. package/dist/utils/flattenJsonFiles.d.ts +0 -2
  288. package/dist/utils/flattenJsonFiles.js +0 -36
  289. package/dist/utils/gitDiff.d.ts +0 -8
  290. package/dist/utils/gitDiff.js +0 -34
  291. package/dist/utils/gt.d.ts +0 -2
  292. package/dist/utils/gt.js +0 -2
  293. package/dist/utils/hash.d.ts +0 -6
  294. package/dist/utils/hash.js +0 -11
  295. package/dist/utils/headers.d.ts +0 -1
  296. package/dist/utils/headers.js +0 -14
  297. package/dist/utils/localizeRelativeAssets.d.ts +0 -8
  298. package/dist/utils/localizeRelativeAssets.js +0 -166
  299. package/dist/utils/localizeStaticImports.d.ts +0 -15
  300. package/dist/utils/localizeStaticImports.js +0 -397
  301. package/dist/utils/localizeStaticUrls.d.ts +0 -19
  302. package/dist/utils/localizeStaticUrls.js +0 -450
  303. package/dist/utils/mintlifyTitleFallback.d.ts +0 -6
  304. package/dist/utils/mintlifyTitleFallback.js +0 -80
  305. package/dist/utils/parse/needsCJS.d.ts +0 -20
  306. package/dist/utils/parse/needsCJS.js +0 -72
  307. package/dist/utils/persistPostprocessHashes.d.ts +0 -12
  308. package/dist/utils/persistPostprocessHashes.js +0 -39
  309. package/dist/utils/processAnchorIds.d.ts +0 -6
  310. package/dist/utils/processAnchorIds.js +0 -56
  311. package/dist/utils/processOpenApi.d.ts +0 -8
  312. package/dist/utils/processOpenApi.js +0 -651
  313. package/dist/utils/sanitizeFileContent.d.ts +0 -6
  314. package/dist/utils/sanitizeFileContent.js +0 -29
  315. package/dist/utils/sharedStaticAssets.d.ts +0 -9
  316. package/dist/utils/sharedStaticAssets.js +0 -384
  317. package/dist/utils/validateMdx.d.ts +0 -10
  318. package/dist/utils/validateMdx.js +0 -25
  319. package/dist/utils/wrapPlainUrls.d.ts +0 -8
  320. package/dist/utils/wrapPlainUrls.js +0 -72
  321. package/dist/workflows/download.d.ts +0 -32
  322. package/dist/workflows/download.js +0 -131
  323. package/dist/workflows/enqueue.d.ts +0 -17
  324. package/dist/workflows/enqueue.js +0 -59
  325. package/dist/workflows/setupProject.d.ts +0 -13
  326. package/dist/workflows/setupProject.js +0 -48
  327. package/dist/workflows/stage.d.ts +0 -18
  328. package/dist/workflows/stage.js +0 -59
  329. package/dist/workflows/steps/BranchStep.d.ts +0 -13
  330. package/dist/workflows/steps/BranchStep.js +0 -161
  331. package/dist/workflows/steps/DownloadStep.d.ts +0 -19
  332. package/dist/workflows/steps/DownloadStep.js +0 -131
  333. package/dist/workflows/steps/EnqueueStep.d.ts +0 -15
  334. package/dist/workflows/steps/EnqueueStep.js +0 -33
  335. package/dist/workflows/steps/PollJobsStep.d.ts +0 -31
  336. package/dist/workflows/steps/PollJobsStep.js +0 -288
  337. package/dist/workflows/steps/SetupStep.d.ts +0 -16
  338. package/dist/workflows/steps/SetupStep.js +0 -72
  339. package/dist/workflows/steps/UploadSourcesStep.d.ts +0 -27
  340. package/dist/workflows/steps/UploadSourcesStep.js +0 -131
  341. package/dist/workflows/steps/UploadTranslationsStep.d.ts +0 -22
  342. package/dist/workflows/steps/UploadTranslationsStep.js +0 -71
  343. package/dist/workflows/steps/UserEditDiffsStep.d.ts +0 -11
  344. package/dist/workflows/steps/UserEditDiffsStep.js +0 -30
  345. package/dist/workflows/steps/WorkflowStep.d.ts +0 -4
  346. package/dist/workflows/steps/WorkflowStep.js +0 -2
  347. package/dist/workflows/upload.d.ts +0 -15
  348. package/dist/workflows/upload.js +0 -47
@@ -1,53 +0,0 @@
1
- import fs from 'node:fs';
2
- import path from 'node:path';
3
- import { gt } from '../../utils/gt.js';
4
- /**
5
- * Extracts projectId, defaultLocale, and locales from a next.config.js file.
6
- * @param {string} filePath - The path to the next.config.js file.
7
- * @returns {object|null} - An object containing the extracted values or null if none found or incorrect types.
8
- */
9
- export async function parseNextConfig(filePath) {
10
- // Resolve the absolute path
11
- const absoluteFilePath = path.resolve(filePath);
12
- // Check if the file exists
13
- if (!fs.existsSync(absoluteFilePath)) {
14
- return {};
15
- }
16
- // Read the file content
17
- const fileContent = await fs.promises.readFile(absoluteFilePath, 'utf8');
18
- // Regular expressions to extract the values
19
- const defaultLocaleRegex = /defaultLocale:\s*['"]([^'"]+)['"]/;
20
- const projectIdRegex = /projectId:\s*['"]([^'"]+)['"]/;
21
- const localesRegex = /locales:\s*\[([^\]]+)\]/;
22
- // Extract the values
23
- const defaultLocaleMatch = fileContent.match(defaultLocaleRegex);
24
- const projectIdMatch = fileContent.match(projectIdRegex);
25
- const localesMatch = fileContent.match(localesRegex);
26
- const defaultLocale = defaultLocaleMatch && typeof defaultLocaleMatch[1] === 'string'
27
- ? defaultLocaleMatch[1]
28
- : undefined;
29
- const projectId = projectIdMatch && typeof projectIdMatch[1] === 'string'
30
- ? projectIdMatch[1]
31
- : undefined;
32
- const locales = localesMatch
33
- ? localesMatch[1]
34
- .split(',')
35
- .map((locale) => locale.trim().replace(/['"]/g, ''))
36
- .filter((locale) => typeof locale === 'string')
37
- : undefined;
38
- // Ensure approvedLocales is an array of strings
39
- const validLocales = locales && locales.every((locale) => gt.isValidLocale(locale))
40
- ? locales
41
- : undefined;
42
- // Return the extracted values if they pass type checks or return null
43
- if (defaultLocale || projectId || validLocales) {
44
- return {
45
- ...(defaultLocale && { defaultLocale }),
46
- ...(projectId && { projectId }),
47
- ...(validLocales && { locales: validLocales }),
48
- };
49
- }
50
- else {
51
- return {};
52
- }
53
- }
@@ -1,7 +0,0 @@
1
- import * as t from '@babel/types';
2
- import { NodePath } from '@babel/traverse';
3
- export declare function isHtmlElement(element: t.JSXOpeningElement): boolean;
4
- export declare function isBodyElement(element: t.JSXOpeningElement): boolean;
5
- export declare function hasGTProviderChild(element: t.JSXElement): boolean;
6
- export declare function addDynamicLangAttribute(element: t.JSXOpeningElement): void;
7
- export declare function makeParentFunctionAsync(path: NodePath): boolean;
@@ -1,42 +0,0 @@
1
- import * as t from '@babel/types';
2
- // Helper function to check if is the <html> fragment
3
- export function isHtmlElement(element) {
4
- return (t.isJSXIdentifier(element.name) &&
5
- element.name.name.toLowerCase() === 'html');
6
- }
7
- // Helper function to check if is the <body> fragment
8
- export function isBodyElement(element) {
9
- return (t.isJSXIdentifier(element.name) &&
10
- element.name.name.toLowerCase() === 'body');
11
- }
12
- // Helper function to check if the <body> element has a <GTProvider> child
13
- export function hasGTProviderChild(element) {
14
- return element.children.some((child) => t.isJSXElement(child) &&
15
- t.isJSXIdentifier(child.openingElement.name) &&
16
- child.openingElement.name.name === 'GTProvider');
17
- }
18
- export function addDynamicLangAttribute(element) {
19
- // Remove existing lang attribute if present
20
- const langAttrIndex = element.attributes.findIndex((attr) => t.isJSXAttribute(attr) &&
21
- t.isJSXIdentifier(attr.name) &&
22
- attr.name.name === 'lang');
23
- if (langAttrIndex !== -1) {
24
- element.attributes.splice(langAttrIndex, 1);
25
- }
26
- // Add lang={await getLocale()} attribute
27
- element.attributes.push(t.jsxAttribute(t.jsxIdentifier('lang'), t.jsxExpressionContainer(t.awaitExpression(t.callExpression(t.identifier('getLocale'), [])))));
28
- }
29
- export function makeParentFunctionAsync(path) {
30
- const functionParent = path.getFunctionParent();
31
- if (!functionParent)
32
- return false;
33
- const node = functionParent.node;
34
- if ((t.isFunctionDeclaration(node) ||
35
- t.isFunctionExpression(node) ||
36
- t.isArrowFunctionExpression(node)) &&
37
- !node.async) {
38
- node.async = true;
39
- return true;
40
- }
41
- return false;
42
- }
@@ -1,2 +0,0 @@
1
- import esbuild from 'esbuild';
2
- export default function createESBuildConfig(config?: Record<string, any>): esbuild.BuildOptions;
@@ -1,119 +0,0 @@
1
- import fs from 'node:fs';
2
- import path from 'node:path';
3
- import { displayResolvedPaths } from '../../console/logging.js';
4
- export default function createESBuildConfig(config = {}) {
5
- const esbuildOptions = {
6
- bundle: true,
7
- format: 'cjs',
8
- platform: 'node',
9
- target: 'es2021',
10
- loader: {
11
- '.js': 'jsx',
12
- '.ts': 'ts',
13
- '.css': 'css', // Add CSS loader
14
- },
15
- sourcemap: 'inline',
16
- external: ['server-only'],
17
- define: {
18
- React: 'global.React',
19
- },
20
- plugins: [],
21
- };
22
- // Add the custom plugin to handle 'server-only' imports
23
- esbuildOptions.plugins.push({
24
- name: 'ignore-server-only',
25
- setup(build) {
26
- build.onResolve({ filter: /^server-only$/ }, () => {
27
- return {
28
- path: 'server-only',
29
- namespace: 'ignore-server-only',
30
- };
31
- });
32
- build.onLoad({ filter: /^server-only$/, namespace: 'ignore-server-only' }, () => {
33
- return {
34
- contents: 'module.exports = {};',
35
- loader: 'js',
36
- };
37
- });
38
- },
39
- });
40
- // Add a plugin to handle CSS imports
41
- esbuildOptions.plugins.push({
42
- name: 'css-module',
43
- setup(build) {
44
- build.onResolve({ filter: /\.css$/ }, (args) => {
45
- return {
46
- path: path.resolve(args.resolveDir, args.path),
47
- namespace: 'css-module',
48
- };
49
- });
50
- build.onLoad({ filter: /\.css$/, namespace: 'css-module' }, async (args) => {
51
- const css = await fs.promises.readFile(args.path, 'utf8');
52
- const contents = `
53
- const style = document.createElement('style');
54
- style.textContent = ${JSON.stringify(css)};
55
- document.head.appendChild(style);
56
- `;
57
- return { contents, loader: 'js' };
58
- });
59
- },
60
- });
61
- if (config.compilerOptions) {
62
- if (config.compilerOptions.paths) {
63
- const aliases = {};
64
- const resolvedPaths = [];
65
- for (const [key, value] of Object.entries(config.compilerOptions.paths)) {
66
- if (Array.isArray(value) && typeof value[0] === 'string') {
67
- const resolvedPath = path.resolve(process.cwd(), value[0].replace('/*', ''));
68
- aliases[key.replace('/*', '')] = resolvedPath;
69
- resolvedPaths.push([key, resolvedPath]);
70
- }
71
- }
72
- if (resolvedPaths.length) {
73
- displayResolvedPaths(resolvedPaths);
74
- }
75
- esbuildOptions.plugins = esbuildOptions.plugins || [];
76
- esbuildOptions.plugins.push({
77
- name: 'alias',
78
- setup(build) {
79
- build.onResolve({ filter: /.*/ }, (args) => {
80
- for (const [aliasKey, aliasPath] of Object.entries(aliases)) {
81
- if (args.path.startsWith(`${aliasKey}/`)) {
82
- const resolvedPath = path.resolve(aliasPath, args.path.slice(aliasKey.length + 1));
83
- const extensions = ['.js', '.ts', '.css']; // Add .css to extensions
84
- function resolveWithExtensions(basePath) {
85
- for (const ext of extensions) {
86
- const fullPath = `${basePath}${ext}`;
87
- try {
88
- const realPath = fs.realpathSync(fullPath);
89
- return realPath;
90
- }
91
- catch (_) {
92
- continue;
93
- }
94
- }
95
- return null;
96
- }
97
- try {
98
- const realPath = fs.realpathSync(resolvedPath);
99
- return { path: realPath };
100
- }
101
- catch (err) {
102
- const hasExtension = extensions.some((ext) => resolvedPath.endsWith(ext));
103
- if (!hasExtension) {
104
- const resolvedWithExt = resolveWithExtensions(resolvedPath);
105
- if (resolvedWithExt) {
106
- return { path: resolvedWithExt };
107
- }
108
- }
109
- throw new Error(`Unable to resolve path: ${resolvedPath}`);
110
- }
111
- }
112
- }
113
- });
114
- },
115
- });
116
- }
117
- }
118
- return esbuildOptions;
119
- }
@@ -1,24 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Checks if a node is meaningful. Does not recurse into children.
4
- * @param node - The node to check
5
- * @returns Whether the node is meaningful
6
- */
7
- export declare function isMeaningful(node: t.Node): boolean;
8
- export declare function isStaticExpression(expr: t.Expression | t.JSXEmptyExpression, jsxStatic?: false): {
9
- isStatic: boolean;
10
- value?: string;
11
- };
12
- export declare function isStaticExpression(expr: t.Expression | t.JSXEmptyExpression, jsxStatic?: true): {
13
- isStatic: boolean;
14
- value?: string | boolean | null;
15
- };
16
- export declare function isStaticExpression(expr: t.Expression | t.JSXEmptyExpression, jsxStatic?: boolean): {
17
- isStatic: boolean;
18
- value?: string | boolean | null;
19
- };
20
- export declare function isStaticValue(expr: t.Expression | t.JSXEmptyExpression): boolean;
21
- export declare function isValidIcu(string: string): {
22
- isValid: boolean;
23
- error?: string;
24
- };
@@ -1,123 +0,0 @@
1
- import * as t from '@babel/types';
2
- import { parse } from '@formatjs/icu-messageformat-parser';
3
- const MEANINGFUL_REGEX = /[\p{L}\p{N}]/u;
4
- /**
5
- * Checks if a node is meaningful. Does not recurse into children.
6
- * @param node - The node to check
7
- * @returns Whether the node is meaningful
8
- */
9
- export function isMeaningful(node) {
10
- if (t.isStringLiteral(node) || t.isJSXText(node)) {
11
- return MEANINGFUL_REGEX.test(node.value);
12
- }
13
- // Handle template literals without expressions
14
- if (t.isTemplateLiteral(node) && node.expressions.length === 0) {
15
- return MEANINGFUL_REGEX.test(node.quasis[0].value.raw);
16
- }
17
- if (t.isJSXExpressionContainer(node)) {
18
- const value = isStaticExpression(node.expression);
19
- if (value.isStatic && value.value) {
20
- return MEANINGFUL_REGEX.test(value.value);
21
- }
22
- }
23
- if (t.isBinaryExpression(node)) {
24
- if (node.operator === '+') {
25
- return isMeaningful(node.left) || isMeaningful(node.right);
26
- }
27
- }
28
- return false;
29
- }
30
- /**
31
- * Checks if an expression is static (does not contain any variables which could change at runtime).
32
- * @param expr - The expression to check
33
- * @param ignoreStaticFunction - Whether to ignore static functions
34
- * @returns An object containing the result of the static check
35
- */
36
- export function isStaticExpression(expr, jsxStatic = false) {
37
- // Handle empty expressions
38
- if (t.isJSXEmptyExpression(expr)) {
39
- return { isStatic: true, value: '' };
40
- }
41
- // Handle direct string literals
42
- if (t.isStringLiteral(expr)) {
43
- return { isStatic: true, value: expr.value };
44
- }
45
- // Handle template literals without expressions
46
- if (t.isTemplateLiteral(expr) && expr.expressions.length === 0) {
47
- return {
48
- isStatic: true,
49
- value: jsxStatic ? expr.quasis[0].value.cooked : expr.quasis[0].value.raw,
50
- };
51
- }
52
- // Binary expressions are not static
53
- if (t.isBinaryExpression(expr)) {
54
- // Not a static expression
55
- return { isStatic: false };
56
- }
57
- // Handle parenthesized expressions
58
- if (t.isParenthesizedExpression(expr)) {
59
- return isStaticExpression(expr.expression, jsxStatic);
60
- }
61
- // Handle numeric literals by converting them to strings
62
- if (t.isNumericLiteral(expr)) {
63
- return { isStatic: true, value: String(expr.value) };
64
- }
65
- // Handle unary expressions by converting them to strings
66
- if (t.isUnaryExpression(expr)) {
67
- let value;
68
- let operator = '';
69
- if (expr.operator === '-') {
70
- operator = expr.operator;
71
- }
72
- if (t.isNumericLiteral(expr.argument)) {
73
- if (expr.argument.value === 0) {
74
- value = '0';
75
- }
76
- else {
77
- value = operator + expr.argument.value.toString();
78
- }
79
- }
80
- else {
81
- // invalid
82
- return { isStatic: false };
83
- }
84
- return { isStatic: true, value };
85
- }
86
- // Handle boolean literals by converting them to strings
87
- if (t.isBooleanLiteral(expr)) {
88
- return {
89
- isStatic: true,
90
- value: jsxStatic ? expr.value : String(expr.value),
91
- };
92
- }
93
- // Handle null literal
94
- if (t.isNullLiteral(expr)) {
95
- return { isStatic: true, value: jsxStatic ? null : 'null' };
96
- }
97
- // Not a static expression
98
- return { isStatic: false };
99
- }
100
- export function isStaticValue(expr) {
101
- if (t.isStringLiteral(expr)) {
102
- return true;
103
- }
104
- if (t.isNumericLiteral(expr)) {
105
- return true;
106
- }
107
- if (t.isTemplateLiteral(expr)) {
108
- return true;
109
- }
110
- return false;
111
- }
112
- export function isValidIcu(string) {
113
- try {
114
- parse(string);
115
- }
116
- catch (error) {
117
- return {
118
- isValid: false,
119
- error: error instanceof Error ? error.message : String(error),
120
- };
121
- }
122
- return { isValid: true };
123
- }
@@ -1,9 +0,0 @@
1
- import { NodePath } from '@babel/traverse';
2
- /**
3
- * Builds a map of imported function names to their import paths from a given program path.
4
- * Handles both named imports and default imports.
5
- *
6
- * Example: import { getInfo } from './constants' -> Map { 'getInfo' => './constants' }
7
- * Example: import utils from './utils' -> Map { 'utils' => './utils' }
8
- */
9
- export declare function buildImportMap(programPath: NodePath): Map<string, string>;
@@ -1,30 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Builds a map of imported function names to their import paths from a given program path.
4
- * Handles both named imports and default imports.
5
- *
6
- * Example: import { getInfo } from './constants' -> Map { 'getInfo' => './constants' }
7
- * Example: import utils from './utils' -> Map { 'utils' => './utils' }
8
- */
9
- export function buildImportMap(programPath) {
10
- const importMap = new Map();
11
- programPath.traverse({
12
- ImportDeclaration(importPath) {
13
- if (t.isStringLiteral(importPath.node.source)) {
14
- const importSource = importPath.node.source.value;
15
- importPath.node.specifiers.forEach((spec) => {
16
- if (t.isImportSpecifier(spec) &&
17
- t.isIdentifier(spec.imported) &&
18
- t.isIdentifier(spec.local)) {
19
- importMap.set(spec.local.name, importSource);
20
- }
21
- else if (t.isImportDefaultSpecifier(spec) &&
22
- t.isIdentifier(spec.local)) {
23
- importMap.set(spec.local.name, importSource);
24
- }
25
- });
26
- }
27
- },
28
- });
29
- return importMap;
30
- }
@@ -1,15 +0,0 @@
1
- export declare const DECLARE_VAR_FUNCTION = "declareVar";
2
- export declare const DECLARE_STATIC_FUNCTION = "declareStatic";
3
- export declare const MSG_REGISTRATION_FUNCTION = "msg";
4
- export declare const INLINE_TRANSLATION_HOOK = "useGT";
5
- export declare const INLINE_TRANSLATION_HOOK_ASYNC = "getGT";
6
- export declare const INLINE_MESSAGE_HOOK = "useMessages";
7
- export declare const INLINE_MESSAGE_HOOK_ASYNC = "getMessages";
8
- export declare const TRANSLATION_COMPONENT = "T";
9
- export declare const STATIC_COMPONENT = "Static";
10
- export declare const BRANCH_COMPONENT = "Branch";
11
- export declare const GT_TRANSLATION_FUNCS: string[];
12
- export declare const VARIABLE_COMPONENTS: string[];
13
- export declare const GT_ATTRIBUTES_WITH_SUGAR: readonly ["$id", "$context", "$maxChars"];
14
- export declare const GT_ATTRIBUTES: readonly ["id", "context", "maxChars", "$id", "$context", "$maxChars"];
15
- export declare const DATA_ATTR_PREFIX: "data-";
@@ -1,49 +0,0 @@
1
- export const DECLARE_VAR_FUNCTION = 'declareVar';
2
- export const DECLARE_STATIC_FUNCTION = 'declareStatic';
3
- export const MSG_REGISTRATION_FUNCTION = 'msg';
4
- export const INLINE_TRANSLATION_HOOK = 'useGT';
5
- export const INLINE_TRANSLATION_HOOK_ASYNC = 'getGT';
6
- export const INLINE_MESSAGE_HOOK = 'useMessages';
7
- export const INLINE_MESSAGE_HOOK_ASYNC = 'getMessages';
8
- export const TRANSLATION_COMPONENT = 'T';
9
- export const STATIC_COMPONENT = 'Static';
10
- export const BRANCH_COMPONENT = 'Branch';
11
- // GT translation functions
12
- export const GT_TRANSLATION_FUNCS = [
13
- INLINE_TRANSLATION_HOOK,
14
- INLINE_TRANSLATION_HOOK_ASYNC,
15
- INLINE_MESSAGE_HOOK,
16
- INLINE_MESSAGE_HOOK_ASYNC,
17
- MSG_REGISTRATION_FUNCTION,
18
- DECLARE_VAR_FUNCTION,
19
- DECLARE_STATIC_FUNCTION,
20
- TRANSLATION_COMPONENT,
21
- STATIC_COMPONENT,
22
- 'Var',
23
- 'DateTime',
24
- 'Currency',
25
- 'Num',
26
- BRANCH_COMPONENT,
27
- 'Plural',
28
- ];
29
- // Valid variable components
30
- export const VARIABLE_COMPONENTS = [
31
- 'Var',
32
- 'DateTime',
33
- 'Currency',
34
- 'Num',
35
- STATIC_COMPONENT,
36
- ];
37
- export const GT_ATTRIBUTES_WITH_SUGAR = [
38
- '$id',
39
- '$context',
40
- '$maxChars',
41
- ];
42
- export const GT_ATTRIBUTES = [
43
- 'id',
44
- 'context',
45
- 'maxChars',
46
- ...GT_ATTRIBUTES_WITH_SUGAR,
47
- ];
48
- // Data attribute prefix injected by build tools
49
- export const DATA_ATTR_PREFIX = 'data-';
@@ -1,9 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Get the callee name from an expression: ... = useGT();
4
- * Rule of thumb, only call on expressions with parentheses
5
- */
6
- export declare function getCalleeNameFromExpression(expr: t.Expression): {
7
- namespaceName: string | null;
8
- functionName: string | null;
9
- };
@@ -1,32 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Get the callee name from an expression: ... = useGT();
4
- * Rule of thumb, only call on expressions with parentheses
5
- */
6
- export function getCalleeNameFromExpression(expr) {
7
- // If its an await expression, unwrap it
8
- if (t.isAwaitExpression(expr)) {
9
- return getCalleeNameFromExpression(expr.argument);
10
- }
11
- // Check that this is a call expression eg: func()
12
- if (!t.isCallExpression(expr)) {
13
- return { namespaceName: null, functionName: null };
14
- }
15
- // Get the callee name
16
- const calleeName = expr.callee;
17
- // Simple case: ... = useGT();
18
- if (t.isIdentifier(calleeName)) {
19
- return { namespaceName: null, functionName: calleeName.name };
20
- }
21
- // Member expression: ... = GT.useGT();
22
- if (t.isMemberExpression(calleeName)) {
23
- if (t.isIdentifier(calleeName.object) &&
24
- t.isIdentifier(calleeName.property)) {
25
- return {
26
- namespaceName: calleeName.object.name,
27
- functionName: calleeName.property.name,
28
- };
29
- }
30
- }
31
- return { namespaceName: null, functionName: null };
32
- }
@@ -1,21 +0,0 @@
1
- import { NodePath } from '@babel/traverse';
2
- import { GTLibrary } from '../../../types/libraries.js';
3
- /**
4
- * Constructs tracking for gt related variables of interest
5
- * inlineTranslationPaths: these are string-related translation functions
6
- * translationComponentPaths: these are just <T> components
7
- * importAliases: any other GT related imports
8
- */
9
- export declare function getPathsAndAliases(ast: any, pkgs: GTLibrary[]): {
10
- importAliases: Record<string, string>;
11
- inlineTranslationPaths: Array<{
12
- localName: string;
13
- path: NodePath;
14
- originalName: string;
15
- }>;
16
- translationComponentPaths: Array<{
17
- localName: string;
18
- path: NodePath;
19
- originalName: string;
20
- }>;
21
- };
@@ -1,91 +0,0 @@
1
- import traverseModule from '@babel/traverse';
2
- import { GT_TRANSLATION_FUNCS, INLINE_TRANSLATION_HOOK, INLINE_TRANSLATION_HOOK_ASYNC, INLINE_MESSAGE_HOOK, INLINE_MESSAGE_HOOK_ASYNC, MSG_REGISTRATION_FUNCTION, TRANSLATION_COMPONENT, } from '../../jsx/utils/constants.js';
3
- import { extractImportName } from './parseAst.js';
4
- // Handle CommonJS/ESM interop
5
- const traverse = traverseModule.default || traverseModule;
6
- /**
7
- * Constructs tracking for gt related variables of interest
8
- * inlineTranslationPaths: these are string-related translation functions
9
- * translationComponentPaths: these are just <T> components
10
- * importAliases: any other GT related imports
11
- */
12
- export function getPathsAndAliases(ast, pkgs) {
13
- // First pass: collect imports and process translation functions
14
- const importAliases = {};
15
- const inlineTranslationPaths = [];
16
- const translationComponentPaths = [];
17
- traverse(ast, {
18
- ImportDeclaration(path) {
19
- if (pkgs.some((pkg) => path.node.source.value.startsWith(pkg))) {
20
- const importName = extractImportName(path.node, pkgs, GT_TRANSLATION_FUNCS);
21
- for (const name of importName) {
22
- if (name.original === INLINE_TRANSLATION_HOOK ||
23
- name.original === INLINE_TRANSLATION_HOOK_ASYNC ||
24
- name.original === INLINE_MESSAGE_HOOK ||
25
- name.original === INLINE_MESSAGE_HOOK_ASYNC ||
26
- name.original === MSG_REGISTRATION_FUNCTION) {
27
- inlineTranslationPaths.push({
28
- localName: name.local,
29
- path,
30
- originalName: name.original,
31
- });
32
- }
33
- else if (name.original === TRANSLATION_COMPONENT) {
34
- translationComponentPaths.push({
35
- localName: name.local,
36
- path,
37
- originalName: name.original,
38
- });
39
- }
40
- else {
41
- importAliases[name.local] = name.original;
42
- }
43
- }
44
- }
45
- },
46
- VariableDeclarator(path) {
47
- // Check if the init is a require call
48
- if (path.node.init?.type === 'CallExpression' &&
49
- path.node.init.callee.type === 'Identifier' &&
50
- path.node.init.callee.name === 'require') {
51
- // Check if it's requiring our package
52
- const args = path.node.init.arguments;
53
- if (args.length === 1 &&
54
- args[0].type === 'StringLiteral' &&
55
- pkgs.some((pkg) => args[0].value.startsWith(pkg))) {
56
- const parentPath = path.parentPath;
57
- if (parentPath.isVariableDeclaration()) {
58
- const importName = extractImportName(parentPath.node, pkgs, GT_TRANSLATION_FUNCS);
59
- for (const name of importName) {
60
- if (name.original === INLINE_TRANSLATION_HOOK ||
61
- name.original === INLINE_TRANSLATION_HOOK_ASYNC ||
62
- name.original === INLINE_MESSAGE_HOOK ||
63
- name.original === INLINE_MESSAGE_HOOK_ASYNC) {
64
- inlineTranslationPaths.push({
65
- localName: name.local,
66
- path: parentPath,
67
- originalName: name.original,
68
- });
69
- }
70
- else if (name.original === TRANSLATION_COMPONENT) {
71
- translationComponentPaths.push({
72
- localName: name.local,
73
- path: parentPath,
74
- originalName: name.original,
75
- });
76
- }
77
- else {
78
- importAliases[name.local] = name.original;
79
- }
80
- }
81
- }
82
- }
83
- }
84
- },
85
- });
86
- return {
87
- importAliases,
88
- inlineTranslationPaths,
89
- translationComponentPaths,
90
- };
91
- }
@@ -1,7 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Given an expression, return true if it is a number literal
4
- * @param expr - The expression to check
5
- * @returns True if the expression is a number literal, false otherwise
6
- */
7
- export declare function isNumberLiteral(expr: t.Expression): boolean;
@@ -1,13 +0,0 @@
1
- import * as t from '@babel/types';
2
- /**
3
- * Given an expression, return true if it is a number literal
4
- * @param expr - The expression to check
5
- * @returns True if the expression is a number literal, false otherwise
6
- */
7
- export function isNumberLiteral(expr) {
8
- if (t.isUnaryExpression(expr)) {
9
- return (isNumberLiteral(expr.argument) &&
10
- (expr.operator === '-' || expr.operator === '+'));
11
- }
12
- return t.isNumericLiteral(expr);
13
- }