@generaltranslation/compiler 1.3.21 → 1.3.23

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 (238) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +23 -0
  2. package/dist/config.js +32 -27
  3. package/dist/config.js.map +1 -1
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +120 -187
  7. package/dist/index.js.map +1 -1
  8. package/dist/passes/basePass.js +40 -83
  9. package/dist/passes/basePass.js.map +1 -1
  10. package/dist/passes/collectionPass.js +18 -11
  11. package/dist/passes/collectionPass.js.map +1 -1
  12. package/dist/passes/handleErrors.js +21 -30
  13. package/dist/passes/handleErrors.js.map +1 -1
  14. package/dist/passes/injectionPass.js +15 -9
  15. package/dist/passes/injectionPass.js.map +1 -1
  16. package/dist/passes/jsxInsertionPass.js +33 -31
  17. package/dist/passes/jsxInsertionPass.js.map +1 -1
  18. package/dist/passes/macroExpansionPass.js +28 -26
  19. package/dist/passes/macroExpansionPass.js.map +1 -1
  20. package/dist/passes/runtimeTranslatePass.js +37 -35
  21. package/dist/passes/runtimeTranslatePass.js.map +1 -1
  22. package/dist/processing/collection/processCallExpression.js +144 -249
  23. package/dist/processing/collection/processCallExpression.js.map +1 -1
  24. package/dist/processing/collection/processTaggedTemplateExpression.js +38 -75
  25. package/dist/processing/collection/processTaggedTemplateExpression.js.map +1 -1
  26. package/dist/processing/collection/processVariableDeclarator.js +20 -18
  27. package/dist/processing/collection/processVariableDeclarator.js.map +1 -1
  28. package/dist/processing/index.js +29 -31
  29. package/dist/processing/injection/processCallExpression.js +69 -142
  30. package/dist/processing/injection/processCallExpression.js.map +1 -1
  31. package/dist/processing/injection/processVariableDeclarator.js +22 -20
  32. package/dist/processing/injection/processVariableDeclarator.js.map +1 -1
  33. package/dist/processing/jsx-insertion/processCallExpression.js +284 -393
  34. package/dist/processing/jsx-insertion/processCallExpression.js.map +1 -1
  35. package/dist/processing/jsx-insertion/processImportDeclaration.js +37 -83
  36. package/dist/processing/jsx-insertion/processImportDeclaration.js.map +1 -1
  37. package/dist/processing/jsx-insertion/processProgram.js +26 -66
  38. package/dist/processing/jsx-insertion/processProgram.js.map +1 -1
  39. package/dist/processing/macro-expansion/processImportDeclaration.js +21 -55
  40. package/dist/processing/macro-expansion/processImportDeclaration.js.map +1 -1
  41. package/dist/processing/macro-expansion/processProgram.js +20 -26
  42. package/dist/processing/macro-expansion/processProgram.js.map +1 -1
  43. package/dist/processing/macro-expansion/processTaggedTemplateExpression.js +33 -69
  44. package/dist/processing/macro-expansion/processTaggedTemplateExpression.js.map +1 -1
  45. package/dist/processing/processArrowFunctionExpression.js +18 -16
  46. package/dist/processing/processArrowFunctionExpression.js.map +1 -1
  47. package/dist/processing/processAssignmentExpression.js +12 -10
  48. package/dist/processing/processAssignmentExpression.js.map +1 -1
  49. package/dist/processing/processCatchClause.js +18 -16
  50. package/dist/processing/processCatchClause.js.map +1 -1
  51. package/dist/processing/processClassDeclaration.js +18 -16
  52. package/dist/processing/processClassDeclaration.js.map +1 -1
  53. package/dist/processing/processClassMethod.js +18 -17
  54. package/dist/processing/processClassMethod.js.map +1 -1
  55. package/dist/processing/processClassPrivateMethod.js +18 -17
  56. package/dist/processing/processClassPrivateMethod.js.map +1 -1
  57. package/dist/processing/processForInStatement.js +18 -16
  58. package/dist/processing/processForInStatement.js.map +1 -1
  59. package/dist/processing/processForOfStatement.js +18 -16
  60. package/dist/processing/processForOfStatement.js.map +1 -1
  61. package/dist/processing/processFunctionDeclaration.js +20 -18
  62. package/dist/processing/processFunctionDeclaration.js.map +1 -1
  63. package/dist/processing/processFunctionExpression.js +26 -24
  64. package/dist/processing/processFunctionExpression.js.map +1 -1
  65. package/dist/processing/processImportDeclaration.js +11 -9
  66. package/dist/processing/processImportDeclaration.js.map +1 -1
  67. package/dist/processing/processObjectMethod.js +19 -18
  68. package/dist/processing/processObjectMethod.js.map +1 -1
  69. package/dist/processing/processProgram.js +13 -13
  70. package/dist/processing/processProgram.js.map +1 -1
  71. package/dist/processing/processScopeChange.js +15 -13
  72. package/dist/processing/processScopeChange.js.map +1 -1
  73. package/dist/processing/runtime-translate/processImportDeclaration.js +30 -63
  74. package/dist/processing/runtime-translate/processImportDeclaration.js.map +1 -1
  75. package/dist/processing/runtime-translate/processProgram.js +34 -57
  76. package/dist/processing/runtime-translate/processProgram.js.map +1 -1
  77. package/dist/state/ErrorTracker.js +18 -17
  78. package/dist/state/ErrorTracker.js.map +1 -1
  79. package/dist/state/Logger.js +42 -52
  80. package/dist/state/Logger.js.map +1 -1
  81. package/dist/state/ScopeTracker.d.ts +11 -2
  82. package/dist/state/ScopeTracker.d.ts.map +1 -1
  83. package/dist/state/ScopeTracker.js +154 -209
  84. package/dist/state/ScopeTracker.js.map +1 -1
  85. package/dist/state/StringCollector.d.ts +9 -2
  86. package/dist/state/StringCollector.d.ts.map +1 -1
  87. package/dist/state/StringCollector.js +165 -184
  88. package/dist/state/StringCollector.js.map +1 -1
  89. package/dist/state/types.js +1 -3
  90. package/dist/state/utils/initializeState.js +62 -67
  91. package/dist/state/utils/initializeState.js.map +1 -1
  92. package/dist/transform/getTrackedVariable.js +33 -38
  93. package/dist/transform/getTrackedVariable.js.map +1 -1
  94. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.js +19 -27
  95. package/dist/transform/injection/callbacks/injectUseGTCallbackParameters.js.map +1 -1
  96. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.js +8 -6
  97. package/dist/transform/injection/callbacks/injectUseMessagesCallbackParameters.js.map +1 -1
  98. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.js +8 -6
  99. package/dist/transform/injection/callbacks/injectUseTranslationsCallbackParameters.js.map +1 -1
  100. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.js +74 -155
  101. package/dist/transform/injection/injectCallbackDeclaratorFunctionParameters.js.map +1 -1
  102. package/dist/transform/injection/injectHashIntoTranslationOptions.js +21 -61
  103. package/dist/transform/injection/injectHashIntoTranslationOptions.js.map +1 -1
  104. package/dist/transform/injection/injectStandaloneTFunctionParameters.js +21 -27
  105. package/dist/transform/injection/injectStandaloneTFunctionParameters.js.map +1 -1
  106. package/dist/transform/injection/injectTComponentParameters.js +25 -65
  107. package/dist/transform/injection/injectTComponentParameters.js.map +1 -1
  108. package/dist/transform/jsx-children/constructJsxChildren.d.ts +1 -1
  109. package/dist/transform/jsx-children/constructJsxChildren.d.ts.map +1 -1
  110. package/dist/transform/jsx-children/constructJsxChildren.js +273 -392
  111. package/dist/transform/jsx-children/constructJsxChildren.js.map +1 -1
  112. package/dist/transform/jsx-children/errors.js +16 -6
  113. package/dist/transform/jsx-children/errors.js.map +1 -1
  114. package/dist/transform/jsx-children/index.js +3 -6
  115. package/dist/transform/jsx-children/utils/getBranchComponentParameters.js +26 -85
  116. package/dist/transform/jsx-children/utils/getBranchComponentParameters.js.map +1 -1
  117. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.js +33 -66
  118. package/dist/transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.js.map +1 -1
  119. package/dist/transform/jsx-children/utils/id.js +18 -17
  120. package/dist/transform/jsx-children/utils/id.js.map +1 -1
  121. package/dist/transform/jsx-children/validation/validateChildrenElement.js +13 -47
  122. package/dist/transform/jsx-children/validation/validateChildrenElement.js.map +1 -1
  123. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.js +25 -63
  124. package/dist/transform/jsx-children/validation/validateChildrenFromArgs.js.map +1 -1
  125. package/dist/transform/jsx-children/validation/validateIdentifier.js +38 -41
  126. package/dist/transform/jsx-children/validation/validateIdentifier.js.map +1 -1
  127. package/dist/transform/jsx-children/validation/validateJsxCall.js +15 -26
  128. package/dist/transform/jsx-children/validation/validateJsxCall.js.map +1 -1
  129. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.js +33 -61
  130. package/dist/transform/jsx-children/validation/validateNameFieldForVarComponent.js.map +1 -1
  131. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.js +38 -66
  132. package/dist/transform/jsx-children/validation/validateStringLiteralPropertyFromArg.js.map +1 -1
  133. package/dist/transform/jsx-children/validation/validateTemplateLiteral.js +17 -13
  134. package/dist/transform/jsx-children/validation/validateTemplateLiteral.js.map +1 -1
  135. package/dist/transform/jsx-children/validation/validateUnaryExpression.js +26 -61
  136. package/dist/transform/jsx-children/validation/validateUnaryExpression.js.map +1 -1
  137. package/dist/transform/jsx-insertion/injectJsxInsertionImport.js +16 -48
  138. package/dist/transform/jsx-insertion/injectJsxInsertionImport.js.map +1 -1
  139. package/dist/transform/macro-expansion/injectMacroImport.js +14 -43
  140. package/dist/transform/macro-expansion/injectMacroImport.js.map +1 -1
  141. package/dist/transform/macro-expansion/transformTemplateLiteral.js +23 -22
  142. package/dist/transform/macro-expansion/transformTemplateLiteral.js.map +1 -1
  143. package/dist/transform/registration/callbacks/registerUseGTCallback.js +27 -34
  144. package/dist/transform/registration/callbacks/registerUseGTCallback.js.map +1 -1
  145. package/dist/transform/registration/callbacks/registerUseMessagesCallback.js +9 -9
  146. package/dist/transform/registration/callbacks/registerUseMessagesCallback.js.map +1 -1
  147. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.js +9 -9
  148. package/dist/transform/registration/callbacks/registerUseTranslationsCallback.js.map +1 -1
  149. package/dist/transform/registration/registerStandaloneTranslation.js +27 -28
  150. package/dist/transform/registration/registerStandaloneTranslation.js.map +1 -1
  151. package/dist/transform/registration/registerTranslationComponent.js +15 -15
  152. package/dist/transform/registration/registerTranslationComponent.js.map +1 -1
  153. package/dist/transform/runtime-translate/buildRuntimeTranslateCalls.js +34 -85
  154. package/dist/transform/runtime-translate/buildRuntimeTranslateCalls.js.map +1 -1
  155. package/dist/transform/runtime-translate/injectRuntimeTranslateImport.js +25 -55
  156. package/dist/transform/runtime-translate/injectRuntimeTranslateImport.js.map +1 -1
  157. package/dist/transform/tracking/trackAssignmentExpression.js +26 -63
  158. package/dist/transform/tracking/trackAssignmentExpression.js.map +1 -1
  159. package/dist/transform/tracking/trackCatchClause.js +17 -48
  160. package/dist/transform/tracking/trackCatchClause.js.map +1 -1
  161. package/dist/transform/tracking/trackClassDeclaration.js +13 -13
  162. package/dist/transform/tracking/trackClassDeclaration.js.map +1 -1
  163. package/dist/transform/tracking/trackForDeclaration.js +17 -53
  164. package/dist/transform/tracking/trackForDeclaration.js.map +1 -1
  165. package/dist/transform/tracking/trackFunctionName.js +10 -10
  166. package/dist/transform/tracking/trackFunctionName.js.map +1 -1
  167. package/dist/transform/tracking/trackFunctionParams.js +19 -54
  168. package/dist/transform/tracking/trackFunctionParams.js.map +1 -1
  169. package/dist/transform/tracking/trackImportDeclaration.js +36 -89
  170. package/dist/transform/tracking/trackImportDeclaration.js.map +1 -1
  171. package/dist/transform/tracking/trackOverridingVariable.js +9 -11
  172. package/dist/transform/tracking/trackOverridingVariable.js.map +1 -1
  173. package/dist/transform/tracking/trackVariableDeclarator.js +51 -102
  174. package/dist/transform/tracking/trackVariableDeclarator.js.map +1 -1
  175. package/dist/transform/validation/validateTranslationComponentArgs.d.ts +1 -1
  176. package/dist/transform/validation/validateTranslationComponentArgs.d.ts.map +1 -1
  177. package/dist/transform/validation/validateTranslationComponentArgs.js +156 -232
  178. package/dist/transform/validation/validateTranslationComponentArgs.js.map +1 -1
  179. package/dist/transform/validation/validateTranslationFunction.js +218 -329
  180. package/dist/transform/validation/validateTranslationFunction.js.map +1 -1
  181. package/dist/utils/calculateHash.d.ts +1 -1
  182. package/dist/utils/calculateHash.d.ts.map +1 -1
  183. package/dist/utils/calculateHash.js +55 -70
  184. package/dist/utils/calculateHash.js.map +1 -1
  185. package/dist/utils/constants/gt/constants.js +142 -132
  186. package/dist/utils/constants/gt/constants.js.map +1 -1
  187. package/dist/utils/constants/gt/helpers.d.ts +1 -1
  188. package/dist/utils/constants/gt/helpers.d.ts.map +1 -1
  189. package/dist/utils/constants/gt/helpers.js +147 -149
  190. package/dist/utils/constants/gt/helpers.js.map +1 -1
  191. package/dist/utils/constants/other/constants.js +45 -41
  192. package/dist/utils/constants/other/constants.js.map +1 -1
  193. package/dist/utils/constants/other/helpers.js +13 -11
  194. package/dist/utils/constants/other/helpers.js.map +1 -1
  195. package/dist/utils/constants/react/constants.js +47 -41
  196. package/dist/utils/constants/react/constants.js.map +1 -1
  197. package/dist/utils/constants/react/helpers.js +17 -16
  198. package/dist/utils/constants/react/helpers.js.map +1 -1
  199. package/dist/utils/constants/resolveIdentifier/isGTComponent.js +41 -76
  200. package/dist/utils/constants/resolveIdentifier/isGTComponent.js.map +1 -1
  201. package/dist/utils/constants/resolveIdentifier/isReactJsxFunction.js +33 -83
  202. package/dist/utils/constants/resolveIdentifier/isReactJsxFunction.js.map +1 -1
  203. package/dist/utils/errors.js +18 -20
  204. package/dist/utils/errors.js.map +1 -1
  205. package/dist/utils/multiplication/multiply.js +31 -35
  206. package/dist/utils/multiplication/multiply.js.map +1 -1
  207. package/dist/utils/multiplication/types.js +1 -3
  208. package/dist/utils/parsing/extractIdentifiersFromLVal.js +30 -96
  209. package/dist/utils/parsing/extractIdentifiersFromLVal.js.map +1 -1
  210. package/dist/utils/parsing/getCalleeNameFromExpression.js +31 -65
  211. package/dist/utils/parsing/getCalleeNameFromExpression.js.map +1 -1
  212. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.js +13 -10
  213. package/dist/utils/parsing/getCalleeNameFromExpressionWrapper.js.map +1 -1
  214. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.js +19 -56
  215. package/dist/utils/parsing/getObjectPropertyFromObjectExpression.js.map +1 -1
  216. package/dist/utils/parsing/getStringLiteralFromExpression.js +18 -49
  217. package/dist/utils/parsing/getStringLiteralFromExpression.js.map +1 -1
  218. package/dist/utils/parsing/isDeriveInvocation.js +25 -61
  219. package/dist/utils/parsing/isDeriveInvocation.js.map +1 -1
  220. package/dist/utils/parsing/isStringTranslationTaggedTemplate.js +23 -59
  221. package/dist/utils/parsing/isStringTranslationTaggedTemplate.js.map +1 -1
  222. package/dist/utils/string-expressions/buildTransformationResult.js +57 -96
  223. package/dist/utils/string-expressions/buildTransformationResult.js.map +1 -1
  224. package/dist/utils/string-expressions/flattenExpressionToParts.js +131 -142
  225. package/dist/utils/string-expressions/flattenExpressionToParts.js.map +1 -1
  226. package/dist/utils/string-expressions/resolveStaticExpression.js +36 -34
  227. package/dist/utils/string-expressions/resolveStaticExpression.js.map +1 -1
  228. package/dist/utils/validation/validateChildrenFromObjectExpression.js +29 -24
  229. package/dist/utils/validation/validateChildrenFromObjectExpression.js.map +1 -1
  230. package/dist/utils/validation/validateExpressionIsNumericLiteral.js +13 -47
  231. package/dist/utils/validation/validateExpressionIsNumericLiteral.js.map +1 -1
  232. package/dist/utils/validation/validateExpressionIsStringLiteral.js +15 -48
  233. package/dist/utils/validation/validateExpressionIsStringLiteral.js.map +1 -1
  234. package/package.json +8 -4
  235. package/dist/processing/index.js.map +0 -1
  236. package/dist/state/types.js.map +0 -1
  237. package/dist/transform/jsx-children/index.js.map +0 -1
  238. package/dist/utils/multiplication/types.js.map +0 -1
@@ -1,42 +1,37 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTrackedVariable = getTrackedVariable;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/transform/getTrackedVariable.ts
4
3
  /**
5
- * Given state, namespace, and functionname, return:
6
- * - canonicalName
7
- * - identifier
8
- * - type
9
- */
4
+ * Given state, namespace, and functionname, return:
5
+ * - canonicalName
6
+ * - identifier
7
+ * - type
8
+ */
10
9
  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
- };
10
+ if (!functionName) return {
11
+ canonicalName: void 0,
12
+ identifier: void 0,
13
+ type: void 0
14
+ };
15
+ if (namespaceName) {
16
+ if (!scopeTracker.hasNamespaceImport(namespaceName)) return {
17
+ canonicalName: void 0,
18
+ identifier: void 0,
19
+ type: void 0
20
+ };
21
+ return {
22
+ canonicalName: functionName,
23
+ identifier: void 0,
24
+ type: "generaltranslation"
25
+ };
26
+ }
27
+ const variable = scopeTracker.getVariable(functionName);
28
+ return {
29
+ canonicalName: (variable === null || variable === void 0 ? void 0 : variable.canonicalName) ?? void 0,
30
+ identifier: (variable === null || variable === void 0 ? void 0 : variable.identifier) ?? void 0,
31
+ type: (variable === null || variable === void 0 ? void 0 : variable.type) ?? void 0
32
+ };
41
33
  }
34
+ //#endregion
35
+ exports.getTrackedVariable = getTrackedVariable;
36
+
42
37
  //# sourceMappingURL=getTrackedVariable.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"getTrackedVariable.js","names":[],"sources":["../../src/transform/getTrackedVariable.ts"],"sourcesContent":["import { ScopeTracker } from '../state/ScopeTracker';\nimport { VariableType } from '../state/ScopeTracker';\n\n/**\n * Given state, namespace, and functionname, return:\n * - canonicalName\n * - identifier\n * - type\n */\nexport function getTrackedVariable(\n scopeTracker: ScopeTracker,\n namespaceName: string | null,\n functionName: string | null\n): {\n canonicalName: string | undefined;\n identifier: number | undefined;\n type: VariableType | undefined;\n} {\n if (!functionName) {\n return {\n canonicalName: undefined,\n identifier: undefined,\n type: undefined,\n };\n }\n\n // If namespace, no alias resolution needed\n if (namespaceName) {\n if (!scopeTracker.hasNamespaceImport(namespaceName)) {\n return {\n canonicalName: undefined,\n identifier: undefined,\n type: undefined,\n };\n }\n return {\n canonicalName: functionName,\n identifier: undefined,\n type: 'generaltranslation', // TODO: revisit this when we add support for multiple namespaces\n };\n }\n\n // Resolve aliased function name\n const variable = scopeTracker.getVariable(functionName);\n return {\n canonicalName: variable?.canonicalName ?? undefined,\n identifier: variable?.identifier ?? undefined,\n type: variable?.type ?? undefined,\n };\n}\n"],"mappings":";;;;;;;;AASA,SAAgB,mBACd,cACA,eACA,cAKA;AACA,KAAI,CAAC,aACH,QAAO;EACL,eAAe,KAAA;EACf,YAAY,KAAA;EACZ,MAAM,KAAA;EACP;AAIH,KAAI,eAAe;AACjB,MAAI,CAAC,aAAa,mBAAmB,cAAc,CACjD,QAAO;GACL,eAAe,KAAA;GACf,YAAY,KAAA;GACZ,MAAM,KAAA;GACP;AAEH,SAAO;GACL,eAAe;GACf,YAAY,KAAA;GACZ,MAAM;GACP;;CAIH,MAAM,WAAW,aAAa,YAAY,aAAa;AACvD,QAAO;EACL,gBAAA,aAAA,QAAA,aAAA,KAAA,IAAA,KAAA,IAAe,SAAU,kBAAiB,KAAA;EAC1C,aAAA,aAAA,QAAA,aAAA,KAAA,IAAA,KAAA,IAAY,SAAU,eAAc,KAAA;EACpC,OAAA,aAAA,QAAA,aAAA,KAAA,IAAA,KAAA,IAAM,SAAU,SAAQ,KAAA;EACzB"}
@@ -1,31 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectUseGTCallbackParameters = injectUseGTCallbackParameters;
4
- const validateTranslationFunction_1 = require("../../validation/validateTranslationFunction");
5
- const injectHashIntoTranslationOptions_1 = require("../injectHashIntoTranslationOptions");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_transform_validation_validateTranslationFunction = require("../../validation/validateTranslationFunction.js");
3
+ const require_transform_injection_injectHashIntoTranslationOptions = require("../injectHashIntoTranslationOptions.js");
4
+ //#region src/transform/injection/callbacks/injectUseGTCallbackParameters.ts
6
5
  /**
7
- * Injects parameters into invocation of useGT_callback(..., { $_hash })
8
- * @param parentIdentifier - identifier from callback declaration (ie maps to useGT() call)
9
- */
6
+ * Injects parameters into invocation of useGT_callback(..., { $_hash })
7
+ * @param parentIdentifier - identifier from callback declaration (ie maps to useGT() call)
8
+ */
10
9
  function injectUseGTCallbackParameters(callExprPath, state) {
11
- const callExpr = callExprPath.node;
12
- // Increment counter
13
- const counterId = state.stringCollector.incrementCounter();
14
- // Check for existing hash
15
- const useGTCallbackParams = (0, validateTranslationFunction_1.validateTranslationFunction)(callExprPath, state);
16
- state.errorTracker.addErrors(useGTCallbackParams.errors);
17
- if (useGTCallbackParams.errors.length > 0) {
18
- return;
19
- }
20
- if (useGTCallbackParams.hash !== undefined) {
21
- return;
22
- }
23
- // Get hash from string collector
24
- const translationHash = state.stringCollector.getTranslationHash(counterId);
25
- if (translationHash === undefined) {
26
- return;
27
- }
28
- // Inject parameters into invocation
29
- (0, injectHashIntoTranslationOptions_1.injectHashIntoTranslationOptions)(callExpr, translationHash.hash);
10
+ const callExpr = callExprPath.node;
11
+ const counterId = state.stringCollector.incrementCounter();
12
+ const useGTCallbackParams = require_transform_validation_validateTranslationFunction.validateTranslationFunction(callExprPath, state);
13
+ state.errorTracker.addErrors(useGTCallbackParams.errors);
14
+ if (useGTCallbackParams.errors.length > 0) return;
15
+ if (useGTCallbackParams.hash !== void 0) return;
16
+ const translationHash = state.stringCollector.getTranslationHash(counterId);
17
+ if (translationHash === void 0) return;
18
+ require_transform_injection_injectHashIntoTranslationOptions.injectHashIntoTranslationOptions(callExpr, translationHash.hash);
30
19
  }
20
+ //#endregion
21
+ exports.injectUseGTCallbackParameters = injectUseGTCallbackParameters;
22
+
31
23
  //# sourceMappingURL=injectUseGTCallbackParameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectUseGTCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseGTCallbackParameters.ts"],"names":[],"mappings":";;AAUA,sEA0BC;AAlCD,8FAA2F;AAC3F,0FAAuF;AAGvF;;;GAGG;AACH,SAAgB,6BAA6B,CAC3C,YAAwC,EACxC,KAAqB;IAErB,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC;IACnC,oBAAoB;IACpB,MAAM,SAAS,GAAG,KAAK,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;IAE3D,0BAA0B;IAC1B,MAAM,mBAAmB,GAAG,IAAA,yDAA2B,EAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC7E,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,IAAA,mEAAgC,EAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"injectUseGTCallbackParameters.js","names":["validateTranslationFunction"],"sources":["../../../../src/transform/injection/callbacks/injectUseGTCallbackParameters.ts"],"sourcesContent":["import { TransformState } from '../../../state/types';\nimport * as t from '@babel/types';\nimport { validateTranslationFunction } from '../../validation/validateTranslationFunction';\nimport { injectHashIntoTranslationOptions } from '../injectHashIntoTranslationOptions';\nimport { NodePath } from '@babel/traverse';\n\n/**\n * Injects parameters into invocation of useGT_callback(..., { $_hash })\n * @param parentIdentifier - identifier from callback declaration (ie maps to useGT() call)\n */\nexport function injectUseGTCallbackParameters(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState\n) {\n const callExpr = callExprPath.node;\n // Increment counter\n const counterId = state.stringCollector.incrementCounter();\n\n // Check for existing hash\n const useGTCallbackParams = validateTranslationFunction(callExprPath, state);\n state.errorTracker.addErrors(useGTCallbackParams.errors);\n if (useGTCallbackParams.errors.length > 0) {\n return;\n }\n if (useGTCallbackParams.hash !== undefined) {\n return;\n }\n\n // Get hash from string collector\n const translationHash = state.stringCollector.getTranslationHash(counterId);\n if (translationHash === undefined) {\n return;\n }\n\n // Inject parameters into invocation\n injectHashIntoTranslationOptions(callExpr, translationHash.hash);\n}\n"],"mappings":";;;;;;;;AAUA,SAAgB,8BACd,cACA,OACA;CACA,MAAM,WAAW,aAAa;CAE9B,MAAM,YAAY,MAAM,gBAAgB,kBAAkB;CAG1D,MAAM,sBAAsBA,yDAAAA,4BAA4B,cAAc,MAAM;AAC5E,OAAM,aAAa,UAAU,oBAAoB,OAAO;AACxD,KAAI,oBAAoB,OAAO,SAAS,EACtC;AAEF,KAAI,oBAAoB,SAAS,KAAA,EAC/B;CAIF,MAAM,kBAAkB,MAAM,gBAAgB,mBAAmB,UAAU;AAC3E,KAAI,oBAAoB,KAAA,EACtB;AAIF,8DAAA,iCAAiC,UAAU,gBAAgB,KAAK"}
@@ -1,8 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectUseMessagesCallbackParameters = injectUseMessagesCallbackParameters;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/transform/injection/callbacks/injectUseMessagesCallbackParameters.ts
4
3
  /**
5
- * Injects parameters into invocation of useMessages_callback(..., { $_hash })
6
- */
7
- function injectUseMessagesCallbackParameters(_callExprPath, _state) { }
4
+ * Injects parameters into invocation of useMessages_callback(..., { $_hash })
5
+ */
6
+ function injectUseMessagesCallbackParameters(_callExprPath, _state) {}
7
+ //#endregion
8
+ exports.injectUseMessagesCallbackParameters = injectUseMessagesCallbackParameters;
9
+
8
10
  //# sourceMappingURL=injectUseMessagesCallbackParameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectUseMessagesCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseMessagesCallbackParameters.ts"],"names":[],"mappings":";;AAOA,kFAGI;AANJ;;GAEG;AACH,SAAgB,mCAAmC,CACjD,aAAyC,EACzC,MAAsB,IACrB,CAAC"}
1
+ {"version":3,"file":"injectUseMessagesCallbackParameters.js","names":[],"sources":["../../../../src/transform/injection/callbacks/injectUseMessagesCallbackParameters.ts"],"sourcesContent":["import { TransformState } from '../../../state/types';\nimport * as t from '@babel/types';\nimport { NodePath } from '@babel/traverse';\n\n/**\n * Injects parameters into invocation of useMessages_callback(..., { $_hash })\n */\nexport function injectUseMessagesCallbackParameters(\n _callExprPath: NodePath<t.CallExpression>,\n _state: TransformState\n) {}\n"],"mappings":";;;;;AAOA,SAAgB,oCACd,eACA,QACA"}
@@ -1,8 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectUseTranslationsCallbackParameters = injectUseTranslationsCallbackParameters;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/transform/injection/callbacks/injectUseTranslationsCallbackParameters.ts
4
3
  /**
5
- * Injects parameters into invocation of useTranslations_callback(..., { $_hash })
6
- */
7
- function injectUseTranslationsCallbackParameters(_callExprPath, _state) { }
4
+ * Injects parameters into invocation of useTranslations_callback(..., { $_hash })
5
+ */
6
+ function injectUseTranslationsCallbackParameters(_callExprPath, _state) {}
7
+ //#endregion
8
+ exports.injectUseTranslationsCallbackParameters = injectUseTranslationsCallbackParameters;
9
+
8
10
  //# sourceMappingURL=injectUseTranslationsCallbackParameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectUseTranslationsCallbackParameters.js","sourceRoot":"","sources":["../../../../src/transform/injection/callbacks/injectUseTranslationsCallbackParameters.ts"],"names":[],"mappings":";;AAOA,0FAGI;AANJ;;GAEG;AACH,SAAgB,uCAAuC,CACrD,aAAyC,EACzC,MAAsB,IACrB,CAAC"}
1
+ {"version":3,"file":"injectUseTranslationsCallbackParameters.js","names":[],"sources":["../../../../src/transform/injection/callbacks/injectUseTranslationsCallbackParameters.ts"],"sourcesContent":["import { TransformState } from '../../../state/types';\nimport * as t from '@babel/types';\nimport { NodePath } from '@babel/traverse';\n\n/**\n * Injects parameters into invocation of useTranslations_callback(..., { $_hash })\n */\nexport function injectUseTranslationsCallbackParameters(\n _callExprPath: NodePath<t.CallExpression>,\n _state: TransformState\n) {}\n"],"mappings":";;;;;AAOA,SAAgB,wCACd,eACA,QACA"}
@@ -1,165 +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.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");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
3
+ const require_transform_tracking_trackOverridingVariable = require("../tracking/trackOverridingVariable.js");
4
+ const require_utils_parsing_extractIdentifiersFromLVal = require("../../utils/parsing/extractIdentifiersFromLVal.js");
5
+ require("../../utils/constants/gt/constants.js");
6
+ const require_utils_constants_gt_helpers = require("../../utils/constants/gt/helpers.js");
7
+ const require_transform_getTrackedVariable = require("../getTrackedVariable.js");
8
+ const require_utils_errors = require("../../utils/errors.js");
9
+ const require_utils_parsing_getCalleeNameFromExpressionWrapper = require("../../utils/parsing/getCalleeNameFromExpressionWrapper.js");
10
+ let _babel_types = require("@babel/types");
11
+ _babel_types = require_runtime.__toESM(_babel_types);
12
+ //#region src/transform/injection/injectCallbackDeclaratorFunctionParameters.ts
45
13
  /**
46
- * inject parameters into invocation of translation function
47
- * - useGT(messages=[{hash, message, id, context, maxChars}])
48
- */
14
+ * inject parameters into invocation of translation function
15
+ * - useGT(messages=[{hash, message, id, context, maxChars}])
16
+ */
49
17
  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
- }
18
+ var _state$scopeTracker$g;
19
+ if (!_babel_types.isLVal(varDeclarator.id)) return;
20
+ const { namespaceName, functionName } = require_utils_parsing_getCalleeNameFromExpressionWrapper.getCalleeNameFromExpressionWrapper(varDeclarator.init);
21
+ if (!functionName) return;
22
+ const { canonicalName, type } = require_transform_getTrackedVariable.getTrackedVariable(state.scopeTracker, namespaceName, functionName);
23
+ if (!canonicalName) return;
24
+ const identifiers = require_utils_parsing_extractIdentifiersFromLVal.extractIdentifiersFromLVal(varDeclarator.id);
25
+ if (type !== "generaltranslation" || !require_utils_constants_gt_helpers.isGTFunctionWithCallbacks(canonicalName)) {
26
+ for (const identifier of identifiers) require_transform_tracking_trackOverridingVariable.trackOverridingVariable(identifier, state.scopeTracker);
27
+ return;
28
+ }
29
+ if (identifiers.length !== 1) {
30
+ state.logger.logError(`Multiple identifiers found for GT function with callbacks: ${canonicalName}. Parameter injection failed.` + require_utils_errors.createErrorLocation(varDeclarator.id));
31
+ return;
32
+ }
33
+ const identifier = identifiers[0];
34
+ const expression = getFunctionInvocation(varDeclarator);
35
+ if (!expression) {
36
+ state.logger.logError(`No valid function invocation found for ${functionName}. Parameter injection failed.` + require_utils_errors.createErrorLocation(varDeclarator.id));
37
+ return;
38
+ }
39
+ if (expression.arguments.length > 0) return;
40
+ const id = (_state$scopeTracker$g = state.scopeTracker.getVariable(identifier)) === null || _state$scopeTracker$g === void 0 ? void 0 : _state$scopeTracker$g.identifier;
41
+ if (!id) {
42
+ state.logger.logError(`No translation callback variable found for ${identifier}. Parameter injection failed.` + require_utils_errors.createErrorLocation(varDeclarator.id));
43
+ return;
44
+ }
45
+ switch (canonicalName) {
46
+ case "useGT":
47
+ case "getGT":
48
+ injectUseGTParameters(expression, state, id);
49
+ break;
50
+ default: return;
51
+ }
110
52
  }
111
53
  /**
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
- */
54
+ * Inject the parameters into the useGT/getGT call
55
+ * @param arguments - The arguments
56
+ * @param state - The state
57
+ * @param identifier - The identifier
58
+ * @param translationContent - The translation content
59
+ */
118
60
  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
- ...(content.maxChars != null
140
- ? [
141
- t.objectProperty(t.identifier('maxChars'), t.numericLiteral(content.maxChars)),
142
- ]
143
- : []),
144
- ]))),
145
- ];
61
+ const translationContent = state.stringCollector.getTranslationContent(id);
62
+ if (!translationContent) return;
63
+ expression.arguments = [_babel_types.arrayExpression(translationContent.map((content) => _babel_types.objectExpression([
64
+ _babel_types.objectProperty(_babel_types.identifier("hash"), _babel_types.stringLiteral(content.hash)),
65
+ _babel_types.objectProperty(_babel_types.identifier("message"), _babel_types.stringLiteral(content.message)),
66
+ ...content.id ? [_babel_types.objectProperty(_babel_types.identifier("id"), _babel_types.stringLiteral(content.id))] : [],
67
+ ...content.context ? [_babel_types.objectProperty(_babel_types.identifier("context"), _babel_types.stringLiteral(content.context))] : [],
68
+ ...content.maxChars != null ? [_babel_types.objectProperty(_babel_types.identifier("maxChars"), _babel_types.numericLiteral(content.maxChars))] : []
69
+ ])))];
146
70
  }
147
71
  /**
148
- * Get the function invocation from the variable declarator
149
- * @param varDeclarator - The variable declarator
150
- */
72
+ * Get the function invocation from the variable declarator
73
+ * @param varDeclarator - The variable declarator
74
+ */
151
75
  function getFunctionInvocation(varDeclarator) {
152
- const expression = varDeclarator.init;
153
- if (!expression) {
154
- // failed
155
- return;
156
- }
157
- if (t.isCallExpression(expression)) {
158
- return expression;
159
- }
160
- if (t.isAwaitExpression(expression) &&
161
- t.isCallExpression(expression.argument)) {
162
- return expression.argument;
163
- }
76
+ const expression = varDeclarator.init;
77
+ if (!expression) return;
78
+ if (_babel_types.isCallExpression(expression)) return expression;
79
+ if (_babel_types.isAwaitExpression(expression) && _babel_types.isCallExpression(expression.argument)) return expression.argument;
164
80
  }
81
+ //#endregion
82
+ exports.injectCallbackDeclaratorFunctionParameters = injectCallbackDeclaratorFunctionParameters;
83
+
165
84
  //# sourceMappingURL=injectCallbackDeclaratorFunctionParameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectCallbackDeclaratorFunctionParameters.js","sourceRoot":"","sources":["../../../src/transform/injection/injectCallbackDeclaratorFunctionParameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"injectCallbackDeclaratorFunctionParameters.js","names":["t","getCalleeNameFromExpressionWrapper","getTrackedVariable","extractIdentifiersFromLVal","isGTFunctionWithCallbacks","createErrorLocation"],"sources":["../../../src/transform/injection/injectCallbackDeclaratorFunctionParameters.ts"],"sourcesContent":["import { TransformState } from '../../state/types';\nimport * as t from '@babel/types';\nimport { getTrackedVariable } from '../getTrackedVariable';\nimport { getCalleeNameFromExpressionWrapper } from '../../utils/parsing/getCalleeNameFromExpressionWrapper';\nimport { isGTFunctionWithCallbacks } from '../../utils/constants/gt/helpers';\nimport { GT_FUNCTIONS_WITH_CALLBACKS } from '../../utils/constants/gt/constants';\nimport { extractIdentifiersFromLVal } from '../../utils/parsing/extractIdentifiersFromLVal';\nimport { trackOverridingVariable } from '../tracking/trackOverridingVariable';\nimport { createErrorLocation } from '../../utils/errors';\n\n/**\n * inject parameters into invocation of translation function\n * - useGT(messages=[{hash, message, id, context, maxChars}])\n */\nexport function injectCallbackDeclaratorFunctionParameters(\n varDeclarator: t.VariableDeclarator,\n state: TransformState\n): void {\n // Ignore non-LVal assignments\n if (!t.isLVal(varDeclarator.id)) {\n return;\n }\n\n // Get function name from callee\n const { namespaceName, functionName } = getCalleeNameFromExpressionWrapper(\n varDeclarator.init\n );\n if (!functionName) {\n return;\n }\n\n // Get the canonical function name\n const { canonicalName, type } = getTrackedVariable(\n state.scopeTracker,\n namespaceName,\n functionName\n );\n if (!canonicalName) {\n return;\n }\n\n // Extract identifiers from the LVal\n const identifiers = extractIdentifiersFromLVal(varDeclarator.id);\n\n // Validate the type\n if (\n type !== 'generaltranslation' ||\n !isGTFunctionWithCallbacks(canonicalName)\n ) {\n // Track as an overriding variable\n for (const identifier of identifiers) {\n trackOverridingVariable(identifier, state.scopeTracker);\n }\n return;\n }\n\n // There can only be one callback defined for const gt = useGT()\n if (identifiers.length !== 1) {\n state.logger.logError(\n `Multiple identifiers found for GT function with callbacks: ${canonicalName}. Parameter injection failed.` +\n createErrorLocation(varDeclarator.id)\n );\n return;\n }\n const identifier = identifiers[0];\n\n // Inject the parameters into the call expression\n const expression = getFunctionInvocation(varDeclarator);\n if (!expression) {\n state.logger.logError(\n `No valid function invocation found for ${functionName}. Parameter injection failed.` +\n createErrorLocation(varDeclarator.id)\n );\n return;\n }\n if (expression.arguments.length > 0) {\n // Found existing arguments, skip injection\n return;\n }\n\n // Look up identifier\n const id = state.scopeTracker.getVariable(identifier)?.identifier;\n if (!id) {\n state.logger.logError(\n `No translation callback variable found for ${identifier}. Parameter injection failed.` +\n createErrorLocation(varDeclarator.id)\n );\n return;\n }\n // Inject into the callees\n switch (canonicalName) {\n case GT_FUNCTIONS_WITH_CALLBACKS.useGT:\n case GT_FUNCTIONS_WITH_CALLBACKS.getGT:\n injectUseGTParameters(expression, state, id);\n break;\n default:\n return;\n }\n}\n\n/**\n * Inject the parameters into the useGT/getGT call\n * @param arguments - The arguments\n * @param state - The state\n * @param identifier - The identifier\n * @param translationContent - The translation content\n */\nfunction injectUseGTParameters(\n expression: t.CallExpression,\n state: TransformState,\n id: number\n) {\n // Get the corresponding callback injection data\n const translationContent = state.stringCollector.getTranslationContent(id);\n if (!translationContent) {\n return;\n }\n\n // Inject the parameters into the call expression\n expression.arguments = [\n t.arrayExpression(\n translationContent.map((content) =>\n t.objectExpression([\n t.objectProperty(t.identifier('hash'), t.stringLiteral(content.hash)),\n t.objectProperty(\n t.identifier('message'),\n t.stringLiteral(content.message)\n ),\n ...(content.id\n ? [\n t.objectProperty(\n t.identifier('id'),\n t.stringLiteral(content.id)\n ),\n ]\n : []),\n ...(content.context\n ? [\n t.objectProperty(\n t.identifier('context'),\n t.stringLiteral(content.context)\n ),\n ]\n : []),\n ...(content.maxChars != null\n ? [\n t.objectProperty(\n t.identifier('maxChars'),\n t.numericLiteral(content.maxChars)\n ),\n ]\n : []),\n ])\n )\n ),\n ];\n}\n\n/**\n * Get the function invocation from the variable declarator\n * @param varDeclarator - The variable declarator\n */\nfunction getFunctionInvocation(\n varDeclarator: t.VariableDeclarator\n): t.CallExpression | undefined {\n const expression = varDeclarator.init;\n if (!expression) {\n // failed\n return;\n }\n if (t.isCallExpression(expression)) {\n return expression;\n }\n if (\n t.isAwaitExpression(expression) &&\n t.isCallExpression(expression.argument)\n ) {\n return expression.argument;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAcA,SAAgB,2CACd,eACA,OACM;;AAEN,KAAI,CAACA,aAAE,OAAO,cAAc,GAAG,CAC7B;CAIF,MAAM,EAAE,eAAe,iBAAiBC,yDAAAA,mCACtC,cAAc,KACf;AACD,KAAI,CAAC,aACH;CAIF,MAAM,EAAE,eAAe,SAASC,qCAAAA,mBAC9B,MAAM,cACN,eACA,aACD;AACD,KAAI,CAAC,cACH;CAIF,MAAM,cAAcC,iDAAAA,2BAA2B,cAAc,GAAG;AAGhE,KACE,SAAS,wBACT,CAACC,mCAAAA,0BAA0B,cAAc,EACzC;AAEA,OAAK,MAAM,cAAc,YACvB,oDAAA,wBAAwB,YAAY,MAAM,aAAa;AAEzD;;AAIF,KAAI,YAAY,WAAW,GAAG;AAC5B,QAAM,OAAO,SACX,8DAA8D,cAAc,iCAC1EC,qBAAAA,oBAAoB,cAAc,GAAG,CACxC;AACD;;CAEF,MAAM,aAAa,YAAY;CAG/B,MAAM,aAAa,sBAAsB,cAAc;AACvD,KAAI,CAAC,YAAY;AACf,QAAM,OAAO,SACX,0CAA0C,aAAa,iCACrDA,qBAAAA,oBAAoB,cAAc,GAAG,CACxC;AACD;;AAEF,KAAI,WAAW,UAAU,SAAS,EAEhC;CAIF,MAAM,MAAA,wBAAK,MAAM,aAAa,YAAY,WAAW,MAAA,QAAA,0BAAA,KAAA,IAAA,KAAA,IAAA,sBAAE;AACvD,KAAI,CAAC,IAAI;AACP,QAAM,OAAO,SACX,8CAA8C,WAAW,iCACvDA,qBAAAA,oBAAoB,cAAc,GAAG,CACxC;AACD;;AAGF,SAAQ,eAAR;EACE,KAAA;EACA,KAAA;AACE,yBAAsB,YAAY,OAAO,GAAG;AAC5C;EACF,QACE;;;;;;;;;;AAWN,SAAS,sBACP,YACA,OACA,IACA;CAEA,MAAM,qBAAqB,MAAM,gBAAgB,sBAAsB,GAAG;AAC1E,KAAI,CAAC,mBACH;AAIF,YAAW,YAAY,CACrBL,aAAE,gBACA,mBAAmB,KAAK,YACtBA,aAAE,iBAAiB;EACjBA,aAAE,eAAeA,aAAE,WAAW,OAAO,EAAEA,aAAE,cAAc,QAAQ,KAAK,CAAC;EACrEA,aAAE,eACAA,aAAE,WAAW,UAAU,EACvBA,aAAE,cAAc,QAAQ,QAAQ,CACjC;EACD,GAAI,QAAQ,KACR,CACEA,aAAE,eACAA,aAAE,WAAW,KAAK,EAClBA,aAAE,cAAc,QAAQ,GAAG,CAC5B,CACF,GACD,EAAE;EACN,GAAI,QAAQ,UACR,CACEA,aAAE,eACAA,aAAE,WAAW,UAAU,EACvBA,aAAE,cAAc,QAAQ,QAAQ,CACjC,CACF,GACD,EAAE;EACN,GAAI,QAAQ,YAAY,OACpB,CACEA,aAAE,eACAA,aAAE,WAAW,WAAW,EACxBA,aAAE,eAAe,QAAQ,SAAS,CACnC,CACF,GACD,EAAE;EACP,CAAC,CACH,CACF,CACF;;;;;;AAOH,SAAS,sBACP,eAC8B;CAC9B,MAAM,aAAa,cAAc;AACjC,KAAI,CAAC,WAEH;AAEF,KAAIA,aAAE,iBAAiB,WAAW,CAChC,QAAO;AAET,KACEA,aAAE,kBAAkB,WAAW,IAC/BA,aAAE,iBAAiB,WAAW,SAAS,CAEvC,QAAO,WAAW"}
@@ -1,65 +1,25 @@
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.injectHashIntoTranslationOptions = injectHashIntoTranslationOptions;
37
- const t = __importStar(require("@babel/types"));
38
- const constants_1 = require("../../utils/constants/gt/constants");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
3
+ require("../../utils/constants/gt/constants.js");
4
+ let _babel_types = require("@babel/types");
5
+ _babel_types = require_runtime.__toESM(_babel_types);
6
+ //#region src/transform/injection/injectHashIntoTranslationOptions.ts
39
7
  /**
40
- * Inject $_hash into the second options argument for string translation calls.
41
- */
8
+ * Inject $_hash into the second options argument for string translation calls.
9
+ */
42
10
  function injectHashIntoTranslationOptions(callExpr, hash) {
43
- const newEntry = t.objectProperty(t.stringLiteral(constants_1.USEGT_CALLBACK_OPTIONS.$_hash), t.stringLiteral(hash));
44
- if (callExpr.arguments.length === 1) {
45
- callExpr.arguments.push(t.objectExpression([newEntry]));
46
- return;
47
- }
48
- if (callExpr.arguments.length !== 2) {
49
- return;
50
- }
51
- const optionsArg = callExpr.arguments[1];
52
- if (t.isObjectExpression(optionsArg)) {
53
- optionsArg.properties.push(newEntry);
54
- }
55
- else if (t.isExpression(optionsArg)) {
56
- callExpr.arguments[1] = t.objectExpression([
57
- t.spreadElement(optionsArg),
58
- newEntry,
59
- ]);
60
- }
61
- else if (t.isArgumentPlaceholder(optionsArg)) {
62
- callExpr.arguments[1] = t.objectExpression([newEntry]);
63
- }
11
+ const newEntry = _babel_types.objectProperty(_babel_types.stringLiteral("$_hash"), _babel_types.stringLiteral(hash));
12
+ if (callExpr.arguments.length === 1) {
13
+ callExpr.arguments.push(_babel_types.objectExpression([newEntry]));
14
+ return;
15
+ }
16
+ if (callExpr.arguments.length !== 2) return;
17
+ const optionsArg = callExpr.arguments[1];
18
+ if (_babel_types.isObjectExpression(optionsArg)) optionsArg.properties.push(newEntry);
19
+ else if (_babel_types.isExpression(optionsArg)) callExpr.arguments[1] = _babel_types.objectExpression([_babel_types.spreadElement(optionsArg), newEntry]);
20
+ else if (_babel_types.isArgumentPlaceholder(optionsArg)) callExpr.arguments[1] = _babel_types.objectExpression([newEntry]);
64
21
  }
22
+ //#endregion
23
+ exports.injectHashIntoTranslationOptions = injectHashIntoTranslationOptions;
24
+
65
25
  //# sourceMappingURL=injectHashIntoTranslationOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectHashIntoTranslationOptions.js","sourceRoot":"","sources":["../../../src/transform/injection/injectHashIntoTranslationOptions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,4EA6BC;AAnCD,gDAAkC;AAClC,kEAA4E;AAE5E;;GAEG;AACH,SAAgB,gCAAgC,CAC9C,QAA0B,EAC1B,IAAY;IAEZ,MAAM,QAAQ,GAAG,CAAC,CAAC,cAAc,CAC/B,CAAC,CAAC,aAAa,CAAC,kCAAsB,CAAC,MAAM,CAAC,EAC9C,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CACtB,CAAC;IAEF,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QACtC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC;YACzC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;YAC3B,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,CAAC,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"injectHashIntoTranslationOptions.js","names":["t"],"sources":["../../../src/transform/injection/injectHashIntoTranslationOptions.ts"],"sourcesContent":["import * as t from '@babel/types';\nimport { USEGT_CALLBACK_OPTIONS } from '../../utils/constants/gt/constants';\n\n/**\n * Inject $_hash into the second options argument for string translation calls.\n */\nexport function injectHashIntoTranslationOptions(\n callExpr: t.CallExpression,\n hash: string\n): void {\n const newEntry = t.objectProperty(\n t.stringLiteral(USEGT_CALLBACK_OPTIONS.$_hash),\n t.stringLiteral(hash)\n );\n\n if (callExpr.arguments.length === 1) {\n callExpr.arguments.push(t.objectExpression([newEntry]));\n return;\n }\n\n if (callExpr.arguments.length !== 2) {\n return;\n }\n\n const optionsArg = callExpr.arguments[1];\n if (t.isObjectExpression(optionsArg)) {\n optionsArg.properties.push(newEntry);\n } else if (t.isExpression(optionsArg)) {\n callExpr.arguments[1] = t.objectExpression([\n t.spreadElement(optionsArg),\n newEntry,\n ]);\n } else if (t.isArgumentPlaceholder(optionsArg)) {\n callExpr.arguments[1] = t.objectExpression([newEntry]);\n }\n}\n"],"mappings":";;;;;;;;;AAMA,SAAgB,iCACd,UACA,MACM;CACN,MAAM,WAAWA,aAAE,eACjBA,aAAE,cAAA,SAA4C,EAC9CA,aAAE,cAAc,KAAK,CACtB;AAED,KAAI,SAAS,UAAU,WAAW,GAAG;AACnC,WAAS,UAAU,KAAKA,aAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACvD;;AAGF,KAAI,SAAS,UAAU,WAAW,EAChC;CAGF,MAAM,aAAa,SAAS,UAAU;AACtC,KAAIA,aAAE,mBAAmB,WAAW,CAClC,YAAW,WAAW,KAAK,SAAS;UAC3BA,aAAE,aAAa,WAAW,CACnC,UAAS,UAAU,KAAKA,aAAE,iBAAiB,CACzCA,aAAE,cAAc,WAAW,EAC3B,SACD,CAAC;UACOA,aAAE,sBAAsB,WAAW,CAC5C,UAAS,UAAU,KAAKA,aAAE,iBAAiB,CAAC,SAAS,CAAC"}