@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,26 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isReactFunction = isReactFunction;
4
- exports.isReactImportSource = isReactImportSource;
5
- exports.isReactComponent = isReactComponent;
6
- const constants_1 = require("./constants");
7
- const constants_2 = require("./constants");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils_constants_react_constants = require("./constants.js");
3
+ //#region src/utils/constants/react/helpers.ts
8
4
  /**
9
- * Check if a function is a React function
10
- */
5
+ * Check if a function is a React function
6
+ */
11
7
  function isReactFunction(name) {
12
- return constants_2.REACT_FUNCTION_VALUES.includes(name);
8
+ return require_utils_constants_react_constants.REACT_FUNCTION_VALUES.includes(name);
13
9
  }
14
10
  /**
15
- * Check if it's a React import source
16
- */
11
+ * Check if it's a React import source
12
+ */
17
13
  function isReactImportSource(name) {
18
- return Object.values(constants_1.REACT_IMPORT_SOURCES).includes(name);
14
+ return Object.values(require_utils_constants_react_constants.REACT_IMPORT_SOURCES).includes(name);
19
15
  }
20
16
  /**
21
- * Check if a component is a React component
22
- */
17
+ * Check if a component is a React component
18
+ */
23
19
  function isReactComponent(name) {
24
- return constants_1.REACT_COMPONENT_VALUES.includes(name);
20
+ return require_utils_constants_react_constants.REACT_COMPONENT_VALUES.includes(name);
25
21
  }
22
+ //#endregion
23
+ exports.isReactComponent = isReactComponent;
24
+ exports.isReactFunction = isReactFunction;
25
+ exports.isReactImportSource = isReactImportSource;
26
+
26
27
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/utils/constants/react/helpers.ts"],"names":[],"mappings":";;AAUA,0CAEC;AAKD,kDAMC;AAKD,4CAEC;AA9BD,2CAIqB;AACrB,2CAAmE;AAEnE;;GAEG;AACH,SAAgB,eAAe,CAAC,IAAY;IAC1C,OAAO,iCAAqB,CAAC,QAAQ,CAAC,IAAqB,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,IAAY;IAEZ,OAAO,MAAM,CAAC,MAAM,CAAC,gCAAoB,CAAC,CAAC,QAAQ,CACjD,IAA4B,CAC7B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,kCAAsB,CAAC,QAAQ,CAAC,IAAsB,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"helpers.js","names":["REACT_FUNCTION_VALUES","REACT_IMPORT_SOURCES","REACT_COMPONENT_VALUES"],"sources":["../../../../src/utils/constants/react/helpers.ts"],"sourcesContent":["import {\n REACT_COMPONENT_VALUES,\n REACT_IMPORT_SOURCES,\n ReactComponent,\n} from './constants';\nimport { REACT_FUNCTION_VALUES, ReactFunction } from './constants';\n\n/**\n * Check if a function is a React function\n */\nexport function isReactFunction(name: string): name is ReactFunction {\n return REACT_FUNCTION_VALUES.includes(name as ReactFunction);\n}\n\n/**\n * Check if it's a React import source\n */\nexport function isReactImportSource(\n name: string\n): name is REACT_IMPORT_SOURCES {\n return Object.values(REACT_IMPORT_SOURCES).includes(\n name as REACT_IMPORT_SOURCES\n );\n}\n\n/**\n * Check if a component is a React component\n */\nexport function isReactComponent(name: string): name is ReactComponent {\n return REACT_COMPONENT_VALUES.includes(name as ReactComponent);\n}\n"],"mappings":";;;;;;AAUA,SAAgB,gBAAgB,MAAqC;AACnE,QAAOA,wCAAAA,sBAAsB,SAAS,KAAsB;;;;;AAM9D,SAAgB,oBACd,MAC8B;AAC9B,QAAO,OAAO,OAAOC,wCAAAA,qBAAqB,CAAC,SACzC,KACD;;;;;AAMH,SAAgB,iBAAiB,MAAsC;AACrE,QAAOC,wCAAAA,uBAAuB,SAAS,KAAuB"}
@@ -1,92 +1,57 @@
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.resolveFirstArgGTName = resolveFirstArgGTName;
37
- exports.isUserTranslationComponent = isUserTranslationComponent;
38
- exports.isUserVariableComponent = isUserVariableComponent;
39
- exports.isGTBranchComponent = isGTBranchComponent;
40
- exports.isGTDeriveComponent = isGTDeriveComponent;
41
- const t = __importStar(require("@babel/types"));
42
- const helpers_1 = require("../gt/helpers");
43
- const constants_1 = require("../gt/constants");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.js");
3
+ require("../gt/constants.js");
4
+ const require_utils_constants_gt_helpers = require("../gt/helpers.js");
5
+ let _babel_types = require("@babel/types");
6
+ _babel_types = require_runtime.__toESM(_babel_types);
7
+ //#region src/utils/constants/resolveIdentifier/isGTComponent.ts
44
8
  /**
45
- * Given a NodePath to the first argument of a jsx() call (the component identifier),
46
- * resolve it to its original imported name from a GT source.
47
- * Returns null if the identifier is not imported from a GT library.
48
- */
9
+ * Given a NodePath to the first argument of a jsx() call (the component identifier),
10
+ * resolve it to its original imported name from a GT source.
11
+ * Returns null if the identifier is not imported from a GT library.
12
+ */
49
13
  function resolveFirstArgGTName(firstArgPath) {
50
- if (!firstArgPath.isIdentifier())
51
- return null;
52
- const binding = firstArgPath.scope.getBinding(firstArgPath.node.name);
53
- if (!binding || !binding.path.isImportSpecifier())
54
- return null;
55
- const imported = binding.path.node.imported;
56
- const originalName = t.isIdentifier(imported)
57
- ? imported.name
58
- : imported.value;
59
- const parentPath = binding.path.parentPath;
60
- if (!(parentPath === null || parentPath === void 0 ? void 0 : parentPath.isImportDeclaration()))
61
- return null;
62
- const importSource = parentPath.node.source.value;
63
- if (!(0, helpers_1.isGTImportSource)(importSource))
64
- return null;
65
- return originalName;
14
+ if (!firstArgPath.isIdentifier()) return null;
15
+ const binding = firstArgPath.scope.getBinding(firstArgPath.node.name);
16
+ if (!binding || !binding.path.isImportSpecifier()) return null;
17
+ const imported = binding.path.node.imported;
18
+ const originalName = _babel_types.isIdentifier(imported) ? imported.name : imported.value;
19
+ const parentPath = binding.path.parentPath;
20
+ if (!(parentPath === null || parentPath === void 0 ? void 0 : parentPath.isImportDeclaration())) return null;
21
+ const importSource = parentPath.node.source.value;
22
+ if (!require_utils_constants_gt_helpers.isGTImportSource(importSource)) return null;
23
+ return originalName;
66
24
  }
67
25
  /** Check if first arg of jsx call is user-written T (not GtInternalTranslateJsx) */
68
26
  function isUserTranslationComponent(firstArgPath) {
69
- return resolveFirstArgGTName(firstArgPath) === constants_1.GT_COMPONENT_TYPES.T;
27
+ return resolveFirstArgGTName(firstArgPath) === "T";
70
28
  }
71
29
  /** Check if first arg is user-written Var, Num, Currency, DateTime, or RelativeTime */
72
30
  function isUserVariableComponent(firstArgPath) {
73
- const name = resolveFirstArgGTName(firstArgPath);
74
- return [
75
- constants_1.GT_COMPONENT_TYPES.Var,
76
- constants_1.GT_COMPONENT_TYPES.Num,
77
- constants_1.GT_COMPONENT_TYPES.Currency,
78
- constants_1.GT_COMPONENT_TYPES.DateTime,
79
- constants_1.GT_COMPONENT_TYPES.RelativeTime,
80
- ].includes((name !== null && name !== void 0 ? name : ''));
31
+ const name = resolveFirstArgGTName(firstArgPath);
32
+ return [
33
+ "Var",
34
+ "Num",
35
+ "Currency",
36
+ "DateTime",
37
+ "RelativeTime"
38
+ ].includes(name ?? "");
81
39
  }
82
40
  /** Check if first arg is Branch or Plural */
83
41
  function isGTBranchComponent(firstArgPath) {
84
- const name = resolveFirstArgGTName(firstArgPath);
85
- return (name === constants_1.GT_COMPONENT_TYPES.Branch || name === constants_1.GT_COMPONENT_TYPES.Plural);
42
+ const name = resolveFirstArgGTName(firstArgPath);
43
+ return name === "Branch" || name === "Plural";
86
44
  }
87
45
  /** Check if first arg is Derive or Static */
88
46
  function isGTDeriveComponent(firstArgPath) {
89
- const name = resolveFirstArgGTName(firstArgPath);
90
- return (name === constants_1.GT_COMPONENT_TYPES.Derive || name === constants_1.GT_COMPONENT_TYPES.Static);
47
+ const name = resolveFirstArgGTName(firstArgPath);
48
+ return name === "Derive" || name === "Static";
91
49
  }
50
+ //#endregion
51
+ exports.isGTBranchComponent = isGTBranchComponent;
52
+ exports.isGTDeriveComponent = isGTDeriveComponent;
53
+ exports.isUserTranslationComponent = isUserTranslationComponent;
54
+ exports.isUserVariableComponent = isUserVariableComponent;
55
+ exports.resolveFirstArgGTName = resolveFirstArgGTName;
56
+
92
57
  //# sourceMappingURL=isGTComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isGTComponent.js","sourceRoot":"","sources":["../../../../src/utils/constants/resolveIdentifier/isGTComponent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,sDAoBC;AAGD,gEAIC;AAGD,0DAWC;AAGD,kDAOC;AAGD,kDAOC;AAtED,gDAAkC;AAClC,2CAAiD;AACjD,+CAAqD;AAErD;;;;GAIG;AACH,SAAgB,qBAAqB,CACnC,YAAoC;IAEpC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;QAAE,OAAO,IAAI,CAAC;IAE9C,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAAE,OAAO,IAAI,CAAC;IAE/D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5C,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC3C,CAAC,CAAC,QAAQ,CAAC,IAAI;QACf,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAEnB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;IAC3C,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,mBAAmB,EAAE,CAAA;QAAE,OAAO,IAAI,CAAC;IAEpD,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAClD,IAAI,CAAC,IAAA,0BAAgB,EAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,oFAAoF;AACpF,SAAgB,0BAA0B,CACxC,YAAoC;IAEpC,OAAO,qBAAqB,CAAC,YAAY,CAAC,KAAK,8BAAkB,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,uFAAuF;AACvF,SAAgB,uBAAuB,CACrC,YAAoC;IAEpC,MAAM,IAAI,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACjD,OAAO;QACL,8BAAkB,CAAC,GAAG;QACtB,8BAAkB,CAAC,GAAG;QACtB,8BAAkB,CAAC,QAAQ;QAC3B,8BAAkB,CAAC,QAAQ;QAC3B,8BAAkB,CAAC,YAAY;KAChC,CAAC,QAAQ,CAAC,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAuB,CAAC,CAAC;AACjD,CAAC;AAED,6CAA6C;AAC7C,SAAgB,mBAAmB,CACjC,YAAoC;IAEpC,MAAM,IAAI,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACjD,OAAO,CACL,IAAI,KAAK,8BAAkB,CAAC,MAAM,IAAI,IAAI,KAAK,8BAAkB,CAAC,MAAM,CACzE,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,SAAgB,mBAAmB,CACjC,YAAoC;IAEpC,MAAM,IAAI,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACjD,OAAO,CACL,IAAI,KAAK,8BAAkB,CAAC,MAAM,IAAI,IAAI,KAAK,8BAAkB,CAAC,MAAM,CACzE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"isGTComponent.js","names":["t","isGTImportSource"],"sources":["../../../../src/utils/constants/resolveIdentifier/isGTComponent.ts"],"sourcesContent":["import { NodePath } from '@babel/traverse';\nimport * as t from '@babel/types';\nimport { isGTImportSource } from '../gt/helpers';\nimport { GT_COMPONENT_TYPES } from '../gt/constants';\n\n/**\n * Given a NodePath to the first argument of a jsx() call (the component identifier),\n * resolve it to its original imported name from a GT source.\n * Returns null if the identifier is not imported from a GT library.\n */\nexport function resolveFirstArgGTName(\n firstArgPath: NodePath<t.Expression>\n): string | null {\n if (!firstArgPath.isIdentifier()) return null;\n\n const binding = firstArgPath.scope.getBinding(firstArgPath.node.name);\n if (!binding || !binding.path.isImportSpecifier()) return null;\n\n const imported = binding.path.node.imported;\n const originalName = t.isIdentifier(imported)\n ? imported.name\n : imported.value;\n\n const parentPath = binding.path.parentPath;\n if (!parentPath?.isImportDeclaration()) return null;\n\n const importSource = parentPath.node.source.value;\n if (!isGTImportSource(importSource)) return null;\n\n return originalName;\n}\n\n/** Check if first arg of jsx call is user-written T (not GtInternalTranslateJsx) */\nexport function isUserTranslationComponent(\n firstArgPath: NodePath<t.Expression>\n): boolean {\n return resolveFirstArgGTName(firstArgPath) === GT_COMPONENT_TYPES.T;\n}\n\n/** Check if first arg is user-written Var, Num, Currency, DateTime, or RelativeTime */\nexport function isUserVariableComponent(\n firstArgPath: NodePath<t.Expression>\n): boolean {\n const name = resolveFirstArgGTName(firstArgPath);\n return [\n GT_COMPONENT_TYPES.Var,\n GT_COMPONENT_TYPES.Num,\n GT_COMPONENT_TYPES.Currency,\n GT_COMPONENT_TYPES.DateTime,\n GT_COMPONENT_TYPES.RelativeTime,\n ].includes((name ?? '') as GT_COMPONENT_TYPES);\n}\n\n/** Check if first arg is Branch or Plural */\nexport function isGTBranchComponent(\n firstArgPath: NodePath<t.Expression>\n): boolean {\n const name = resolveFirstArgGTName(firstArgPath);\n return (\n name === GT_COMPONENT_TYPES.Branch || name === GT_COMPONENT_TYPES.Plural\n );\n}\n\n/** Check if first arg is Derive or Static */\nexport function isGTDeriveComponent(\n firstArgPath: NodePath<t.Expression>\n): boolean {\n const name = resolveFirstArgGTName(firstArgPath);\n return (\n name === GT_COMPONENT_TYPES.Derive || name === GT_COMPONENT_TYPES.Static\n );\n}\n"],"mappings":";;;;;;;;;;;;AAUA,SAAgB,sBACd,cACe;AACf,KAAI,CAAC,aAAa,cAAc,CAAE,QAAO;CAEzC,MAAM,UAAU,aAAa,MAAM,WAAW,aAAa,KAAK,KAAK;AACrE,KAAI,CAAC,WAAW,CAAC,QAAQ,KAAK,mBAAmB,CAAE,QAAO;CAE1D,MAAM,WAAW,QAAQ,KAAK,KAAK;CACnC,MAAM,eAAeA,aAAE,aAAa,SAAS,GACzC,SAAS,OACT,SAAS;CAEb,MAAM,aAAa,QAAQ,KAAK;AAChC,KAAI,EAAA,eAAA,QAAA,eAAA,KAAA,IAAA,KAAA,IAAC,WAAY,qBAAqB,EAAE,QAAO;CAE/C,MAAM,eAAe,WAAW,KAAK,OAAO;AAC5C,KAAI,CAACC,mCAAAA,iBAAiB,aAAa,CAAE,QAAO;AAE5C,QAAO;;;AAIT,SAAgB,2BACd,cACS;AACT,QAAO,sBAAsB,aAAa,KAAA;;;AAI5C,SAAgB,wBACd,cACS;CACT,MAAM,OAAO,sBAAsB,aAAa;AAChD,QAAO;;;;;;EAMN,CAAC,SAAU,QAAQ,GAA0B;;;AAIhD,SAAgB,oBACd,cACS;CACT,MAAM,OAAO,sBAAsB,aAAa;AAChD,QACE,SAAA,YAAsC,SAAA;;;AAK1C,SAAgB,oBACd,cACS;CACT,MAAM,OAAO,sBAAsB,aAAa;AAChD,QACE,SAAA,YAAsC,SAAA"}
@@ -1,93 +1,43 @@
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.isReactJsxFunction = isReactJsxFunction;
37
- const t = __importStar(require("@babel/types"));
38
- const helpers_1 = require("../react/helpers");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.js");
3
+ const require_utils_constants_react_helpers = require("../react/helpers.js");
4
+ let _babel_types = require("@babel/types");
5
+ _babel_types = require_runtime.__toESM(_babel_types);
6
+ //#region src/utils/constants/resolveIdentifier/isReactJsxFunction.ts
39
7
  /**
40
- * Given an identifier node, determine if it is a React Jsx function
41
- * jsxDEV, jsx, jsxs, ...
42
- *
43
- * TODO: handle default imports and namespace imports
44
- */
8
+ * Given an identifier node, determine if it is a React Jsx function
9
+ * jsxDEV, jsx, jsxs, ...
10
+ *
11
+ * TODO: handle default imports and namespace imports
12
+ */
45
13
  function isReactJsxFunction(path) {
46
- if (path.isIdentifier()) {
47
- return isReactJsxFunctionImportSpecifier(path);
48
- }
49
- else if (path.isMemberExpression()) {
50
- return isReactJsxFunctionMemberExpression(path);
51
- }
52
- return false;
14
+ if (path.isIdentifier()) return isReactJsxFunctionImportSpecifier(path);
15
+ else if (path.isMemberExpression()) return isReactJsxFunctionMemberExpression(path);
16
+ return false;
53
17
  }
54
- // --- Helpers --- //
55
18
  /**
56
- * Check if the identifier is a React Jsx function import specifier
57
- * import { jsxDEV, jsx, jsxs } from 'react'
58
- */
19
+ * Check if the identifier is a React Jsx function import specifier
20
+ * import { jsxDEV, jsx, jsxs } from 'react'
21
+ */
59
22
  function isReactJsxFunctionImportSpecifier(identifierPath) {
60
- // Check that binding is being imported
61
- // import { jsxDEV, jsx, jsxs } from '...'
62
- const binding = identifierPath.scope.getBinding(identifierPath.node.name);
63
- if (!binding || !binding.path.isImportSpecifier()) {
64
- return false;
65
- }
66
- // Check the original name is a React Jsx function
67
- const imported = binding.path.node.imported;
68
- const originalName = t.isIdentifier(imported)
69
- ? imported.name
70
- : imported.value;
71
- if (!(0, helpers_1.isReactFunction)(originalName)) {
72
- return false;
73
- }
74
- // Check the import source is from React
75
- const parentPath = binding.path.parentPath;
76
- if (!parentPath || !parentPath.isImportDeclaration()) {
77
- return false;
78
- }
79
- const importSource = parentPath.node.source.value;
80
- if (!(0, helpers_1.isReactImportSource)(importSource)) {
81
- return false;
82
- }
83
- return true;
23
+ const binding = identifierPath.scope.getBinding(identifierPath.node.name);
24
+ if (!binding || !binding.path.isImportSpecifier()) return false;
25
+ const imported = binding.path.node.imported;
26
+ if (!require_utils_constants_react_helpers.isReactFunction(_babel_types.isIdentifier(imported) ? imported.name : imported.value)) return false;
27
+ const parentPath = binding.path.parentPath;
28
+ if (!parentPath || !parentPath.isImportDeclaration()) return false;
29
+ const importSource = parentPath.node.source.value;
30
+ if (!require_utils_constants_react_helpers.isReactImportSource(importSource)) return false;
31
+ return true;
84
32
  }
85
33
  /**
86
- * Check if the member expression is a React Jsx function
87
- * React.jsxDEV, React.jsx, React.jsxs, ...
88
- */
34
+ * Check if the member expression is a React Jsx function
35
+ * React.jsxDEV, React.jsx, React.jsxs, ...
36
+ */
89
37
  function isReactJsxFunctionMemberExpression(_memberExpressionPath) {
90
- // TODO: implement
91
- return false;
38
+ return false;
92
39
  }
40
+ //#endregion
41
+ exports.isReactJsxFunction = isReactJsxFunction;
42
+
93
43
  //# sourceMappingURL=isReactJsxFunction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isReactJsxFunction.js","sourceRoot":"","sources":["../../../../src/utils/constants/resolveIdentifier/isReactJsxFunction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,gDASC;AAlBD,gDAAkC;AAClC,8CAAwE;AAExE;;;;;GAKG;AACH,SAAgB,kBAAkB,CAChC,IAAiD;IAEjD,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACxB,OAAO,iCAAiC,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;SAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;QACrC,OAAO,kCAAkC,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qBAAqB;AAErB;;;GAGG;AACH,SAAS,iCAAiC,CACxC,cAAsC;IAEtC,uCAAuC;IACvC,0CAA0C;IAC1C,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kDAAkD;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5C,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC3C,CAAC,CAAC,QAAQ,CAAC,IAAI;QACf,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IACnB,IAAI,CAAC,IAAA,yBAAe,EAAC,YAAY,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;IAC3C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAClD,IAAI,CAAC,IAAA,6BAAmB,EAAC,YAAY,CAAC,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,kCAAkC,CACzC,qBAAmD;IAEnD,kBAAkB;IAClB,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"isReactJsxFunction.js","names":["isReactFunction","t","isReactImportSource"],"sources":["../../../../src/utils/constants/resolveIdentifier/isReactJsxFunction.ts"],"sourcesContent":["import { NodePath } from '@babel/traverse';\nimport * as t from '@babel/types';\nimport { isReactFunction, isReactImportSource } from '../react/helpers';\n\n/**\n * Given an identifier node, determine if it is a React Jsx function\n * jsxDEV, jsx, jsxs, ...\n *\n * TODO: handle default imports and namespace imports\n */\nexport function isReactJsxFunction(\n path: NodePath<t.Identifier | t.MemberExpression>\n): boolean {\n if (path.isIdentifier()) {\n return isReactJsxFunctionImportSpecifier(path);\n } else if (path.isMemberExpression()) {\n return isReactJsxFunctionMemberExpression(path);\n }\n return false;\n}\n\n// --- Helpers --- //\n\n/**\n * Check if the identifier is a React Jsx function import specifier\n * import { jsxDEV, jsx, jsxs } from 'react'\n */\nfunction isReactJsxFunctionImportSpecifier(\n identifierPath: NodePath<t.Identifier>\n): boolean {\n // Check that binding is being imported\n // import { jsxDEV, jsx, jsxs } from '...'\n const binding = identifierPath.scope.getBinding(identifierPath.node.name);\n if (!binding || !binding.path.isImportSpecifier()) {\n return false;\n }\n\n // Check the original name is a React Jsx function\n const imported = binding.path.node.imported;\n const originalName = t.isIdentifier(imported)\n ? imported.name\n : imported.value;\n if (!isReactFunction(originalName)) {\n return false;\n }\n\n // Check the import source is from React\n const parentPath = binding.path.parentPath;\n if (!parentPath || !parentPath.isImportDeclaration()) {\n return false;\n }\n const importSource = parentPath.node.source.value;\n if (!isReactImportSource(importSource)) {\n return false;\n }\n\n return true;\n}\n\n/**\n * Check if the member expression is a React Jsx function\n * React.jsxDEV, React.jsx, React.jsxs, ...\n */\nfunction isReactJsxFunctionMemberExpression(\n _memberExpressionPath: NodePath<t.MemberExpression>\n): boolean {\n // TODO: implement\n return false;\n}\n"],"mappings":";;;;;;;;;;;;AAUA,SAAgB,mBACd,MACS;AACT,KAAI,KAAK,cAAc,CACrB,QAAO,kCAAkC,KAAK;UACrC,KAAK,oBAAoB,CAClC,QAAO,mCAAmC,KAAK;AAEjD,QAAO;;;;;;AAST,SAAS,kCACP,gBACS;CAGT,MAAM,UAAU,eAAe,MAAM,WAAW,eAAe,KAAK,KAAK;AACzE,KAAI,CAAC,WAAW,CAAC,QAAQ,KAAK,mBAAmB,CAC/C,QAAO;CAIT,MAAM,WAAW,QAAQ,KAAK,KAAK;AAInC,KAAI,CAACA,sCAAAA,gBAHgBC,aAAE,aAAa,SAAS,GACzC,SAAS,OACT,SAAS,MACqB,CAChC,QAAO;CAIT,MAAM,aAAa,QAAQ,KAAK;AAChC,KAAI,CAAC,cAAc,CAAC,WAAW,qBAAqB,CAClD,QAAO;CAET,MAAM,eAAe,WAAW,KAAK,OAAO;AAC5C,KAAI,CAACC,sCAAAA,oBAAoB,aAAa,CACpC,QAAO;AAGT,QAAO;;;;;;AAOT,SAAS,mCACP,uBACS;AAET,QAAO"}
@@ -1,26 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createErrorLocation = createErrorLocation;
4
- exports.generateDynamicContentErrorMessage = generateDynamicContentErrorMessage;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/errors.ts
5
3
  /**
6
- * Create error location with filename and line number
7
- * @param node
8
- */
4
+ * Create error location with filename and line number
5
+ * @param node
6
+ */
9
7
  function createErrorLocation(node) {
10
- var _a, _b;
11
- if ((_a = node.loc) === null || _a === void 0 ? void 0 : _a.start.line) {
12
- if ((_b = node.loc) === null || _b === void 0 ? void 0 : _b.start.column) {
13
- return ` {filename}:${node.loc.start.line}:${node.loc.start.column}`;
14
- }
15
- return ` {filename}:${node.loc.start.line}`;
16
- }
17
- return ` {filename}`;
8
+ var _node$loc;
9
+ if ((_node$loc = node.loc) === null || _node$loc === void 0 ? void 0 : _node$loc.start.line) {
10
+ var _node$loc2;
11
+ if ((_node$loc2 = node.loc) === null || _node$loc2 === void 0 ? void 0 : _node$loc2.start.column) return ` {filename}:${node.loc.start.line}:${node.loc.start.column}`;
12
+ return ` {filename}:${node.loc.start.line}`;
13
+ }
14
+ return ` {filename}`;
18
15
  }
19
- const T_COMPONENT_DYNAMIC_CONTENT_ERROR = 'The <T> component cannot contain any dynamic content. ';
16
+ const T_COMPONENT_DYNAMIC_CONTENT_ERROR = "The <T> component cannot contain any dynamic content. ";
20
17
  function generateDynamicContentErrorMessage(name) {
21
- return (T_COMPONENT_DYNAMIC_CONTENT_ERROR +
22
- (name
23
- ? `Wrap the "${name}" variable in a <Var> component.`
24
- : 'All variables must be wrapped in a <Var> component or other Variable Components.'));
18
+ return T_COMPONENT_DYNAMIC_CONTENT_ERROR + (name ? `Wrap the "${name}" variable in a <Var> component.` : "All variables must be wrapped in a <Var> component or other Variable Components.");
25
19
  }
20
+ //#endregion
21
+ exports.createErrorLocation = createErrorLocation;
22
+ exports.generateDynamicContentErrorMessage = generateDynamicContentErrorMessage;
23
+
26
24
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":";;AAMA,kDAQC;AAKD,gFAOC;AAxBD;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,IAAY;;IAC9C,IAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO,eAAe,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,eAAe,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,iCAAiC,GACrC,wDAAwD,CAAC;AAE3D,SAAgB,kCAAkC,CAAC,IAAa;IAC9D,OAAO,CACL,iCAAiC;QACjC,CAAC,IAAI;YACH,CAAC,CAAC,aAAa,IAAI,kCAAkC;YACrD,CAAC,CAAC,kFAAkF,CAAC,CACxF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"errors.js","names":[],"sources":["../../src/utils/errors.ts"],"sourcesContent":["import * as t from '@babel/types';\n\n/**\n * Create error location with filename and line number\n * @param node\n */\nexport function createErrorLocation(node: t.Node) {\n if (node.loc?.start.line) {\n if (node.loc?.start.column) {\n return ` {filename}:${node.loc.start.line}:${node.loc.start.column}`;\n }\n return ` {filename}:${node.loc.start.line}`;\n }\n return ` {filename}`;\n}\n\nconst T_COMPONENT_DYNAMIC_CONTENT_ERROR =\n 'The <T> component cannot contain any dynamic content. ';\n\nexport function generateDynamicContentErrorMessage(name?: string) {\n return (\n T_COMPONENT_DYNAMIC_CONTENT_ERROR +\n (name\n ? `Wrap the \"${name}\" variable in a <Var> component.`\n : 'All variables must be wrapped in a <Var> component or other Variable Components.')\n );\n}\n"],"mappings":";;;;;;AAMA,SAAgB,oBAAoB,MAAc;;AAChD,MAAA,YAAI,KAAK,SAAA,QAAA,cAAA,KAAA,IAAA,KAAA,IAAA,UAAK,MAAM,MAAM;;AACxB,OAAA,aAAI,KAAK,SAAA,QAAA,eAAA,KAAA,IAAA,KAAA,IAAA,WAAK,MAAM,OAClB,QAAO,eAAe,KAAK,IAAI,MAAM,KAAK,GAAG,KAAK,IAAI,MAAM;AAE9D,SAAO,eAAe,KAAK,IAAI,MAAM;;AAEvC,QAAO;;AAGT,MAAM,oCACJ;AAEF,SAAgB,mCAAmC,MAAe;AAChE,QACE,qCACC,OACG,aAAa,KAAK,oCAClB"}
@@ -1,43 +1,39 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.multiply = multiply;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/multiplication/multiply.ts
4
3
  /**
5
- * Expands top-level ChoiceNodes in a ResolutionNode array into the
6
- * cross-product of all possible combinations.
7
- *
8
- * Given `[A, Choice([B, C]), D]`:
9
- * - Position 0: A (1 alternative)
10
- * - Position 1: B or C (2 alternatives)
11
- * - Position 2: D (1 alternative)
12
- * - Cross-product: [[A, B, D], [A, C, D]]
13
- *
14
- * Nested ChoiceNodes within a branch are flattened (a Choice inside
15
- * a Choice is treated as additional alternatives). However, this
16
- * does NOT recurse into leaf values — ChoiceNodes inside
17
- * ExtractionElement.c or ExtractionGTProp.b are passed through
18
- * unexpanded. Leaf-level expansion will require a recurseIntoLeaf
19
- * callback (not yet implemented).
20
- *
21
- * @typeParam T - The leaf content type
22
- * @param nodes - The array of resolution nodes to expand
23
- * @returns Array of all possible combinations. Each inner array
24
- * is one variant with all ChoiceNodes resolved to a single branch.
25
- * Returns `[nodes as T[]]` if no ChoiceNodes are found.
26
- */
4
+ * Expands top-level ChoiceNodes in a ResolutionNode array into the
5
+ * cross-product of all possible combinations.
6
+ *
7
+ * Given `[A, Choice([B, C]), D]`:
8
+ * - Position 0: A (1 alternative)
9
+ * - Position 1: B or C (2 alternatives)
10
+ * - Position 2: D (1 alternative)
11
+ * - Cross-product: [[A, B, D], [A, C, D]]
12
+ *
13
+ * Nested ChoiceNodes within a branch are flattened (a Choice inside
14
+ * a Choice is treated as additional alternatives). However, this
15
+ * does NOT recurse into leaf values — ChoiceNodes inside
16
+ * ExtractionElement.c or ExtractionGTProp.b are passed through
17
+ * unexpanded. Leaf-level expansion will require a recurseIntoLeaf
18
+ * callback (not yet implemented).
19
+ *
20
+ * @typeParam T - The leaf content type
21
+ * @param nodes - The array of resolution nodes to expand
22
+ * @returns Array of all possible combinations. Each inner array
23
+ * is one variant with all ChoiceNodes resolved to a single branch.
24
+ * Returns `[nodes as T[]]` if no ChoiceNodes are found.
25
+ */
27
26
  function multiply(nodes) {
28
- const alternativesByPosition = nodes.map(expandNode);
29
- return alternativesByPosition.reduce((variants, alternatives) => variants.flatMap((variant) => alternatives.map((alternative) => [...variant, alternative])), [[]]);
27
+ return nodes.map(expandNode).reduce((variants, alternatives) => variants.flatMap((variant) => alternatives.map((alternative) => [...variant, alternative])), [[]]);
30
28
  }
31
29
  function expandNode(node) {
32
- if (!isChoiceNode(node)) {
33
- return [node];
34
- }
35
- return node.branches.flatMap(expandNode);
30
+ if (!isChoiceNode(node)) return [node];
31
+ return node.branches.flatMap(expandNode);
36
32
  }
37
33
  function isChoiceNode(node) {
38
- return (typeof node === 'object' &&
39
- node !== null &&
40
- node.__gt_node_type === 'choice' &&
41
- Array.isArray(node.branches));
34
+ return typeof node === "object" && node !== null && node.__gt_node_type === "choice" && Array.isArray(node.branches);
42
35
  }
36
+ //#endregion
37
+ exports.multiply = multiply;
38
+
43
39
  //# sourceMappingURL=multiply.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multiply.js","sourceRoot":"","sources":["../../../src/utils/multiplication/multiply.ts"],"names":[],"mappings":";;AAyBA,4BASC;AAhCD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,QAAQ,CAAI,KAA0B;IACpD,MAAM,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACrD,OAAO,sBAAsB,CAAC,MAAM,CAClC,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,CACzB,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3B,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,WAAW,CAAC,CAAC,CAC7D,EACH,CAAC,EAAE,CAAC,CACL,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAI,IAAuB;IAC5C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAS,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,YAAY,CAAI,IAAuB;IAC9C,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAAsB,CAAC,cAAc,KAAK,QAAQ;QACnD,KAAK,CAAC,OAAO,CAAE,IAAsB,CAAC,QAAQ,CAAC,CAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"multiply.js","names":[],"sources":["../../../src/utils/multiplication/multiply.ts"],"sourcesContent":["import type { ChoiceNode, ResolutionNode } from './types';\n\n/**\n * Expands top-level ChoiceNodes in a ResolutionNode array into the\n * cross-product of all possible combinations.\n *\n * Given `[A, Choice([B, C]), D]`:\n * - Position 0: A (1 alternative)\n * - Position 1: B or C (2 alternatives)\n * - Position 2: D (1 alternative)\n * - Cross-product: [[A, B, D], [A, C, D]]\n *\n * Nested ChoiceNodes within a branch are flattened (a Choice inside\n * a Choice is treated as additional alternatives). However, this\n * does NOT recurse into leaf values — ChoiceNodes inside\n * ExtractionElement.c or ExtractionGTProp.b are passed through\n * unexpanded. Leaf-level expansion will require a recurseIntoLeaf\n * callback (not yet implemented).\n *\n * @typeParam T - The leaf content type\n * @param nodes - The array of resolution nodes to expand\n * @returns Array of all possible combinations. Each inner array\n * is one variant with all ChoiceNodes resolved to a single branch.\n * Returns `[nodes as T[]]` if no ChoiceNodes are found.\n */\nexport function multiply<T>(nodes: ResolutionNode<T>[]): T[][] {\n const alternativesByPosition = nodes.map(expandNode);\n return alternativesByPosition.reduce<T[][]>(\n (variants, alternatives) =>\n variants.flatMap((variant) =>\n alternatives.map((alternative) => [...variant, alternative])\n ),\n [[]]\n );\n}\n\nfunction expandNode<T>(node: ResolutionNode<T>): T[] {\n if (!isChoiceNode(node)) {\n return [node as T];\n }\n\n return node.branches.flatMap(expandNode);\n}\n\nfunction isChoiceNode<T>(node: ResolutionNode<T>): node is ChoiceNode<T> {\n return (\n typeof node === 'object' &&\n node !== null &&\n (node as ChoiceNode<T>).__gt_node_type === 'choice' &&\n Array.isArray((node as ChoiceNode<T>).branches)\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAgB,SAAY,OAAmC;AAE7D,QAD+B,MAAM,IAAI,WACZ,CAAC,QAC3B,UAAU,iBACT,SAAS,SAAS,YAChB,aAAa,KAAK,gBAAgB,CAAC,GAAG,SAAS,YAAY,CAAC,CAC7D,EACH,CAAC,EAAE,CAAC,CACL;;AAGH,SAAS,WAAc,MAA8B;AACnD,KAAI,CAAC,aAAa,KAAK,CACrB,QAAO,CAAC,KAAU;AAGpB,QAAO,KAAK,SAAS,QAAQ,WAAW;;AAG1C,SAAS,aAAgB,MAAgD;AACvE,QACE,OAAO,SAAS,YAChB,SAAS,QACR,KAAuB,mBAAmB,YAC3C,MAAM,QAAS,KAAuB,SAAS"}
@@ -1,3 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });