@syncfusion/ej2-querybuilder 20.3.59 → 20.4.38
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/.eslintrc.json +16 -1
- package/CHANGELOG.md +1 -16
- package/README.md +43 -43
- package/dist/ej2-querybuilder.min.js +2 -2
- package/dist/ej2-querybuilder.umd.min.js +2 -2
- package/dist/ej2-querybuilder.umd.min.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es2015.js +115 -93
- package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
- package/dist/es6/ej2-querybuilder.es5.js +113 -91
- package/dist/es6/ej2-querybuilder.es5.js.map +1 -1
- package/dist/global/ej2-querybuilder.min.js +2 -2
- package/dist/global/ej2-querybuilder.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +20 -23
- package/src/query-builder/query-builder-model.d.ts +248 -248
- package/src/query-builder/query-builder.d.ts +1 -1
- package/src/query-builder/query-builder.js +113 -91
|
@@ -383,7 +383,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
383
383
|
if (sqlIdx > -1) {
|
|
384
384
|
var operator_1 = column.operators[j];
|
|
385
385
|
var operColl = Object.keys(operator_1);
|
|
386
|
-
var values = operColl.map(function (key) { return operator_1[key]; }).join(',').split(',');
|
|
386
|
+
var values = operColl.map(function (key) { return operator_1["" + key]; }).join(',').split(',');
|
|
387
387
|
var valueIdx = operColl.indexOf('value');
|
|
388
388
|
this_1.operators[values[valueIdx]] = values[sqlIdx];
|
|
389
389
|
}
|
|
@@ -780,6 +780,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
780
780
|
var tooltip = new Tooltip({ content: this.l10n.getConstant('ValidationMessage'),
|
|
781
781
|
position: 'BottomCenter', cssClass: 'e-querybuilder-error' });
|
|
782
782
|
tooltip.appendTo(element);
|
|
783
|
+
// eslint-disable-next-line
|
|
783
784
|
tooltip.open(element);
|
|
784
785
|
};
|
|
785
786
|
/**
|
|
@@ -837,8 +838,9 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
837
838
|
if (rule.rules[index].value instanceof Array) {
|
|
838
839
|
valArray = rule.rules[index].value;
|
|
839
840
|
}
|
|
840
|
-
if (excludeOprs.indexOf(rule.rules[index].operator) < 0 &&
|
|
841
|
-
rule.rules[index].
|
|
841
|
+
if (excludeOprs.indexOf(rule.rules[index].operator) < 0 &&
|
|
842
|
+
(isNullOrUndefined(rule.rules[index].value) &&
|
|
843
|
+
rule.rules[index].type !== 'date') || rule.rules[index].value === '' ||
|
|
842
844
|
(rule.rules[index].value instanceof Array && valArray.length < 1)) {
|
|
843
845
|
var valElem = tempElem.querySelectorAll('.e-rule-value .e-control');
|
|
844
846
|
isValid = false;
|
|
@@ -916,7 +918,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
916
918
|
groupElem.appendChild(grpBodyElem);
|
|
917
919
|
// create button group in OR and AND process
|
|
918
920
|
if (!this.headerTemplate) {
|
|
919
|
-
glueElem = this.createElement('div', { attrs: { class: 'e-lib e-btn-group' } });
|
|
921
|
+
glueElem = this.createElement('div', { attrs: { class: 'e-lib e-btn-group', role: 'group' } });
|
|
920
922
|
if (this.enableNotCondition) {
|
|
921
923
|
inputElem = this.createElement('button', { attrs: { type: 'button', class: 'e-qb-toggle' } });
|
|
922
924
|
glueElem.appendChild(inputElem);
|
|
@@ -1800,29 +1802,29 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
1800
1802
|
for (var j = 0, jLen = fieldColl.length; j < jLen; j++) {
|
|
1801
1803
|
fieldStr = fieldColl[j];
|
|
1802
1804
|
if (fieldColl.length === (j + 1)) {
|
|
1803
|
-
value = dataObj[fieldStr];
|
|
1804
|
-
if (Number(dataObj[fieldStr]) === dataObj[fieldStr] && dataObj[fieldStr] % 1 !== 0) {
|
|
1805
|
-
value = dataObj[fieldStr].toString();
|
|
1805
|
+
value = dataObj["" + fieldStr];
|
|
1806
|
+
if (Number(dataObj["" + fieldStr]) === dataObj["" + fieldStr] && dataObj["" + fieldStr] % 1 !== 0) {
|
|
1807
|
+
value = dataObj["" + fieldStr].toString();
|
|
1806
1808
|
}
|
|
1807
1809
|
}
|
|
1808
1810
|
else {
|
|
1809
|
-
dataObj = dataObj[fieldStr];
|
|
1811
|
+
dataObj = dataObj["" + fieldStr];
|
|
1810
1812
|
}
|
|
1811
1813
|
}
|
|
1812
1814
|
}
|
|
1813
1815
|
else {
|
|
1814
|
-
value = dataSource[i][field];
|
|
1815
|
-
if (Number(dataSource[i][field]) === dataSource[i][field] && dataSource[i][field] % 1 !== 0) {
|
|
1816
|
-
value = dataSource[i][field].toString();
|
|
1816
|
+
value = dataSource[i]["" + field];
|
|
1817
|
+
if (Number(dataSource[i]["" + field]) === dataSource[i]["" + field] && dataSource[i]["" + field] % 1 !== 0) {
|
|
1818
|
+
value = dataSource[i]["" + field].toString();
|
|
1817
1819
|
}
|
|
1818
1820
|
}
|
|
1819
1821
|
if (!(value in original)) {
|
|
1820
|
-
original[value] = 1;
|
|
1822
|
+
original["" + value] = 1;
|
|
1821
1823
|
if (fieldColl.length > 1) {
|
|
1822
1824
|
this.createNestedObject(data, fieldColl, value);
|
|
1823
1825
|
}
|
|
1824
1826
|
else {
|
|
1825
|
-
data[field] = value;
|
|
1827
|
+
data["" + field] = value;
|
|
1826
1828
|
}
|
|
1827
1829
|
result.push(data);
|
|
1828
1830
|
}
|
|
@@ -1836,9 +1838,9 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
1836
1838
|
for (var k = 0; k < lastIndex; ++k) {
|
|
1837
1839
|
key = fieldColl[k];
|
|
1838
1840
|
if (!(key in obj)) {
|
|
1839
|
-
obj[key] = {};
|
|
1841
|
+
obj["" + key] = {};
|
|
1840
1842
|
}
|
|
1841
|
-
obj = obj[key];
|
|
1843
|
+
obj = obj["" + key];
|
|
1842
1844
|
}
|
|
1843
1845
|
obj[fieldColl[lastIndex]] = value;
|
|
1844
1846
|
};
|
|
@@ -1850,28 +1852,28 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
1850
1852
|
var isNested = field.indexOf(this.separator);
|
|
1851
1853
|
var _loop_2 = function (i, iLen) {
|
|
1852
1854
|
if (isNested === 0) {
|
|
1853
|
-
value = dataSource[i][field];
|
|
1855
|
+
value = dataSource[i]["" + field];
|
|
1854
1856
|
}
|
|
1855
1857
|
else {
|
|
1856
1858
|
nest = field.split(this_2.separator);
|
|
1857
1859
|
// eslint-disable-next-line @typescript-eslint/tslint/config
|
|
1858
1860
|
nest.forEach(function (element) {
|
|
1859
1861
|
if (value) {
|
|
1860
|
-
value = value[element];
|
|
1862
|
+
value = value["" + element];
|
|
1861
1863
|
}
|
|
1862
1864
|
else {
|
|
1863
|
-
value = dataSource[i][element];
|
|
1865
|
+
value = dataSource[i]["" + element];
|
|
1864
1866
|
}
|
|
1865
1867
|
});
|
|
1866
1868
|
}
|
|
1867
|
-
if (Number(dataSource[i][field]) === dataSource[i][field] && dataSource[i][field] % 1 !== 0) {
|
|
1868
|
-
value = dataSource[i][field].toString();
|
|
1869
|
+
if (Number(dataSource[i]["" + field]) === dataSource[i]["" + field] && dataSource[i]["" + field] % 1 !== 0) {
|
|
1870
|
+
value = dataSource[i]["" + field].toString();
|
|
1869
1871
|
}
|
|
1870
1872
|
var data = {};
|
|
1871
1873
|
if (!(value in original)) {
|
|
1872
|
-
original[value] = 1;
|
|
1874
|
+
original["" + value] = 1;
|
|
1873
1875
|
if (isNested === 0) {
|
|
1874
|
-
data[field] = value;
|
|
1876
|
+
data["" + field] = value;
|
|
1875
1877
|
}
|
|
1876
1878
|
else {
|
|
1877
1879
|
data[nest[nest.length - 1]] = value;
|
|
@@ -2619,7 +2621,8 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
2619
2621
|
var column = this.fieldMode === 'DropdownTree' ? this.getColumn(dropDownObj.value[0])
|
|
2620
2622
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2621
2623
|
: this.getColumn(dropDownObj.value);
|
|
2622
|
-
if (!this.isImportRules && rule.rules[index].field &&
|
|
2624
|
+
if (!this.isImportRules && rule.rules[index].field &&
|
|
2625
|
+
rule.rules[index].field.toLowerCase() !== column.field.toLowerCase()) {
|
|
2623
2626
|
if (!(ruleElem.querySelectorAll('.e-template')) && !(operator.indexOf('null') > -1)
|
|
2624
2627
|
|| (operator.indexOf('empty') > -1)) {
|
|
2625
2628
|
rule.rules[index].value = '';
|
|
@@ -3414,7 +3417,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3414
3417
|
EventHandler.remove(this.element, 'keydown', this.keyBoardHandler);
|
|
3415
3418
|
};
|
|
3416
3419
|
QueryBuilder.prototype.getParentGroup = function (target, isParent) {
|
|
3417
|
-
var groupLevel = (target instanceof Element) ? this.levelColl[target.id] : this.levelColl[target];
|
|
3420
|
+
var groupLevel = (target instanceof Element) ? this.levelColl[target.id] : this.levelColl["" + target];
|
|
3418
3421
|
var len = isParent ? groupLevel.length - 1 : groupLevel.length;
|
|
3419
3422
|
var rule = this.rule;
|
|
3420
3423
|
for (var i = 0; i < len; i++) {
|
|
@@ -3576,6 +3579,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3576
3579
|
err = [];
|
|
3577
3580
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3578
3581
|
var error = 'error';
|
|
3582
|
+
// eslint-disable-next-line
|
|
3579
3583
|
err[error] = error;
|
|
3580
3584
|
}
|
|
3581
3585
|
// eslint-enable
|
|
@@ -3737,6 +3741,9 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3737
3741
|
else {
|
|
3738
3742
|
rule = { 'condition': rule.condition, 'rules': rule.rules };
|
|
3739
3743
|
}
|
|
3744
|
+
if (rule.rules.length === 0) {
|
|
3745
|
+
rule = {};
|
|
3746
|
+
}
|
|
3740
3747
|
}
|
|
3741
3748
|
}
|
|
3742
3749
|
return rule;
|
|
@@ -3945,7 +3952,8 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
3945
3952
|
if (i === 0) {
|
|
3946
3953
|
if (isDateFilter || (oper.indexOf('in') > -1 || oper.indexOf('between') > -1 || oper.indexOf('null') > -1 ||
|
|
3947
3954
|
oper.indexOf('empty') > -1) && oper.indexOf('contains') < 0) {
|
|
3948
|
-
pred = isDateFilter ? this.datePredicate(ruleColl[i], ruleValue) :
|
|
3955
|
+
pred = isDateFilter ? this.datePredicate(ruleColl[i], ruleValue) :
|
|
3956
|
+
this.arrayPredicate(ruleColl[i]);
|
|
3949
3957
|
}
|
|
3950
3958
|
else {
|
|
3951
3959
|
var value = ruleValue;
|
|
@@ -4429,89 +4437,90 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4429
4437
|
queryStr += rulesNotCondition;
|
|
4430
4438
|
}
|
|
4431
4439
|
}
|
|
4432
|
-
|
|
4433
|
-
|
|
4434
|
-
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
|
|
4439
|
-
|
|
4440
|
-
|
|
4441
|
-
|
|
4442
|
-
|
|
4443
|
-
|
|
4444
|
-
|
|
4445
|
-
|
|
4440
|
+
if (rules.rules) {
|
|
4441
|
+
for (var j = 0, jLen = rules.rules.length; j < jLen; j++) {
|
|
4442
|
+
if (rules.rules[j].rules) {
|
|
4443
|
+
queryStr = this.getSqlString(rules.rules[j], enableEscape, queryStr, sqlLocale);
|
|
4444
|
+
}
|
|
4445
|
+
else {
|
|
4446
|
+
var rule = rules.rules[j];
|
|
4447
|
+
var valueStr = '';
|
|
4448
|
+
var ruleOpertor = sqlLocale ? this.sqlOperators[rule.operator] : this.operators[rule.operator];
|
|
4449
|
+
if (rule.value instanceof Array) {
|
|
4450
|
+
if (rule.operator.toString().indexOf('between') > -1) {
|
|
4451
|
+
var ruleCondition = sqlLocale ? ' ' + this.l10n.getConstant('AND').toUpperCase() + ' ' : ' ' + 'AND' + ' ';
|
|
4452
|
+
if (rule.type === 'date' && !this.isDateFunction(rule.value[0])) {
|
|
4453
|
+
valueStr += '"' + rule.value[0] + '"' + ruleCondition + '"' + rule.value[1] + '"';
|
|
4454
|
+
}
|
|
4455
|
+
else {
|
|
4456
|
+
valueStr += rule.value[0] + ruleCondition + rule.value[1];
|
|
4457
|
+
}
|
|
4446
4458
|
}
|
|
4447
4459
|
else {
|
|
4448
|
-
|
|
4460
|
+
if (typeof rule.value[0] === 'string' && rule.value !== null) {
|
|
4461
|
+
valueStr += '("' + rule.value[0] + '"';
|
|
4462
|
+
for (var k = 1, kLen = rule.value.length; k < kLen; k++) {
|
|
4463
|
+
valueStr += ',"' + rule.value[k] + '"';
|
|
4464
|
+
}
|
|
4465
|
+
valueStr += ')';
|
|
4466
|
+
}
|
|
4467
|
+
else {
|
|
4468
|
+
valueStr += '(' + rule.value + ')';
|
|
4469
|
+
}
|
|
4449
4470
|
}
|
|
4450
4471
|
}
|
|
4451
4472
|
else {
|
|
4452
|
-
if (
|
|
4453
|
-
valueStr += '("' + rule.value
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4457
|
-
|
|
4473
|
+
if (rule.operator.toString().indexOf('startswith') > -1) {
|
|
4474
|
+
valueStr += rule.value ? '("' + rule.value + '%")' : '(' + rule.value + ')';
|
|
4475
|
+
}
|
|
4476
|
+
else if (rule.operator.toString().indexOf('endswith') > -1) {
|
|
4477
|
+
valueStr += rule.value ? '("%' + rule.value + '")' : '(' + rule.value + ')';
|
|
4478
|
+
}
|
|
4479
|
+
else if (rule.operator.toString().indexOf('contains') > -1) {
|
|
4480
|
+
valueStr += rule.value ? '("%' + rule.value + '%")' : '(' + rule.value + ')';
|
|
4458
4481
|
}
|
|
4459
4482
|
else {
|
|
4460
|
-
|
|
4483
|
+
if (rule.type === 'number' || typeof rule.value === 'boolean' || rule.value === null) {
|
|
4484
|
+
valueStr += rule.value;
|
|
4485
|
+
}
|
|
4486
|
+
else {
|
|
4487
|
+
valueStr += '"' + rule.value + '"';
|
|
4488
|
+
}
|
|
4461
4489
|
}
|
|
4462
4490
|
}
|
|
4463
|
-
|
|
4464
|
-
|
|
4465
|
-
|
|
4466
|
-
valueStr += rule.value ? '("' + rule.value + '%")' : '(' + rule.value + ')';
|
|
4467
|
-
}
|
|
4468
|
-
else if (rule.operator.toString().indexOf('endswith') > -1) {
|
|
4469
|
-
valueStr += rule.value ? '("%' + rule.value + '")' : '(' + rule.value + ')';
|
|
4470
|
-
}
|
|
4471
|
-
else if (rule.operator.toString().indexOf('contains') > -1) {
|
|
4472
|
-
valueStr += rule.value ? '("%' + rule.value + '%")' : '(' + rule.value + ')';
|
|
4473
|
-
}
|
|
4474
|
-
else {
|
|
4475
|
-
if (rule.type === 'number' || typeof rule.value === 'boolean' || rule.value === null) {
|
|
4476
|
-
valueStr += rule.value;
|
|
4491
|
+
if (rule.operator.toString().indexOf('null') > -1 || (rule.operator.toString().indexOf('empty') > -1)) {
|
|
4492
|
+
if (enableEscape) {
|
|
4493
|
+
rule.field = '`' + rule.field + '`';
|
|
4477
4494
|
}
|
|
4478
4495
|
else {
|
|
4479
|
-
|
|
4496
|
+
if (rule.field.indexOf(' ') > -1) {
|
|
4497
|
+
rule.field = '"' + rule.field + '"';
|
|
4498
|
+
}
|
|
4480
4499
|
}
|
|
4481
|
-
|
|
4482
|
-
}
|
|
4483
|
-
if (rule.operator.toString().indexOf('null') > -1 || (rule.operator.toString().indexOf('empty') > -1)) {
|
|
4484
|
-
if (enableEscape) {
|
|
4485
|
-
rule.field = '`' + rule.field + '`';
|
|
4500
|
+
queryStr += rule.field + ' ' + ruleOpertor;
|
|
4486
4501
|
}
|
|
4487
4502
|
else {
|
|
4488
|
-
if (
|
|
4489
|
-
rule.field = '
|
|
4503
|
+
if (enableEscape) {
|
|
4504
|
+
rule.field = '`' + rule.field + '`';
|
|
4490
4505
|
}
|
|
4491
|
-
|
|
4492
|
-
|
|
4493
|
-
|
|
4494
|
-
|
|
4495
|
-
if (enableEscape) {
|
|
4496
|
-
rule.field = '`' + rule.field + '`';
|
|
4497
|
-
}
|
|
4498
|
-
else {
|
|
4499
|
-
if (rule.field.indexOf(' ') > -1) {
|
|
4500
|
-
rule.field = '"' + rule.field + '"';
|
|
4506
|
+
else {
|
|
4507
|
+
if (rule.field.indexOf(' ') > -1) {
|
|
4508
|
+
rule.field = '"' + rule.field + '"';
|
|
4509
|
+
}
|
|
4501
4510
|
}
|
|
4511
|
+
queryStr += rule.field + ' ' + ruleOpertor + ' ' + valueStr;
|
|
4512
|
+
}
|
|
4513
|
+
if (rule.condition && rule.condition !== '') {
|
|
4514
|
+
condition = rule.condition;
|
|
4502
4515
|
}
|
|
4503
|
-
queryStr += rule.field + ' ' + ruleOpertor + ' ' + valueStr;
|
|
4504
|
-
}
|
|
4505
|
-
if (rule.condition && rule.condition !== '') {
|
|
4506
|
-
condition = rule.condition;
|
|
4507
4516
|
}
|
|
4508
|
-
|
|
4509
|
-
|
|
4510
|
-
|
|
4511
|
-
|
|
4517
|
+
if (j !== jLen - 1) {
|
|
4518
|
+
if (condition === '') {
|
|
4519
|
+
condition = rules.rules[j].condition;
|
|
4520
|
+
}
|
|
4521
|
+
condition = sqlLocale ? this.l10n.getConstant(condition.toUpperCase()).toUpperCase() : condition.toUpperCase();
|
|
4522
|
+
queryStr += ' ' + condition + ' ';
|
|
4512
4523
|
}
|
|
4513
|
-
condition = sqlLocale ? this.l10n.getConstant(condition.toUpperCase()).toUpperCase() : condition.toUpperCase();
|
|
4514
|
-
queryStr += ' ' + condition + ' ';
|
|
4515
4524
|
}
|
|
4516
4525
|
}
|
|
4517
4526
|
if (!isRoot) {
|
|
@@ -4558,7 +4567,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4558
4567
|
*
|
|
4559
4568
|
* @param {RuleModel} rule - 'rule' to be passed to get the sql.
|
|
4560
4569
|
* @param {boolean} allowEscape - Set `true` if it exclude the escape character.
|
|
4561
|
-
*
|
|
4570
|
+
* @param {boolean} sqlLocale - Set `true` if Localization for Sql query.
|
|
4562
4571
|
* @returns {object} - Sql query from rules.
|
|
4563
4572
|
*/
|
|
4564
4573
|
QueryBuilder.prototype.getSqlFromRules = function (rule, allowEscape, sqlLocale) {
|
|
@@ -4602,6 +4611,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4602
4611
|
var matchValue;
|
|
4603
4612
|
for (var i = 0, iLen = operators.length; i < iLen; i++) {
|
|
4604
4613
|
regexStr = /^\w+$/.test(operators[i]) ? '\\b' : '';
|
|
4614
|
+
// eslint-disable-next-line
|
|
4605
4615
|
regex = new RegExp('^(' + operators[i] + ')' + regexStr, 'ig');
|
|
4606
4616
|
if (regex.exec(sqlString)) {
|
|
4607
4617
|
this.parser.push(['Operators', operators[i].toLowerCase()]);
|
|
@@ -4612,6 +4622,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4612
4622
|
if (!lastPasrser || (lastPasrser && lastPasrser[0] !== 'Literal')) {
|
|
4613
4623
|
for (var i = 0, iLen = conditions.length; i < iLen; i++) {
|
|
4614
4624
|
regexStr = /^\w+$/.test(conditions[i]) ? '\\b' : '';
|
|
4625
|
+
// eslint-disable-next-line
|
|
4615
4626
|
regex = new RegExp('^(' + conditions[i] + ')' + regexStr, 'ig');
|
|
4616
4627
|
if (regex.exec(sqlString)) {
|
|
4617
4628
|
this.parser.push(['Conditions', conditions[i].toLowerCase()]);
|
|
@@ -4621,6 +4632,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4621
4632
|
}
|
|
4622
4633
|
for (var i = 0, iLen = subOp.length; i < iLen; i++) {
|
|
4623
4634
|
regexStr = /^\w+$/.test(subOp[i]) ? '\\b' : '';
|
|
4635
|
+
// eslint-disable-next-line
|
|
4624
4636
|
regex = new RegExp('^(' + subOp[i] + ')' + regexStr, 'ig');
|
|
4625
4637
|
if (regex.exec(sqlString)) {
|
|
4626
4638
|
this.parser.push(['SubOperators', subOp[i].toLowerCase()]);
|
|
@@ -4664,30 +4676,39 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4664
4676
|
return matchValue.length + 2;
|
|
4665
4677
|
}
|
|
4666
4678
|
if (this.checkNumberLiteral(sqlString, sqlLocale)) {
|
|
4679
|
+
// eslint-disable-next-line
|
|
4667
4680
|
matchValue = /^[0-9]+(\.[0-9]+)?/.exec(sqlString)[0];
|
|
4668
4681
|
this.parser.push(['Literal', matchValue]);
|
|
4669
4682
|
return matchValue.length;
|
|
4670
4683
|
}
|
|
4671
4684
|
//String
|
|
4685
|
+
// eslint-disable-next-line
|
|
4672
4686
|
if (/^'((?:[^\\']+?|\\.|'')*)'(?!')/.exec(sqlString)) {
|
|
4687
|
+
// eslint-disable-next-line
|
|
4673
4688
|
matchValue = /^'((?:[^\\']+?|\\.|'')*)'(?!')/.exec(sqlString)[0];
|
|
4674
4689
|
this.parser.push(['String', matchValue]);
|
|
4675
4690
|
return matchValue.length;
|
|
4676
4691
|
}
|
|
4677
4692
|
//Double String
|
|
4693
|
+
// eslint-disable-next-line
|
|
4678
4694
|
if (/^"([^\\"]*(?:\\.[^\\"]*)*)"/.exec(sqlString)) {
|
|
4695
|
+
// eslint-disable-next-line
|
|
4679
4696
|
matchValue = /^"([^\\"]*(?:\\.[^\\"]*)*)"/.exec(sqlString)[0];
|
|
4680
4697
|
this.parser.push(['DoubleString', matchValue]);
|
|
4681
4698
|
return matchValue.length;
|
|
4682
4699
|
}
|
|
4683
4700
|
//Number
|
|
4701
|
+
// eslint-disable-next-line
|
|
4684
4702
|
if (/^[0-9]+(\.[0-9]+)?/.exec(sqlString)) {
|
|
4703
|
+
// eslint-disable-next-line
|
|
4685
4704
|
matchValue = /^[0-9]+(\.[0-9]+)?/.exec(sqlString)[0];
|
|
4686
4705
|
this.parser.push(['Number', matchValue]);
|
|
4687
4706
|
return matchValue.length;
|
|
4688
4707
|
}
|
|
4689
4708
|
//Negative Number
|
|
4709
|
+
// eslint-disable-next-line
|
|
4690
4710
|
if (/^-?[0-9]+(\.[0-9]+)?/.exec(sqlString)) {
|
|
4711
|
+
// eslint-disable-next-line
|
|
4691
4712
|
matchValue = /^-?[0-9]+(\.[0-9]+)?/.exec(sqlString)[0];
|
|
4692
4713
|
this.parser.push(['Number', matchValue]);
|
|
4693
4714
|
return matchValue.length;
|
|
@@ -4713,6 +4734,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4713
4734
|
return true;
|
|
4714
4735
|
}
|
|
4715
4736
|
else {
|
|
4737
|
+
// eslint-disable-next-line
|
|
4716
4738
|
if (/^[0-9]+(\.[0-9]+)?/.exec(sqlString)) {
|
|
4717
4739
|
var secParser = this.parser[this.parser.length - 2];
|
|
4718
4740
|
var betweenParser = this.parser[this.parser.length - 3];
|
|
@@ -4770,7 +4792,7 @@ var QueryBuilder = /** @__PURE__ @class */ (function (_super) {
|
|
|
4770
4792
|
return 'equal';
|
|
4771
4793
|
}
|
|
4772
4794
|
}
|
|
4773
|
-
return operators[operator];
|
|
4795
|
+
return operators["" + operator];
|
|
4774
4796
|
};
|
|
4775
4797
|
QueryBuilder.prototype.getTypeFromColumn = function (rules) {
|
|
4776
4798
|
var columnData = this.getColumn(rules.field);
|