@carbonorm/carbonnode 3.3.10 → 3.4.0
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/dist/api/executors/SqlExecutor.d.ts +16 -22
- package/dist/api/orm/queries/DeleteQueryBuilder.d.ts +6 -3
- package/dist/index.cjs.js +136 -176
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +136 -176
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/api/executors/SqlExecutor.ts +56 -70
- package/src/api/handlers/ExpressHandler.ts +23 -3
- package/src/api/orm/queries/DeleteQueryBuilder.ts +14 -15
package/dist/index.esm.js
CHANGED
|
@@ -1365,6 +1365,25 @@ var JoinBuilder = /** @class */ (function (_super) {
|
|
|
1365
1365
|
return JoinBuilder;
|
|
1366
1366
|
}(ConditionBuilder));
|
|
1367
1367
|
|
|
1368
|
+
var DeleteQueryBuilder = /** @class */ (function (_super) {
|
|
1369
|
+
__extends(DeleteQueryBuilder, _super);
|
|
1370
|
+
function DeleteQueryBuilder() {
|
|
1371
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
1372
|
+
}
|
|
1373
|
+
DeleteQueryBuilder.prototype.build = function (table, args) {
|
|
1374
|
+
var params = this.useNamedParams ? {} : [];
|
|
1375
|
+
var sql = "DELETE `".concat(table, "` FROM `").concat(table, "`");
|
|
1376
|
+
if (args.JOIN) {
|
|
1377
|
+
sql += this.buildJoinClauses(args.JOIN, params);
|
|
1378
|
+
}
|
|
1379
|
+
if (args.WHERE) {
|
|
1380
|
+
sql += this.buildWhereClause(args.WHERE, params);
|
|
1381
|
+
}
|
|
1382
|
+
return { sql: sql, params: params };
|
|
1383
|
+
};
|
|
1384
|
+
return DeleteQueryBuilder;
|
|
1385
|
+
}(JoinBuilder));
|
|
1386
|
+
|
|
1368
1387
|
var PaginationBuilder = /** @class */ (function (_super) {
|
|
1369
1388
|
__extends(PaginationBuilder, _super);
|
|
1370
1389
|
function PaginationBuilder() {
|
|
@@ -1461,6 +1480,42 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1461
1480
|
return SelectQueryBuilder;
|
|
1462
1481
|
}(PaginationBuilder));
|
|
1463
1482
|
|
|
1483
|
+
var UpdateQueryBuilder = /** @class */ (function (_super) {
|
|
1484
|
+
__extends(UpdateQueryBuilder, _super);
|
|
1485
|
+
function UpdateQueryBuilder() {
|
|
1486
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
1487
|
+
}
|
|
1488
|
+
UpdateQueryBuilder.prototype.build = function (table, data, args) {
|
|
1489
|
+
if (args === void 0) { args = {}; }
|
|
1490
|
+
var params = this.useNamedParams ? {} : [];
|
|
1491
|
+
var sql = "UPDATE `".concat(table, "`");
|
|
1492
|
+
if (args.JOIN) {
|
|
1493
|
+
sql += this.buildJoinClauses(args.JOIN, params);
|
|
1494
|
+
}
|
|
1495
|
+
var setClauses = Object.entries(data).map(function (_a) {
|
|
1496
|
+
var col = _a[0], val = _a[1];
|
|
1497
|
+
if (Array.isArray(params)) {
|
|
1498
|
+
params.push(val);
|
|
1499
|
+
return "`".concat(col, "` = ?");
|
|
1500
|
+
}
|
|
1501
|
+
else {
|
|
1502
|
+
var key = "param".concat(Object.keys(params).length);
|
|
1503
|
+
params[key] = val;
|
|
1504
|
+
return "`".concat(col, "` = :").concat(key);
|
|
1505
|
+
}
|
|
1506
|
+
});
|
|
1507
|
+
sql += " SET ".concat(setClauses.join(', '));
|
|
1508
|
+
if (args.WHERE) {
|
|
1509
|
+
sql += this.buildWhereClause(args.WHERE, params);
|
|
1510
|
+
}
|
|
1511
|
+
if (args.PAGINATION) {
|
|
1512
|
+
sql += this.buildPaginationClause(args.PAGINATION);
|
|
1513
|
+
}
|
|
1514
|
+
return { sql: sql, params: params };
|
|
1515
|
+
};
|
|
1516
|
+
return UpdateQueryBuilder;
|
|
1517
|
+
}(PaginationBuilder));
|
|
1518
|
+
|
|
1464
1519
|
var SqlExecutor = /** @class */ (function (_super) {
|
|
1465
1520
|
__extends(SqlExecutor, _super);
|
|
1466
1521
|
function SqlExecutor() {
|
|
@@ -1489,7 +1544,7 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1489
1544
|
case 'DELETE': return [3 /*break*/, 7];
|
|
1490
1545
|
}
|
|
1491
1546
|
return [3 /*break*/, 9];
|
|
1492
|
-
case 1: return [4 /*yield*/, this.select
|
|
1547
|
+
case 1: return [4 /*yield*/, this.runQuery('select', TABLE_NAME, this.request)];
|
|
1493
1548
|
case 2:
|
|
1494
1549
|
rest = _b.sent();
|
|
1495
1550
|
console.log("[SQL EXECUTOR] \u2705 GET result:", rest);
|
|
@@ -1500,13 +1555,12 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1500
1555
|
console.log("[SQL EXECUTOR] \u2705 POST result:", result);
|
|
1501
1556
|
created = { rest: result, created: true };
|
|
1502
1557
|
return [2 /*return*/, created];
|
|
1503
|
-
case 5: return [4 /*yield*/, this.update
|
|
1558
|
+
case 5: return [4 /*yield*/, this.runQuery('update', TABLE_NAME, this.request)];
|
|
1504
1559
|
case 6:
|
|
1505
1560
|
result = _b.sent();
|
|
1506
|
-
console.log("[SQL EXECUTOR] \u2705 PUT result:", result);
|
|
1507
1561
|
updated = __assign(__assign({}, result), { updated: true, rowCount: result.rest.affectedRows });
|
|
1508
1562
|
return [2 /*return*/, updated];
|
|
1509
|
-
case 7: return [4 /*yield*/, this.delete
|
|
1563
|
+
case 7: return [4 /*yield*/, this.runQuery('delete', TABLE_NAME, this.request)];
|
|
1510
1564
|
case 8:
|
|
1511
1565
|
result = _b.sent();
|
|
1512
1566
|
console.log("[SQL EXECUTOR] \u2705 DELETE result:", result);
|
|
@@ -1546,42 +1600,6 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1546
1600
|
});
|
|
1547
1601
|
});
|
|
1548
1602
|
};
|
|
1549
|
-
SqlExecutor.prototype.select = function (table, primary, args) {
|
|
1550
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1551
|
-
var QueryResult, formatted, toUnnamed, _a, sql, values;
|
|
1552
|
-
var _this = this;
|
|
1553
|
-
return __generator(this, function (_b) {
|
|
1554
|
-
switch (_b.label) {
|
|
1555
|
-
case 0:
|
|
1556
|
-
QueryResult = (new SelectQueryBuilder(this.config, this.request)).build(table, args, primary);
|
|
1557
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated SELECT SQL:", QueryResult);
|
|
1558
|
-
formatted = this.formatSQLWithParams(QueryResult.sql, QueryResult.params);
|
|
1559
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Formatted SELECT SQL:", formatted);
|
|
1560
|
-
toUnnamed = namedPlaceholders();
|
|
1561
|
-
_a = toUnnamed(QueryResult.sql, QueryResult.params), sql = _a[0], values = _a[1];
|
|
1562
|
-
return [4 /*yield*/, this.withConnection(function (conn) { return __awaiter(_this, void 0, void 0, function () {
|
|
1563
|
-
var rows;
|
|
1564
|
-
return __generator(this, function (_a) {
|
|
1565
|
-
switch (_a.label) {
|
|
1566
|
-
case 0: return [4 /*yield*/, conn.query(sql, values)];
|
|
1567
|
-
case 1:
|
|
1568
|
-
rows = (_a.sent())[0];
|
|
1569
|
-
console.log("[SQL EXECUTOR] \uD83D\uDCE6 Rows fetched:", rows);
|
|
1570
|
-
return [2 /*return*/, {
|
|
1571
|
-
rest: rows.map(this.serialize),
|
|
1572
|
-
sql: {
|
|
1573
|
-
sql: sql,
|
|
1574
|
-
values: values
|
|
1575
|
-
}
|
|
1576
|
-
}];
|
|
1577
|
-
}
|
|
1578
|
-
});
|
|
1579
|
-
}); })];
|
|
1580
|
-
case 1: return [2 /*return*/, _b.sent()];
|
|
1581
|
-
}
|
|
1582
|
-
});
|
|
1583
|
-
});
|
|
1584
|
-
};
|
|
1585
1603
|
SqlExecutor.prototype.insert = function (table, data) {
|
|
1586
1604
|
return __awaiter(this, void 0, void 0, function () {
|
|
1587
1605
|
var keys, values, placeholders, sql;
|
|
@@ -1617,79 +1635,6 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1617
1635
|
});
|
|
1618
1636
|
});
|
|
1619
1637
|
};
|
|
1620
|
-
SqlExecutor.prototype.update = function (table, primary, data) {
|
|
1621
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1622
|
-
var keys, values, updates, sql;
|
|
1623
|
-
var _this = this;
|
|
1624
|
-
return __generator(this, function (_a) {
|
|
1625
|
-
switch (_a.label) {
|
|
1626
|
-
case 0:
|
|
1627
|
-
if (!(primary === null || primary === void 0 ? void 0 : primary.length))
|
|
1628
|
-
throw new Error('Primary key is required for update');
|
|
1629
|
-
keys = Object.keys(data);
|
|
1630
|
-
values = keys.map(function (k) { return data[k]; });
|
|
1631
|
-
updates = keys.map(function (k) { return "`".concat(k, "` = ?"); }).join(', ');
|
|
1632
|
-
sql = "UPDATE `".concat(table, "`\n SET ").concat(updates, "\n WHERE `").concat(primary[0], "` = ?");
|
|
1633
|
-
values.push(data[primary[0]]);
|
|
1634
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated UPDATE SQL:", sql);
|
|
1635
|
-
console.log("[SQL EXECUTOR] \uD83D\uDD22 Values:", values);
|
|
1636
|
-
return [4 /*yield*/, this.withConnection(function (conn) { return __awaiter(_this, void 0, void 0, function () {
|
|
1637
|
-
var result;
|
|
1638
|
-
return __generator(this, function (_a) {
|
|
1639
|
-
switch (_a.label) {
|
|
1640
|
-
case 0: return [4 /*yield*/, conn.execute(sql, values)];
|
|
1641
|
-
case 1:
|
|
1642
|
-
result = (_a.sent())[0];
|
|
1643
|
-
return [2 /*return*/, {
|
|
1644
|
-
rest: result,
|
|
1645
|
-
sql: {
|
|
1646
|
-
sql: sql,
|
|
1647
|
-
values: values
|
|
1648
|
-
}
|
|
1649
|
-
}];
|
|
1650
|
-
}
|
|
1651
|
-
});
|
|
1652
|
-
}); })];
|
|
1653
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
1654
|
-
}
|
|
1655
|
-
});
|
|
1656
|
-
});
|
|
1657
|
-
};
|
|
1658
|
-
SqlExecutor.prototype.delete = function (table, primary, args) {
|
|
1659
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1660
|
-
var key, sql;
|
|
1661
|
-
var _this = this;
|
|
1662
|
-
return __generator(this, function (_a) {
|
|
1663
|
-
switch (_a.label) {
|
|
1664
|
-
case 0:
|
|
1665
|
-
key = primary === null || primary === void 0 ? void 0 : primary[0];
|
|
1666
|
-
if (!key || !(args === null || args === void 0 ? void 0 : args[key]))
|
|
1667
|
-
throw new Error('Primary key and value required for delete');
|
|
1668
|
-
sql = "DELETE\n FROM `".concat(table, "`\n WHERE `").concat(key, "` = ?");
|
|
1669
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated DELETE SQL:", sql);
|
|
1670
|
-
console.log("[SQL EXECUTOR] \uD83D\uDD22 Value:", args[key]);
|
|
1671
|
-
return [4 /*yield*/, this.withConnection(function (conn) { return __awaiter(_this, void 0, void 0, function () {
|
|
1672
|
-
var result;
|
|
1673
|
-
return __generator(this, function (_a) {
|
|
1674
|
-
switch (_a.label) {
|
|
1675
|
-
case 0: return [4 /*yield*/, conn.execute(sql, [args[key]])];
|
|
1676
|
-
case 1:
|
|
1677
|
-
result = (_a.sent())[0];
|
|
1678
|
-
return [2 /*return*/, {
|
|
1679
|
-
rest: result,
|
|
1680
|
-
sql: {
|
|
1681
|
-
sql: sql,
|
|
1682
|
-
args: args
|
|
1683
|
-
}
|
|
1684
|
-
}];
|
|
1685
|
-
}
|
|
1686
|
-
});
|
|
1687
|
-
}); })];
|
|
1688
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
1689
|
-
}
|
|
1690
|
-
});
|
|
1691
|
-
});
|
|
1692
|
-
};
|
|
1693
1638
|
SqlExecutor.prototype.formatSQLWithParams = function (sql, params) {
|
|
1694
1639
|
var _this = this;
|
|
1695
1640
|
if (Array.isArray(params)) {
|
|
@@ -1721,6 +1666,62 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1721
1666
|
return "'".concat(val.toISOString().slice(0, 19).replace('T', ' '), "'");
|
|
1722
1667
|
return "'".concat(JSON.stringify(val), "'");
|
|
1723
1668
|
};
|
|
1669
|
+
SqlExecutor.prototype.runQuery = function (type, table, args) {
|
|
1670
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
1671
|
+
var builder, QueryResult, formatted, toUnnamed, _a, sql, values;
|
|
1672
|
+
var _this = this;
|
|
1673
|
+
return __generator(this, function (_b) {
|
|
1674
|
+
switch (_b.label) {
|
|
1675
|
+
case 0:
|
|
1676
|
+
switch (type) {
|
|
1677
|
+
case 'select':
|
|
1678
|
+
builder = new SelectQueryBuilder(this.config, this.request);
|
|
1679
|
+
break;
|
|
1680
|
+
case 'update':
|
|
1681
|
+
builder = new UpdateQueryBuilder(this.config, this.request);
|
|
1682
|
+
break;
|
|
1683
|
+
case 'delete':
|
|
1684
|
+
builder = new DeleteQueryBuilder(this.config, this.request);
|
|
1685
|
+
break;
|
|
1686
|
+
default:
|
|
1687
|
+
throw new Error("Unsupported query type: ".concat(type));
|
|
1688
|
+
}
|
|
1689
|
+
QueryResult = builder.build(table, args);
|
|
1690
|
+
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated ".concat(type.toUpperCase(), " SQL:"), QueryResult);
|
|
1691
|
+
formatted = this.formatSQLWithParams(QueryResult.sql, QueryResult.params);
|
|
1692
|
+
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Formatted ".concat(type.toUpperCase(), " SQL:"), formatted);
|
|
1693
|
+
toUnnamed = namedPlaceholders();
|
|
1694
|
+
_a = toUnnamed(QueryResult.sql, QueryResult.params), sql = _a[0], values = _a[1];
|
|
1695
|
+
return [4 /*yield*/, this.withConnection(function (conn) { return __awaiter(_this, void 0, void 0, function () {
|
|
1696
|
+
var result;
|
|
1697
|
+
return __generator(this, function (_a) {
|
|
1698
|
+
switch (_a.label) {
|
|
1699
|
+
case 0: return [4 /*yield*/, conn.query(sql, values)];
|
|
1700
|
+
case 1:
|
|
1701
|
+
result = (_a.sent())[0];
|
|
1702
|
+
if (type === 'select') {
|
|
1703
|
+
console.log("[SQL EXECUTOR] \uD83D\uDCE6 Rows fetched:", result);
|
|
1704
|
+
return [2 /*return*/, {
|
|
1705
|
+
rest: result.map(this.serialize),
|
|
1706
|
+
sql: { sql: sql, values: values }
|
|
1707
|
+
}];
|
|
1708
|
+
}
|
|
1709
|
+
else {
|
|
1710
|
+
console.log("[SQL EXECUTOR] \u270F\uFE0F Rows affected:", result.affectedRows);
|
|
1711
|
+
return [2 /*return*/, {
|
|
1712
|
+
affected: result.affectedRows,
|
|
1713
|
+
rest: [],
|
|
1714
|
+
sql: { sql: sql, values: values }
|
|
1715
|
+
}];
|
|
1716
|
+
}
|
|
1717
|
+
}
|
|
1718
|
+
});
|
|
1719
|
+
}); })];
|
|
1720
|
+
case 1: return [2 /*return*/, _b.sent()];
|
|
1721
|
+
}
|
|
1722
|
+
});
|
|
1723
|
+
});
|
|
1724
|
+
};
|
|
1724
1725
|
return SqlExecutor;
|
|
1725
1726
|
}(Executor));
|
|
1726
1727
|
|
|
@@ -1735,7 +1736,7 @@ function ExpressHandler(_a) {
|
|
|
1735
1736
|
var _this = this;
|
|
1736
1737
|
var C6 = _a.C6, mysqlPool = _a.mysqlPool;
|
|
1737
1738
|
return function (req, res, next) { return __awaiter(_this, void 0, void 0, function () {
|
|
1738
|
-
var method, table, primary, payload, response, err_1;
|
|
1739
|
+
var method, table, primary, payload, primaryKeys, primaryKeyName, response, err_1;
|
|
1739
1740
|
return __generator(this, function (_a) {
|
|
1740
1741
|
switch (_a.label) {
|
|
1741
1742
|
case 0:
|
|
@@ -1748,18 +1749,36 @@ function ExpressHandler(_a) {
|
|
|
1748
1749
|
res.status(400).json({ error: "Invalid table: ".concat(table) });
|
|
1749
1750
|
return [2 /*return*/];
|
|
1750
1751
|
}
|
|
1752
|
+
primaryKeys = C6.TABLES[table].PRIMARY;
|
|
1753
|
+
if (primary && primaryKeys.length !== 1) {
|
|
1754
|
+
if (primaryKeys.length > 1) {
|
|
1755
|
+
res.status(400).json({ error: "Table ".concat(table, " has multiple primary keys. Cannot implicitly determine key.") });
|
|
1756
|
+
return [2 /*return*/];
|
|
1757
|
+
}
|
|
1758
|
+
res.status(400).json({
|
|
1759
|
+
error: "Table ".concat(table, " has no primary keys. Please specify one.")
|
|
1760
|
+
});
|
|
1761
|
+
return [2 /*return*/];
|
|
1762
|
+
}
|
|
1763
|
+
primaryKeyName = primaryKeys[0];
|
|
1751
1764
|
// 👇 Call restRequest for the resolved method
|
|
1752
1765
|
// TODO - add primary conditionally based on method signature
|
|
1753
1766
|
switch (method) {
|
|
1754
1767
|
case 'GET':
|
|
1755
1768
|
if (primary) {
|
|
1756
|
-
payload[
|
|
1769
|
+
payload[C6C.WHERE][primaryKeyName] = primary;
|
|
1757
1770
|
}
|
|
1758
1771
|
break;
|
|
1759
|
-
case 'POST':
|
|
1760
1772
|
case 'PUT':
|
|
1761
1773
|
case 'DELETE':
|
|
1762
|
-
|
|
1774
|
+
if (primary) {
|
|
1775
|
+
payload[C6C.WHERE][primaryKeyName] = primary;
|
|
1776
|
+
}
|
|
1777
|
+
else {
|
|
1778
|
+
res.status(400).json({ error: "Invalid request: ".concat(method, " requires a primary key.") });
|
|
1779
|
+
}
|
|
1780
|
+
break;
|
|
1781
|
+
case 'POST':
|
|
1763
1782
|
break;
|
|
1764
1783
|
default:
|
|
1765
1784
|
res.status(405).json({ error: "Method ".concat(method, " not allowed") });
|
|
@@ -1806,65 +1825,6 @@ var distSphere = function (fromCol, toCol, fromAlias, toAlias) {
|
|
|
1806
1825
|
return [C6C.ST_DISTANCE_SPHERE, F(fromCol, fromAlias), F(toCol, toAlias)];
|
|
1807
1826
|
};
|
|
1808
1827
|
|
|
1809
|
-
var DeleteQueryBuilder = /** @class */ (function (_super) {
|
|
1810
|
-
__extends(DeleteQueryBuilder, _super);
|
|
1811
|
-
function DeleteQueryBuilder() {
|
|
1812
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
1813
|
-
}
|
|
1814
|
-
DeleteQueryBuilder.prototype.build = function (table, args) {
|
|
1815
|
-
if (args === void 0) { args = {}; }
|
|
1816
|
-
var params = this.useNamedParams ? {} : [];
|
|
1817
|
-
var sql = args.JOIN ? "DELETE ".concat(table, "\n FROM `").concat(table, "`") : "DELETE\n FROM `".concat(table, "`");
|
|
1818
|
-
if (args.JOIN) {
|
|
1819
|
-
sql += this.buildJoinClauses(args.JOIN, params);
|
|
1820
|
-
}
|
|
1821
|
-
if (args.WHERE) {
|
|
1822
|
-
sql += this.buildWhereClause(args.WHERE, params);
|
|
1823
|
-
}
|
|
1824
|
-
if (args.PAGINATION) {
|
|
1825
|
-
sql += this.buildPaginationClause(args.PAGINATION);
|
|
1826
|
-
}
|
|
1827
|
-
return { sql: sql, params: params };
|
|
1828
|
-
};
|
|
1829
|
-
return DeleteQueryBuilder;
|
|
1830
|
-
}(PaginationBuilder));
|
|
1831
|
-
|
|
1832
|
-
var UpdateQueryBuilder = /** @class */ (function (_super) {
|
|
1833
|
-
__extends(UpdateQueryBuilder, _super);
|
|
1834
|
-
function UpdateQueryBuilder() {
|
|
1835
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
1836
|
-
}
|
|
1837
|
-
UpdateQueryBuilder.prototype.build = function (table, data, args) {
|
|
1838
|
-
if (args === void 0) { args = {}; }
|
|
1839
|
-
var params = this.useNamedParams ? {} : [];
|
|
1840
|
-
var sql = "UPDATE `".concat(table, "`");
|
|
1841
|
-
if (args.JOIN) {
|
|
1842
|
-
sql += this.buildJoinClauses(args.JOIN, params);
|
|
1843
|
-
}
|
|
1844
|
-
var setClauses = Object.entries(data).map(function (_a) {
|
|
1845
|
-
var col = _a[0], val = _a[1];
|
|
1846
|
-
if (Array.isArray(params)) {
|
|
1847
|
-
params.push(val);
|
|
1848
|
-
return "`".concat(col, "` = ?");
|
|
1849
|
-
}
|
|
1850
|
-
else {
|
|
1851
|
-
var key = "param".concat(Object.keys(params).length);
|
|
1852
|
-
params[key] = val;
|
|
1853
|
-
return "`".concat(col, "` = :").concat(key);
|
|
1854
|
-
}
|
|
1855
|
-
});
|
|
1856
|
-
sql += " SET ".concat(setClauses.join(', '));
|
|
1857
|
-
if (args.WHERE) {
|
|
1858
|
-
sql += this.buildWhereClause(args.WHERE, params);
|
|
1859
|
-
}
|
|
1860
|
-
if (args.PAGINATION) {
|
|
1861
|
-
sql += this.buildPaginationClause(args.PAGINATION);
|
|
1862
|
-
}
|
|
1863
|
-
return { sql: sql, params: params };
|
|
1864
|
-
};
|
|
1865
|
-
return UpdateQueryBuilder;
|
|
1866
|
-
}(PaginationBuilder));
|
|
1867
|
-
|
|
1868
1828
|
function determineRuntimeJsType(mysqlType) {
|
|
1869
1829
|
var base = mysqlType.toLowerCase().split('(')[0];
|
|
1870
1830
|
if ([
|