@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,271 +1,166 @@
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
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.processCallExpression = processCallExpression;
40
- const t = __importStar(require("@babel/types"));
41
- const helpers_1 = require("../../utils/constants/gt/helpers");
42
- const getCalleeNameFromExpression_1 = require("../../utils/parsing/getCalleeNameFromExpression");
43
- const constants_1 = require("../../utils/constants/gt/constants");
44
- const validateTranslationFunction_1 = require("../../transform/validation/validateTranslationFunction");
45
- const registerUseGTCallback_1 = require("../../transform/registration/callbacks/registerUseGTCallback");
46
- const registerUseTranslationsCallback_1 = require("../../transform/registration/callbacks/registerUseTranslationsCallback");
47
- const registerUseMessagesCallback_1 = require("../../transform/registration/callbacks/registerUseMessagesCallback");
48
- const getTrackedVariable_1 = require("../../transform/getTrackedVariable");
49
- const helpers_2 = require("../../utils/constants/react/helpers");
50
- const validateTranslationComponentArgs_1 = require("../../transform/validation/validateTranslationComponentArgs");
51
- const registerTranslationComponent_1 = require("../../transform/registration/registerTranslationComponent");
52
- const getCalleeNameFromJsxExpressionParam_1 = require("../../transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam");
53
- const errors_1 = require("../../utils/errors");
54
- const calculateHash_1 = __importDefault(require("../../utils/calculateHash"));
55
- const registerStandaloneTranslation_1 = require("../../transform/registration/registerStandaloneTranslation");
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
+ const require_utils_constants_gt_helpers = require("../../utils/constants/gt/helpers.js");
5
+ const require_utils_constants_react_helpers = require("../../utils/constants/react/helpers.js");
6
+ const require_utils_parsing_getCalleeNameFromExpression = require("../../utils/parsing/getCalleeNameFromExpression.js");
7
+ const require_transform_getTrackedVariable = require("../../transform/getTrackedVariable.js");
8
+ const require_transform_validation_validateTranslationFunction = require("../../transform/validation/validateTranslationFunction.js");
9
+ const require_utils_calculateHash = require("../../utils/calculateHash.js");
10
+ const require_transform_registration_callbacks_registerUseGTCallback = require("../../transform/registration/callbacks/registerUseGTCallback.js");
11
+ require("../../transform/registration/callbacks/registerUseTranslationsCallback.js");
12
+ require("../../transform/registration/callbacks/registerUseMessagesCallback.js");
13
+ const require_utils_errors = require("../../utils/errors.js");
14
+ const require_transform_jsx_children_utils_getCalleeNameFromJsxExpressionParam = require("../../transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam.js");
15
+ const require_transform_validation_validateTranslationComponentArgs = require("../../transform/validation/validateTranslationComponentArgs.js");
16
+ const require_transform_registration_registerTranslationComponent = require("../../transform/registration/registerTranslationComponent.js");
17
+ const require_transform_registration_registerStandaloneTranslation = require("../../transform/registration/registerStandaloneTranslation.js");
18
+ let _babel_types = require("@babel/types");
19
+ _babel_types = require_runtime.__toESM(_babel_types);
20
+ //#region src/processing/collection/processCallExpression.ts
56
21
  /**
57
- * Process call expressions
58
- * - register content from GT callback functions invocations (useGT_callback, etc.)
59
- * - register <T> + other component content (via jsxDev, jsx, jsxs invocations)
60
- * - register msg() function invocations?
61
- * - generally validate content
62
- */
22
+ * Process call expressions
23
+ * - register content from GT callback functions invocations (useGT_callback, etc.)
24
+ * - register <T> + other component content (via jsxDev, jsx, jsxs invocations)
25
+ * - register msg() function invocations?
26
+ * - generally validate content
27
+ */
63
28
  function processCallExpression(state) {
64
- return (callExprPath) => {
65
- // Get the call expression
66
- const callExpr = callExprPath.node;
67
- // Get function name from callee
68
- const { namespaceName, functionName } = (0, getCalleeNameFromExpression_1.getCalleeNameFromExpression)(callExpr);
69
- if (!functionName) {
70
- return;
71
- }
72
- // Get the canonical function name
73
- const { canonicalName, identifier, type } = (0, getTrackedVariable_1.getTrackedVariable)(state.scopeTracker, namespaceName, functionName);
74
- if (!canonicalName) {
75
- return;
76
- }
77
- // Handle each respective case
78
- if (type === 'generaltranslation' &&
79
- (0, helpers_1.isTranslationFunctionCallback)(canonicalName)) {
80
- // Handle translation function callbacks (useGT_callback, etc.)
81
- handleTranslationCallbackInvocation(callExprPath, state, canonicalName, identifier);
82
- }
83
- else if (type === 'react' && (0, helpers_2.isReactFunction)(canonicalName)) {
84
- // Handle react variables (jsxDEV, etc.)
85
- handleReactInvocation(callExprPath, state);
86
- }
87
- else if (type === 'generaltranslation' &&
88
- canonicalName === constants_1.GT_OTHER_FUNCTIONS.msg) {
89
- // msg() is runtime-only content; it must not advance the injection counter.
90
- handleStandaloneTranslation(callExprPath, state, { injectHash: false });
91
- }
92
- else if (type === 'generaltranslation' &&
93
- canonicalName === constants_1.GT_OTHER_FUNCTIONS.t) {
94
- // Standalone t() receives an injected $_hash, so collection reserves a
95
- // matching counter slot for the injection pass.
96
- handleStandaloneTranslation(callExprPath, state, { injectHash: true });
97
- }
98
- };
29
+ return (callExprPath) => {
30
+ const callExpr = callExprPath.node;
31
+ const { namespaceName, functionName } = require_utils_parsing_getCalleeNameFromExpression.getCalleeNameFromExpression(callExpr);
32
+ if (!functionName) return;
33
+ const { canonicalName, identifier, type } = require_transform_getTrackedVariable.getTrackedVariable(state.scopeTracker, namespaceName, functionName);
34
+ if (!canonicalName) return;
35
+ if (type === "generaltranslation" && require_utils_constants_gt_helpers.isTranslationFunctionCallback(canonicalName)) handleTranslationCallbackInvocation(callExprPath, state, canonicalName, identifier);
36
+ else if (type === "react" && require_utils_constants_react_helpers.isReactFunction(canonicalName)) handleReactInvocation(callExprPath, state);
37
+ else if (type === "generaltranslation" && canonicalName === "msg") handleStandaloneTranslation(callExprPath, state, { injectHash: false });
38
+ else if (type === "generaltranslation" && canonicalName === "t") handleStandaloneTranslation(callExprPath, state, { injectHash: true });
39
+ };
99
40
  }
100
- /* =============================== */
101
- /* Handlers */
102
- /* =============================== */
103
41
  /**
104
- * Handle general translation variables
105
- * useGTCallback(), useTranslationsCallback(), useMessagesCallback(), etc.
106
- */
42
+ * Handle general translation variables
43
+ * useGTCallback(), useTranslationsCallback(), useMessagesCallback(), etc.
44
+ */
107
45
  function handleTranslationCallbackInvocation(callExprPath, state, canonicalName, identifier) {
108
- // Handle translation function callbacks ()
109
- switch (canonicalName) {
110
- case constants_1.GT_CALLBACK_FUNCTIONS.useGT_callback:
111
- case constants_1.GT_CALLBACK_FUNCTIONS.getGT_callback:
112
- handleUseGTCallback(callExprPath, state, identifier);
113
- break;
114
- case constants_1.GT_CALLBACK_FUNCTIONS.useTranslations_callback:
115
- case constants_1.GT_CALLBACK_FUNCTIONS.getTranslations_callback:
116
- handleUseTranslationsCallback(callExprPath, state, identifier);
117
- break;
118
- case constants_1.GT_CALLBACK_FUNCTIONS.useMessages_callback:
119
- case constants_1.GT_CALLBACK_FUNCTIONS.getMessages_callback:
120
- handleUseMessagesCallback(callExprPath, state, identifier);
121
- break;
122
- default:
123
- return;
124
- }
46
+ switch (canonicalName) {
47
+ case "useGT_callback":
48
+ case "getGT_callback":
49
+ handleUseGTCallback(callExprPath, state, identifier);
50
+ break;
51
+ case "useTranslations_callback":
52
+ case "getTranslations_callback":
53
+ handleUseTranslationsCallback(callExprPath, state, identifier);
54
+ break;
55
+ case "useMessages_callback":
56
+ case "getMessages_callback":
57
+ handleUseMessagesCallback(callExprPath, state, identifier);
58
+ break;
59
+ default: return;
60
+ }
125
61
  }
126
62
  /**
127
- * Handle useGT_callback / getGT_callback
128
- */
63
+ * Handle useGT_callback / getGT_callback
64
+ */
129
65
  function handleUseGTCallback(callExprPath, state, identifier) {
130
- // Check for violations
131
- const useGTCallbackParams = (0, validateTranslationFunction_1.validateTranslationFunction)(callExprPath, state);
132
- state.errorTracker.addErrors(useGTCallbackParams.errors);
133
- if (useGTCallbackParams.errors.length > 0 ||
134
- useGTCallbackParams.content === undefined) {
135
- return;
136
- }
137
- // Track the function call
138
- // When context contains derive(), skip hash calculation (CLI handles resolution)
139
- const hash = useGTCallbackParams.hasDeriveContext
140
- ? ''
141
- : useGTCallbackParams.hash;
142
- (0, registerUseGTCallback_1.registerUseGTCallback)({
143
- identifier,
144
- state,
145
- content: useGTCallbackParams.content,
146
- context: useGTCallbackParams.context,
147
- id: useGTCallbackParams.id,
148
- maxChars: useGTCallbackParams.maxChars,
149
- hash,
150
- format: useGTCallbackParams.format,
151
- });
66
+ const useGTCallbackParams = require_transform_validation_validateTranslationFunction.validateTranslationFunction(callExprPath, state);
67
+ state.errorTracker.addErrors(useGTCallbackParams.errors);
68
+ if (useGTCallbackParams.errors.length > 0 || useGTCallbackParams.content === void 0) return;
69
+ const hash = useGTCallbackParams.hasDeriveContext ? "" : useGTCallbackParams.hash;
70
+ require_transform_registration_callbacks_registerUseGTCallback.registerUseGTCallback({
71
+ identifier,
72
+ state,
73
+ content: useGTCallbackParams.content,
74
+ context: useGTCallbackParams.context,
75
+ id: useGTCallbackParams.id,
76
+ maxChars: useGTCallbackParams.maxChars,
77
+ hash,
78
+ format: useGTCallbackParams.format
79
+ });
152
80
  }
153
81
  /**
154
- * Handle useTranslations_callback / getTranslations_callback
155
- */
82
+ * Handle useTranslations_callback / getTranslations_callback
83
+ */
156
84
  function handleUseTranslationsCallback(callExprPath, state, identifier) {
157
- // Check for violations
158
- const callExpr = callExprPath.node;
159
- const useTranslationsCallbackParams = (0, validateTranslationFunction_1.validateUseTranslationsCallback)(callExpr);
160
- state.errorTracker.addErrors(useTranslationsCallbackParams.errors);
161
- if (useTranslationsCallbackParams.errors.length > 0) {
162
- return;
163
- }
164
- // Track the function call
165
- (0, registerUseTranslationsCallback_1.registerUseTranslationsCallback)({
166
- identifier,
167
- state,
168
- });
85
+ const callExpr = callExprPath.node;
86
+ const useTranslationsCallbackParams = require_transform_validation_validateTranslationFunction.validateUseTranslationsCallback(callExpr);
87
+ state.errorTracker.addErrors(useTranslationsCallbackParams.errors);
88
+ if (useTranslationsCallbackParams.errors.length > 0) return;
169
89
  }
170
90
  /**
171
- * Handle useMessages_callback / getMessages_callback
172
- */
91
+ * Handle useMessages_callback / getMessages_callback
92
+ */
173
93
  function handleUseMessagesCallback(callExprPath, state, identifier) {
174
- // Validate parameters
175
- const callExpr = callExprPath.node;
176
- const useMessagesCallbackParams = (0, validateTranslationFunction_1.validateUseMessagesCallback)(callExpr);
177
- // Check for violations
178
- state.errorTracker.addErrors(useMessagesCallbackParams.errors);
179
- if (useMessagesCallbackParams.errors.length > 0) {
180
- return;
181
- }
182
- // Track the function call
183
- (0, registerUseMessagesCallback_1.registerUseMessagesCallback)({
184
- identifier,
185
- state,
186
- });
94
+ const callExpr = callExprPath.node;
95
+ const useMessagesCallbackParams = require_transform_validation_validateTranslationFunction.validateUseMessagesCallback(callExpr);
96
+ state.errorTracker.addErrors(useMessagesCallbackParams.errors);
97
+ if (useMessagesCallbackParams.errors.length > 0) return;
187
98
  }
188
99
  /**
189
- * Handle react function invocations
190
- * jsxDEV, jsx, jsxs, ...
191
- *
192
- * We want to check these because they wrap <T> and other components
193
- */
100
+ * Handle react function invocations
101
+ * jsxDEV, jsx, jsxs, ...
102
+ *
103
+ * We want to check these because they wrap <T> and other components
104
+ */
194
105
  function handleReactInvocation(callExprPath, state) {
195
- const callExpr = callExprPath.node;
196
- // Check if it contains a GT component (first argument)
197
- if (callExpr.arguments.length === 0) {
198
- state.errorTracker.addError('React invocation must have at least one argument' +
199
- (0, errors_1.createErrorLocation)(callExpr));
200
- return;
201
- }
202
- const firstArg = callExpr.arguments[0];
203
- if (!t.isExpression(firstArg)) {
204
- state.errorTracker.addError('React invocation first argument must be an expression' +
205
- (0, errors_1.createErrorLocation)(callExpr));
206
- return;
207
- }
208
- // Get function name from callee
209
- const { namespaceName, functionName } = (0, getCalleeNameFromJsxExpressionParam_1.getCalleeNameFromJsxExpressionParam)(firstArg);
210
- if (!functionName) {
211
- state.errorTracker.addError('React invocation first argument must be a function' +
212
- (0, errors_1.createErrorLocation)(callExpr));
213
- return;
214
- }
215
- // Get the canonical function name
216
- const { canonicalName, type } = (0, getTrackedVariable_1.getTrackedVariable)(state.scopeTracker, namespaceName, functionName);
217
- if (!canonicalName) {
218
- return;
219
- }
220
- // Filter out non-GT components
221
- if (type !== 'generaltranslation' || !(0, helpers_1.isTranslationComponent)(canonicalName)) {
222
- return;
223
- }
224
- // Validate the arguments
225
- const { errors, _hash, id, context, children, maxChars, hasDeriveContext } = (0, validateTranslationComponentArgs_1.validateTranslationComponentArgs)(callExprPath, canonicalName, state);
226
- if (errors.length > 0) {
227
- state.errorTracker.addErrors(errors);
228
- return;
229
- }
230
- // Calculate hash (skip when context contains derive — CLI handles resolution)
231
- const hash = hasDeriveContext
232
- ? ''
233
- : _hash ||
234
- (0, calculateHash_1.default)(Object.assign(Object.assign(Object.assign(Object.assign({ source: children }, (context && { context })), (id && { id })), (maxChars != null && { maxChars })), { dataFormat: 'JSX' }));
235
- // Debug: record hash → children mapping
236
- // Note: children may be undefined when autoderive filters all dynamic-content
237
- // errors (the early return in constructJsxChildren means value is never set).
238
- // This is intentional — the compiler signals CLI resolution via hash=''.
239
- if (state.debugManifest) {
240
- state.debugManifest.set(hash, children !== null && children !== void 0 ? children : null);
241
- }
242
- // Track the component (increment counter, initialize aggregator, set hash)
243
- (0, registerTranslationComponent_1.registerTranslationComponent)(state, hash, { children, id, context });
106
+ const callExpr = callExprPath.node;
107
+ if (callExpr.arguments.length === 0) {
108
+ state.errorTracker.addError("React invocation must have at least one argument" + require_utils_errors.createErrorLocation(callExpr));
109
+ return;
110
+ }
111
+ const firstArg = callExpr.arguments[0];
112
+ if (!_babel_types.isExpression(firstArg)) {
113
+ state.errorTracker.addError("React invocation first argument must be an expression" + require_utils_errors.createErrorLocation(callExpr));
114
+ return;
115
+ }
116
+ const { namespaceName, functionName } = require_transform_jsx_children_utils_getCalleeNameFromJsxExpressionParam.getCalleeNameFromJsxExpressionParam(firstArg);
117
+ if (!functionName) {
118
+ state.errorTracker.addError("React invocation first argument must be a function" + require_utils_errors.createErrorLocation(callExpr));
119
+ return;
120
+ }
121
+ const { canonicalName, type } = require_transform_getTrackedVariable.getTrackedVariable(state.scopeTracker, namespaceName, functionName);
122
+ if (!canonicalName) return;
123
+ if (type !== "generaltranslation" || !require_utils_constants_gt_helpers.isTranslationComponent(canonicalName)) return;
124
+ const { errors, _hash, id, context, children, maxChars, hasDeriveContext } = require_transform_validation_validateTranslationComponentArgs.validateTranslationComponentArgs(callExprPath, canonicalName, state);
125
+ if (errors.length > 0) {
126
+ state.errorTracker.addErrors(errors);
127
+ return;
128
+ }
129
+ const hash = hasDeriveContext ? "" : _hash || require_utils_calculateHash.default({
130
+ source: children,
131
+ ...context && { context },
132
+ ...id && { id },
133
+ ...maxChars != null && { maxChars },
134
+ dataFormat: "JSX"
135
+ });
136
+ if (state.debugManifest) state.debugManifest.set(hash, children ?? null);
137
+ require_transform_registration_registerTranslationComponent.registerTranslationComponent(state, hash, {
138
+ children,
139
+ id,
140
+ context
141
+ });
244
142
  }
245
143
  /**
246
- * Handle standalone translation functions: t() and msg()
247
- * Same argument structure as useGT_callback (message string + options object).
248
- */
144
+ * Handle standalone translation functions: t() and msg()
145
+ * Same argument structure as useGT_callback (message string + options object).
146
+ */
249
147
  function handleStandaloneTranslation(callExprPath, state, { injectHash }) {
250
- // Reuse the same validation as useGT_callback (identical argument structure)
251
- const params = (0, validateTranslationFunction_1.validateTranslationFunction)(callExprPath, state);
252
- state.errorTracker.addErrors(params.errors);
253
- if (params.errors.length > 0 || params.content === undefined) {
254
- return;
255
- }
256
- // Skip derive content
257
- if (params.hasDeriveContext) {
258
- return;
259
- }
260
- (0, registerStandaloneTranslation_1.registerStandaloneTranslation)({
261
- state,
262
- content: params.content,
263
- hash: params.hash,
264
- id: params.id,
265
- context: params.context,
266
- maxChars: params.maxChars,
267
- format: params.format,
268
- injectHash,
269
- });
148
+ const params = require_transform_validation_validateTranslationFunction.validateTranslationFunction(callExprPath, state);
149
+ state.errorTracker.addErrors(params.errors);
150
+ if (params.errors.length > 0 || params.content === void 0) return;
151
+ if (params.hasDeriveContext) return;
152
+ require_transform_registration_registerStandaloneTranslation.registerStandaloneTranslation({
153
+ state,
154
+ content: params.content,
155
+ hash: params.hash,
156
+ id: params.id,
157
+ context: params.context,
158
+ maxChars: params.maxChars,
159
+ format: params.format,
160
+ injectHash
161
+ });
270
162
  }
163
+ //#endregion
164
+ exports.processCallExpression = processCallExpression;
165
+
271
166
  //# sourceMappingURL=processCallExpression.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processCallExpression.js","sourceRoot":"","sources":["../../../src/processing/collection/processCallExpression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processCallExpression.js","names":["getCalleeNameFromExpression","getTrackedVariable","isTranslationFunctionCallback","isReactFunction","validateTranslationFunction","validateUseTranslationsCallback","validateUseMessagesCallback","createErrorLocation","t","getCalleeNameFromJsxExpressionParam","isTranslationComponent","validateTranslationComponentArgs","hashSource"],"sources":["../../../src/processing/collection/processCallExpression.ts"],"sourcesContent":["import { NodePath, VisitNode } from '@babel/traverse';\nimport * as t from '@babel/types';\nimport { TransformState } from '../../state/types';\nimport {\n isTranslationComponent,\n isTranslationFunctionCallback,\n} from '../../utils/constants/gt/helpers';\nimport { getCalleeNameFromExpression } from '../../utils/parsing/getCalleeNameFromExpression';\nimport {\n GT_ALL_FUNCTIONS,\n GT_CALLBACK_FUNCTIONS,\n GT_OTHER_FUNCTIONS,\n} from '../../utils/constants/gt/constants';\nimport {\n validateTranslationFunction,\n validateUseMessagesCallback,\n validateUseTranslationsCallback,\n} from '../../transform/validation/validateTranslationFunction';\nimport { registerUseGTCallback } from '../../transform/registration/callbacks/registerUseGTCallback';\nimport { registerUseTranslationsCallback } from '../../transform/registration/callbacks/registerUseTranslationsCallback';\nimport { registerUseMessagesCallback } from '../../transform/registration/callbacks/registerUseMessagesCallback';\nimport { getTrackedVariable } from '../../transform/getTrackedVariable';\nimport { isReactFunction } from '../../utils/constants/react/helpers';\nimport { validateTranslationComponentArgs } from '../../transform/validation/validateTranslationComponentArgs';\nimport { registerTranslationComponent } from '../../transform/registration/registerTranslationComponent';\nimport { getCalleeNameFromJsxExpressionParam } from '../../transform/jsx-children/utils/getCalleeNameFromJsxExpressionParam';\nimport { createErrorLocation } from '../../utils/errors';\nimport hashSource from '../../utils/calculateHash';\nimport { registerStandaloneTranslation } from '../../transform/registration/registerStandaloneTranslation';\n\n/**\n * Process call expressions\n * - register content from GT callback functions invocations (useGT_callback, etc.)\n * - register <T> + other component content (via jsxDev, jsx, jsxs invocations)\n * - register msg() function invocations?\n * - generally validate content\n */\nexport function processCallExpression(\n state: TransformState\n): VisitNode<t.Node, t.CallExpression> {\n return (callExprPath) => {\n // Get the call expression\n const callExpr = callExprPath.node;\n\n // Get function name from callee\n const { namespaceName, functionName } =\n getCalleeNameFromExpression(callExpr);\n if (!functionName) {\n return;\n }\n\n // Get the canonical function name\n const { canonicalName, identifier, type } = getTrackedVariable(\n state.scopeTracker,\n namespaceName,\n functionName\n );\n if (!canonicalName) {\n return;\n }\n\n // Handle each respective case\n if (\n type === 'generaltranslation' &&\n isTranslationFunctionCallback(canonicalName)\n ) {\n // Handle translation function callbacks (useGT_callback, etc.)\n handleTranslationCallbackInvocation(\n callExprPath,\n state,\n canonicalName,\n identifier!\n );\n } else if (type === 'react' && isReactFunction(canonicalName)) {\n // Handle react variables (jsxDEV, etc.)\n handleReactInvocation(callExprPath, state);\n } else if (\n type === 'generaltranslation' &&\n canonicalName === GT_OTHER_FUNCTIONS.msg\n ) {\n // msg() is runtime-only content; it must not advance the injection counter.\n handleStandaloneTranslation(callExprPath, state, { injectHash: false });\n } else if (\n type === 'generaltranslation' &&\n canonicalName === GT_OTHER_FUNCTIONS.t\n ) {\n // Standalone t() receives an injected $_hash, so collection reserves a\n // matching counter slot for the injection pass.\n handleStandaloneTranslation(callExprPath, state, { injectHash: true });\n }\n };\n}\n\n/* =============================== */\n/* Handlers */\n/* =============================== */\n\n/**\n * Handle general translation variables\n * useGTCallback(), useTranslationsCallback(), useMessagesCallback(), etc.\n */\nfunction handleTranslationCallbackInvocation(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState,\n canonicalName: GT_ALL_FUNCTIONS,\n identifier: number\n) {\n // Handle translation function callbacks ()\n switch (canonicalName) {\n case GT_CALLBACK_FUNCTIONS.useGT_callback:\n case GT_CALLBACK_FUNCTIONS.getGT_callback:\n handleUseGTCallback(callExprPath, state, identifier);\n break;\n case GT_CALLBACK_FUNCTIONS.useTranslations_callback:\n case GT_CALLBACK_FUNCTIONS.getTranslations_callback:\n handleUseTranslationsCallback(callExprPath, state, identifier);\n break;\n case GT_CALLBACK_FUNCTIONS.useMessages_callback:\n case GT_CALLBACK_FUNCTIONS.getMessages_callback:\n handleUseMessagesCallback(callExprPath, state, identifier);\n break;\n default:\n return;\n }\n}\n\n/**\n * Handle useGT_callback / getGT_callback\n */\nfunction handleUseGTCallback(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState,\n identifier: number\n) {\n // Check for violations\n const useGTCallbackParams = validateTranslationFunction(callExprPath, state);\n state.errorTracker.addErrors(useGTCallbackParams.errors);\n if (\n useGTCallbackParams.errors.length > 0 ||\n useGTCallbackParams.content === undefined\n ) {\n return;\n }\n\n // Track the function call\n // When context contains derive(), skip hash calculation (CLI handles resolution)\n const hash = useGTCallbackParams.hasDeriveContext\n ? ''\n : useGTCallbackParams.hash;\n\n registerUseGTCallback({\n identifier,\n state,\n content: useGTCallbackParams.content,\n context: useGTCallbackParams.context,\n id: useGTCallbackParams.id,\n maxChars: useGTCallbackParams.maxChars,\n hash,\n format: useGTCallbackParams.format,\n });\n}\n\n/**\n * Handle useTranslations_callback / getTranslations_callback\n */\nfunction handleUseTranslationsCallback(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState,\n identifier: number\n) {\n // Check for violations\n const callExpr = callExprPath.node;\n const useTranslationsCallbackParams =\n validateUseTranslationsCallback(callExpr);\n state.errorTracker.addErrors(useTranslationsCallbackParams.errors);\n if (useTranslationsCallbackParams.errors.length > 0) {\n return;\n }\n\n // Track the function call\n registerUseTranslationsCallback({\n identifier,\n state,\n });\n}\n\n/**\n * Handle useMessages_callback / getMessages_callback\n */\nfunction handleUseMessagesCallback(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState,\n identifier: number\n) {\n // Validate parameters\n const callExpr = callExprPath.node;\n const useMessagesCallbackParams = validateUseMessagesCallback(callExpr);\n\n // Check for violations\n state.errorTracker.addErrors(useMessagesCallbackParams.errors);\n if (useMessagesCallbackParams.errors.length > 0) {\n return;\n }\n\n // Track the function call\n registerUseMessagesCallback({\n identifier,\n state,\n });\n}\n\n/**\n * Handle react function invocations\n * jsxDEV, jsx, jsxs, ...\n *\n * We want to check these because they wrap <T> and other components\n */\nfunction handleReactInvocation(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState\n) {\n const callExpr = callExprPath.node;\n // Check if it contains a GT component (first argument)\n if (callExpr.arguments.length === 0) {\n state.errorTracker.addError(\n 'React invocation must have at least one argument' +\n createErrorLocation(callExpr)\n );\n return;\n }\n const firstArg = callExpr.arguments[0];\n if (!t.isExpression(firstArg)) {\n state.errorTracker.addError(\n 'React invocation first argument must be an expression' +\n createErrorLocation(callExpr)\n );\n return;\n }\n\n // Get function name from callee\n const { namespaceName, functionName } =\n getCalleeNameFromJsxExpressionParam(firstArg);\n if (!functionName) {\n state.errorTracker.addError(\n 'React invocation first argument must be a function' +\n createErrorLocation(callExpr)\n );\n return;\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 // Filter out non-GT components\n if (type !== 'generaltranslation' || !isTranslationComponent(canonicalName)) {\n return;\n }\n\n // Validate the arguments\n const { errors, _hash, id, context, children, maxChars, hasDeriveContext } =\n validateTranslationComponentArgs(callExprPath, canonicalName, state);\n\n if (errors.length > 0) {\n state.errorTracker.addErrors(errors);\n return;\n }\n\n // Calculate hash (skip when context contains derive — CLI handles resolution)\n const hash = hasDeriveContext\n ? ''\n : _hash ||\n hashSource({\n source: children!,\n ...(context && { context }),\n ...(id && { id }),\n ...(maxChars != null && { maxChars }),\n dataFormat: 'JSX',\n });\n\n // Debug: record hash → children mapping\n // Note: children may be undefined when autoderive filters all dynamic-content\n // errors (the early return in constructJsxChildren means value is never set).\n // This is intentional — the compiler signals CLI resolution via hash=''.\n if (state.debugManifest) {\n state.debugManifest.set(hash, children ?? null);\n }\n\n // Track the component (increment counter, initialize aggregator, set hash)\n registerTranslationComponent(state, hash, { children, id, context });\n}\n\n/**\n * Handle standalone translation functions: t() and msg()\n * Same argument structure as useGT_callback (message string + options object).\n */\nfunction handleStandaloneTranslation(\n callExprPath: NodePath<t.CallExpression>,\n state: TransformState,\n { injectHash }: { injectHash: boolean }\n) {\n // Reuse the same validation as useGT_callback (identical argument structure)\n const params = validateTranslationFunction(callExprPath, state);\n state.errorTracker.addErrors(params.errors);\n if (params.errors.length > 0 || params.content === undefined) {\n return;\n }\n\n // Skip derive content\n if (params.hasDeriveContext) {\n return;\n }\n\n registerStandaloneTranslation({\n state,\n content: params.content,\n hash: params.hash,\n id: params.id,\n context: params.context,\n maxChars: params.maxChars,\n format: params.format,\n injectHash,\n });\n}\n"],"mappings":"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"}
@@ -1,79 +1,42 @@
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.processTaggedTemplateExpression = processTaggedTemplateExpression;
37
- const t = __importStar(require("@babel/types"));
38
- const transformTemplateLiteral_1 = require("../../transform/macro-expansion/transformTemplateLiteral");
39
- const registerStandaloneTranslation_1 = require("../../transform/registration/registerStandaloneTranslation");
40
- const isStringTranslationTaggedTemplate_1 = require("../../utils/parsing/isStringTranslationTaggedTemplate");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
3
+ const require_transform_registration_registerStandaloneTranslation = require("../../transform/registration/registerStandaloneTranslation.js");
4
+ const require_transform_macro_expansion_transformTemplateLiteral = require("../../transform/macro-expansion/transformTemplateLiteral.js");
5
+ const require_utils_parsing_isStringTranslationTaggedTemplate = require("../../utils/parsing/isStringTranslationTaggedTemplate.js");
6
+ let _babel_types = require("@babel/types");
7
+ _babel_types = require_runtime.__toESM(_babel_types);
8
+ //#region src/processing/collection/processTaggedTemplateExpression.ts
41
9
  /**
42
- * Process tagged template expressions during the collection pass.
43
- * Extracts the message for runtime-only entries (t`Hello ${name}`).
44
- *
45
- * Only extracts when:
46
- * - t is unbound (global macro)
47
- * - t is imported from gt-react/browser
48
- *
49
- * Does NOT transform the AST — read-only extraction.
50
- * If the message contains derive() (returns TemplateLiteral), it's skipped.
51
- */
10
+ * Process tagged template expressions during the collection pass.
11
+ * Extracts the message for runtime-only entries (t`Hello ${name}`).
12
+ *
13
+ * Only extracts when:
14
+ * - t is unbound (global macro)
15
+ * - t is imported from gt-react/browser
16
+ *
17
+ * Does NOT transform the AST — read-only extraction.
18
+ * If the message contains derive() (returns TemplateLiteral), it's skipped.
19
+ */
52
20
  function processTaggedTemplateExpression(state) {
53
- const symbol = state.settings.stringTranslationMacro;
54
- return (path) => {
55
- var _a;
56
- if (!(0, isStringTranslationTaggedTemplate_1.isStringTranslationTaggedTemplate)(path, symbol))
57
- return;
58
- // Extract message from the template literal (reuse macro expansion utility)
59
- const { content, errors } = (0, transformTemplateLiteral_1.transformTemplateLiteral)(path.get('quasi'));
60
- // TODO: Until derive added, we only support one message variant
61
- const message = (_a = content[0]) === null || _a === void 0 ? void 0 : _a.message;
62
- if (errors.length > 0 || message == null) {
63
- state.errorTracker.addErrors(errors);
64
- return;
65
- }
66
- // If message is a TemplateLiteral, it contains derive() — skip
67
- // TODO: remove this check once derive is supported
68
- if (!t.isStringLiteral(message)) {
69
- return;
70
- }
71
- // Register as runtime-only content; tagged templates are not hash-injected.
72
- (0, registerStandaloneTranslation_1.registerStandaloneTranslation)({
73
- state,
74
- content: message.value,
75
- injectHash: false,
76
- });
77
- };
21
+ const symbol = state.settings.stringTranslationMacro;
22
+ return (path) => {
23
+ var _content$;
24
+ if (!require_utils_parsing_isStringTranslationTaggedTemplate.isStringTranslationTaggedTemplate(path, symbol)) return;
25
+ const { content, errors } = require_transform_macro_expansion_transformTemplateLiteral.transformTemplateLiteral(path.get("quasi"));
26
+ const message = (_content$ = content[0]) === null || _content$ === void 0 ? void 0 : _content$.message;
27
+ if (errors.length > 0 || message == null) {
28
+ state.errorTracker.addErrors(errors);
29
+ return;
30
+ }
31
+ if (!_babel_types.isStringLiteral(message)) return;
32
+ require_transform_registration_registerStandaloneTranslation.registerStandaloneTranslation({
33
+ state,
34
+ content: message.value,
35
+ injectHash: false
36
+ });
37
+ };
78
38
  }
39
+ //#endregion
40
+ exports.processTaggedTemplateExpression = processTaggedTemplateExpression;
41
+
79
42
  //# sourceMappingURL=processTaggedTemplateExpression.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processTaggedTemplateExpression.js","sourceRoot":"","sources":["../../../src/processing/collection/processTaggedTemplateExpression.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,0EA8BC;AA/CD,gDAAkC;AAElC,uGAAoG;AACpG,8GAA2G;AAC3G,6GAA0G;AAE1G;;;;;;;;;;GAUG;AACH,SAAgB,+BAA+B,CAC7C,KAAqB;IAErB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAErD,OAAO,CAAC,IAAI,EAAE,EAAE;;QACd,IAAI,CAAC,IAAA,qEAAiC,EAAC,IAAI,EAAE,MAAM,CAAC;YAAE,OAAO;QAE7D,4EAA4E;QAC5E,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAA,mDAAwB,EAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACxE,gEAAgE;QAChE,MAAM,OAAO,GAAG,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC;QACpC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACzC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,+DAA+D;QAC/D,mDAAmD;QACnD,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,IAAA,6DAA6B,EAAC;YAC5B,KAAK;YACL,OAAO,EAAE,OAAO,CAAC,KAAK;YACtB,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"processTaggedTemplateExpression.js","names":["isStringTranslationTaggedTemplate","transformTemplateLiteral","t"],"sources":["../../../src/processing/collection/processTaggedTemplateExpression.ts"],"sourcesContent":["import { VisitNode } from '@babel/traverse';\nimport * as t from '@babel/types';\nimport { TransformState } from '../../state/types';\nimport { transformTemplateLiteral } from '../../transform/macro-expansion/transformTemplateLiteral';\nimport { registerStandaloneTranslation } from '../../transform/registration/registerStandaloneTranslation';\nimport { isStringTranslationTaggedTemplate } from '../../utils/parsing/isStringTranslationTaggedTemplate';\n\n/**\n * Process tagged template expressions during the collection pass.\n * Extracts the message for runtime-only entries (t`Hello ${name}`).\n *\n * Only extracts when:\n * - t is unbound (global macro)\n * - t is imported from gt-react/browser\n *\n * Does NOT transform the AST — read-only extraction.\n * If the message contains derive() (returns TemplateLiteral), it's skipped.\n */\nexport function processTaggedTemplateExpression(\n state: TransformState\n): VisitNode<t.Node, t.TaggedTemplateExpression> {\n const symbol = state.settings.stringTranslationMacro;\n\n return (path) => {\n if (!isStringTranslationTaggedTemplate(path, symbol)) return;\n\n // Extract message from the template literal (reuse macro expansion utility)\n const { content, errors } = transformTemplateLiteral(path.get('quasi'));\n // TODO: Until derive added, we only support one message variant\n const message = content[0]?.message;\n if (errors.length > 0 || message == null) {\n state.errorTracker.addErrors(errors);\n return;\n }\n\n // If message is a TemplateLiteral, it contains derive() — skip\n // TODO: remove this check once derive is supported\n if (!t.isStringLiteral(message)) {\n return;\n }\n\n // Register as runtime-only content; tagged templates are not hash-injected.\n registerStandaloneTranslation({\n state,\n content: message.value,\n injectHash: false,\n });\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAkBA,SAAgB,gCACd,OAC+C;CAC/C,MAAM,SAAS,MAAM,SAAS;AAE9B,SAAQ,SAAS;;AACf,MAAI,CAACA,wDAAAA,kCAAkC,MAAM,OAAO,CAAE;EAGtD,MAAM,EAAE,SAAS,WAAWC,2DAAAA,yBAAyB,KAAK,IAAI,QAAQ,CAAC;EAEvE,MAAM,WAAA,YAAU,QAAQ,QAAA,QAAA,cAAA,KAAA,IAAA,KAAA,IAAA,UAAI;AAC5B,MAAI,OAAO,SAAS,KAAK,WAAW,MAAM;AACxC,SAAM,aAAa,UAAU,OAAO;AACpC;;AAKF,MAAI,CAACC,aAAE,gBAAgB,QAAQ,CAC7B;AAIF,+DAAA,8BAA8B;GAC5B;GACA,SAAS,QAAQ;GACjB,YAAY;GACb,CAAC"}