@teambit/typescript 1.0.694 → 1.0.695

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.
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.694/dist/typescript.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.694/dist/typescript.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.695/dist/typescript.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.695/dist/typescript.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -44,14 +44,16 @@ class TypeScriptParser {
44
44
  if (statement.exportClause) {
45
45
  if (_typescript().default.isNamedExports(statement.exportClause)) {
46
46
  statement.exportClause.elements.forEach(element => {
47
- const name = element.name.escapedText.toString();
47
+ // Handle both Identifier and StringLiteral export names (TypeScript 5.6+ arbitrary module namespace identifiers)
48
+ const name = _typescript().default.isIdentifier(element.name) ? element.name.escapedText.toString() : element.name.text;
48
49
  if (name !== 'default') {
49
50
  exportModels.push(new (_semanticsEntities().Export)(name, staticProperties.get(name)));
50
51
  }
51
52
  });
52
53
  }
53
54
  if (_typescript().default.isNamespaceExport(statement.exportClause)) {
54
- const name = statement.exportClause.name.escapedText.toString();
55
+ // Handle both Identifier and StringLiteral export names (TypeScript 5.6+ arbitrary module namespace identifiers)
56
+ const name = _typescript().default.isIdentifier(statement.exportClause.name) ? statement.exportClause.name.escapedText.toString() : statement.exportClause.name.text;
55
57
  exportModels.push(new (_semanticsEntities().Export)(name, staticProperties.get(name)));
56
58
  }
57
59
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_semanticsEntities","data","require","_fsExtra","_typescript","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","TypeScriptParser","getExports","sourceFile","staticProperties","parseStaticProperties","exportModels","statements","forEach","statement","ts","isExportAssignment","isExportDeclaration","exportClause","isNamedExports","elements","element","name","escapedText","toString","push","Export","get","isNamespaceExport","statementModifiers","canHaveModifiers","getModifiers","undefined","some","modifier","kind","SyntaxKind","ExportKeyword","isVariableStatement","child","declarationList","declarations","isIdentifier","isFunctionDeclaration","isClassDeclaration","withoutEmpty","filter","exportModel","parseModule","modulePath","content","ast","createSourceFile","readFileSync","ScriptTarget","Latest","moduleExports","exportStaticProperties","Map","isExpressionStatement","isBinaryExpression","expression","operatorToken","EqualsToken","isPropertyAccessExpression","left","targetName","text","propertyName","has","set","existingProperties","isStringLiteral","right","isNumericLiteral","UndefinedKeyword","NullKeyword","TrueKeyword","FalseKeyword","err","logger","error","constructor","exports"],"sources":["typescript.parser.ts"],"sourcesContent":["import type { Parser } from '@teambit/schema';\nimport type { StaticProperties } from '@teambit/semantics.entities.semantic-schema';\nimport { Export } from '@teambit/semantics.entities.semantic-schema';\nimport type { Logger } from '@teambit/logger';\nimport { readFileSync } from 'fs-extra';\nimport ts from 'typescript';\n\nexport class TypeScriptParser implements Parser {\n public extension = /^.*\\.(js|jsx|ts|tsx)$/;\n\n getExports(sourceFile: ts.SourceFile): Export[] {\n const staticProperties = this.parseStaticProperties(sourceFile);\n const exportModels: Export[] = [];\n\n sourceFile.statements.forEach((statement) => {\n // export default\n if (ts.isExportAssignment(statement)) {\n // export default\n }\n\n // export declarations or re-exports\n if (ts.isExportDeclaration(statement)) {\n if (statement.exportClause) {\n if (ts.isNamedExports(statement.exportClause)) {\n statement.exportClause.elements.forEach((element) => {\n const name = element.name.escapedText.toString();\n if (name !== 'default') {\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n });\n }\n if (ts.isNamespaceExport(statement.exportClause)) {\n const name = statement.exportClause.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n }\n }\n\n // export modifiers\n // - variable statement\n // - function statement\n // - class statement\n const statementModifiers = ts.canHaveModifiers(statement) ? ts.getModifiers(statement) : undefined;\n if (statementModifiers) {\n statementModifiers.some((modifier) => {\n if (modifier.kind === ts.SyntaxKind.ExportKeyword) {\n if (ts.isVariableStatement(statement)) {\n const child = statement.declarationList.declarations[0];\n if (ts.isIdentifier(child.name)) {\n const name = child.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n } else if (ts.isFunctionDeclaration(statement)) {\n if (statement.name) {\n const name = statement.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n } else if (ts.isClassDeclaration(statement)) {\n if (statement.name) {\n const name = statement.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n }\n return true;\n }\n return false;\n });\n }\n });\n\n const withoutEmpty = exportModels.filter((exportModel) => exportModel !== undefined);\n // @ts-ignore\n return withoutEmpty;\n }\n\n parseModule(modulePath: string, content?: string) {\n const ast = ts.createSourceFile(modulePath, content ?? readFileSync(modulePath, 'utf8'), ts.ScriptTarget.Latest);\n\n const moduleExports = this.getExports(ast);\n return moduleExports;\n }\n\n parseStaticProperties(sourceFile: ts.SourceFile) {\n // TODO - should we also parse staticProperties inside classes / objects?\n\n const exportStaticProperties = new Map<string, StaticProperties>();\n\n sourceFile.statements.forEach((statement) => {\n try {\n if (!ts.isExpressionStatement(statement)) return;\n if (!ts.isBinaryExpression(statement.expression)) return;\n if (statement.expression.operatorToken.kind !== ts.SyntaxKind.EqualsToken) return;\n if (!ts.isPropertyAccessExpression(statement.expression.left)) return;\n if (!ts.isIdentifier(statement.expression.left.expression)) return;\n\n const targetName = statement.expression.left.expression.text;\n const propertyName = statement.expression.left.name.text;\n\n if (!exportStaticProperties.has(targetName)) exportStaticProperties.set(targetName, new Map());\n\n const existingProperties = exportStaticProperties.get(targetName);\n\n if (ts.isStringLiteral(statement.expression.right)) {\n existingProperties?.set(propertyName, statement.expression.right.text);\n } else if (ts.isNumericLiteral(statement.expression.right)) {\n existingProperties?.set(propertyName, +statement.expression.right.text);\n } else if (statement.expression.right.kind === ts.SyntaxKind.UndefinedKeyword) {\n existingProperties?.set(propertyName, undefined);\n } else if (statement.expression.right.kind === ts.SyntaxKind.NullKeyword) {\n existingProperties?.set(propertyName, null);\n } else if (statement.expression.right.kind === ts.SyntaxKind.TrueKeyword) {\n existingProperties?.set(propertyName, true);\n } else if (statement.expression.right.kind === ts.SyntaxKind.FalseKeyword) {\n existingProperties?.set(propertyName, false);\n }\n } catch (err) {\n this.logger?.error('failed parsing static properties', err);\n }\n });\n\n return exportStaticProperties;\n }\n\n constructor(private logger?: Logger | undefined) {}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_semanticsEntities","data","require","_fsExtra","_typescript","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","TypeScriptParser","getExports","sourceFile","staticProperties","parseStaticProperties","exportModels","statements","forEach","statement","ts","isExportAssignment","isExportDeclaration","exportClause","isNamedExports","elements","element","name","isIdentifier","escapedText","toString","text","push","Export","get","isNamespaceExport","statementModifiers","canHaveModifiers","getModifiers","undefined","some","modifier","kind","SyntaxKind","ExportKeyword","isVariableStatement","child","declarationList","declarations","isFunctionDeclaration","isClassDeclaration","withoutEmpty","filter","exportModel","parseModule","modulePath","content","ast","createSourceFile","readFileSync","ScriptTarget","Latest","moduleExports","exportStaticProperties","Map","isExpressionStatement","isBinaryExpression","expression","operatorToken","EqualsToken","isPropertyAccessExpression","left","targetName","propertyName","has","set","existingProperties","isStringLiteral","right","isNumericLiteral","UndefinedKeyword","NullKeyword","TrueKeyword","FalseKeyword","err","logger","error","constructor","exports"],"sources":["typescript.parser.ts"],"sourcesContent":["import type { Parser } from '@teambit/schema';\nimport type { StaticProperties } from '@teambit/semantics.entities.semantic-schema';\nimport { Export } from '@teambit/semantics.entities.semantic-schema';\nimport type { Logger } from '@teambit/logger';\nimport { readFileSync } from 'fs-extra';\nimport ts from 'typescript';\n\nexport class TypeScriptParser implements Parser {\n public extension = /^.*\\.(js|jsx|ts|tsx)$/;\n\n getExports(sourceFile: ts.SourceFile): Export[] {\n const staticProperties = this.parseStaticProperties(sourceFile);\n const exportModels: Export[] = [];\n\n sourceFile.statements.forEach((statement) => {\n // export default\n if (ts.isExportAssignment(statement)) {\n // export default\n }\n\n // export declarations or re-exports\n if (ts.isExportDeclaration(statement)) {\n if (statement.exportClause) {\n if (ts.isNamedExports(statement.exportClause)) {\n statement.exportClause.elements.forEach((element) => {\n // Handle both Identifier and StringLiteral export names (TypeScript 5.6+ arbitrary module namespace identifiers)\n const name = ts.isIdentifier(element.name)\n ? element.name.escapedText.toString()\n : (element.name as ts.StringLiteral).text;\n if (name !== 'default') {\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n });\n }\n if (ts.isNamespaceExport(statement.exportClause)) {\n // Handle both Identifier and StringLiteral export names (TypeScript 5.6+ arbitrary module namespace identifiers)\n const name = ts.isIdentifier(statement.exportClause.name)\n ? statement.exportClause.name.escapedText.toString()\n : (statement.exportClause.name as ts.StringLiteral).text;\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n }\n }\n\n // export modifiers\n // - variable statement\n // - function statement\n // - class statement\n const statementModifiers = ts.canHaveModifiers(statement) ? ts.getModifiers(statement) : undefined;\n if (statementModifiers) {\n statementModifiers.some((modifier) => {\n if (modifier.kind === ts.SyntaxKind.ExportKeyword) {\n if (ts.isVariableStatement(statement)) {\n const child = statement.declarationList.declarations[0];\n if (ts.isIdentifier(child.name)) {\n const name = child.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n } else if (ts.isFunctionDeclaration(statement)) {\n if (statement.name) {\n const name = statement.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n } else if (ts.isClassDeclaration(statement)) {\n if (statement.name) {\n const name = statement.name.escapedText.toString();\n exportModels.push(new Export(name, staticProperties.get(name)));\n }\n }\n return true;\n }\n return false;\n });\n }\n });\n\n const withoutEmpty = exportModels.filter((exportModel) => exportModel !== undefined);\n // @ts-ignore\n return withoutEmpty;\n }\n\n parseModule(modulePath: string, content?: string) {\n const ast = ts.createSourceFile(modulePath, content ?? readFileSync(modulePath, 'utf8'), ts.ScriptTarget.Latest);\n\n const moduleExports = this.getExports(ast);\n return moduleExports;\n }\n\n parseStaticProperties(sourceFile: ts.SourceFile) {\n // TODO - should we also parse staticProperties inside classes / objects?\n\n const exportStaticProperties = new Map<string, StaticProperties>();\n\n sourceFile.statements.forEach((statement) => {\n try {\n if (!ts.isExpressionStatement(statement)) return;\n if (!ts.isBinaryExpression(statement.expression)) return;\n if (statement.expression.operatorToken.kind !== ts.SyntaxKind.EqualsToken) return;\n if (!ts.isPropertyAccessExpression(statement.expression.left)) return;\n if (!ts.isIdentifier(statement.expression.left.expression)) return;\n\n const targetName = statement.expression.left.expression.text;\n const propertyName = statement.expression.left.name.text;\n\n if (!exportStaticProperties.has(targetName)) exportStaticProperties.set(targetName, new Map());\n\n const existingProperties = exportStaticProperties.get(targetName);\n\n if (ts.isStringLiteral(statement.expression.right)) {\n existingProperties?.set(propertyName, statement.expression.right.text);\n } else if (ts.isNumericLiteral(statement.expression.right)) {\n existingProperties?.set(propertyName, +statement.expression.right.text);\n } else if (statement.expression.right.kind === ts.SyntaxKind.UndefinedKeyword) {\n existingProperties?.set(propertyName, undefined);\n } else if (statement.expression.right.kind === ts.SyntaxKind.NullKeyword) {\n existingProperties?.set(propertyName, null);\n } else if (statement.expression.right.kind === ts.SyntaxKind.TrueKeyword) {\n existingProperties?.set(propertyName, true);\n } else if (statement.expression.right.kind === ts.SyntaxKind.FalseKeyword) {\n existingProperties?.set(propertyName, false);\n }\n } catch (err) {\n this.logger?.error('failed parsing static properties', err);\n }\n });\n\n return exportStaticProperties;\n }\n\n constructor(private logger?: Logger | undefined) {}\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/typescript",
3
- "version": "1.0.694",
3
+ "version": "1.0.695",
4
4
  "homepage": "https://bit.cloud/teambit/typescript/typescript",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.typescript",
8
8
  "name": "typescript",
9
- "version": "1.0.694"
9
+ "version": "1.0.695"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
@@ -24,27 +24,27 @@
24
24
  "@teambit/ts-server": "0.0.66",
25
25
  "@teambit/harmony": "0.4.7",
26
26
  "@teambit/legacy.constants": "0.0.14",
27
- "@teambit/compiler": "1.0.694",
28
- "@teambit/builder": "1.0.694",
29
- "@teambit/component": "1.0.694",
30
- "@teambit/dependency-resolver": "1.0.694",
31
- "@teambit/formatter": "1.0.694",
32
- "@teambit/aspect-loader": "1.0.694",
33
- "@teambit/envs": "1.0.694",
34
- "@teambit/logger": "0.0.1350",
35
- "@teambit/schema": "1.0.694",
36
- "@teambit/scope": "1.0.694",
37
- "@teambit/workspace": "1.0.694",
38
- "@teambit/cli": "0.0.1257",
39
- "@teambit/pkg": "1.0.694",
40
- "@teambit/watcher": "1.0.694"
27
+ "@teambit/compiler": "1.0.695",
28
+ "@teambit/builder": "1.0.695",
29
+ "@teambit/component": "1.0.695",
30
+ "@teambit/dependency-resolver": "1.0.695",
31
+ "@teambit/formatter": "1.0.695",
32
+ "@teambit/aspect-loader": "1.0.695",
33
+ "@teambit/envs": "1.0.695",
34
+ "@teambit/logger": "0.0.1351",
35
+ "@teambit/schema": "1.0.695",
36
+ "@teambit/scope": "1.0.695",
37
+ "@teambit/workspace": "1.0.695",
38
+ "@teambit/cli": "0.0.1258",
39
+ "@teambit/pkg": "1.0.695",
40
+ "@teambit/watcher": "1.0.695"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/lodash": "4.14.165",
44
44
  "@types/fs-extra": "9.0.7",
45
45
  "@types/mocha": "9.1.0",
46
46
  "@teambit/typescript.aspect-docs.typescript": "0.0.171",
47
- "@teambit/harmony.envs.core-aspect-env": "0.0.74"
47
+ "@teambit/harmony.envs.core-aspect-env": "0.0.75"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "react": "^17.0.0 || ^18.0.0",