@carbonorm/carbonnode 3.4.0 → 3.4.2
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 +9 -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 +78 -69
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.esm.js +78 -70
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/scripts/assets/handlebars/C6.ts.handlebars +1 -2
- 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 +46 -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
|
@@ -6,12 +6,10 @@ export class SelectQueryBuilder<G extends OrmGenerics> extends PaginationBuilder
|
|
|
6
6
|
|
|
7
7
|
build(
|
|
8
8
|
table: string,
|
|
9
|
-
args: any,
|
|
10
|
-
primary?: string,
|
|
11
9
|
isSubSelect: boolean = false
|
|
12
10
|
): SqlBuilderResult {
|
|
11
|
+
const args = this.request;
|
|
13
12
|
const params = this.useNamedParams ? {} : [];
|
|
14
|
-
|
|
15
13
|
const selectList = args.SELECT ?? ['*'];
|
|
16
14
|
const selectFields = selectList
|
|
17
15
|
.map((f: any) => this.buildAggregateField(f))
|
|
@@ -41,7 +39,7 @@ export class SelectQueryBuilder<G extends OrmGenerics> extends PaginationBuilder
|
|
|
41
39
|
if (args.PAGINATION) {
|
|
42
40
|
sql += this.buildPaginationClause(args.PAGINATION);
|
|
43
41
|
} else if (!isSubSelect) {
|
|
44
|
-
sql +=
|
|
42
|
+
sql += ` LIMIT 100`;
|
|
45
43
|
}
|
|
46
44
|
|
|
47
45
|
return { sql, params };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import {C6C} from "../../C6Constants";
|
|
1
2
|
import {OrmGenerics} from "../../types/ormGenerics";
|
|
2
3
|
import { PaginationBuilder } from '../builders/PaginationBuilder';
|
|
3
4
|
import {SqlBuilderResult} from "../utils/sqlUtils";
|
|
@@ -6,9 +7,8 @@ export class UpdateQueryBuilder<G extends OrmGenerics> extends PaginationBuilder
|
|
|
6
7
|
|
|
7
8
|
build(
|
|
8
9
|
table: string,
|
|
9
|
-
data: Record<string, any>,
|
|
10
|
-
args: any = {}
|
|
11
10
|
): SqlBuilderResult {
|
|
11
|
+
const args = this.request;
|
|
12
12
|
const params = this.useNamedParams ? {} : [];
|
|
13
13
|
let sql = `UPDATE \`${table}\``;
|
|
14
14
|
|
|
@@ -16,16 +16,11 @@ export class UpdateQueryBuilder<G extends OrmGenerics> extends PaginationBuilder
|
|
|
16
16
|
sql += this.buildJoinClauses(args.JOIN, params);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const key = `param${Object.keys(params).length}`;
|
|
25
|
-
params[key] = val;
|
|
26
|
-
return `\`${col}\` = :${key}`;
|
|
27
|
-
}
|
|
28
|
-
});
|
|
19
|
+
if (!(C6C.UPDATE in this.request)) {
|
|
20
|
+
throw new Error("No update data provided in the request.");
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const setClauses = Object.entries(this.request[C6C.UPDATE]).map(([col, val]) => this.addParam(params, col, val));
|
|
29
24
|
|
|
30
25
|
sql += ` SET ${setClauses.join(', ')}`;
|
|
31
26
|
|
|
@@ -90,7 +90,9 @@ export type RequestQueryBody<
|
|
|
90
90
|
Overrides extends { [key: string]: any } = {}
|
|
91
91
|
> = Method extends 'GET' | 'PUT' | 'DELETE'
|
|
92
92
|
? iAPI<RequestGetPutDeleteBody<Modify<T, Overrides> & Custom>>
|
|
93
|
-
:
|
|
93
|
+
: Method extends 'POST'
|
|
94
|
+
? iAPI<RequestGetPutDeleteBody<Modify<T, Overrides> & Custom> & Modify<T, Overrides> & Custom>
|
|
95
|
+
: iAPI<Modify<T, Overrides> & Custom>;
|
|
94
96
|
|
|
95
97
|
export interface iCacheAPI<ResponseDataType = any> {
|
|
96
98
|
requestArgumentsSerialized: string;
|
package/src/index.ts
CHANGED
|
@@ -22,6 +22,7 @@ export * from "./api/orm/builders/ConditionBuilder";
|
|
|
22
22
|
export * from "./api/orm/builders/JoinBuilder";
|
|
23
23
|
export * from "./api/orm/builders/PaginationBuilder";
|
|
24
24
|
export * from "./api/orm/queries/DeleteQueryBuilder";
|
|
25
|
+
export * from "./api/orm/queries/PostQueryBuilder";
|
|
25
26
|
export * from "./api/orm/queries/SelectQueryBuilder";
|
|
26
27
|
export * from "./api/orm/queries/UpdateQueryBuilder";
|
|
27
28
|
export * from "./api/orm/utils/sqlUtils";
|