@carbonorm/carbonnode 3.4.0 → 3.4.1
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/C6Constants.d.ts +2 -0
- package/dist/api/executors/SqlExecutor.d.ts +1 -11
- package/dist/api/orm/builders/ConditionBuilder.d.ts +4 -2
- package/dist/api/orm/builders/JoinBuilder.d.ts +1 -1
- package/dist/api/orm/builders/PaginationBuilder.d.ts +1 -1
- package/dist/api/orm/queries/DeleteQueryBuilder.d.ts +1 -4
- package/dist/api/orm/queries/PostQueryBuilder.d.ts +8 -0
- package/dist/api/orm/queries/SelectQueryBuilder.d.ts +1 -1
- package/dist/api/orm/queries/UpdateQueryBuilder.d.ts +1 -1
- package/dist/api/types/ormInterfaces.d.ts +1 -1
- package/dist/index.cjs.js +65 -69
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.esm.js +65 -70
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/api/C6Constants.ts +1 -0
- package/src/api/executors/SqlExecutor.ts +23 -39
- package/src/api/orm/builders/ConditionBuilder.ts +6 -3
- package/src/api/orm/builders/JoinBuilder.ts +1 -1
- package/src/api/orm/builders/PaginationBuilder.ts +1 -1
- package/src/api/orm/queries/DeleteQueryBuilder.ts +5 -9
- package/src/api/orm/queries/PostQueryBuilder.ts +29 -0
- package/src/api/orm/queries/SelectQueryBuilder.ts +2 -4
- package/src/api/orm/queries/UpdateQueryBuilder.ts +7 -12
- package/src/api/types/ormInterfaces.ts +3 -1
- package/src/index.ts +1 -0
|
@@ -140,6 +140,7 @@ export declare const C6Constants: {
|
|
|
140
140
|
YEARWEEK: string;
|
|
141
141
|
DEPENDANT_ON_ENTITY: string;
|
|
142
142
|
OPTIONS: string;
|
|
143
|
+
INSERT: string;
|
|
143
144
|
GET: string;
|
|
144
145
|
POST: string;
|
|
145
146
|
PUT: string;
|
|
@@ -293,6 +294,7 @@ export declare const C6C: {
|
|
|
293
294
|
YEARWEEK: string;
|
|
294
295
|
DEPENDANT_ON_ENTITY: string;
|
|
295
296
|
OPTIONS: string;
|
|
297
|
+
INSERT: string;
|
|
296
298
|
GET: string;
|
|
297
299
|
POST: string;
|
|
298
300
|
PUT: string;
|
|
@@ -1,26 +1,17 @@
|
|
|
1
1
|
import { OrmGenerics } from "../types/ormGenerics";
|
|
2
2
|
import { DetermineResponseDataType } from "../types/ormInterfaces";
|
|
3
|
-
import { ResultSetHeader } from 'mysql2/promise';
|
|
4
3
|
import { Executor } from "./Executor";
|
|
5
|
-
type QueryType = 'select' | 'update' | 'delete';
|
|
6
4
|
export declare class SqlExecutor<G extends OrmGenerics> extends Executor<G> {
|
|
7
5
|
execute(): Promise<DetermineResponseDataType<G['RequestMethod'], G['RestTableInterface']>>;
|
|
8
6
|
private withConnection;
|
|
9
7
|
serialize: (row: any) => {
|
|
10
8
|
[k: string]: unknown;
|
|
11
9
|
};
|
|
12
|
-
insert(table: G['RestShortTableName'], data: Record<string, any>): Promise<{
|
|
13
|
-
rest: ResultSetHeader;
|
|
14
|
-
sql: {
|
|
15
|
-
sql: string;
|
|
16
|
-
placeholders: string;
|
|
17
|
-
};
|
|
18
|
-
}>;
|
|
19
10
|
formatSQLWithParams(sql: string, params: any[] | {
|
|
20
11
|
[key: string]: any;
|
|
21
12
|
}): string;
|
|
22
13
|
private formatValue;
|
|
23
|
-
runQuery(
|
|
14
|
+
runQuery(): Promise<{
|
|
24
15
|
rest: any;
|
|
25
16
|
sql: {
|
|
26
17
|
sql: any;
|
|
@@ -36,4 +27,3 @@ export declare class SqlExecutor<G extends OrmGenerics> extends Executor<G> {
|
|
|
36
27
|
};
|
|
37
28
|
}>;
|
|
38
29
|
}
|
|
39
|
-
export {};
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { OrmGenerics } from "../../types/ormGenerics";
|
|
2
2
|
import { DetermineResponseDataType } from "../../types/ormInterfaces";
|
|
3
|
+
import { SqlBuilderResult } from "../utils/sqlUtils";
|
|
3
4
|
import { AggregateBuilder } from "./AggregateBuilder";
|
|
4
|
-
export declare class ConditionBuilder<G extends OrmGenerics> extends AggregateBuilder<G> {
|
|
5
|
+
export declare abstract class ConditionBuilder<G extends OrmGenerics> extends AggregateBuilder<G> {
|
|
6
|
+
abstract build(table: string): SqlBuilderResult;
|
|
5
7
|
execute(): Promise<DetermineResponseDataType<G['RequestMethod'], G['RestTableInterface']>>;
|
|
6
8
|
private readonly OPERATORS;
|
|
7
9
|
private validateOperator;
|
|
8
|
-
|
|
10
|
+
addParam(params: any[] | Record<string, any>, column: string, value: any): string;
|
|
9
11
|
buildBooleanJoinedConditions(set: any, andMode?: boolean, params?: any[] | Record<string, any>): string;
|
|
10
12
|
buildWhereClause(whereArg: any, params: any[] | Record<string, any>): string;
|
|
11
13
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { OrmGenerics } from "../../types/ormGenerics";
|
|
2
2
|
import { ConditionBuilder } from "./ConditionBuilder";
|
|
3
|
-
export declare class JoinBuilder<G extends OrmGenerics> extends ConditionBuilder<G> {
|
|
3
|
+
export declare abstract class JoinBuilder<G extends OrmGenerics> extends ConditionBuilder<G> {
|
|
4
4
|
buildJoinClauses(joinArgs: any, params: any[] | Record<string, any>): string;
|
|
5
5
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { OrmGenerics } from "../../types/ormGenerics";
|
|
2
2
|
import { JoinBuilder } from "./JoinBuilder";
|
|
3
|
-
export declare class PaginationBuilder<G extends OrmGenerics> extends JoinBuilder<G> {
|
|
3
|
+
export declare abstract class PaginationBuilder<G extends OrmGenerics> extends JoinBuilder<G> {
|
|
4
4
|
/**
|
|
5
5
|
* MySQL ORDER/LIMIT/OFFSET generator.
|
|
6
6
|
*
|
|
@@ -2,8 +2,5 @@ import { OrmGenerics } from "../../types/ormGenerics";
|
|
|
2
2
|
import { SqlBuilderResult } from "../utils/sqlUtils";
|
|
3
3
|
import { JoinBuilder } from "../builders/JoinBuilder";
|
|
4
4
|
export declare class DeleteQueryBuilder<G extends OrmGenerics> extends JoinBuilder<G> {
|
|
5
|
-
build(table: string
|
|
6
|
-
JOIN?: any;
|
|
7
|
-
WHERE?: any;
|
|
8
|
-
}): SqlBuilderResult;
|
|
5
|
+
build(table: string): SqlBuilderResult;
|
|
9
6
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ConditionBuilder } from "../builders/ConditionBuilder";
|
|
2
|
+
import { OrmGenerics } from "../../types/ormGenerics";
|
|
3
|
+
export declare class PostQueryBuilder<G extends OrmGenerics> extends ConditionBuilder<G> {
|
|
4
|
+
build(table: string): {
|
|
5
|
+
sql: string;
|
|
6
|
+
params: any[];
|
|
7
|
+
};
|
|
8
|
+
}
|
|
@@ -2,5 +2,5 @@ import { OrmGenerics } from "../../types/ormGenerics";
|
|
|
2
2
|
import { PaginationBuilder } from "../builders/PaginationBuilder";
|
|
3
3
|
import { SqlBuilderResult } from "../utils/sqlUtils";
|
|
4
4
|
export declare class SelectQueryBuilder<G extends OrmGenerics> extends PaginationBuilder<G> {
|
|
5
|
-
build(table: string,
|
|
5
|
+
build(table: string, isSubSelect?: boolean): SqlBuilderResult;
|
|
6
6
|
}
|
|
@@ -2,5 +2,5 @@ import { OrmGenerics } from "../../types/ormGenerics";
|
|
|
2
2
|
import { PaginationBuilder } from '../builders/PaginationBuilder';
|
|
3
3
|
import { SqlBuilderResult } from "../utils/sqlUtils";
|
|
4
4
|
export declare class UpdateQueryBuilder<G extends OrmGenerics> extends PaginationBuilder<G> {
|
|
5
|
-
build(table: string
|
|
5
|
+
build(table: string): SqlBuilderResult;
|
|
6
6
|
}
|
|
@@ -82,7 +82,7 @@ export type RequestQueryBody<Method extends iRestMethods, T extends {
|
|
|
82
82
|
[key: string]: any;
|
|
83
83
|
} = {}, Overrides extends {
|
|
84
84
|
[key: string]: any;
|
|
85
|
-
} = {}> = Method extends 'GET' | 'PUT' | 'DELETE' ? iAPI<RequestGetPutDeleteBody<Modify<T, Overrides> & Custom>> : iAPI<Modify<T, Overrides> & Custom>;
|
|
85
|
+
} = {}> = Method extends 'GET' | 'PUT' | 'DELETE' ? iAPI<RequestGetPutDeleteBody<Modify<T, Overrides> & Custom>> : Method extends 'POST' ? iAPI<RequestGetPutDeleteBody<Modify<T, Overrides> & Custom> & Modify<T, Overrides> & Custom> : iAPI<Modify<T, Overrides> & Custom>;
|
|
86
86
|
export interface iCacheAPI<ResponseDataType = any> {
|
|
87
87
|
requestArgumentsSerialized: string;
|
|
88
88
|
request: AxiosPromise<ResponseDataType>;
|
package/dist/index.cjs.js
CHANGED
|
@@ -154,6 +154,7 @@ var C6Constants = {
|
|
|
154
154
|
DEPENDANT_ON_ENTITY: 'DEPENDANT_ON_ENTITY',
|
|
155
155
|
// PHP validation
|
|
156
156
|
OPTIONS: 'OPTIONS',
|
|
157
|
+
INSERT: 'INSERT',
|
|
157
158
|
GET: 'GET',
|
|
158
159
|
POST: 'POST',
|
|
159
160
|
PUT: 'PUT',
|
|
@@ -1373,20 +1374,47 @@ var DeleteQueryBuilder = /** @class */ (function (_super) {
|
|
|
1373
1374
|
function DeleteQueryBuilder() {
|
|
1374
1375
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1375
1376
|
}
|
|
1376
|
-
DeleteQueryBuilder.prototype.build = function (table
|
|
1377
|
+
DeleteQueryBuilder.prototype.build = function (table) {
|
|
1377
1378
|
var params = this.useNamedParams ? {} : [];
|
|
1378
1379
|
var sql = "DELETE `".concat(table, "` FROM `").concat(table, "`");
|
|
1379
|
-
if (
|
|
1380
|
-
sql += this.buildJoinClauses(
|
|
1380
|
+
if (this.request.JOIN) {
|
|
1381
|
+
sql += this.buildJoinClauses(this.request.JOIN, params);
|
|
1381
1382
|
}
|
|
1382
|
-
if (
|
|
1383
|
-
sql += this.buildWhereClause(
|
|
1383
|
+
if (this.request.WHERE) {
|
|
1384
|
+
sql += this.buildWhereClause(this.request.WHERE, params);
|
|
1384
1385
|
}
|
|
1385
1386
|
return { sql: sql, params: params };
|
|
1386
1387
|
};
|
|
1387
1388
|
return DeleteQueryBuilder;
|
|
1388
1389
|
}(JoinBuilder));
|
|
1389
1390
|
|
|
1391
|
+
var PostQueryBuilder = /** @class */ (function (_super) {
|
|
1392
|
+
tslib.__extends(PostQueryBuilder, _super);
|
|
1393
|
+
function PostQueryBuilder() {
|
|
1394
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
1395
|
+
}
|
|
1396
|
+
PostQueryBuilder.prototype.build = function (table) {
|
|
1397
|
+
var verb = C6C.REPLACE in this.request ? C6C.REPLACE : C6C.INSERT;
|
|
1398
|
+
var keys = Object.keys(verb in this.request ? this.request[verb] : this.request);
|
|
1399
|
+
var params = [];
|
|
1400
|
+
var placeholders = [];
|
|
1401
|
+
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
1402
|
+
var key = keys_1[_i];
|
|
1403
|
+
var value = this.request[key];
|
|
1404
|
+
var placeholder = this.addParam(params, key, value);
|
|
1405
|
+
placeholders.push(placeholder);
|
|
1406
|
+
}
|
|
1407
|
+
var sql = "".concat(verb, " INTO `").concat(table, "` (").concat(keys.map(function (k) { return "`".concat(k, "`"); }).join(', '), ")\nVALUES (").concat(placeholders.join(', '), ")");
|
|
1408
|
+
if (C6C.UPDATE in this.request) {
|
|
1409
|
+
var updateData = this.request[C6C.UPDATE];
|
|
1410
|
+
var updateClause = updateData.map(function (k) { return "`".concat(k, "` = VALUES(`").concat(k, "`)"); }).join(', ');
|
|
1411
|
+
sql += " ON DUPLICATE KEY UPDATE ".concat(updateClause);
|
|
1412
|
+
}
|
|
1413
|
+
return { sql: sql, params: params };
|
|
1414
|
+
};
|
|
1415
|
+
return PostQueryBuilder;
|
|
1416
|
+
}(ConditionBuilder));
|
|
1417
|
+
|
|
1390
1418
|
var PaginationBuilder = /** @class */ (function (_super) {
|
|
1391
1419
|
tslib.__extends(PaginationBuilder, _super);
|
|
1392
1420
|
function PaginationBuilder() {
|
|
@@ -1447,10 +1475,11 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1447
1475
|
function SelectQueryBuilder() {
|
|
1448
1476
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1449
1477
|
}
|
|
1450
|
-
SelectQueryBuilder.prototype.build = function (table,
|
|
1478
|
+
SelectQueryBuilder.prototype.build = function (table, isSubSelect) {
|
|
1451
1479
|
var _this = this;
|
|
1452
1480
|
var _a;
|
|
1453
1481
|
if (isSubSelect === void 0) { isSubSelect = false; }
|
|
1482
|
+
var args = this.request;
|
|
1454
1483
|
var params = this.useNamedParams ? {} : [];
|
|
1455
1484
|
var selectList = (_a = args.SELECT) !== null && _a !== void 0 ? _a : ['*'];
|
|
1456
1485
|
var selectFields = selectList
|
|
@@ -1476,7 +1505,7 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
|
|
|
1476
1505
|
sql += this.buildPaginationClause(args.PAGINATION);
|
|
1477
1506
|
}
|
|
1478
1507
|
else if (!isSubSelect) {
|
|
1479
|
-
sql +=
|
|
1508
|
+
sql += " LIMIT 100";
|
|
1480
1509
|
}
|
|
1481
1510
|
return { sql: sql, params: params };
|
|
1482
1511
|
};
|
|
@@ -1488,24 +1517,20 @@ var UpdateQueryBuilder = /** @class */ (function (_super) {
|
|
|
1488
1517
|
function UpdateQueryBuilder() {
|
|
1489
1518
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1490
1519
|
}
|
|
1491
|
-
UpdateQueryBuilder.prototype.build = function (table
|
|
1492
|
-
|
|
1520
|
+
UpdateQueryBuilder.prototype.build = function (table) {
|
|
1521
|
+
var _this = this;
|
|
1522
|
+
var args = this.request;
|
|
1493
1523
|
var params = this.useNamedParams ? {} : [];
|
|
1494
1524
|
var sql = "UPDATE `".concat(table, "`");
|
|
1495
1525
|
if (args.JOIN) {
|
|
1496
1526
|
sql += this.buildJoinClauses(args.JOIN, params);
|
|
1497
1527
|
}
|
|
1498
|
-
|
|
1528
|
+
if (!(C6C.UPDATE in this.request)) {
|
|
1529
|
+
throw new Error("No update data provided in the request.");
|
|
1530
|
+
}
|
|
1531
|
+
var setClauses = Object.entries(this.request[C6C.UPDATE]).map(function (_a) {
|
|
1499
1532
|
var col = _a[0], val = _a[1];
|
|
1500
|
-
|
|
1501
|
-
params.push(val);
|
|
1502
|
-
return "`".concat(col, "` = ?");
|
|
1503
|
-
}
|
|
1504
|
-
else {
|
|
1505
|
-
var key = "param".concat(Object.keys(params).length);
|
|
1506
|
-
params[key] = val;
|
|
1507
|
-
return "`".concat(col, "` = :").concat(key);
|
|
1508
|
-
}
|
|
1533
|
+
return _this.addParam(params, col, val);
|
|
1509
1534
|
});
|
|
1510
1535
|
sql += " SET ".concat(setClauses.join(', '));
|
|
1511
1536
|
if (args.WHERE) {
|
|
@@ -1547,23 +1572,23 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1547
1572
|
case 'DELETE': return [3 /*break*/, 7];
|
|
1548
1573
|
}
|
|
1549
1574
|
return [3 /*break*/, 9];
|
|
1550
|
-
case 1: return [4 /*yield*/, this.runQuery(
|
|
1575
|
+
case 1: return [4 /*yield*/, this.runQuery()];
|
|
1551
1576
|
case 2:
|
|
1552
1577
|
rest = _b.sent();
|
|
1553
1578
|
console.log("[SQL EXECUTOR] \u2705 GET result:", rest);
|
|
1554
1579
|
return [2 /*return*/, rest];
|
|
1555
|
-
case 3: return [4 /*yield*/, this.
|
|
1580
|
+
case 3: return [4 /*yield*/, this.runQuery()];
|
|
1556
1581
|
case 4:
|
|
1557
1582
|
result = _b.sent();
|
|
1558
1583
|
console.log("[SQL EXECUTOR] \u2705 POST result:", result);
|
|
1559
1584
|
created = { rest: result, created: true };
|
|
1560
1585
|
return [2 /*return*/, created];
|
|
1561
|
-
case 5: return [4 /*yield*/, this.runQuery(
|
|
1586
|
+
case 5: return [4 /*yield*/, this.runQuery()];
|
|
1562
1587
|
case 6:
|
|
1563
1588
|
result = _b.sent();
|
|
1564
1589
|
updated = tslib.__assign(tslib.__assign({}, result), { updated: true, rowCount: result.rest.affectedRows });
|
|
1565
1590
|
return [2 /*return*/, updated];
|
|
1566
|
-
case 7: return [4 /*yield*/, this.runQuery(
|
|
1591
|
+
case 7: return [4 /*yield*/, this.runQuery()];
|
|
1567
1592
|
case 8:
|
|
1568
1593
|
result = _b.sent();
|
|
1569
1594
|
console.log("[SQL EXECUTOR] \u2705 DELETE result:", result);
|
|
@@ -1603,41 +1628,6 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1603
1628
|
});
|
|
1604
1629
|
});
|
|
1605
1630
|
};
|
|
1606
|
-
SqlExecutor.prototype.insert = function (table, data) {
|
|
1607
|
-
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
1608
|
-
var keys, values, placeholders, sql;
|
|
1609
|
-
var _this = this;
|
|
1610
|
-
return tslib.__generator(this, function (_a) {
|
|
1611
|
-
switch (_a.label) {
|
|
1612
|
-
case 0:
|
|
1613
|
-
keys = Object.keys(data);
|
|
1614
|
-
values = keys.map(function (k) { return data[k]; });
|
|
1615
|
-
placeholders = keys.map(function () { return '?'; }).join(', ');
|
|
1616
|
-
sql = "INSERT INTO `".concat(table, "` (").concat(keys.join(', '), ")\n VALUES (").concat(placeholders, ")");
|
|
1617
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated INSERT SQL:", sql);
|
|
1618
|
-
console.log("[SQL EXECUTOR] \uD83D\uDD22 Values:", values);
|
|
1619
|
-
return [4 /*yield*/, this.withConnection(function (conn) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
1620
|
-
var result;
|
|
1621
|
-
return tslib.__generator(this, function (_a) {
|
|
1622
|
-
switch (_a.label) {
|
|
1623
|
-
case 0: return [4 /*yield*/, conn.execute(sql, values)];
|
|
1624
|
-
case 1:
|
|
1625
|
-
result = (_a.sent())[0];
|
|
1626
|
-
return [2 /*return*/, {
|
|
1627
|
-
rest: result,
|
|
1628
|
-
sql: {
|
|
1629
|
-
sql: sql,
|
|
1630
|
-
placeholders: placeholders
|
|
1631
|
-
}
|
|
1632
|
-
}];
|
|
1633
|
-
}
|
|
1634
|
-
});
|
|
1635
|
-
}); })];
|
|
1636
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
1637
|
-
}
|
|
1638
|
-
});
|
|
1639
|
-
});
|
|
1640
|
-
};
|
|
1641
1631
|
SqlExecutor.prototype.formatSQLWithParams = function (sql, params) {
|
|
1642
1632
|
var _this = this;
|
|
1643
1633
|
if (Array.isArray(params)) {
|
|
@@ -1669,30 +1659,35 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1669
1659
|
return "'".concat(val.toISOString().slice(0, 19).replace('T', ' '), "'");
|
|
1670
1660
|
return "'".concat(JSON.stringify(val), "'");
|
|
1671
1661
|
};
|
|
1672
|
-
SqlExecutor.prototype.runQuery = function (
|
|
1662
|
+
SqlExecutor.prototype.runQuery = function () {
|
|
1673
1663
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
1674
|
-
var builder, QueryResult, formatted, toUnnamed, _a, sql, values;
|
|
1664
|
+
var TABLE_NAME, method, builder, QueryResult, formatted, toUnnamed, _a, sql, values;
|
|
1675
1665
|
var _this = this;
|
|
1676
1666
|
return tslib.__generator(this, function (_b) {
|
|
1677
1667
|
switch (_b.label) {
|
|
1678
1668
|
case 0:
|
|
1679
|
-
|
|
1680
|
-
|
|
1669
|
+
TABLE_NAME = this.config.restModel.TABLE_NAME;
|
|
1670
|
+
method = this.config.requestMethod;
|
|
1671
|
+
switch (method) {
|
|
1672
|
+
case 'GET':
|
|
1681
1673
|
builder = new SelectQueryBuilder(this.config, this.request);
|
|
1682
1674
|
break;
|
|
1683
|
-
case '
|
|
1675
|
+
case 'PUT':
|
|
1684
1676
|
builder = new UpdateQueryBuilder(this.config, this.request);
|
|
1685
1677
|
break;
|
|
1686
|
-
case '
|
|
1678
|
+
case 'DELETE':
|
|
1687
1679
|
builder = new DeleteQueryBuilder(this.config, this.request);
|
|
1688
1680
|
break;
|
|
1681
|
+
case 'POST':
|
|
1682
|
+
builder = new PostQueryBuilder(this.config, this.request);
|
|
1683
|
+
break;
|
|
1689
1684
|
default:
|
|
1690
|
-
throw new Error("Unsupported query
|
|
1685
|
+
throw new Error("Unsupported query method: ".concat(method));
|
|
1691
1686
|
}
|
|
1692
|
-
QueryResult = builder.build(
|
|
1693
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated ".concat(
|
|
1687
|
+
QueryResult = builder.build(TABLE_NAME);
|
|
1688
|
+
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Generated ".concat(method.toUpperCase(), " SQL:"), QueryResult);
|
|
1694
1689
|
formatted = this.formatSQLWithParams(QueryResult.sql, QueryResult.params);
|
|
1695
|
-
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Formatted ".concat(
|
|
1690
|
+
console.log("[SQL EXECUTOR] \uD83E\uDDE0 Formatted ".concat(method.toUpperCase(), " SQL:"), formatted);
|
|
1696
1691
|
toUnnamed = namedPlaceholders();
|
|
1697
1692
|
_a = toUnnamed(QueryResult.sql, QueryResult.params), sql = _a[0], values = _a[1];
|
|
1698
1693
|
return [4 /*yield*/, this.withConnection(function (conn) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
@@ -1702,7 +1697,7 @@ var SqlExecutor = /** @class */ (function (_super) {
|
|
|
1702
1697
|
case 0: return [4 /*yield*/, conn.query(sql, values)];
|
|
1703
1698
|
case 1:
|
|
1704
1699
|
result = (_a.sent())[0];
|
|
1705
|
-
if (
|
|
1700
|
+
if (method === 'GET') {
|
|
1706
1701
|
console.log("[SQL EXECUTOR] \uD83D\uDCE6 Rows fetched:", result);
|
|
1707
1702
|
return [2 /*return*/, {
|
|
1708
1703
|
rest: result.map(this.serialize),
|
|
@@ -1942,6 +1937,7 @@ exports.JoinBuilder = JoinBuilder;
|
|
|
1942
1937
|
exports.POST = POST;
|
|
1943
1938
|
exports.PUT = PUT;
|
|
1944
1939
|
exports.PaginationBuilder = PaginationBuilder;
|
|
1940
|
+
exports.PostQueryBuilder = PostQueryBuilder;
|
|
1945
1941
|
exports.SelectQueryBuilder = SelectQueryBuilder;
|
|
1946
1942
|
exports.SqlExecutor = SqlExecutor;
|
|
1947
1943
|
exports.TestRestfulResponse = TestRestfulResponse;
|