UNPKG

@ts-intl/dependency

Version:

I18n keys dependency analysis

22 lines (20 loc) 499 B
import { CallExpression, NoSubstitutionTemplateLiteral, StringLiteral, SyntaxKind, } from 'typescript'; export const extractIntlKeyArg = ( node: CallExpression, argIdx = 0 ): StringLiteral | NoSubstitutionTemplateLiteral | undefined => { const keyArg = node.arguments[argIdx]; if ( [ SyntaxKind.StringLiteral, SyntaxKind.NoSubstitutionTemplateLiteral, ].includes(keyArg?.kind) ) return keyArg as StringLiteral | NoSubstitutionTemplateLiteral; return; };