complete ts type, add test
This commit is contained in:
		@ -3,40 +3,33 @@ Object.defineProperty(exports, "__esModule", { value: true });
 | 
			
		||||
// import * as sqlSyntaxParser from '../core/sqlSyntaxParser';
 | 
			
		||||
const sqlSyntaxParser = require("../core/sqlSyntaxParser");
 | 
			
		||||
const sqlAutoCompleteParser = require("../core/sqlAutoCompleteParser");
 | 
			
		||||
var sqlType;
 | 
			
		||||
(function (sqlType) {
 | 
			
		||||
    sqlType["Hive"] = "hive";
 | 
			
		||||
    sqlType["None"] = "sql";
 | 
			
		||||
    sqlType["Impala"] = "impala";
 | 
			
		||||
})(sqlType || (sqlType = {}));
 | 
			
		||||
function sqlToParserArgs(sql) {
 | 
			
		||||
    let preSql = '', sufSql = '';
 | 
			
		||||
    if (Object.prototype.toString.call(sql) == '[object Array]') {
 | 
			
		||||
        preSql = sql[0];
 | 
			
		||||
        sufSql = sql[1];
 | 
			
		||||
    }
 | 
			
		||||
    return [preSql, sufSql];
 | 
			
		||||
}
 | 
			
		||||
/**
 | 
			
		||||
 * 自动补全提示
 | 
			
		||||
 * @param {(string | Array<string>)} sql
 | 
			
		||||
 * @param {string} [type="hive"]
 | 
			
		||||
 * 校验语法
 | 
			
		||||
 */
 | 
			
		||||
function parseSyntax(sql, type) {
 | 
			
		||||
    if (typeof type == "undefined") {
 | 
			
		||||
        type = "hive";
 | 
			
		||||
    }
 | 
			
		||||
    let sql1 = sql;
 | 
			
		||||
    let sql2 = '';
 | 
			
		||||
    if (sql instanceof Array) {
 | 
			
		||||
        sql1 = sql[0];
 | 
			
		||||
        sql2 = sql[1];
 | 
			
		||||
    }
 | 
			
		||||
    // @ts-nocheck
 | 
			
		||||
    return sqlSyntaxParser.parser.parseSyntax(sql1, sql2, type, false);
 | 
			
		||||
function parseSyntax(sql, type = sqlType.Hive) {
 | 
			
		||||
    const parserArgs = sqlToParserArgs(sql);
 | 
			
		||||
    return sqlSyntaxParser.parser.parseSyntax(parserArgs[0], parserArgs[1], type, false);
 | 
			
		||||
}
 | 
			
		||||
exports.parseSyntax = parseSyntax;
 | 
			
		||||
/**
 | 
			
		||||
 * 自动补全提示
 | 
			
		||||
 * @param {(string | Array<string>)} sql
 | 
			
		||||
 * @param {string} [type="hive"]
 | 
			
		||||
 */
 | 
			
		||||
function parserSql(sql, type) {
 | 
			
		||||
    if (typeof type == "undefined") {
 | 
			
		||||
        type = "hive";
 | 
			
		||||
    }
 | 
			
		||||
    let sql1 = sql;
 | 
			
		||||
    let sql2 = '';
 | 
			
		||||
    if (sql instanceof Array) {
 | 
			
		||||
        sql1 = sql[0];
 | 
			
		||||
        sql2 = sql[1];
 | 
			
		||||
    }
 | 
			
		||||
    return sqlAutoCompleteParser.parser.parseSql(sql1, sql2, type, false);
 | 
			
		||||
function parserSql(sql, type = sqlType.Hive) {
 | 
			
		||||
    const parserArgs = sqlToParserArgs(sql);
 | 
			
		||||
    return sqlAutoCompleteParser.parser.parseSql(parserArgs[0], parserArgs[1], type, false);
 | 
			
		||||
}
 | 
			
		||||
exports.parserSql = parserSql;
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user