UNPKG

create-query-language

Version:

A flexible TypeScript library for parsing and building query languages with support for lexical analysis, AST generation, and token stream processing

1 lines 17 kB
{"version":3,"file":"index.cjs.cjs","sources":["../src/ASTUtils/logic/constants.ts","../src/ASTUtils/ASTUtils.ts","../src/logic/constants.ts","../src/QueryLexer/logic/constants.ts","../src/QueryLexer/QueryLexer.ts","../src/TokenStream/TokenStream.ts","../src/QueryParser/logic/constants.ts","../src/QueryParser/QueryParser.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["AstTypes","Key","Value","Comparator","LogicalOperator","Condition","Group","Boolean","Not","Query","ASTUtils","createQuery","expression","position","type","createBooleanExpression","operator","left","right","createKey","value","createComparator","createOperator","createValue","createCondition","key","comparator","spacesAfterKey","spacesAfterComparator","spacesAfterValue","createGroup","createNotExpression","createPosition","start","end","mergePositions","positions","length","Math","min","map","p","max","traverseAST","node","parentNode","callback","traverse","current","boolNode","LogicalOperators","AND","OR","NOT","Comparators","TokenTypes","Whitespace","LeftParenthesis","RightParenthesis","Colon","QuotedString","Identifier","Invalid","EndOfLine","ComparatorBeginnings","SpecialChars","SingleQuote","DoubleQuote","QueryLexer","input","options","constructor","this","tokenize","reset","tokens","isAtEnd","token","nextToken","push","createToken","linkTokensAsLinkedList","i","previous","next","prev","char","currentChar","getIsWhitespace","scanWhitespace","includes","scanComparator","advance","scanQuotedString","isIdentifierStart","scanWord","allWhitespacesValue","slice","startPosition","openingQuote","valueWithinQuotes","isEscapedChar","escapeSequences","n","t","r","invalidQuotedStringValue","nextChar","comparatorValue","tokenType","isPartOfIdentifier","wordValue","uppercaseValue","caseSensitiveOperators","toUpperCase","scanLogicalOperator","tokenValue","logicalOperatorTokenType","test","getTokenAtPosition","TokenStream","consume","tryGetCurrent","expectedType","Error","isCurrentAMatchWith","matchAny","expectedTypes","countAndSkipWhitespaces","context","spaceCount","ContextTypes","ERROR_MESSAGES","ERROR_CODES","tokenStream","errors","openParenthesisCount","queryLexer","maxErrors","parse","expectedTokens","errorEmptyInputPosition","addError","message","code","success","parseOrExpression","isPartialLogicalOperator","queryPosition","queryAST","ast","error","errorPosition","leftAST","parseAndExpression","matchLogicalOperatorOR","operatorToken","rightAST","logicalOperatorNode","leftPosition","parseNotExpression","matchLogicalOperatorAND","whiteSpacesAfterLogicalOperatorCount","getPositionAfterToken","matchLogicalOperatorNOT","notToken","whiteSpacesAfterNotCount","parsePrimaryExpression","notPosition","parseGroupExpression","parseCondition","startToken","rightParenthesisToken","groupPosition","currentToken","keyToken","isPartialNotOperator","isPartialComparator","comparatorToken","valueToken","keyNode","comparatorNode","valueNode","conditionPosition","props","recoverable","lowercasedIncompleteValue","toLowerCase","some","op","startsWith","Object","values","fullComparator"],"mappings":"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"}