1
|
{"version":3,"file":"signature-index.js","sourceRoot":"","sources":["../../../../src/lib/converter/nodes/signature-index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,+BAAiC;AAEjC,4CAAuF;AACvF,4CAAqD;AAErD,4CAAkE;AAGlE;IAA6C,2CAA+C;IAD5F;QAAA,qEAwBC;QAnBG,cAAQ,GAAoB;YACxB,EAAE,CAAC,UAAU,CAAC,cAAc;SAC/B,CAAC;;IAiBN,CAAC;IARG,yCAAO,GAAP,UAAQ,OAAgB,EAAE,IAA6B;QACnD,IAAM,KAAK,GAA2B,OAAO,CAAC,KAAK,CAAC;QACpD,EAAE,CAAC,CAAC,KAAK,YAAY,6BAAqB,CAAC,CAAC,CAAC;YACzC,KAAK,CAAC,cAAc,GAAG,uBAAe,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,sBAAc,CAAC,cAAc,CAAC,CAAC;QACpG,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACjB,CAAC;IAtBQ,uBAAuB;QADnC,sBAAS,CAAC,EAAC,IAAI,EAAE,sBAAsB,EAAC,CAAC;OAC7B,uBAAuB,CAuBnC;IAAD,8BAAC;CAAA,AAvBD,CAA6C,mCAAsB,GAuBlE;AAvBY,0DAAuB","sourcesContent":["import * as ts from 'typescript';\n\nimport { Reflection, ReflectionKind, DeclarationReflection } from '../../models/index';\nimport { createSignature } from '../factories/index';\nimport { Context } from '../context';\nimport { Component, ConverterNodeComponent } from '../components';\n\n@Component({name: 'node:signature-index'})\nexport class IndexSignatureConverter extends ConverterNodeComponent<ts.SignatureDeclaration> {\n /**\n * List of supported TypeScript syntax kinds.\n */\n supports: ts.SyntaxKind[] = [\n ts.SyntaxKind.IndexSignature\n ];\n\n /**\n * Analyze the given index signature declaration node and create a suitable reflection.\n *\n * @param context The context object describing the current state the converter is in.\n * @param node The signature declaration node that should be analyzed.\n * @return The resulting reflection or NULL.\n */\n convert(context: Context, node: ts.SignatureDeclaration): Reflection {\n const scope = <DeclarationReflection> context.scope;\n if (scope instanceof DeclarationReflection) {\n scope.indexSignature = createSignature(context, node, '__index', ReflectionKind.IndexSignature);\n }\n\n return scope;\n }\n}\n"]}
|