@teambit/typescript 0.0.965 → 0.0.967
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.
- package/dist/export-identifier.d.ts +5 -4
- package/dist/export-identifier.js +23 -4
- package/dist/export-identifier.js.map +1 -1
- package/dist/identifier-list.d.ts +7 -0
- package/dist/identifier-list.js +21 -0
- package/dist/identifier-list.js.map +1 -0
- package/dist/identifier.d.ts +9 -0
- package/dist/identifier.js +30 -0
- package/dist/identifier.js.map +1 -0
- package/dist/{preview-1674271762484.js → preview-1674617375675.js} +2 -2
- package/dist/schema-extractor-context.d.ts +40 -8
- package/dist/schema-extractor-context.js +243 -101
- package/dist/schema-extractor-context.js.map +1 -1
- package/dist/schema-transformer.d.ts +2 -2
- package/dist/schema-transformer.js.map +1 -1
- package/dist/transformers/array-type.d.ts +10 -0
- package/dist/transformers/array-type.js +38 -0
- package/dist/transformers/array-type.js.map +1 -0
- package/dist/transformers/binding-element.d.ts +2 -2
- package/dist/transformers/binding-element.js +7 -7
- package/dist/transformers/binding-element.js.map +1 -1
- package/dist/transformers/class-declaration.d.ts +2 -2
- package/dist/transformers/class-declaration.js +6 -20
- package/dist/transformers/class-declaration.js.map +1 -1
- package/dist/transformers/conditional-type.d.ts +10 -0
- package/dist/transformers/conditional-type.js +39 -0
- package/dist/transformers/conditional-type.js.map +1 -0
- package/dist/transformers/constructor.d.ts +10 -0
- package/dist/transformers/constructor.js +50 -0
- package/dist/transformers/constructor.js.map +1 -0
- package/dist/transformers/enum-declaration.d.ts +2 -2
- package/dist/transformers/enum-declaration.js +4 -4
- package/dist/transformers/enum-declaration.js.map +1 -1
- package/dist/transformers/{export-assignment-declaration.d.ts → export-assignment.d.ts} +7 -2
- package/dist/transformers/export-assignment.js +41 -0
- package/dist/transformers/export-assignment.js.map +1 -0
- package/dist/transformers/export-declaration.d.ts +2 -3
- package/dist/transformers/export-declaration.js +21 -10
- package/dist/transformers/export-declaration.js.map +1 -1
- package/dist/transformers/function-like.d.ts +11 -0
- package/dist/transformers/function-like.js +82 -0
- package/dist/transformers/function-like.js.map +1 -0
- package/dist/transformers/get-accessor.d.ts +10 -0
- package/dist/transformers/get-accessor.js +48 -0
- package/dist/transformers/get-accessor.js.map +1 -0
- package/dist/transformers/import-declaration.d.ts +10 -0
- package/dist/transformers/import-declaration.js +74 -0
- package/dist/transformers/import-declaration.js.map +1 -0
- package/dist/transformers/index-signature.d.ts +10 -0
- package/dist/transformers/index-signature.js +45 -0
- package/dist/transformers/index-signature.js.map +1 -0
- package/dist/transformers/index.d.ts +28 -3
- package/dist/transformers/index.js +337 -12
- package/dist/transformers/index.js.map +1 -1
- package/dist/transformers/indexed-access-type.d.ts +10 -0
- package/dist/transformers/indexed-access-type.js +37 -0
- package/dist/transformers/indexed-access-type.js.map +1 -0
- package/dist/transformers/interface-declaration.d.ts +2 -2
- package/dist/transformers/interface-declaration.js +6 -20
- package/dist/transformers/interface-declaration.js.map +1 -1
- package/dist/transformers/intersection-type.d.ts +10 -0
- package/dist/transformers/intersection-type.js +48 -0
- package/dist/transformers/intersection-type.js.map +1 -0
- package/dist/transformers/keyword-type.d.ts +13 -0
- package/dist/transformers/keyword-type.js +55 -0
- package/dist/transformers/keyword-type.js.map +1 -0
- package/dist/transformers/literal-type.d.ts +13 -0
- package/dist/transformers/literal-type.js +40 -0
- package/dist/transformers/literal-type.js.map +1 -0
- package/dist/transformers/named-tuple.d.ts +10 -0
- package/dist/transformers/named-tuple.js +38 -0
- package/dist/transformers/named-tuple.js.map +1 -0
- package/dist/transformers/parameter.d.ts +13 -0
- package/dist/transformers/parameter.js +112 -0
- package/dist/transformers/parameter.js.map +1 -0
- package/dist/transformers/parenthesized-type.d.ts +10 -0
- package/dist/transformers/parenthesized-type.js +36 -0
- package/dist/transformers/parenthesized-type.js.map +1 -0
- package/dist/transformers/property-declaration.d.ts +11 -0
- package/dist/transformers/property-declaration.js +57 -0
- package/dist/transformers/property-declaration.js.map +1 -0
- package/dist/transformers/set-accessor.d.ts +10 -0
- package/dist/transformers/set-accessor.js +45 -0
- package/dist/transformers/set-accessor.js.map +1 -0
- package/dist/transformers/source-file-transformer.d.ts +3 -2
- package/dist/transformers/source-file-transformer.js +44 -15
- package/dist/transformers/source-file-transformer.js.map +1 -1
- package/dist/transformers/template-literal-type-span.d.ts +10 -0
- package/dist/transformers/template-literal-type-span.js +37 -0
- package/dist/transformers/template-literal-type-span.js.map +1 -0
- package/dist/transformers/template-literal-type.d.ts +10 -0
- package/dist/transformers/template-literal-type.js +45 -0
- package/dist/transformers/template-literal-type.js.map +1 -0
- package/dist/transformers/this-type.d.ts +10 -0
- package/dist/transformers/this-type.js +35 -0
- package/dist/transformers/this-type.js.map +1 -0
- package/dist/transformers/tuple-type.d.ts +10 -0
- package/dist/transformers/tuple-type.js +47 -0
- package/dist/transformers/tuple-type.js.map +1 -0
- package/dist/transformers/type-alias.d.ts +2 -2
- package/dist/transformers/type-alias.js +5 -12
- package/dist/transformers/type-alias.js.map +1 -1
- package/dist/transformers/type-literal.d.ts +14 -0
- package/dist/transformers/type-literal.js +49 -0
- package/dist/transformers/type-literal.js.map +1 -0
- package/dist/transformers/type-operator.d.ts +14 -0
- package/dist/transformers/type-operator.js +52 -0
- package/dist/transformers/type-operator.js.map +1 -0
- package/dist/transformers/type-predicate.d.ts +10 -0
- package/dist/transformers/type-predicate.js +38 -0
- package/dist/transformers/type-predicate.js.map +1 -0
- package/dist/transformers/type-query.d.ts +13 -0
- package/dist/transformers/type-query.js +42 -0
- package/dist/transformers/type-query.js.map +1 -0
- package/dist/transformers/type-reference.d.ts +16 -0
- package/dist/transformers/type-reference.js +56 -0
- package/dist/transformers/type-reference.js.map +1 -0
- package/dist/transformers/union-type.d.ts +10 -0
- package/dist/transformers/union-type.js +48 -0
- package/dist/transformers/union-type.js.map +1 -0
- package/dist/transformers/utils/jsdoc-to-doc-schema.js +2 -10
- package/dist/transformers/utils/jsdoc-to-doc-schema.js.map +1 -1
- package/dist/transformers/variable-declaration.d.ts +2 -2
- package/dist/transformers/variable-declaration.js +11 -11
- package/dist/transformers/variable-declaration.js.map +1 -1
- package/dist/transformers/variable-statement.d.ts +2 -2
- package/dist/transformers/variable-statement.js +5 -5
- package/dist/transformers/variable-statement.js.map +1 -1
- package/dist/typescript.extractor.d.ts +10 -4
- package/dist/typescript.extractor.js +70 -17
- package/dist/typescript.extractor.js.map +1 -1
- package/dist/typescript.main.runtime.d.ts +4 -2
- package/dist/typescript.main.runtime.js +5 -11
- package/dist/typescript.main.runtime.js.map +1 -1
- package/package-tar/teambit-typescript-0.0.967.tgz +0 -0
- package/package.json +17 -17
- package/transformers/array-type.ts +21 -0
- package/transformers/binding-element.ts +2 -2
- package/transformers/class-declaration.ts +4 -6
- package/transformers/conditional-type.ts +23 -0
- package/transformers/constructor.ts +40 -0
- package/transformers/enum-declaration.ts +3 -3
- package/transformers/{export-assignment-declaration.ts → export-assignment.ts} +9 -3
- package/transformers/export-declaration.ts +35 -8
- package/transformers/function-like.ts +65 -0
- package/transformers/get-accessor.ts +24 -0
- package/transformers/import-declaration.ts +56 -0
- package/transformers/index-signature.ts +24 -0
- package/transformers/index.ts +28 -3
- package/transformers/indexed-access-type.ts +21 -0
- package/transformers/interface-declaration.ts +5 -7
- package/transformers/intersection-type.ts +25 -0
- package/transformers/keyword-type.ts +39 -0
- package/transformers/literal-type.ts +23 -0
- package/transformers/named-tuple.ts +22 -0
- package/transformers/parameter.ts +110 -0
- package/transformers/parenthesized-type.ts +20 -0
- package/transformers/property-declaration.ts +33 -0
- package/transformers/set-accessor.ts +25 -0
- package/transformers/source-file-transformer.ts +56 -24
- package/transformers/template-literal-type-span.ts +21 -0
- package/transformers/template-literal-type.ts +24 -0
- package/transformers/this-type.ts +19 -0
- package/transformers/tuple-type.ts +24 -0
- package/transformers/type-alias.ts +3 -4
- package/transformers/type-literal.ts +26 -0
- package/transformers/type-operator.ts +37 -0
- package/transformers/type-predicate.ts +22 -0
- package/transformers/type-query.ts +25 -0
- package/transformers/type-reference.ts +33 -0
- package/transformers/union-type.ts +25 -0
- package/transformers/utils/jsdoc-to-doc-schema.ts +2 -4
- package/transformers/variable-declaration.ts +7 -4
- package/transformers/variable-statement.ts +3 -3
- package/dist/export-list.d.ts +0 -6
- package/dist/export-list.js +0 -17
- package/dist/export-list.js.map +0 -1
- package/dist/transformers/export-assignment-declaration.js +0 -29
- package/dist/transformers/export-assignment-declaration.js.map +0 -1
- package/dist/transformers/function-declaration.d.ts +0 -11
- package/dist/transformers/function-declaration.js +0 -49
- package/dist/transformers/function-declaration.js.map +0 -1
- package/dist/transformers/utils/class-element-to-schema.d.ts +0 -4
- package/dist/transformers/utils/class-element-to-schema.js +0 -95
- package/dist/transformers/utils/class-element-to-schema.js.map +0 -1
- package/dist/transformers/utils/get-params.d.ts +0 -4
- package/dist/transformers/utils/get-params.js +0 -100
- package/dist/transformers/utils/get-params.js.map +0 -1
- package/dist/transformers/utils/to-function-like-schema.d.ts +0 -4
- package/dist/transformers/utils/to-function-like-schema.js +0 -58
- package/dist/transformers/utils/to-function-like-schema.js.map +0 -1
- package/dist/transformers/utils/type-element-to-schema.d.ts +0 -7
- package/dist/transformers/utils/type-element-to-schema.js +0 -106
- package/dist/transformers/utils/type-element-to-schema.js.map +0 -1
- package/dist/transformers/utils/type-node-to-schema.d.ts +0 -4
- package/dist/transformers/utils/type-node-to-schema.js +0 -274
- package/dist/transformers/utils/type-node-to-schema.js.map +0 -1
- package/package-tar/teambit-typescript-0.0.965.tgz +0 -0
- package/transformers/function-declaration.ts +0 -25
- package/transformers/utils/class-element-to-schema.ts +0 -64
- package/transformers/utils/get-params.ts +0 -92
- package/transformers/utils/to-function-like-schema.ts +0 -39
- package/transformers/utils/type-element-to-schema.ts +0 -79
- package/transformers/utils/type-node-to-schema.ts +0 -294
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SourceFileTransformer","predicate","node","kind","ts","SyntaxKind","SourceFile","getIdentifiers","sourceFile","context","exports","listExports","
|
|
1
|
+
{"version":3,"names":["SourceFileTransformer","predicate","node","kind","ts","SyntaxKind","SourceFile","getIdentifiers","sourceFile","context","exports","listExports","internals","listInternalNodes","exportIdentifiers","flatten","pMapSeries","reduce","acc","current","item","find","exportIdentifier","isEqual","push","ExportIdentifier","id","filePath","aliasId","sourceFilePath","internalIdentifiers","internalIdentifier","identifiers","transform","filter","internal","ImportDeclaration","exportDeclarations","exportNode","computeSchema","internalDeclarations","internalNode","ModuleSchema","getLocation","ast","statements","statement","ExportDeclaration","ExportAssignment","isExport","Boolean","modifiers","modifier","ExportKeyword"],"sources":["source-file-transformer.ts"],"sourcesContent":["import ts, { Node, SourceFile } from 'typescript';\nimport { flatten } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport { ModuleSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { ExportIdentifier } from '../export-identifier';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class SourceFileTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.SourceFile;\n }\n\n async getIdentifiers(sourceFile: SourceFile, context: SchemaExtractorContext) {\n const exports = this.listExports(sourceFile);\n const internals = this.listInternalNodes(sourceFile);\n\n // change to pMap series\n const exportIdentifiers = flatten(\n await pMapSeries(exports, (node) => {\n return context.getIdentifiers(node);\n })\n ).reduce<ExportIdentifier[]>((acc, current) => {\n const item = acc.find((exportIdentifier) => exportIdentifier.isEqual(current));\n if (!item) acc.push(new ExportIdentifier(current.id, current.filePath, current.aliasId, current.sourceFilePath));\n return acc;\n }, []);\n\n const internalIdentifiers = flatten(\n await pMapSeries(internals, (node) => {\n return context.getIdentifiers(node);\n })\n ).reduce<Identifier[]>((acc, current) => {\n const item = acc.find((internalIdentifier) => internalIdentifier.isEqual(current));\n if (!item) acc.push(current);\n return acc;\n }, []);\n\n const identifiers = [...exportIdentifiers, ...internalIdentifiers];\n\n return identifiers;\n }\n\n async transform(node: SourceFile, context: SchemaExtractorContext) {\n const exports = this.listExports(node);\n const internals = this.listInternalNodes(node).filter(\n (internal) => internal.kind !== ts.SyntaxKind.ImportDeclaration\n );\n\n const exportDeclarations = await pMapSeries(exports, (exportNode) => {\n return context.computeSchema(exportNode);\n });\n\n const internalDeclarations = await pMapSeries(internals, (internalNode) => {\n return context.computeSchema(internalNode);\n });\n\n return new ModuleSchema(context.getLocation(node), exportDeclarations, internalDeclarations);\n }\n\n /**\n * list all exports of a source file.\n */\n private listExports(ast: SourceFile): Node[] {\n return ast.statements.filter((statement) => {\n if (statement.kind === ts.SyntaxKind.ExportDeclaration || statement.kind === ts.SyntaxKind.ExportAssignment)\n return true;\n const isExport = Boolean(\n statement.modifiers?.find((modifier) => {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n })\n );\n return isExport;\n });\n }\n\n private listInternalNodes(ast: SourceFile): Node[] {\n return ast.statements.filter((statement) => {\n if (\n !(statement.kind === ts.SyntaxKind.ExportDeclaration || statement.kind === ts.SyntaxKind.ExportAssignment) &&\n !statement.modifiers?.find((modifier) => {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n })\n ) {\n return true;\n }\n\n return false;\n });\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node, TemplateLiteralTypeSpan } from 'typescript';
|
|
2
|
+
import { TemplateLiteralTypeSpanSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
export declare class TemplateLiteralTypeSpanTransformer implements SchemaTransformer {
|
|
7
|
+
predicate(node: Node): boolean;
|
|
8
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
9
|
+
transform(node: TemplateLiteralTypeSpan, context: SchemaExtractorContext): Promise<TemplateLiteralTypeSpanSchema>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.promise.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.TemplateLiteralTypeSpanTransformer = void 0;
|
|
8
|
+
function _typescript() {
|
|
9
|
+
const data = require("typescript");
|
|
10
|
+
_typescript = function () {
|
|
11
|
+
return data;
|
|
12
|
+
};
|
|
13
|
+
return data;
|
|
14
|
+
}
|
|
15
|
+
function _semanticsEntities() {
|
|
16
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
17
|
+
_semanticsEntities = function () {
|
|
18
|
+
return data;
|
|
19
|
+
};
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
class TemplateLiteralTypeSpanTransformer {
|
|
23
|
+
predicate(node) {
|
|
24
|
+
return node.kind === _typescript().SyntaxKind.TemplateLiteralTypeSpan;
|
|
25
|
+
}
|
|
26
|
+
async getIdentifiers() {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
async transform(node, context) {
|
|
30
|
+
const type = await context.computeSchema(node.type);
|
|
31
|
+
const literal = node.literal.text;
|
|
32
|
+
return new (_semanticsEntities().TemplateLiteralTypeSpanSchema)(context.getLocation(node), literal, type);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.TemplateLiteralTypeSpanTransformer = TemplateLiteralTypeSpanTransformer;
|
|
36
|
+
|
|
37
|
+
//# sourceMappingURL=template-literal-type-span.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TemplateLiteralTypeSpanTransformer","predicate","node","kind","SyntaxKind","TemplateLiteralTypeSpan","getIdentifiers","transform","context","type","computeSchema","literal","text","TemplateLiteralTypeSpanSchema","getLocation"],"sources":["template-literal-type-span.ts"],"sourcesContent":["import { Node, SyntaxKind, TemplateLiteralTypeSpan } from 'typescript';\nimport { TemplateLiteralTypeSpanSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class TemplateLiteralTypeSpanTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.TemplateLiteralTypeSpan;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TemplateLiteralTypeSpan, context: SchemaExtractorContext) {\n const type = await context.computeSchema(node.type);\n const literal = node.literal.text;\n return new TemplateLiteralTypeSpanSchema(context.getLocation(node), literal, type);\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKO,MAAMA,kCAAkC,CAA8B;EAC3EC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,uBAAuB;EACzD;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAA6B,EAAEM,OAA+B,EAAE;IAC9E,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,aAAa,CAACR,IAAI,CAACO,IAAI,CAAC;IACnD,MAAME,OAAO,GAAGT,IAAI,CAACS,OAAO,CAACC,IAAI;IACjC,OAAO,KAAIC,kDAA6B,EAACL,OAAO,CAACM,WAAW,CAACZ,IAAI,CAAC,EAAES,OAAO,EAAEF,IAAI,CAAC;EACpF;AACF;AAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node, TemplateLiteralTypeNode } from 'typescript';
|
|
2
|
+
import { TemplateLiteralTypeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
export declare class TemplateLiteralTypeTransformer implements SchemaTransformer {
|
|
7
|
+
predicate(node: Node): boolean;
|
|
8
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
9
|
+
transform(node: TemplateLiteralTypeNode, context: SchemaExtractorContext): Promise<TemplateLiteralTypeSchema>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
require("core-js/modules/es.promise.js");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.TemplateLiteralTypeTransformer = void 0;
|
|
9
|
+
function _typescript() {
|
|
10
|
+
const data = require("typescript");
|
|
11
|
+
_typescript = function () {
|
|
12
|
+
return data;
|
|
13
|
+
};
|
|
14
|
+
return data;
|
|
15
|
+
}
|
|
16
|
+
function _pMapSeries() {
|
|
17
|
+
const data = _interopRequireDefault(require("p-map-series"));
|
|
18
|
+
_pMapSeries = function () {
|
|
19
|
+
return data;
|
|
20
|
+
};
|
|
21
|
+
return data;
|
|
22
|
+
}
|
|
23
|
+
function _semanticsEntities() {
|
|
24
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
25
|
+
_semanticsEntities = function () {
|
|
26
|
+
return data;
|
|
27
|
+
};
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
class TemplateLiteralTypeTransformer {
|
|
31
|
+
predicate(node) {
|
|
32
|
+
return node.kind === _typescript().SyntaxKind.TemplateLiteralType;
|
|
33
|
+
}
|
|
34
|
+
async getIdentifiers() {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
async transform(node, context) {
|
|
38
|
+
const templateSpans = await (0, _pMapSeries().default)(node.templateSpans, span => context.computeSchema(span));
|
|
39
|
+
const head = node.head.text;
|
|
40
|
+
return new (_semanticsEntities().TemplateLiteralTypeSchema)(context.getLocation(node), head, templateSpans);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.TemplateLiteralTypeTransformer = TemplateLiteralTypeTransformer;
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=template-literal-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TemplateLiteralTypeTransformer","predicate","node","kind","SyntaxKind","TemplateLiteralType","getIdentifiers","transform","context","templateSpans","pMapSeries","span","computeSchema","head","text","TemplateLiteralTypeSchema","getLocation"],"sources":["template-literal-type.ts"],"sourcesContent":["import { Node, SyntaxKind, TemplateLiteralTypeNode } from 'typescript';\nimport pMapSeries from 'p-map-series';\nimport { TemplateLiteralTypeSchema, TemplateLiteralTypeSpanSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class TemplateLiteralTypeTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.TemplateLiteralType;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TemplateLiteralTypeNode, context: SchemaExtractorContext) {\n const templateSpans = (await pMapSeries(node.templateSpans, (span) =>\n context.computeSchema(span)\n )) as TemplateLiteralTypeSpanSchema[];\n const head = node.head.text;\n return new TemplateLiteralTypeSchema(context.getLocation(node), head, templateSpans);\n }\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKO,MAAMA,8BAA8B,CAA8B;EACvEC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,mBAAmB;EACrD;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAA6B,EAAEM,OAA+B,EAAE;IAC9E,MAAMC,aAAa,GAAI,MAAM,IAAAC,qBAAU,EAACR,IAAI,CAACO,aAAa,EAAGE,IAAI,IAC/DH,OAAO,CAACI,aAAa,CAACD,IAAI,CAAC,CACQ;IACrC,MAAME,IAAI,GAAGX,IAAI,CAACW,IAAI,CAACC,IAAI;IAC3B,OAAO,KAAIC,8CAAyB,EAACP,OAAO,CAACQ,WAAW,CAACd,IAAI,CAAC,EAAEW,IAAI,EAAEJ,aAAa,CAAC;EACtF;AACF;AAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node, ThisTypeNode } from 'typescript';
|
|
2
|
+
import { ThisTypeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
export declare class ThisTypeTransformer implements SchemaTransformer {
|
|
7
|
+
predicate(node: Node): boolean;
|
|
8
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
9
|
+
transform(node: ThisTypeNode, context: SchemaExtractorContext): Promise<ThisTypeSchema>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.promise.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.ThisTypeTransformer = void 0;
|
|
8
|
+
function _typescript() {
|
|
9
|
+
const data = require("typescript");
|
|
10
|
+
_typescript = function () {
|
|
11
|
+
return data;
|
|
12
|
+
};
|
|
13
|
+
return data;
|
|
14
|
+
}
|
|
15
|
+
function _semanticsEntities() {
|
|
16
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
17
|
+
_semanticsEntities = function () {
|
|
18
|
+
return data;
|
|
19
|
+
};
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
class ThisTypeTransformer {
|
|
23
|
+
predicate(node) {
|
|
24
|
+
return node.kind === _typescript().SyntaxKind.ThisType;
|
|
25
|
+
}
|
|
26
|
+
async getIdentifiers() {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
async transform(node, context) {
|
|
30
|
+
return new (_semanticsEntities().ThisTypeSchema)(context.getLocation(node));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.ThisTypeTransformer = ThisTypeTransformer;
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=this-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ThisTypeTransformer","predicate","node","kind","SyntaxKind","ThisType","getIdentifiers","transform","context","ThisTypeSchema","getLocation"],"sources":["this-type.ts"],"sourcesContent":["import { Node, SyntaxKind, ThisTypeNode } from 'typescript';\nimport { ThisTypeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class ThisTypeTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.ThisType;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: ThisTypeNode, context: SchemaExtractorContext) {\n return new ThisTypeSchema(context.getLocation(node));\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKO,MAAMA,mBAAmB,CAA8B;EAC5DC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,QAAQ;EAC1C;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAAkB,EAAEM,OAA+B,EAAE;IACnE,OAAO,KAAIC,mCAAc,EAACD,OAAO,CAACE,WAAW,CAACR,IAAI,CAAC,CAAC;EACtD;AACF;AAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node, TupleTypeNode } from 'typescript';
|
|
2
|
+
import { TupleTypeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
export declare class TupleTypeTransformer implements SchemaTransformer {
|
|
7
|
+
predicate(node: Node): boolean;
|
|
8
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
9
|
+
transform(node: TupleTypeNode, context: SchemaExtractorContext): Promise<TupleTypeSchema>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
require("core-js/modules/es.promise.js");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.TupleTypeTransformer = void 0;
|
|
9
|
+
function _typescript() {
|
|
10
|
+
const data = require("typescript");
|
|
11
|
+
_typescript = function () {
|
|
12
|
+
return data;
|
|
13
|
+
};
|
|
14
|
+
return data;
|
|
15
|
+
}
|
|
16
|
+
function _pMapSeries() {
|
|
17
|
+
const data = _interopRequireDefault(require("p-map-series"));
|
|
18
|
+
_pMapSeries = function () {
|
|
19
|
+
return data;
|
|
20
|
+
};
|
|
21
|
+
return data;
|
|
22
|
+
}
|
|
23
|
+
function _semanticsEntities() {
|
|
24
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
25
|
+
_semanticsEntities = function () {
|
|
26
|
+
return data;
|
|
27
|
+
};
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
class TupleTypeTransformer {
|
|
31
|
+
predicate(node) {
|
|
32
|
+
return node.kind === _typescript().SyntaxKind.TupleType;
|
|
33
|
+
}
|
|
34
|
+
async getIdentifiers() {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
async transform(node, context) {
|
|
38
|
+
const elements = await (0, _pMapSeries().default)(node.elements, async elem => {
|
|
39
|
+
const typeSchema = await context.computeSchema(elem);
|
|
40
|
+
return typeSchema;
|
|
41
|
+
});
|
|
42
|
+
return new (_semanticsEntities().TupleTypeSchema)(context.getLocation(node), elements);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.TupleTypeTransformer = TupleTypeTransformer;
|
|
46
|
+
|
|
47
|
+
//# sourceMappingURL=tuple-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TupleTypeTransformer","predicate","node","kind","SyntaxKind","TupleType","getIdentifiers","transform","context","elements","pMapSeries","elem","typeSchema","computeSchema","TupleTypeSchema","getLocation"],"sources":["tuple-type.ts"],"sourcesContent":["import { Node, SyntaxKind, TupleTypeNode } from 'typescript';\nimport pMapSeries from 'p-map-series';\nimport { TupleTypeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class TupleTypeTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.TupleType;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TupleTypeNode, context: SchemaExtractorContext) {\n const elements = await pMapSeries(node.elements, async (elem) => {\n const typeSchema = await context.computeSchema(elem);\n return typeSchema;\n });\n return new TupleTypeSchema(context.getLocation(node), elements);\n }\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKO,MAAMA,oBAAoB,CAA8B;EAC7DC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,SAAS;EAC3C;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAAmB,EAAEM,OAA+B,EAAE;IACpE,MAAMC,QAAQ,GAAG,MAAM,IAAAC,qBAAU,EAACR,IAAI,CAACO,QAAQ,EAAE,MAAOE,IAAI,IAAK;MAC/D,MAAMC,UAAU,GAAG,MAAMJ,OAAO,CAACK,aAAa,CAACF,IAAI,CAAC;MACpD,OAAOC,UAAU;IACnB,CAAC,CAAC;IACF,OAAO,KAAIE,oCAAe,EAACN,OAAO,CAACO,WAAW,CAACb,IAAI,CAAC,EAAEO,QAAQ,CAAC;EACjE;AACF;AAAC"}
|
|
@@ -2,10 +2,10 @@ import { Node, TypeAliasDeclaration } from 'typescript';
|
|
|
2
2
|
import { TypeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
3
|
import { SchemaTransformer } from '../schema-transformer';
|
|
4
4
|
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
-
import {
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
6
|
export declare class TypeAliasTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
8
|
-
getIdentifiers(node: TypeAliasDeclaration): Promise<
|
|
8
|
+
getIdentifiers(node: TypeAliasDeclaration): Promise<Identifier[]>;
|
|
9
9
|
private getName;
|
|
10
10
|
transform(typeAlias: TypeAliasDeclaration, context: SchemaExtractorContext): Promise<TypeSchema>;
|
|
11
11
|
}
|
|
@@ -20,16 +20,9 @@ function _semanticsEntities() {
|
|
|
20
20
|
};
|
|
21
21
|
return data;
|
|
22
22
|
}
|
|
23
|
-
function
|
|
24
|
-
const data = require("../
|
|
25
|
-
|
|
26
|
-
return data;
|
|
27
|
-
};
|
|
28
|
-
return data;
|
|
29
|
-
}
|
|
30
|
-
function _typeNodeToSchema() {
|
|
31
|
-
const data = require("./utils/type-node-to-schema");
|
|
32
|
-
_typeNodeToSchema = function () {
|
|
23
|
+
function _identifier() {
|
|
24
|
+
const data = require("../identifier");
|
|
25
|
+
_identifier = function () {
|
|
33
26
|
return data;
|
|
34
27
|
};
|
|
35
28
|
return data;
|
|
@@ -39,13 +32,13 @@ class TypeAliasTransformer {
|
|
|
39
32
|
return node.kind === _typescript().default.SyntaxKind.TypeAliasDeclaration;
|
|
40
33
|
}
|
|
41
34
|
async getIdentifiers(node) {
|
|
42
|
-
return [new (
|
|
35
|
+
return [new (_identifier().Identifier)(node.name.getText(), node.getSourceFile().fileName)];
|
|
43
36
|
}
|
|
44
37
|
getName(node) {
|
|
45
38
|
return node.name.getText();
|
|
46
39
|
}
|
|
47
40
|
async transform(typeAlias, context) {
|
|
48
|
-
const type = await
|
|
41
|
+
const type = await context.computeSchema(typeAlias.type);
|
|
49
42
|
const displaySig = await context.getQuickInfoDisplayString(typeAlias.name);
|
|
50
43
|
const doc = await context.jsDocToDocSchema(typeAlias);
|
|
51
44
|
return new (_semanticsEntities().TypeSchema)(context.getLocation(typeAlias), this.getName(typeAlias), type, displaySig, doc);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TypeAliasTransformer","predicate","node","kind","ts","SyntaxKind","TypeAliasDeclaration","getIdentifiers","
|
|
1
|
+
{"version":3,"names":["TypeAliasTransformer","predicate","node","kind","ts","SyntaxKind","TypeAliasDeclaration","getIdentifiers","Identifier","name","getText","getSourceFile","fileName","getName","transform","typeAlias","context","type","computeSchema","displaySig","getQuickInfoDisplayString","doc","jsDocToDocSchema","TypeSchema","getLocation"],"sources":["type-alias.ts"],"sourcesContent":["import ts, { Node, TypeAliasDeclaration } from 'typescript';\nimport { TypeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class TypeAliasTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.TypeAliasDeclaration;\n }\n\n async getIdentifiers(node: TypeAliasDeclaration) {\n return [new Identifier(node.name.getText(), node.getSourceFile().fileName)];\n }\n\n private getName(node: TypeAliasDeclaration): string {\n return node.name.getText();\n }\n\n async transform(typeAlias: TypeAliasDeclaration, context: SchemaExtractorContext) {\n const type = await context.computeSchema(typeAlias.type);\n const displaySig = await context.getQuickInfoDisplayString(typeAlias.name);\n const doc = await context.jsDocToDocSchema(typeAlias);\n return new TypeSchema(context.getLocation(typeAlias), this.getName(typeAlias), type, displaySig, doc);\n }\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAGA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEO,MAAMA,oBAAoB,CAA8B;EAC7DC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,oBAAoB;EACzD;EAEA,MAAMC,cAAc,CAACL,IAA0B,EAAE;IAC/C,OAAO,CAAC,KAAIM,wBAAU,EAACN,IAAI,CAACO,IAAI,CAACC,OAAO,EAAE,EAAER,IAAI,CAACS,aAAa,EAAE,CAACC,QAAQ,CAAC,CAAC;EAC7E;EAEQC,OAAO,CAACX,IAA0B,EAAU;IAClD,OAAOA,IAAI,CAACO,IAAI,CAACC,OAAO,EAAE;EAC5B;EAEA,MAAMI,SAAS,CAACC,SAA+B,EAAEC,OAA+B,EAAE;IAChF,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,aAAa,CAACH,SAAS,CAACE,IAAI,CAAC;IACxD,MAAME,UAAU,GAAG,MAAMH,OAAO,CAACI,yBAAyB,CAACL,SAAS,CAACN,IAAI,CAAC;IAC1E,MAAMY,GAAG,GAAG,MAAML,OAAO,CAACM,gBAAgB,CAACP,SAAS,CAAC;IACrD,OAAO,KAAIQ,+BAAU,EAACP,OAAO,CAACQ,WAAW,CAACT,SAAS,CAAC,EAAE,IAAI,CAACF,OAAO,CAACE,SAAS,CAAC,EAAEE,IAAI,EAAEE,UAAU,EAAEE,GAAG,CAAC;EACvG;AACF;AAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Node, TypeLiteralNode } from 'typescript';
|
|
2
|
+
import { TypeLiteralSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
/**
|
|
7
|
+
* not to be confused with "LiteralType", which is string/boolean/null.
|
|
8
|
+
* this "TypeLiteral" is an object with properties, such as: `{ a: string; b: number }`, similar to Interface.
|
|
9
|
+
*/
|
|
10
|
+
export declare class TypeLiteralTransformer implements SchemaTransformer {
|
|
11
|
+
predicate(node: Node): boolean;
|
|
12
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
13
|
+
transform(node: TypeLiteralNode, context: SchemaExtractorContext): Promise<TypeLiteralSchema>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
require("core-js/modules/es.promise.js");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.TypeLiteralTransformer = void 0;
|
|
9
|
+
function _typescript() {
|
|
10
|
+
const data = _interopRequireDefault(require("typescript"));
|
|
11
|
+
_typescript = function () {
|
|
12
|
+
return data;
|
|
13
|
+
};
|
|
14
|
+
return data;
|
|
15
|
+
}
|
|
16
|
+
function _semanticsEntities() {
|
|
17
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
18
|
+
_semanticsEntities = function () {
|
|
19
|
+
return data;
|
|
20
|
+
};
|
|
21
|
+
return data;
|
|
22
|
+
}
|
|
23
|
+
function _pMapSeries() {
|
|
24
|
+
const data = _interopRequireDefault(require("p-map-series"));
|
|
25
|
+
_pMapSeries = function () {
|
|
26
|
+
return data;
|
|
27
|
+
};
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* not to be confused with "LiteralType", which is string/boolean/null.
|
|
32
|
+
* this "TypeLiteral" is an object with properties, such as: `{ a: string; b: number }`, similar to Interface.
|
|
33
|
+
*/
|
|
34
|
+
class TypeLiteralTransformer {
|
|
35
|
+
predicate(node) {
|
|
36
|
+
return node.kind === _typescript().default.SyntaxKind.TypeLiteral;
|
|
37
|
+
}
|
|
38
|
+
async getIdentifiers() {
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
async transform(node, context) {
|
|
42
|
+
const members = await (0, _pMapSeries().default)(node.members, member => context.computeSchema(member));
|
|
43
|
+
const location = context.getLocation(node);
|
|
44
|
+
return new (_semanticsEntities().TypeLiteralSchema)(location, members);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.TypeLiteralTransformer = TypeLiteralTransformer;
|
|
48
|
+
|
|
49
|
+
//# sourceMappingURL=type-literal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TypeLiteralTransformer","predicate","node","kind","ts","SyntaxKind","TypeLiteral","getIdentifiers","transform","context","members","pMapSeries","member","computeSchema","location","getLocation","TypeLiteralSchema"],"sources":["type-literal.ts"],"sourcesContent":["import ts, { Node, TypeLiteralNode } from 'typescript';\nimport { TypeLiteralSchema } from '@teambit/semantics.entities.semantic-schema';\nimport pMapSeries from 'p-map-series';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\n/**\n * not to be confused with \"LiteralType\", which is string/boolean/null.\n * this \"TypeLiteral\" is an object with properties, such as: `{ a: string; b: number }`, similar to Interface.\n */\nexport class TypeLiteralTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.TypeLiteral;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TypeLiteralNode, context: SchemaExtractorContext) {\n const members = await pMapSeries(node.members, (member) => context.computeSchema(member));\n const location = context.getLocation(node);\n return new TypeLiteralSchema(location, members);\n }\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKA;AACA;AACA;AACA;AACO,MAAMA,sBAAsB,CAA8B;EAC/DC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,WAAW;EAChD;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACN,IAAqB,EAAEO,OAA+B,EAAE;IACtE,MAAMC,OAAO,GAAG,MAAM,IAAAC,qBAAU,EAACT,IAAI,CAACQ,OAAO,EAAGE,MAAM,IAAKH,OAAO,CAACI,aAAa,CAACD,MAAM,CAAC,CAAC;IACzF,MAAME,QAAQ,GAAGL,OAAO,CAACM,WAAW,CAACb,IAAI,CAAC;IAC1C,OAAO,KAAIc,sCAAiB,EAACF,QAAQ,EAAEJ,OAAO,CAAC;EACjD;AACF;AAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Node, TypeOperatorNode, SyntaxKind } from 'typescript';
|
|
2
|
+
import { TypeOperatorSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
/**
|
|
7
|
+
* e.g. keyof typeof Foo
|
|
8
|
+
*/
|
|
9
|
+
export declare class TypeOperatorTransformer implements SchemaTransformer {
|
|
10
|
+
predicate(node: Node): boolean;
|
|
11
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
12
|
+
transform(node: TypeOperatorNode, context: SchemaExtractorContext): Promise<TypeOperatorSchema>;
|
|
13
|
+
getOperatorName(operator: SyntaxKind.KeyOfKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.ReadonlyKeyword): "readonly" | "keyof" | "unique";
|
|
14
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.promise.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.TypeOperatorTransformer = void 0;
|
|
8
|
+
function _typescript() {
|
|
9
|
+
const data = require("typescript");
|
|
10
|
+
_typescript = function () {
|
|
11
|
+
return data;
|
|
12
|
+
};
|
|
13
|
+
return data;
|
|
14
|
+
}
|
|
15
|
+
function _semanticsEntities() {
|
|
16
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
17
|
+
_semanticsEntities = function () {
|
|
18
|
+
return data;
|
|
19
|
+
};
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* e.g. keyof typeof Foo
|
|
24
|
+
*/
|
|
25
|
+
class TypeOperatorTransformer {
|
|
26
|
+
predicate(node) {
|
|
27
|
+
return node.kind === _typescript().SyntaxKind.TypeOperator;
|
|
28
|
+
}
|
|
29
|
+
async getIdentifiers() {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
async transform(node, context) {
|
|
33
|
+
const operatorName = this.getOperatorName(node.operator);
|
|
34
|
+
const type = await context.computeSchema(node.type);
|
|
35
|
+
return new (_semanticsEntities().TypeOperatorSchema)(context.getLocation(node), operatorName, type);
|
|
36
|
+
}
|
|
37
|
+
getOperatorName(operator) {
|
|
38
|
+
switch (operator) {
|
|
39
|
+
case _typescript().SyntaxKind.KeyOfKeyword:
|
|
40
|
+
return 'keyof';
|
|
41
|
+
case _typescript().SyntaxKind.UniqueKeyword:
|
|
42
|
+
return 'unique';
|
|
43
|
+
case _typescript().SyntaxKind.ReadonlyKeyword:
|
|
44
|
+
return 'readonly';
|
|
45
|
+
default:
|
|
46
|
+
throw new Error(`getOperatorName: unable to find operator name for ${operator}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.TypeOperatorTransformer = TypeOperatorTransformer;
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=type-operator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TypeOperatorTransformer","predicate","node","kind","SyntaxKind","TypeOperator","getIdentifiers","transform","context","operatorName","getOperatorName","operator","type","computeSchema","TypeOperatorSchema","getLocation","KeyOfKeyword","UniqueKeyword","ReadonlyKeyword","Error"],"sources":["type-operator.ts"],"sourcesContent":["import { Node, TypeOperatorNode, SyntaxKind } from 'typescript';\nimport { TypeOperatorSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\n/**\n * e.g. keyof typeof Foo\n */\nexport class TypeOperatorTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.TypeOperator;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TypeOperatorNode, context: SchemaExtractorContext) {\n const operatorName = this.getOperatorName(node.operator);\n const type = await context.computeSchema(node.type);\n return new TypeOperatorSchema(context.getLocation(node), operatorName, type);\n }\n\n getOperatorName(operator: SyntaxKind.KeyOfKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.ReadonlyKeyword) {\n switch (operator) {\n case SyntaxKind.KeyOfKeyword:\n return 'keyof';\n case SyntaxKind.UniqueKeyword:\n return 'unique';\n case SyntaxKind.ReadonlyKeyword:\n return 'readonly';\n default:\n throw new Error(`getOperatorName: unable to find operator name for ${operator}`);\n }\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKA;AACA;AACA;AACO,MAAMA,uBAAuB,CAA8B;EAChEC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,YAAY;EAC9C;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAAsB,EAAEM,OAA+B,EAAE;IACvE,MAAMC,YAAY,GAAG,IAAI,CAACC,eAAe,CAACR,IAAI,CAACS,QAAQ,CAAC;IACxD,MAAMC,IAAI,GAAG,MAAMJ,OAAO,CAACK,aAAa,CAACX,IAAI,CAACU,IAAI,CAAC;IACnD,OAAO,KAAIE,uCAAkB,EAACN,OAAO,CAACO,WAAW,CAACb,IAAI,CAAC,EAAEO,YAAY,EAAEG,IAAI,CAAC;EAC9E;EAEAF,eAAe,CAACC,QAAyF,EAAE;IACzG,QAAQA,QAAQ;MACd,KAAKP,wBAAU,CAACY,YAAY;QAC1B,OAAO,OAAO;MAChB,KAAKZ,wBAAU,CAACa,aAAa;QAC3B,OAAO,QAAQ;MACjB,KAAKb,wBAAU,CAACc,eAAe;QAC7B,OAAO,UAAU;MACnB;QACE,MAAM,IAAIC,KAAK,CAAE,qDAAoDR,QAAS,EAAC,CAAC;IAAC;EAEvF;AACF;AAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node, TypePredicateNode } from 'typescript';
|
|
2
|
+
import { TypePredicateSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
export declare class TypePredicateTransformer implements SchemaTransformer {
|
|
7
|
+
predicate(node: Node): boolean;
|
|
8
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
9
|
+
transform(node: TypePredicateNode, context: SchemaExtractorContext): Promise<TypePredicateSchema>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.promise.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.TypePredicateTransformer = void 0;
|
|
8
|
+
function _typescript() {
|
|
9
|
+
const data = require("typescript");
|
|
10
|
+
_typescript = function () {
|
|
11
|
+
return data;
|
|
12
|
+
};
|
|
13
|
+
return data;
|
|
14
|
+
}
|
|
15
|
+
function _semanticsEntities() {
|
|
16
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
17
|
+
_semanticsEntities = function () {
|
|
18
|
+
return data;
|
|
19
|
+
};
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
class TypePredicateTransformer {
|
|
23
|
+
predicate(node) {
|
|
24
|
+
return node.kind === _typescript().SyntaxKind.TypePredicate;
|
|
25
|
+
}
|
|
26
|
+
async getIdentifiers() {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
async transform(node, context) {
|
|
30
|
+
const parameterName = (0, _typescript().isIdentifier)(node.parameterName) ? node.parameterName.getText() : 'this';
|
|
31
|
+
const type = node.type ? await context.computeSchema(node.type) : undefined;
|
|
32
|
+
const hasAssertsModifier = Boolean(node.assertsModifier);
|
|
33
|
+
return new (_semanticsEntities().TypePredicateSchema)(context.getLocation(node), parameterName, type, hasAssertsModifier);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.TypePredicateTransformer = TypePredicateTransformer;
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=type-predicate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TypePredicateTransformer","predicate","node","kind","SyntaxKind","TypePredicate","getIdentifiers","transform","context","parameterName","isIdentifier","getText","type","computeSchema","undefined","hasAssertsModifier","Boolean","assertsModifier","TypePredicateSchema","getLocation"],"sources":["type-predicate.ts"],"sourcesContent":["import { isIdentifier, Node, SyntaxKind, TypePredicateNode } from 'typescript';\nimport { TypePredicateSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class TypePredicateTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.TypePredicate;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TypePredicateNode, context: SchemaExtractorContext) {\n const parameterName = isIdentifier(node.parameterName) ? node.parameterName.getText() : 'this';\n const type = node.type ? await context.computeSchema(node.type) : undefined;\n const hasAssertsModifier = Boolean(node.assertsModifier);\n return new TypePredicateSchema(context.getLocation(node), parameterName, type, hasAssertsModifier);\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKO,MAAMA,wBAAwB,CAA8B;EACjEC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,aAAa;EAC/C;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACL,IAAuB,EAAEM,OAA+B,EAAE;IACxE,MAAMC,aAAa,GAAG,IAAAC,0BAAY,EAACR,IAAI,CAACO,aAAa,CAAC,GAAGP,IAAI,CAACO,aAAa,CAACE,OAAO,EAAE,GAAG,MAAM;IAC9F,MAAMC,IAAI,GAAGV,IAAI,CAACU,IAAI,GAAG,MAAMJ,OAAO,CAACK,aAAa,CAACX,IAAI,CAACU,IAAI,CAAC,GAAGE,SAAS;IAC3E,MAAMC,kBAAkB,GAAGC,OAAO,CAACd,IAAI,CAACe,eAAe,CAAC;IACxD,OAAO,KAAIC,wCAAmB,EAACV,OAAO,CAACW,WAAW,CAACjB,IAAI,CAAC,EAAEO,aAAa,EAAEG,IAAI,EAAEG,kBAAkB,CAAC;EACpG;AACF;AAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Node, TypeQueryNode } from 'typescript';
|
|
2
|
+
import { TypeQuerySchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import { Identifier } from '../identifier';
|
|
6
|
+
/**
|
|
7
|
+
* e.g. `typeof Foo`
|
|
8
|
+
*/
|
|
9
|
+
export declare class TypeQueryTransformer implements SchemaTransformer {
|
|
10
|
+
predicate(node: Node): boolean;
|
|
11
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
12
|
+
transform(node: TypeQueryNode, context: SchemaExtractorContext): Promise<TypeQuerySchema>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
require("core-js/modules/es.promise.js");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.TypeQueryTransformer = void 0;
|
|
9
|
+
function _typescript() {
|
|
10
|
+
const data = _interopRequireDefault(require("typescript"));
|
|
11
|
+
_typescript = function () {
|
|
12
|
+
return data;
|
|
13
|
+
};
|
|
14
|
+
return data;
|
|
15
|
+
}
|
|
16
|
+
function _semanticsEntities() {
|
|
17
|
+
const data = require("@teambit/semantics.entities.semantic-schema");
|
|
18
|
+
_semanticsEntities = function () {
|
|
19
|
+
return data;
|
|
20
|
+
};
|
|
21
|
+
return data;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* e.g. `typeof Foo`
|
|
25
|
+
*/
|
|
26
|
+
class TypeQueryTransformer {
|
|
27
|
+
predicate(node) {
|
|
28
|
+
return node.kind === _typescript().default.SyntaxKind.TypeQuery;
|
|
29
|
+
}
|
|
30
|
+
async getIdentifiers() {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
async transform(node, context) {
|
|
34
|
+
const displaySig = await context.getQuickInfoDisplayString(node.exprName);
|
|
35
|
+
const type = await context.resolveType(node.exprName, node.exprName.getText(), false);
|
|
36
|
+
const location = context.getLocation(node);
|
|
37
|
+
return new (_semanticsEntities().TypeQuerySchema)(location, type, displaySig);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.TypeQueryTransformer = TypeQueryTransformer;
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=type-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TypeQueryTransformer","predicate","node","kind","ts","SyntaxKind","TypeQuery","getIdentifiers","transform","context","displaySig","getQuickInfoDisplayString","exprName","type","resolveType","getText","location","getLocation","TypeQuerySchema"],"sources":["type-query.ts"],"sourcesContent":["import ts, { Node, TypeQueryNode } from 'typescript';\nimport { TypeQuerySchema } from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\n/**\n * e.g. `typeof Foo`\n */\nexport class TypeQueryTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.TypeQuery;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: TypeQueryNode, context: SchemaExtractorContext) {\n const displaySig = await context.getQuickInfoDisplayString(node.exprName);\n const type = await context.resolveType(node.exprName, node.exprName.getText(), false);\n const location = context.getLocation(node);\n return new TypeQuerySchema(location, type, displaySig);\n }\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAKA;AACA;AACA;AACO,MAAMA,oBAAoB,CAA8B;EAC7DC,SAAS,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,SAAS;EAC9C;EAEA,MAAMC,cAAc,GAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAAS,CAACN,IAAmB,EAAEO,OAA+B,EAAE;IACpE,MAAMC,UAAU,GAAG,MAAMD,OAAO,CAACE,yBAAyB,CAACT,IAAI,CAACU,QAAQ,CAAC;IACzE,MAAMC,IAAI,GAAG,MAAMJ,OAAO,CAACK,WAAW,CAACZ,IAAI,CAACU,QAAQ,EAAEV,IAAI,CAACU,QAAQ,CAACG,OAAO,EAAE,EAAE,KAAK,CAAC;IACrF,MAAMC,QAAQ,GAAGP,OAAO,CAACQ,WAAW,CAACf,IAAI,CAAC;IAC1C,OAAO,KAAIgB,oCAAe,EAACF,QAAQ,EAAEH,IAAI,EAAEH,UAAU,CAAC;EACxD;AACF;AAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Node, TypeReferenceNode } from 'typescript';
|
|
2
|
+
import { SchemaTransformer } from '../schema-transformer';
|
|
3
|
+
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
4
|
+
import { Identifier } from '../identifier';
|
|
5
|
+
/**
|
|
6
|
+
* In the following example, `AriaButtonProps` is a type reference
|
|
7
|
+
* ```ts
|
|
8
|
+
* import type { AriaButtonProps } from '@react-types/button';
|
|
9
|
+
* export type ButtonProps = AriaButtonProps & { a: string };
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare class TypeReferenceTransformer implements SchemaTransformer {
|
|
13
|
+
predicate(node: Node): boolean;
|
|
14
|
+
getIdentifiers(): Promise<Identifier[]>;
|
|
15
|
+
transform(node: TypeReferenceNode, context: SchemaExtractorContext): Promise<import("@teambit/semantics.entities.semantic-schema").SchemaNode>;
|
|
16
|
+
}
|