@generaltranslation/compiler 0.0.0-alpha.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 (327) hide show
  1. package/LICENSE.md +105 -0
  2. package/README.md +274 -0
  3. package/dist/config.d.ts +25 -0
  4. package/dist/config.d.ts.map +1 -0
  5. package/dist/config.js +6 -0
  6. package/dist/config.js.map +1 -0
  7. package/dist/index.d.ts +68 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +132 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/passes/basePass.d.ts +4 -0
  12. package/dist/passes/basePass.d.ts.map +1 -0
  13. package/dist/passes/basePass.js +86 -0
  14. package/dist/passes/basePass.js.map +1 -0
  15. package/dist/passes/handleErrors.d.ts +13 -0
  16. package/dist/passes/handleErrors.d.ts.map +1 -0
  17. package/dist/passes/handleErrors.js +35 -0
  18. package/dist/passes/handleErrors.js.map +1 -0
  19. package/dist/processing/first-pass/processCallExpression.d.ts +12 -0
  20. package/dist/processing/first-pass/processCallExpression.d.ts.map +1 -0
  21. package/dist/processing/first-pass/processCallExpression.js +203 -0
  22. package/dist/processing/first-pass/processCallExpression.js.map +1 -0
  23. package/dist/processing/first-pass/processVariableDeclarator.d.ts +17 -0
  24. package/dist/processing/first-pass/processVariableDeclarator.d.ts.map +1 -0
  25. package/dist/processing/first-pass/processVariableDeclarator.js +22 -0
  26. package/dist/processing/first-pass/processVariableDeclarator.js.map +1 -0
  27. package/dist/processing/index.d.ts +15 -0
  28. package/dist/processing/index.d.ts.map +1 -0
  29. package/dist/processing/index.js +31 -0
  30. package/dist/processing/index.js.map +1 -0
  31. package/dist/processing/processArrowFunctionExpression.d.ts +9 -0
  32. package/dist/processing/processArrowFunctionExpression.d.ts.map +1 -0
  33. package/dist/processing/processArrowFunctionExpression.js +20 -0
  34. package/dist/processing/processArrowFunctionExpression.js.map +1 -0
  35. package/dist/processing/processAssignmentExpression.d.ts +9 -0
  36. package/dist/processing/processAssignmentExpression.d.ts.map +1 -0
  37. package/dist/processing/processAssignmentExpression.js +14 -0
  38. package/dist/processing/processAssignmentExpression.js.map +1 -0
  39. package/dist/processing/processCatchClause.d.ts +9 -0
  40. package/dist/processing/processCatchClause.d.ts.map +1 -0
  41. package/dist/processing/processCatchClause.js +20 -0
  42. package/dist/processing/processCatchClause.js.map +1 -0
  43. package/dist/processing/processClassDeclaration.d.ts +9 -0
  44. package/dist/processing/processClassDeclaration.d.ts.map +1 -0
  45. package/dist/processing/processClassDeclaration.js +20 -0
  46. package/dist/processing/processClassDeclaration.js.map +1 -0
  47. package/dist/processing/processClassMethod.d.ts +9 -0
  48. package/dist/processing/processClassMethod.d.ts.map +1 -0
  49. package/dist/processing/processClassMethod.js +21 -0
  50. package/dist/processing/processClassMethod.js.map +1 -0
  51. package/dist/processing/processClassPrivateMethod.d.ts +9 -0
  52. package/dist/processing/processClassPrivateMethod.d.ts.map +1 -0
  53. package/dist/processing/processClassPrivateMethod.js +21 -0
  54. package/dist/processing/processClassPrivateMethod.js.map +1 -0
  55. package/dist/processing/processForInStatement.d.ts +9 -0
  56. package/dist/processing/processForInStatement.d.ts.map +1 -0
  57. package/dist/processing/processForInStatement.js +20 -0
  58. package/dist/processing/processForInStatement.js.map +1 -0
  59. package/dist/processing/processForOfStatement.d.ts +9 -0
  60. package/dist/processing/processForOfStatement.d.ts.map +1 -0
  61. package/dist/processing/processForOfStatement.js +20 -0
  62. package/dist/processing/processForOfStatement.js.map +1 -0
  63. package/dist/processing/processFunctionDeclaration.d.ts +9 -0
  64. package/dist/processing/processFunctionDeclaration.d.ts.map +1 -0
  65. package/dist/processing/processFunctionDeclaration.js +22 -0
  66. package/dist/processing/processFunctionDeclaration.js.map +1 -0
  67. package/dist/processing/processFunctionExpression.d.ts +13 -0
  68. package/dist/processing/processFunctionExpression.d.ts.map +1 -0
  69. package/dist/processing/processFunctionExpression.js +28 -0
  70. package/dist/processing/processFunctionExpression.js.map +1 -0
  71. package/dist/processing/processImportDeclaration.d.ts +8 -0
  72. package/dist/processing/processImportDeclaration.d.ts.map +1 -0
  73. package/dist/processing/processImportDeclaration.js +13 -0
  74. package/dist/processing/processImportDeclaration.js.map +1 -0
  75. package/dist/processing/processObjectMethod.d.ts +10 -0
  76. package/dist/processing/processObjectMethod.d.ts.map +1 -0
  77. package/dist/processing/processObjectMethod.js +22 -0
  78. package/dist/processing/processObjectMethod.js.map +1 -0
  79. package/dist/processing/processProgram.d.ts +9 -0
  80. package/dist/processing/processProgram.d.ts.map +1 -0
  81. package/dist/processing/processProgram.js +17 -0
  82. package/dist/processing/processProgram.js.map +1 -0
  83. package/dist/processing/processScopeChange.d.ts +8 -0
  84. package/dist/processing/processScopeChange.d.ts.map +1 -0
  85. package/dist/processing/processScopeChange.js +17 -0
  86. package/dist/processing/processScopeChange.js.map +1 -0
  87. package/dist/processing/second-pass/processCallExpression.d.ts +8 -0
  88. package/dist/processing/second-pass/processCallExpression.d.ts.map +1 -0
  89. package/dist/processing/second-pass/processCallExpression.js +147 -0
  90. package/dist/processing/second-pass/processCallExpression.js.map +1 -0
  91. package/dist/processing/second-pass/processVariableDeclarator.d.ts +17 -0
  92. package/dist/processing/second-pass/processVariableDeclarator.d.ts.map +1 -0
  93. package/dist/processing/second-pass/processVariableDeclarator.js +24 -0
  94. package/dist/processing/second-pass/processVariableDeclarator.js.map +1 -0
  95. package/dist/state/ErrorTracker.d.ts +7 -0
  96. package/dist/state/ErrorTracker.d.ts.map +1 -0
  97. package/dist/state/ErrorTracker.js +19 -0
  98. package/dist/state/ErrorTracker.js.map +1 -0
  99. package/dist/state/Logger.d.ts +23 -0
  100. package/dist/state/Logger.d.ts.map +1 -0
  101. package/dist/state/Logger.js +56 -0
  102. package/dist/state/Logger.js.map +1 -0
  103. package/dist/state/ScopeTracker.d.ts +126 -0
  104. package/dist/state/ScopeTracker.d.ts.map +1 -0
  105. package/dist/state/ScopeTracker.js +212 -0
  106. package/dist/state/ScopeTracker.js.map +1 -0
  107. package/dist/state/StringCollector.d.ts +108 -0
  108. package/dist/state/StringCollector.d.ts.map +1 -0
  109. package/dist/state/StringCollector.js +159 -0
  110. package/dist/state/StringCollector.js.map +1 -0
  111. package/dist/state/types.d.ts +21 -0
  112. package/dist/state/types.d.ts.map +1 -0
  113. package/dist/state/types.js +3 -0
  114. package/dist/state/types.js.map +1 -0
  115. package/dist/state/utils/initializeState.d.ts +7 -0
  116. package/dist/state/utils/initializeState.d.ts.map +1 -0
  117. package/dist/state/utils/initializeState.js +30 -0
  118. package/dist/state/utils/initializeState.js.map +1 -0
  119. package/dist/transform/getTrackedVariable.d.ts +14 -0
  120. package/dist/transform/getTrackedVariable.d.ts.map +1 -0
  121. package/dist/transform/getTrackedVariable.js +42 -0
  122. package/dist/transform/getTrackedVariable.js.map +1 -0
  123. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.d.ts +8 -0
  124. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.d.ts.map +1 -0
  125. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.js +84 -0
  126. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.js.map +1 -0
  127. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.d.ts +7 -0
  128. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.d.ts.map +1 -0
  129. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.js +8 -0
  130. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.js.map +1 -0
  131. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.d.ts +7 -0
  132. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.d.ts.map +1 -0
  133. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.js +8 -0
  134. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.js.map +1 -0
  135. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.d.ts +8 -0
  136. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.d.ts.map +1 -0
  137. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.js +160 -0
  138. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.js.map +1 -0
  139. package/dist/transform/injection/injectTComponentParameters.d.ts +7 -0
  140. package/dist/transform/injection/injectTComponentParameters.d.ts.map +1 -0
  141. package/dist/transform/injection/injectTComponentParameters.js +69 -0
  142. package/dist/transform/injection/injectTComponentParameters.js.map +1 -0
  143. package/dist/transform/jsx-children/constructJsxChildren.d.ts +17 -0
  144. package/dist/transform/jsx-children/constructJsxChildren.d.ts.map +1 -0
  145. package/dist/transform/jsx-children/constructJsxChildren.js +387 -0
  146. package/dist/transform/jsx-children/constructJsxChildren.js.map +1 -0
  147. package/dist/transform/jsx-children/index.d.ts +2 -0
  148. package/dist/transform/jsx-children/index.d.ts.map +1 -0
  149. package/dist/transform/jsx-children/index.js +6 -0
  150. package/dist/transform/jsx-children/index.js.map +1 -0
  151. package/dist/transform/jsx-children/utils/getBranchComponentParameters.d.ts +6 -0
  152. package/dist/transform/jsx-children/utils/getBranchComponentParameters.d.ts.map +1 -0
  153. package/dist/transform/jsx-children/utils/getBranchComponentParameters.js +82 -0
  154. package/dist/transform/jsx-children/utils/getBranchComponentParameters.js.map +1 -0
  155. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.d.ts +10 -0
  156. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.d.ts.map +1 -0
  157. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.js +62 -0
  158. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.js.map +1 -0
  159. package/dist/transform/jsx-children/utils/id.d.ts +8 -0
  160. package/dist/transform/jsx-children/utils/id.d.ts.map +1 -0
  161. package/dist/transform/jsx-children/utils/id.js +19 -0
  162. package/dist/transform/jsx-children/utils/id.js.map +1 -0
  163. package/dist/transform/jsx-children/validation/validateChildrenElement.d.ts +6 -0
  164. package/dist/transform/jsx-children/validation/validateChildrenElement.d.ts.map +1 -0
  165. package/dist/transform/jsx-children/validation/validateChildrenElement.js +51 -0
  166. package/dist/transform/jsx-children/validation/validateChildrenElement.js.map +1 -0
  167. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.d.ts +9 -0
  168. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.d.ts.map +1 -0
  169. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.js +57 -0
  170. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.js.map +1 -0
  171. package/dist/transform/jsx-children/validation/validateIdentifier.d.ts +11 -0
  172. package/dist/transform/jsx-children/validation/validateIdentifier.d.ts.map +1 -0
  173. package/dist/transform/jsx-children/validation/validateIdentifier.js +45 -0
  174. package/dist/transform/jsx-children/validation/validateIdentifier.js.map +1 -0
  175. package/dist/transform/jsx-children/validation/validateJsxCall.d.ts +7 -0
  176. package/dist/transform/jsx-children/validation/validateJsxCall.d.ts.map +1 -0
  177. package/dist/transform/jsx-children/validation/validateJsxCall.js +30 -0
  178. package/dist/transform/jsx-children/validation/validateJsxCall.js.map +1 -0
  179. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.d.ts +11 -0
  180. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.d.ts.map +1 -0
  181. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.js +65 -0
  182. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.js.map +1 -0
  183. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.d.ts +9 -0
  184. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.d.ts.map +1 -0
  185. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.js +70 -0
  186. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.js.map +1 -0
  187. package/dist/transform/jsx-children/validation/validateTemplateLiteral.d.ts +9 -0
  188. package/dist/transform/jsx-children/validation/validateTemplateLiteral.d.ts.map +1 -0
  189. package/dist/transform/jsx-children/validation/validateTemplateLiteral.js +17 -0
  190. package/dist/transform/jsx-children/validation/validateTemplateLiteral.js.map +1 -0
  191. package/dist/transform/jsx-children/validation/validateUnaryExpression.d.ts +10 -0
  192. package/dist/transform/jsx-children/validation/validateUnaryExpression.d.ts.map +1 -0
  193. package/dist/transform/jsx-children/validation/validateUnaryExpression.js +65 -0
  194. package/dist/transform/jsx-children/validation/validateUnaryExpression.js.map +1 -0
  195. package/dist/transform/registration/callbacks/registerUseGTCallback.d.ts +7 -0
  196. package/dist/transform/registration/callbacks/registerUseGTCallback.d.ts.map +1 -0
  197. package/dist/transform/registration/callbacks/registerUseGTCallback.js +26 -0
  198. package/dist/transform/registration/callbacks/registerUseGTCallback.js.map +1 -0
  199. package/dist/transform/registration/callbacks/registerUseMessagesCallback.d.ts +7 -0
  200. package/dist/transform/registration/callbacks/registerUseMessagesCallback.d.ts.map +1 -0
  201. package/dist/transform/registration/callbacks/registerUseMessagesCallback.js +11 -0
  202. package/dist/transform/registration/callbacks/registerUseMessagesCallback.js.map +1 -0
  203. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.d.ts +7 -0
  204. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.d.ts.map +1 -0
  205. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.js +11 -0
  206. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.js.map +1 -0
  207. package/dist/transform/registration/registerTranslationComponent.d.ts +7 -0
  208. package/dist/transform/registration/registerTranslationComponent.d.ts.map +1 -0
  209. package/dist/transform/registration/registerTranslationComponent.js +16 -0
  210. package/dist/transform/registration/registerTranslationComponent.js.map +1 -0
  211. package/dist/transform/tracking/trackAssignmentExpression.d.ts +8 -0
  212. package/dist/transform/tracking/trackAssignmentExpression.d.ts.map +1 -0
  213. package/dist/transform/tracking/trackAssignmentExpression.js +71 -0
  214. package/dist/transform/tracking/trackAssignmentExpression.js.map +1 -0
  215. package/dist/transform/tracking/trackCatchClause.d.ts +8 -0
  216. package/dist/transform/tracking/trackCatchClause.d.ts.map +1 -0
  217. package/dist/transform/tracking/trackCatchClause.js +52 -0
  218. package/dist/transform/tracking/trackCatchClause.js.map +1 -0
  219. package/dist/transform/tracking/trackClassDeclaration.d.ts +8 -0
  220. package/dist/transform/tracking/trackClassDeclaration.d.ts.map +1 -0
  221. package/dist/transform/tracking/trackClassDeclaration.js +17 -0
  222. package/dist/transform/tracking/trackClassDeclaration.js.map +1 -0
  223. package/dist/transform/tracking/trackForDeclaration.d.ts +9 -0
  224. package/dist/transform/tracking/trackForDeclaration.d.ts.map +1 -0
  225. package/dist/transform/tracking/trackForDeclaration.js +57 -0
  226. package/dist/transform/tracking/trackForDeclaration.js.map +1 -0
  227. package/dist/transform/tracking/trackFunctionName.d.ts +9 -0
  228. package/dist/transform/tracking/trackFunctionName.d.ts.map +1 -0
  229. package/dist/transform/tracking/trackFunctionName.js +13 -0
  230. package/dist/transform/tracking/trackFunctionName.js.map +1 -0
  231. package/dist/transform/tracking/trackFunctionParams.d.ts +9 -0
  232. package/dist/transform/tracking/trackFunctionParams.d.ts.map +1 -0
  233. package/dist/transform/tracking/trackFunctionParams.js +58 -0
  234. package/dist/transform/tracking/trackFunctionParams.js.map +1 -0
  235. package/dist/transform/tracking/trackImportDeclaration.d.ts +9 -0
  236. package/dist/transform/tracking/trackImportDeclaration.d.ts.map +1 -0
  237. package/dist/transform/tracking/trackImportDeclaration.js +102 -0
  238. package/dist/transform/tracking/trackImportDeclaration.js.map +1 -0
  239. package/dist/transform/tracking/trackLabeledStatement.d.ts +8 -0
  240. package/dist/transform/tracking/trackLabeledStatement.d.ts.map +1 -0
  241. package/dist/transform/tracking/trackLabeledStatement.js +13 -0
  242. package/dist/transform/tracking/trackLabeledStatement.js.map +1 -0
  243. package/dist/transform/tracking/trackOverridingVariable.d.ts +6 -0
  244. package/dist/transform/tracking/trackOverridingVariable.d.ts.map +1 -0
  245. package/dist/transform/tracking/trackOverridingVariable.js +15 -0
  246. package/dist/transform/tracking/trackOverridingVariable.js.map +1 -0
  247. package/dist/transform/tracking/trackVariableDeclarator.d.ts +16 -0
  248. package/dist/transform/tracking/trackVariableDeclarator.d.ts.map +1 -0
  249. package/dist/transform/tracking/trackVariableDeclarator.js +108 -0
  250. package/dist/transform/tracking/trackVariableDeclarator.js.map +1 -0
  251. package/dist/transform/validation/validateTranslationComponentArgs.d.ts +21 -0
  252. package/dist/transform/validation/validateTranslationComponentArgs.d.ts.map +1 -0
  253. package/dist/transform/validation/validateTranslationComponentArgs.js +167 -0
  254. package/dist/transform/validation/validateTranslationComponentArgs.js.map +1 -0
  255. package/dist/utils/constants/gt/constants.d.ts +96 -0
  256. package/dist/utils/constants/gt/constants.d.ts.map +1 -0
  257. package/dist/utils/constants/gt/constants.js +115 -0
  258. package/dist/utils/constants/gt/constants.js.map +1 -0
  259. package/dist/utils/constants/gt/helpers.d.ts +73 -0
  260. package/dist/utils/constants/gt/helpers.d.ts.map +1 -0
  261. package/dist/utils/constants/gt/helpers.js +165 -0
  262. package/dist/utils/constants/gt/helpers.js.map +1 -0
  263. package/dist/utils/constants/other/constants.d.ts +26 -0
  264. package/dist/utils/constants/other/constants.d.ts.map +1 -0
  265. package/dist/utils/constants/other/constants.js +46 -0
  266. package/dist/utils/constants/other/constants.js.map +1 -0
  267. package/dist/utils/constants/other/helpers.d.ts +10 -0
  268. package/dist/utils/constants/other/helpers.d.ts.map +1 -0
  269. package/dist/utils/constants/other/helpers.js +18 -0
  270. package/dist/utils/constants/other/helpers.js.map +1 -0
  271. package/dist/utils/constants/react/constants.d.ts +32 -0
  272. package/dist/utils/constants/react/constants.d.ts.map +1 -0
  273. package/dist/utils/constants/react/constants.js +47 -0
  274. package/dist/utils/constants/react/constants.js.map +1 -0
  275. package/dist/utils/constants/react/helpers.d.ts +15 -0
  276. package/dist/utils/constants/react/helpers.d.ts.map +1 -0
  277. package/dist/utils/constants/react/helpers.js +26 -0
  278. package/dist/utils/constants/react/helpers.js.map +1 -0
  279. package/dist/utils/errors.d.ts +8 -0
  280. package/dist/utils/errors.d.ts.map +1 -0
  281. package/dist/utils/errors.js +26 -0
  282. package/dist/utils/errors.js.map +1 -0
  283. package/dist/utils/parsing/extractIdentifiersFromLVal.d.ts +6 -0
  284. package/dist/utils/parsing/extractIdentifiersFromLVal.d.ts.map +1 -0
  285. package/dist/utils/parsing/extractIdentifiersFromLVal.js +106 -0
  286. package/dist/utils/parsing/extractIdentifiersFromLVal.js.map +1 -0
  287. package/dist/utils/parsing/getAttr.d.ts +6 -0
  288. package/dist/utils/parsing/getAttr.d.ts.map +1 -0
  289. package/dist/utils/parsing/getAttr.js +71 -0
  290. package/dist/utils/parsing/getAttr.js.map +1 -0
  291. package/dist/utils/parsing/getCalleeNameFromExpression.d.ts +10 -0
  292. package/dist/utils/parsing/getCalleeNameFromExpression.d.ts.map +1 -0
  293. package/dist/utils/parsing/getCalleeNameFromExpression.js +69 -0
  294. package/dist/utils/parsing/getCalleeNameFromExpression.js.map +1 -0
  295. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.d.ts +9 -0
  296. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.d.ts.map +1 -0
  297. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.js +14 -0
  298. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.js.map +1 -0
  299. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.d.ts +6 -0
  300. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.d.ts.map +1 -0
  301. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.js +55 -0
  302. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.js.map +1 -0
  303. package/dist/utils/parsing/getStringLiteralFromExpression.d.ts +6 -0
  304. package/dist/utils/parsing/getStringLiteralFromExpression.d.ts.map +1 -0
  305. package/dist/utils/parsing/getStringLiteralFromExpression.js +53 -0
  306. package/dist/utils/parsing/getStringLiteralFromExpression.js.map +1 -0
  307. package/dist/utils/parsing/getStringLiteralFromObjectExpression.d.ts +6 -0
  308. package/dist/utils/parsing/getStringLiteralFromObjectExpression.d.ts.map +1 -0
  309. package/dist/utils/parsing/getStringLiteralFromObjectExpression.js +64 -0
  310. package/dist/utils/parsing/getStringLiteralFromObjectExpression.js.map +1 -0
  311. package/dist/utils/parsing/getTag.d.ts +8 -0
  312. package/dist/utils/parsing/getTag.d.ts.map +1 -0
  313. package/dist/utils/parsing/getTag.js +81 -0
  314. package/dist/utils/parsing/getTag.js.map +1 -0
  315. package/dist/utils/validation/validateChildrenFromObjectExpression.d.ts +10 -0
  316. package/dist/utils/validation/validateChildrenFromObjectExpression.d.ts.map +1 -0
  317. package/dist/utils/validation/validateChildrenFromObjectExpression.js +61 -0
  318. package/dist/utils/validation/validateChildrenFromObjectExpression.js.map +1 -0
  319. package/dist/utils/validation/validateExpressionIsStringLiteral.d.ts +8 -0
  320. package/dist/utils/validation/validateExpressionIsStringLiteral.d.ts.map +1 -0
  321. package/dist/utils/validation/validateExpressionIsStringLiteral.js +52 -0
  322. package/dist/utils/validation/validateExpressionIsStringLiteral.js.map +1 -0
  323. package/dist/utils/validation/validateTranslationFunctionCallback.d.ts +28 -0
  324. package/dist/utils/validation/validateTranslationFunctionCallback.d.ts.map +1 -0
  325. package/dist/utils/validation/validateTranslationFunctionCallback.js +154 -0
  326. package/dist/utils/validation/validateTranslationFunctionCallback.js.map +1 -0
  327. package/package.json +60 -0
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ /**
3
+ * String Collector - Manages translation content across two-pass transformation
4
+ *
5
+ * Pass 1: Collects translation strings, JSX content, and hash data
6
+ * Pass 2: Injects collected data back into useGT()/getGT() calls
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.StringCollector = void 0;
10
+ /**
11
+ * String collector for two-pass transformation system
12
+ */
13
+ class StringCollector {
14
+ constructor() {
15
+ /** Vector of translation calls indexed by counter ID */
16
+ this.contentAggregators = new Map();
17
+ this.jsxAggregators = new Map();
18
+ this.hashAggregators = new Map();
19
+ /** Global counter incremented for each useGT/getGT call encountered */
20
+ this.globalCallCounter = 0;
21
+ }
22
+ /**
23
+ * Increment counter and return the current counter ID for a useGT/getGT call
24
+ * These IDs are deterministic
25
+ */
26
+ incrementCounter() {
27
+ this.globalCallCounter += 1;
28
+ return this.globalCallCounter;
29
+ }
30
+ /**
31
+ * Get current global counter value
32
+ */
33
+ getCounter() {
34
+ return this.globalCallCounter;
35
+ }
36
+ /**
37
+ * Pass 1: Add translation content from a gt() call to a specific useGT/getGT aggregator
38
+ * Multiple content items can be added to the same call
39
+ */
40
+ pushTranslationContent(counterId, content) {
41
+ if (counterId === -1) {
42
+ throw new Error('Cannot have a counterId of -1. You are likely trying to register content from a namespace method invocation.');
43
+ }
44
+ // Get the agreggator
45
+ let aggregator = this.contentAggregators.get(counterId);
46
+ if (!aggregator) {
47
+ aggregator = [content];
48
+ this.contentAggregators.set(counterId, aggregator);
49
+ }
50
+ else {
51
+ aggregator.push(content);
52
+ }
53
+ }
54
+ /**
55
+ * Pass 1: Set JSX translation content for a specific useGT/getGT
56
+ * Only one JSX item can be set per call (overwrites if called multiple times)
57
+ */
58
+ setTranslationJsx(counterId, jsx) {
59
+ this.jsxAggregators.set(counterId, jsx);
60
+ }
61
+ /**
62
+ * Pass 1: Set hash-only content for a specific useGT/getGT
63
+ * Only one hash can be set per call (overwrites if called multiple times)
64
+ */
65
+ setTranslationHash(counterId, hash) {
66
+ this.hashAggregators.set(counterId, hash);
67
+ }
68
+ /**
69
+ * Pass 2: Get translation call data for injection into a specific useGT/getGT call
70
+ */
71
+ getTranslationData(counterId) {
72
+ if (this.contentAggregators.has(counterId)) {
73
+ return {
74
+ type: 'content',
75
+ value: this.contentAggregators.get(counterId),
76
+ };
77
+ }
78
+ else if (this.jsxAggregators.has(counterId)) {
79
+ return { type: 'jsx', value: this.jsxAggregators.get(counterId) };
80
+ }
81
+ else if (this.hashAggregators.has(counterId)) {
82
+ return { type: 'hash', value: this.hashAggregators.get(counterId) };
83
+ }
84
+ }
85
+ /**
86
+ * Get the translation content for a specific useGT/getGT call
87
+ */
88
+ getTranslationContent(counterId) {
89
+ return this.contentAggregators.get(counterId);
90
+ }
91
+ /**
92
+ * Get the translation JSX for a specific <T> component
93
+ */
94
+ getTranslationJsx(counterId) {
95
+ return this.jsxAggregators.get(counterId);
96
+ }
97
+ /**
98
+ * Get the translation hash for a specific other call
99
+ */
100
+ getTranslationHash(counterId) {
101
+ return this.hashAggregators.get(counterId);
102
+ }
103
+ /**
104
+ * Reset all state (useful for testing)
105
+ */
106
+ clear() {
107
+ this.contentAggregators.clear();
108
+ this.jsxAggregators.clear();
109
+ this.hashAggregators.clear();
110
+ this.globalCallCounter = 0;
111
+ }
112
+ /**
113
+ * Reset the counter to zero
114
+ */
115
+ resetCounter() {
116
+ this.globalCallCounter = 0;
117
+ }
118
+ /**
119
+ * Has content
120
+ */
121
+ hasContent() {
122
+ return (this.contentAggregators.size +
123
+ this.jsxAggregators.size +
124
+ this.hashAggregators.size >
125
+ 0);
126
+ }
127
+ /**
128
+ * Helper convert to string
129
+ */
130
+ serialize() {
131
+ const output = {
132
+ contentAggregators: Object.fromEntries(this.contentAggregators),
133
+ jsxAggregators: Object.fromEntries(this.jsxAggregators),
134
+ hashAggregators: Object.fromEntries(this.hashAggregators),
135
+ globalCallCounter: this.globalCallCounter,
136
+ };
137
+ return output;
138
+ }
139
+ /**
140
+ * Helper to repopulate
141
+ */
142
+ unserialize(input) {
143
+ this.contentAggregators = Object.entries(input.contentAggregators).reduce((acc, [key, value]) => {
144
+ acc.set(Number(key), value);
145
+ return acc;
146
+ }, new Map());
147
+ this.jsxAggregators = Object.entries(input.jsxAggregators).reduce((acc, [key, value]) => {
148
+ acc.set(Number(key), value);
149
+ return acc;
150
+ }, new Map());
151
+ this.hashAggregators = Object.entries(input.hashAggregators).reduce((acc, [key, value]) => {
152
+ acc.set(Number(key), value);
153
+ return acc;
154
+ }, new Map());
155
+ this.globalCallCounter = input.globalCallCounter;
156
+ }
157
+ }
158
+ exports.StringCollector = StringCollector;
159
+ //# sourceMappingURL=StringCollector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringCollector.js","sourceRoot":"","sources":["../../src/state/StringCollector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { StringCollector } from './StringCollector';
2
+ import { PluginSettings } from '../config';
3
+ import { Logger } from './Logger';
4
+ import { ErrorTracker } from './ErrorTracker';
5
+ import { ScopeTracker } from './ScopeTracker';
6
+ /**
7
+ * Plugin state for processing files
8
+ * Matches the Rust TransformVisitor structure
9
+ */
10
+ export interface TransformState {
11
+ settings: PluginSettings;
12
+ stringCollector: StringCollector;
13
+ scopeTracker: ScopeTracker;
14
+ logger: Logger;
15
+ errorTracker: ErrorTracker;
16
+ statistics: {
17
+ jsxElementCount: number;
18
+ dynamicContentViolations: number;
19
+ };
20
+ }
21
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/state/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE;QACV,eAAe,EAAE,MAAM,CAAC;QACxB,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;CACH"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/state/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { GTUnpluginOptions } from '../..';
2
+ import { TransformState } from '../types';
3
+ /**
4
+ * Initialize processing state for a file
5
+ */
6
+ export declare function initializeState(options: GTUnpluginOptions, filename: string): TransformState;
7
+ //# sourceMappingURL=initializeState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initializeState.d.ts","sourceRoot":"","sources":["../../../src/state/utils/initializeState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAO1C;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,MAAM,GACf,cAAc,CAmBhB"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initializeState = initializeState;
4
+ const StringCollector_1 = require("../StringCollector");
5
+ const ScopeTracker_1 = require("../ScopeTracker");
6
+ const Logger_1 = require("../Logger");
7
+ const ErrorTracker_1 = require("../ErrorTracker");
8
+ /**
9
+ * Initialize processing state for a file
10
+ */
11
+ function initializeState(options, filename) {
12
+ const settings = {
13
+ logLevel: options.logLevel || 'warn',
14
+ compileTimeHash: options.compileTimeHash || false,
15
+ disableBuildChecks: options.disableBuildChecks || false,
16
+ filename: filename,
17
+ };
18
+ return {
19
+ settings,
20
+ stringCollector: new StringCollector_1.StringCollector(),
21
+ scopeTracker: new ScopeTracker_1.ScopeTracker(),
22
+ logger: new Logger_1.Logger(settings.logLevel),
23
+ errorTracker: new ErrorTracker_1.ErrorTracker(),
24
+ statistics: {
25
+ jsxElementCount: 0,
26
+ dynamicContentViolations: 0,
27
+ },
28
+ };
29
+ }
30
+ //# sourceMappingURL=initializeState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initializeState.js","sourceRoot":"","sources":["../../../src/state/utils/initializeState.ts"],"names":[],"mappings":";;AAWA,0CAsBC;AA9BD,wDAAqD;AACrD,kDAA+C;AAC/C,sCAAmC;AACnC,kDAA+C;AAE/C;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAA0B,EAC1B,QAAgB;IAEhB,MAAM,QAAQ,GAAmB;QAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,MAAM;QACpC,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,KAAK;QACjD,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,KAAK;QACvD,QAAQ,EAAE,QAAQ;KACnB,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,eAAe,EAAE,IAAI,iCAAe,EAAE;QACtC,YAAY,EAAE,IAAI,2BAAY,EAAE;QAChC,MAAM,EAAE,IAAI,eAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACrC,YAAY,EAAE,IAAI,2BAAY,EAAE;QAChC,UAAU,EAAE;YACV,eAAe,EAAE,CAAC;YAClB,wBAAwB,EAAE,CAAC;SAC5B;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { ScopeTracker } from '../state/ScopeTracker';
2
+ import { VariableType } from '../state/ScopeTracker';
3
+ /**
4
+ * Given state, namespace, and functionname, return:
5
+ * - canonicalName
6
+ * - identifier
7
+ * - type
8
+ */
9
+ export declare function getTrackedVariable(scopeTracker: ScopeTracker, namespaceName: string | null, functionName: string | null): {
10
+ canonicalName: string | undefined;
11
+ identifier: number | undefined;
12
+ type: VariableType | undefined;
13
+ };
14
+ //# sourceMappingURL=getTrackedVariable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTrackedVariable.d.ts","sourceRoot":"","sources":["../../src/transform/getTrackedVariable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B;IACD,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,IAAI,EAAE,YAAY,GAAG,SAAS,CAAC;CAChC,CAgCA"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTrackedVariable = getTrackedVariable;
4
+ /**
5
+ * Given state, namespace, and functionname, return:
6
+ * - canonicalName
7
+ * - identifier
8
+ * - type
9
+ */
10
+ function getTrackedVariable(scopeTracker, namespaceName, functionName) {
11
+ var _a, _b, _c;
12
+ if (!functionName) {
13
+ return {
14
+ canonicalName: undefined,
15
+ identifier: undefined,
16
+ type: undefined,
17
+ };
18
+ }
19
+ // If namespace, no alias resolution needed
20
+ if (namespaceName) {
21
+ if (!scopeTracker.hasNamespaceImport(namespaceName)) {
22
+ return {
23
+ canonicalName: undefined,
24
+ identifier: undefined,
25
+ type: undefined,
26
+ };
27
+ }
28
+ return {
29
+ canonicalName: functionName,
30
+ identifier: undefined,
31
+ type: 'generaltranslation', // TODO: revisit this when we add support for multiple namespaces
32
+ };
33
+ }
34
+ // Resolve aliased function name
35
+ const variable = scopeTracker.getVariable(functionName);
36
+ return {
37
+ canonicalName: (_a = variable === null || variable === void 0 ? void 0 : variable.canonicalName) !== null && _a !== void 0 ? _a : undefined,
38
+ identifier: (_b = variable === null || variable === void 0 ? void 0 : variable.identifier) !== null && _b !== void 0 ? _b : undefined,
39
+ type: (_c = variable === null || variable === void 0 ? void 0 : variable.type) !== null && _c !== void 0 ? _c : undefined,
40
+ };
41
+ }
42
+ //# sourceMappingURL=getTrackedVariable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTrackedVariable.js","sourceRoot":"","sources":["../../src/transform/getTrackedVariable.ts"],"names":[],"mappings":";;AASA,gDAwCC;AA9CD;;;;;GAKG;AACH,SAAgB,kBAAkB,CAChC,YAA0B,EAC1B,aAA4B,EAC5B,YAA2B;;IAM3B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;YACL,aAAa,EAAE,SAAS;YACxB,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IAED,2CAA2C;IAC3C,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC;YACpD,OAAO;gBACL,aAAa,EAAE,SAAS;gBACxB,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,SAAS;aAChB,CAAC;QACJ,CAAC;QACD,OAAO;YACL,aAAa,EAAE,YAAY;YAC3B,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,oBAAoB,EAAE,iEAAiE;SAC9F,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACxD,OAAO;QACL,aAAa,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,mCAAI,SAAS;QACnD,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,SAAS;QAC7C,IAAI,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,SAAS;KAClC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { TransformState } from '../../../state/types';
2
+ import * as t from '@babel/types';
3
+ /**
4
+ * Injects parameters into invocation of useGT_callback(..., { $_hash })
5
+ * @param parentIdentifier - identifier from callback declaration (ie maps to useGT() call)
6
+ */
7
+ export declare function injectUseGTCallbackParameters(callExpr: t.CallExpression, state: TransformState): void;
8
+ //# sourceMappingURL=injectUseGTCallbackParameters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseGTCallbackParameters.d.ts","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseGTCallbackParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,CAAC,CAAC,cAAc,EAC1B,KAAK,EAAE,cAAc,QA4CtB"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.injectUseGTCallbackParameters = injectUseGTCallbackParameters;
37
+ const t = __importStar(require("@babel/types"));
38
+ const validateTranslationFunctionCallback_1 = require("../../../utils/validation/validateTranslationFunctionCallback");
39
+ /**
40
+ * Injects parameters into invocation of useGT_callback(..., { $_hash })
41
+ * @param parentIdentifier - identifier from callback declaration (ie maps to useGT() call)
42
+ */
43
+ function injectUseGTCallbackParameters(callExpr, state) {
44
+ // Increment counter
45
+ const counterId = state.stringCollector.incrementCounter();
46
+ // Check for existing hash
47
+ const useGTCallbackParams = (0, validateTranslationFunctionCallback_1.validateUseGTCallback)(callExpr);
48
+ state.errorTracker.addErrors(useGTCallbackParams.errors);
49
+ if (useGTCallbackParams.errors.length > 0) {
50
+ return;
51
+ }
52
+ if (useGTCallbackParams.hash !== undefined) {
53
+ return;
54
+ }
55
+ // Get hash from string collector
56
+ const translationHash = state.stringCollector.getTranslationHash(counterId);
57
+ if (translationHash === undefined) {
58
+ return;
59
+ }
60
+ // Inject parameters into invocation
61
+ const newEntry = t.objectProperty(t.stringLiteral('$_hash'), t.stringLiteral(translationHash.hash));
62
+ if (callExpr.arguments.length === 1) {
63
+ // add a new object to arguments
64
+ callExpr.arguments.push(t.objectExpression([newEntry]));
65
+ }
66
+ else if (callExpr.arguments.length === 2) {
67
+ if (t.isObjectExpression(callExpr.arguments[1])) {
68
+ // add a new object to second argument
69
+ callExpr.arguments[1].properties.push(newEntry);
70
+ }
71
+ else if (t.isExpression(callExpr.arguments[1])) {
72
+ // convert identifier to object expression with spread
73
+ callExpr.arguments[1] = t.objectExpression([
74
+ t.spreadElement(callExpr.arguments[1]),
75
+ newEntry,
76
+ ]);
77
+ }
78
+ else if (t.isArgumentPlaceholder(callExpr.arguments[1])) {
79
+ // add a new object to second argument
80
+ callExpr.arguments[1] = t.objectExpression([newEntry]);
81
+ }
82
+ }
83
+ }
84
+ //# sourceMappingURL=injectUseGTCallbackParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseGTCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseGTCallbackParameters.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,sEA8CC;AApDD,gDAAkC;AAClC,uHAAsG;AACtG;;;GAGG;AACH,SAAgB,6BAA6B,CAC3C,QAA0B,EAC1B,KAAqB;IAErB,oBAAoB;IACpB,MAAM,SAAS,GAAG,KAAK,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;IAE3D,0BAA0B;IAC1B,MAAM,mBAAmB,GAAG,IAAA,2DAAqB,EAAC,QAAQ,CAAC,CAAC;IAC5D,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO;IACT,CAAC;IACD,IAAI,mBAAmB,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO;IACT,CAAC;IAED,iCAAiC;IACjC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC5E,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IAED,oCAAoC;IACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,cAAc,CAC/B,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EACzB,CAAC,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CACtC,CAAC;IACF,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,gCAAgC;QAChC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,sCAAsC;YACtC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;aAAM,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,sDAAsD;YACtD,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC;gBACzC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACtC,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,sCAAsC;YACtC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { TransformState } from '../../../state/types';
2
+ import * as t from '@babel/types';
3
+ /**
4
+ * Injects parameters into invocation of useMessages_callback(..., { $_hash })
5
+ */
6
+ export declare function injectUseMessagesCallbackParameters(callExpr: t.CallExpression, state: TransformState): void;
7
+ //# sourceMappingURL=injectUseMessagesCallbackParameters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseMessagesCallbackParameters.d.ts","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseMessagesCallbackParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,CAAC,CAAC,cAAc,EAC1B,KAAK,EAAE,cAAc,QACnB"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.injectUseMessagesCallbackParameters = injectUseMessagesCallbackParameters;
4
+ /**
5
+ * Injects parameters into invocation of useMessages_callback(..., { $_hash })
6
+ */
7
+ function injectUseMessagesCallbackParameters(callExpr, state) { }
8
+ //# sourceMappingURL=injectUseMessagesCallbackParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseMessagesCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseMessagesCallbackParameters.ts"],"names":[],"mappings":";;AAMA,kFAGI;AANJ;;GAEG;AACH,SAAgB,mCAAmC,CACjD,QAA0B,EAC1B,KAAqB,IACpB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { TransformState } from '../../../state/types';
2
+ import * as t from '@babel/types';
3
+ /**
4
+ * Injects parameters into invocation of useTranslations_callback(..., { $_hash })
5
+ */
6
+ export declare function injectUseTranslationsCallbackParameters(callExpr: t.CallExpression, state: TransformState): void;
7
+ //# sourceMappingURL=injectUseTranslationsCallbackParameters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseTranslationsCallbackParameters.d.ts","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseTranslationsCallbackParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC;;GAEG;AACH,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,CAAC,CAAC,cAAc,EAC1B,KAAK,EAAE,cAAc,QACnB"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.injectUseTranslationsCallbackParameters = injectUseTranslationsCallbackParameters;
4
+ /**
5
+ * Injects parameters into invocation of useTranslations_callback(..., { $_hash })
6
+ */
7
+ function injectUseTranslationsCallbackParameters(callExpr, state) { }
8
+ //# sourceMappingURL=injectUseTranslationsCallbackParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectUseTranslationsCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseTranslationsCallbackParameters.ts"],"names":[],"mappings":";;AAMA,0FAGI;AANJ;;GAEG;AACH,SAAgB,uCAAuC,CACrD,QAA0B,EAC1B,KAAqB,IACpB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { TransformState } from '../../state/types';
2
+ import * as t from '@babel/types';
3
+ /**
4
+ * inject parameters into invocation of translation function
5
+ * - useGT(messages=[{hash, message, id, context}])
6
+ */
7
+ export declare function injectCallbackDeclaratorFunctionParameters(varDeclarator: t.VariableDeclarator, state: TransformState): void;
8
+ //# sourceMappingURL=injectCallbackDeclaratorFunctionParameters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectCallbackDeclaratorFunctionParameters.d.ts","sourceRoot":"","sources":["../../../src/transform/injection/injectCallbackDeclaratorFunctionParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AASlC;;;GAGG;AACH,wBAAgB,0CAA0C,CACxD,aAAa,EAAE,CAAC,CAAC,kBAAkB,EACnC,KAAK,EAAE,cAAc,GACpB,IAAI,CAiFN"}
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.injectCallbackDeclaratorFunctionParameters = injectCallbackDeclaratorFunctionParameters;
37
+ const t = __importStar(require("@babel/types"));
38
+ const getTrackedVariable_1 = require("../getTrackedVariable");
39
+ const getCalleeNameFromExpressionWrapper_1 = require("../../utils/parsing/getCalleeNameFromExpressionWrapper");
40
+ const helpers_1 = require("../../utils/constants/gt/helpers");
41
+ const constants_1 = require("../../utils/constants/gt/constants");
42
+ const extractIdentifiersFromLVal_1 = require("../../utils/parsing/extractIdentifiersFromLVal");
43
+ const trackOverridingVariable_1 = require("../tracking/trackOverridingVariable");
44
+ const errors_1 = require("../../utils/errors");
45
+ /**
46
+ * inject parameters into invocation of translation function
47
+ * - useGT(messages=[{hash, message, id, context}])
48
+ */
49
+ function injectCallbackDeclaratorFunctionParameters(varDeclarator, state) {
50
+ var _a;
51
+ // Ignore non-LVal assignments
52
+ if (!t.isLVal(varDeclarator.id)) {
53
+ return;
54
+ }
55
+ // Get function name from callee
56
+ const { namespaceName, functionName } = (0, getCalleeNameFromExpressionWrapper_1.getCalleeNameFromExpressionWrapper)(varDeclarator.init);
57
+ if (!functionName) {
58
+ return;
59
+ }
60
+ // Get the canonical function name
61
+ const { canonicalName, type } = (0, getTrackedVariable_1.getTrackedVariable)(state.scopeTracker, namespaceName, functionName);
62
+ if (!canonicalName) {
63
+ return;
64
+ }
65
+ // Extract identifiers from the LVal
66
+ const identifiers = (0, extractIdentifiersFromLVal_1.extractIdentifiersFromLVal)(varDeclarator.id);
67
+ // Validate the type
68
+ if (type !== 'generaltranslation' ||
69
+ !(0, helpers_1.isGTFunctionWithCallbacks)(canonicalName)) {
70
+ // Track as an overriding variable
71
+ for (const identifier of identifiers) {
72
+ (0, trackOverridingVariable_1.trackOverridingVariable)(identifier, state.scopeTracker);
73
+ }
74
+ return;
75
+ }
76
+ // There can only be one callback defined for const gt = useGT()
77
+ if (identifiers.length !== 1) {
78
+ state.logger.logError(`Multiple identifiers found for GT function with callbacks: ${canonicalName}. Parameter injection failed.` +
79
+ (0, errors_1.createErrorLocation)(varDeclarator.id));
80
+ return;
81
+ }
82
+ const identifier = identifiers[0];
83
+ // Inject the parameters into the call expression
84
+ const expression = getFunctionInvocation(varDeclarator);
85
+ if (!expression) {
86
+ state.logger.logError(`No valid function invocation found for ${functionName}. Parameter injection failed.` +
87
+ (0, errors_1.createErrorLocation)(varDeclarator.id));
88
+ return;
89
+ }
90
+ if (expression.arguments.length > 0) {
91
+ // Found existing arguments, skip injection
92
+ return;
93
+ }
94
+ // Look up identifier
95
+ const id = (_a = state.scopeTracker.getVariable(identifier)) === null || _a === void 0 ? void 0 : _a.identifier;
96
+ if (!id) {
97
+ state.logger.logError(`No translation callback variable found for ${identifier}. Parameter injection failed.` +
98
+ (0, errors_1.createErrorLocation)(varDeclarator.id));
99
+ return;
100
+ }
101
+ // Inject into the callees
102
+ switch (canonicalName) {
103
+ case constants_1.GT_FUNCTIONS_WITH_CALLBACKS.useGT:
104
+ case constants_1.GT_FUNCTIONS_WITH_CALLBACKS.getGT:
105
+ injectUseGTParameters(expression, state, id);
106
+ break;
107
+ default:
108
+ return;
109
+ }
110
+ }
111
+ /**
112
+ * Inject the parameters into the useGT/getGT call
113
+ * @param arguments - The arguments
114
+ * @param state - The state
115
+ * @param identifier - The identifier
116
+ * @param translationContent - The translation content
117
+ */
118
+ function injectUseGTParameters(expression, state, id) {
119
+ // Get the corresponding callback injection data
120
+ const translationContent = state.stringCollector.getTranslationContent(id);
121
+ if (!translationContent) {
122
+ return;
123
+ }
124
+ // Inject the parameters into the call expression
125
+ expression.arguments = [
126
+ t.arrayExpression(translationContent.map((content) => t.objectExpression([
127
+ t.objectProperty(t.identifier('hash'), t.stringLiteral(content.hash)),
128
+ t.objectProperty(t.identifier('message'), t.stringLiteral(content.message)),
129
+ ...(content.id
130
+ ? [
131
+ t.objectProperty(t.identifier('id'), t.stringLiteral(content.id)),
132
+ ]
133
+ : []),
134
+ ...(content.context
135
+ ? [
136
+ t.objectProperty(t.identifier('context'), t.stringLiteral(content.context)),
137
+ ]
138
+ : []),
139
+ ]))),
140
+ ];
141
+ }
142
+ /**
143
+ * Get the function invocation from the variable declarator
144
+ * @param varDeclarator - The variable declarator
145
+ */
146
+ function getFunctionInvocation(varDeclarator) {
147
+ const expression = varDeclarator.init;
148
+ if (!expression) {
149
+ // failed
150
+ return;
151
+ }
152
+ if (t.isCallExpression(expression)) {
153
+ return expression;
154
+ }
155
+ if (t.isAwaitExpression(expression) &&
156
+ t.isCallExpression(expression.argument)) {
157
+ return expression.argument;
158
+ }
159
+ }
160
+ //# sourceMappingURL=injectCallbackDeclaratorFunctionParameters.js.map