tspace-mysql 1.9.0 → 1.9.1-beta.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/README.md +4580 -133
- package/dist/lib/config/index.d.ts +2 -2
- package/dist/lib/config/index.js +24 -16
- package/dist/lib/config/index.js.map +1 -1
- package/dist/lib/constants/index.d.ts +10 -1
- package/dist/lib/constants/index.js +11 -2
- package/dist/lib/constants/index.js.map +1 -1
- package/dist/lib/core/Abstracts/AbstractBuilder.d.ts +27 -23
- package/dist/lib/core/Abstracts/AbstractBuilder.js +11 -13
- package/dist/lib/core/Abstracts/AbstractBuilder.js.map +1 -1
- package/dist/lib/core/Abstracts/AbstractDB.d.ts +5 -2
- package/dist/lib/core/Abstracts/AbstractDB.js.map +1 -1
- package/dist/lib/core/Abstracts/AbstractModel.d.ts +7 -2
- package/dist/lib/core/Abstracts/AbstractModel.js.map +1 -1
- package/dist/lib/core/Abstracts/AbstractView.js.map +1 -1
- package/dist/lib/core/Blueprint.d.ts +37 -17
- package/dist/lib/core/Blueprint.js +38 -14
- package/dist/lib/core/Blueprint.js.map +1 -1
- package/dist/lib/core/Builder.d.ts +314 -42
- package/dist/lib/core/Builder.js +686 -391
- package/dist/lib/core/Builder.js.map +1 -1
- package/dist/lib/core/Cache/DBCache.js +19 -20
- package/dist/lib/core/Cache/DBCache.js.map +1 -1
- package/dist/lib/core/Cache/MemoryCache.js +3 -3
- package/dist/lib/core/Cache/MemoryCache.js.map +1 -1
- package/dist/lib/core/Cache/RedisCache.js +27 -17
- package/dist/lib/core/Cache/RedisCache.js.map +1 -1
- package/dist/lib/core/Cache/index.js +37 -17
- package/dist/lib/core/Cache/index.js.map +1 -1
- package/dist/lib/core/Contracts/AlterTable.d.ts +152 -0
- package/dist/lib/core/Contracts/AlterTable.js +243 -0
- package/dist/lib/core/Contracts/AlterTable.js.map +1 -0
- package/dist/lib/core/Contracts/Audit.d.ts +1 -1
- package/dist/lib/core/Contracts/Audit.js +2 -5
- package/dist/lib/core/Contracts/Audit.js.map +1 -1
- package/dist/lib/core/Contracts/Logger.d.ts +1 -1
- package/dist/lib/core/Contracts/Logger.js.map +1 -1
- package/dist/lib/core/DB.d.ts +103 -11
- package/dist/lib/core/DB.js +158 -32
- package/dist/lib/core/DB.js.map +1 -1
- package/dist/lib/core/Decorator.d.ts +144 -16
- package/dist/lib/core/Decorator.js +156 -14
- package/dist/lib/core/Decorator.js.map +1 -1
- package/dist/lib/core/Driver/index.d.ts +50 -14
- package/dist/lib/core/Driver/index.js +13 -9
- package/dist/lib/core/Driver/index.js.map +1 -1
- package/dist/lib/core/Driver/mariadb/MariadbDriver.js +84 -29
- package/dist/lib/core/Driver/mariadb/MariadbDriver.js.map +1 -1
- package/dist/lib/core/Driver/mariadb/MariadbQueryBuilder.d.ts +48 -12
- package/dist/lib/core/Driver/mariadb/MariadbQueryBuilder.js +189 -28
- package/dist/lib/core/Driver/mariadb/MariadbQueryBuilder.js.map +1 -1
- package/dist/lib/core/Driver/mongodb/MongodbDriver.d.ts +24 -0
- package/dist/lib/core/Driver/mongodb/MongodbDriver.js +261 -0
- package/dist/lib/core/Driver/mongodb/MongodbDriver.js.map +1 -0
- package/dist/lib/core/Driver/mongodb/MongodbQueryBuilder.d.ts +141 -0
- package/dist/lib/core/Driver/mongodb/MongodbQueryBuilder.js +571 -0
- package/dist/lib/core/Driver/mongodb/MongodbQueryBuilder.js.map +1 -0
- package/dist/lib/core/Driver/mysql/MysqlDriver.js +115 -97
- package/dist/lib/core/Driver/mysql/MysqlDriver.js.map +1 -1
- package/dist/lib/core/Driver/mysql/MysqlQueryBuilder.d.ts +48 -12
- package/dist/lib/core/Driver/mysql/MysqlQueryBuilder.js +189 -28
- package/dist/lib/core/Driver/mysql/MysqlQueryBuilder.js.map +1 -1
- package/dist/lib/core/Driver/postgres/PostgresDriver.js +106 -73
- package/dist/lib/core/Driver/postgres/PostgresDriver.js.map +1 -1
- package/dist/lib/core/Driver/postgres/PostgresQueryBuilder.d.ts +53 -12
- package/dist/lib/core/Driver/postgres/PostgresQueryBuilder.js +318 -48
- package/dist/lib/core/Driver/postgres/PostgresQueryBuilder.js.map +1 -1
- package/dist/lib/core/Driver/sqlite/SqliteDriver.d.ts +21 -0
- package/dist/lib/core/Driver/sqlite/SqliteDriver.js +213 -0
- package/dist/lib/core/Driver/sqlite/SqliteDriver.js.map +1 -0
- package/dist/lib/core/Driver/sqlite/SqliteQueryBuilder.d.ts +146 -0
- package/dist/lib/core/Driver/sqlite/SqliteQueryBuilder.js +705 -0
- package/dist/lib/core/Driver/sqlite/SqliteQueryBuilder.js.map +1 -0
- package/dist/lib/core/Join.d.ts +63 -5
- package/dist/lib/core/Join.js +92 -15
- package/dist/lib/core/Join.js.map +1 -1
- package/dist/lib/core/JoinModel.d.ts +65 -9
- package/dist/lib/core/JoinModel.js +81 -52
- package/dist/lib/core/JoinModel.js.map +1 -1
- package/dist/lib/core/Meta.d.ts +22 -16
- package/dist/lib/core/Meta.js +28 -21
- package/dist/lib/core/Meta.js.map +1 -1
- package/dist/lib/core/Model.d.ts +644 -134
- package/dist/lib/core/Model.js +1361 -631
- package/dist/lib/core/Model.js.map +1 -1
- package/dist/lib/{tools/index.d.ts → core/Package.d.ts} +11 -3
- package/dist/lib/{tools/index.js → core/Package.js} +20 -7
- package/dist/lib/core/Package.js.map +1 -0
- package/dist/lib/core/Pool.js +42 -30
- package/dist/lib/core/Pool.js.map +1 -1
- package/dist/lib/core/Queue.d.ts +249 -0
- package/dist/lib/core/Queue.js +726 -0
- package/dist/lib/core/Queue.js.map +1 -0
- package/dist/lib/core/RelationManager.d.ts +4 -4
- package/dist/lib/core/RelationManager.js +168 -41
- package/dist/lib/core/RelationManager.js.map +1 -1
- package/dist/lib/core/Repository.d.ts +73 -207
- package/dist/lib/core/Repository.js +122 -234
- package/dist/lib/core/Repository.js.map +1 -1
- package/dist/lib/core/Schema.d.ts +211 -1
- package/dist/lib/core/Schema.js +370 -65
- package/dist/lib/core/Schema.js.map +1 -1
- package/dist/lib/core/StateManager.d.ts +31 -12
- package/dist/lib/core/StateManager.js +11 -5
- package/dist/lib/core/StateManager.js.map +1 -1
- package/dist/lib/core/UtilityTypes.d.ts +103 -81
- package/dist/lib/core/UtilityTypes.js.map +1 -1
- package/dist/lib/core/index.d.ts +4 -0
- package/dist/lib/core/index.js +6 -2
- package/dist/lib/core/index.js.map +1 -1
- package/dist/lib/types/decorator/index.d.ts +1 -1
- package/dist/lib/types/index.d.ts +120 -30
- package/dist/lib/types/repository/index.d.ts +68 -37
- package/dist/lib/utils/index.d.ts +13 -2
- package/dist/lib/utils/index.js +81 -2
- package/dist/lib/utils/index.js.map +1 -1
- package/package.json +14 -6
- package/dist/lib/tools/index.js.map +0 -1
|
@@ -272,8 +272,8 @@ exports.Column = Column;
|
|
|
272
272
|
* for a property. Useful for serialization/deserialization logic (e.g. ORM, DTO).
|
|
273
273
|
*
|
|
274
274
|
* @param {Object} options - Transform options.
|
|
275
|
-
* @param {(value: unknown) => any | Promise<any>} options.to - Function executed when transforming *to* database
|
|
276
|
-
* @param {(value: unknown) => any | Promise<any>} options.from - Function executed when transforming *from* database
|
|
275
|
+
* @param {(value: unknown) => any | Promise<any>} options.to - Function executed when transforming *to* app -> database.
|
|
276
|
+
* @param {(value: unknown) => any | Promise<any>} options.from - Function executed when transforming *from* database -> app.
|
|
277
277
|
* @returns {Function} A property decorator that stores transform metadata.
|
|
278
278
|
*
|
|
279
279
|
* @throws {Error} If the property name cannot be determined.
|
|
@@ -353,7 +353,7 @@ exports.Validate = Validate;
|
|
|
353
353
|
/**
|
|
354
354
|
* Decorator to define a HasOne relationship on a model property.
|
|
355
355
|
*
|
|
356
|
-
* @param {
|
|
356
|
+
* @param {RelationOptions} options - Options describing the relation.
|
|
357
357
|
* @returns {Function} A decorator that registers the HasOne relationship.
|
|
358
358
|
*
|
|
359
359
|
* @example
|
|
@@ -382,7 +382,7 @@ exports.HasOne = HasOne;
|
|
|
382
382
|
/**
|
|
383
383
|
* Decorator to define a HasMany relationship on a model property.
|
|
384
384
|
*
|
|
385
|
-
* @param {
|
|
385
|
+
* @param {RelationOptions} options - Options describing the relation.
|
|
386
386
|
* @returns {Function} A decorator that registers the HasMany relationship.
|
|
387
387
|
*
|
|
388
388
|
* @example
|
|
@@ -411,7 +411,7 @@ exports.HasMany = HasMany;
|
|
|
411
411
|
/**
|
|
412
412
|
* Decorator to define a BelongsTo relationship on a model property.
|
|
413
413
|
*
|
|
414
|
-
* @param {
|
|
414
|
+
* @param {RelationOptions} options - Options describing the relation.
|
|
415
415
|
* @returns {Function} A decorator that registers the BelongsTo relationship.
|
|
416
416
|
*
|
|
417
417
|
* @example
|
|
@@ -440,7 +440,7 @@ exports.BelongsTo = BelongsTo;
|
|
|
440
440
|
/**
|
|
441
441
|
* Decorator to define a BelongsToMany (many-to-many) relationship on a model property.
|
|
442
442
|
*
|
|
443
|
-
* @param {
|
|
443
|
+
* @param {RelationOptions} options - Options describing the relation.
|
|
444
444
|
* @returns {Function} A decorator that registers the BelongsToMany relationship.
|
|
445
445
|
*
|
|
446
446
|
* @example
|
|
@@ -759,15 +759,157 @@ exports.AfterRemove = AfterRemove;
|
|
|
759
759
|
* @namespace D
|
|
760
760
|
*/
|
|
761
761
|
exports.D = {
|
|
762
|
-
Table: exports.Table,
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
762
|
+
Table: exports.Table,
|
|
763
|
+
TableSingular: exports.TableSingular,
|
|
764
|
+
TablePlural: exports.TablePlural,
|
|
765
|
+
UUID: exports.UUID,
|
|
766
|
+
/**
|
|
767
|
+
* Decorator to enable automatic timestamps on a model.
|
|
768
|
+
*
|
|
769
|
+
* Stores metadata indicating that `createdAt` and `updatedAt` columns should be handled.
|
|
770
|
+
*
|
|
771
|
+
* @param {{ createdAt: string; updatedAt: string }} [columns] - Optional custom column names for timestamps.
|
|
772
|
+
* @returns {ClassDecorator} A class decorator that enables timestamp metadata.
|
|
773
|
+
*
|
|
774
|
+
* @example
|
|
775
|
+
* ```ts
|
|
776
|
+
* @Timestamp({ createdAt: 'created_at', updatedAt: 'updated_at' })
|
|
777
|
+
* class User extends Model {}
|
|
778
|
+
* ```
|
|
779
|
+
*/
|
|
780
|
+
SoftDelete: exports.SoftDelete,
|
|
781
|
+
Timestamp: exports.Timestamp,
|
|
782
|
+
Pattern: exports.Pattern,
|
|
783
|
+
CamelCase: exports.CamelCase,
|
|
784
|
+
SnakeCase: exports.SnakeCase,
|
|
785
|
+
/**
|
|
786
|
+
* Decorator to define a database column for a model property.
|
|
787
|
+
*
|
|
788
|
+
* Accepts a `Blueprint` function that defines the column type, constraints, and other attributes.
|
|
789
|
+
* The resulting column schema is stored as metadata on the target class.
|
|
790
|
+
*
|
|
791
|
+
* @param {() => Blueprint} blueprint - A function returning a `Blueprint` instance describing the column.
|
|
792
|
+
* @returns {Function} A property decorator that registers the column schema.
|
|
793
|
+
*
|
|
794
|
+
* @throws {Error} If the property name cannot be determined.
|
|
795
|
+
*
|
|
796
|
+
* @example
|
|
797
|
+
* ```ts
|
|
798
|
+
* class User extends Model {
|
|
799
|
+
*
|
|
800
|
+
* @Column(() => Blueprint.int().notNull().primary().autoIncrement())
|
|
801
|
+
* public id!: number;
|
|
802
|
+
*
|
|
803
|
+
* @Column(() => Blueprint.varchar(50).null())
|
|
804
|
+
* public uuid!: string;
|
|
805
|
+
* }
|
|
806
|
+
*
|
|
807
|
+
* ```
|
|
808
|
+
*/
|
|
809
|
+
Column: exports.Column,
|
|
810
|
+
/**
|
|
811
|
+
* Decorator to attach validation rules to a model property.
|
|
812
|
+
*
|
|
813
|
+
* Accepts a `TValidateSchemaDecorator` object describing the validation rules
|
|
814
|
+
* (e.g., type, required, length, regex match, uniqueness, or custom validation function).
|
|
815
|
+
* The validation schema is stored as metadata on the target class.
|
|
816
|
+
*
|
|
817
|
+
* @param {TValidateSchemaDecorator} validate - An object defining validation rules for the property.
|
|
818
|
+
* @returns {Function} A decorator that registers the validation schema.
|
|
819
|
+
*
|
|
820
|
+
* @example
|
|
821
|
+
* ```ts
|
|
822
|
+
* class User extends Model {
|
|
823
|
+
*
|
|
824
|
+
* @Column(() => Blueprint.int().notNull().primary().autoIncrement())
|
|
825
|
+
* public id!: number;
|
|
826
|
+
*
|
|
827
|
+
* @Column(() => Blueprint.varchar(50).null())
|
|
828
|
+
* public uuid!: string;
|
|
829
|
+
*
|
|
830
|
+
* @Column(() => Blueprint.varchar(50).null())
|
|
831
|
+
* @Validate({
|
|
832
|
+
* type: String,
|
|
833
|
+
* require: true,
|
|
834
|
+
* length: 50,
|
|
835
|
+
* match: /^[a-zA-Z0-9._]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/,
|
|
836
|
+
* unique: true,
|
|
837
|
+
* fn: async (email: string) => {
|
|
838
|
+
* const exists = await new User().where('email',email).exists();
|
|
839
|
+
* if(exists) return `This column "${email}" is dupicate`;
|
|
840
|
+
* return null;
|
|
841
|
+
* }
|
|
842
|
+
* })
|
|
843
|
+
* public email!: string;
|
|
844
|
+
* }
|
|
845
|
+
*
|
|
846
|
+
* ```
|
|
847
|
+
*/
|
|
848
|
+
Validate: exports.Validate,
|
|
766
849
|
// ------- Relations --------
|
|
767
|
-
HasOne: exports.HasOne,
|
|
850
|
+
HasOne: exports.HasOne,
|
|
851
|
+
HasMany: exports.HasMany,
|
|
852
|
+
BelongsTo: exports.BelongsTo,
|
|
853
|
+
BelongsToMany: exports.BelongsToMany,
|
|
768
854
|
// ------- Hook -------------
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
855
|
+
/**
|
|
856
|
+
* A decorator factory that registers custom `to` and `from` transform functions
|
|
857
|
+
* for a property. Useful for serialization/deserialization logic (e.g. ORM, DTO).
|
|
858
|
+
*
|
|
859
|
+
* @param {Object} options - Transform options.
|
|
860
|
+
* @param {(value: unknown) => any | Promise<any>} options.to - Function executed when transforming *to* app -> database.
|
|
861
|
+
* @param {(value: unknown) => any | Promise<any>} options.from - Function executed when transforming *from* database -> app.
|
|
862
|
+
* @returns {Function} A property decorator that stores transform metadata.
|
|
863
|
+
*
|
|
864
|
+
* @throws {Error} If the property name cannot be determined.
|
|
865
|
+
*
|
|
866
|
+
* @example
|
|
867
|
+
* ```ts
|
|
868
|
+
* class User {
|
|
869
|
+
* @Transform({
|
|
870
|
+
* to: (v) => JSON.stringify(v),
|
|
871
|
+
* from: (v) => JSON.parse(v),
|
|
872
|
+
* })
|
|
873
|
+
* profile;
|
|
874
|
+
* }
|
|
875
|
+
* ```
|
|
876
|
+
*/
|
|
877
|
+
Transform: exports.Transform,
|
|
878
|
+
/**
|
|
879
|
+
* Decorator that registers a method as a generic lifecycle hook.
|
|
880
|
+
* Unlike specific hooks such as `@BeforeInsert` or `@AfterUpdate`,
|
|
881
|
+
* this decorator is **multi-purpose** and collects all tagged methods
|
|
882
|
+
* into a single metadata registry (`REFLECT_META.HOOKS`).
|
|
883
|
+
*
|
|
884
|
+
* These hook methods can later be invoked by the ORM/engine at any stage
|
|
885
|
+
* depending on your custom logic.
|
|
886
|
+
*
|
|
887
|
+
* @returns {Function} A method decorator.
|
|
888
|
+
*
|
|
889
|
+
* @throws {Error} If applied to a non-method class member.
|
|
890
|
+
*
|
|
891
|
+
* @example
|
|
892
|
+
* ```ts
|
|
893
|
+
* class User {
|
|
894
|
+
* @Hooks()
|
|
895
|
+
* logAction() {
|
|
896
|
+
* console.log("A lifecycle action happened");
|
|
897
|
+
* }
|
|
898
|
+
* }
|
|
899
|
+
* ```
|
|
900
|
+
*
|
|
901
|
+
* @example
|
|
902
|
+
* // Later, your ORM engine could do:
|
|
903
|
+
* const hooks = Reflect.getMetadata(REFLECT_META.HOOKS, userInstance) || [];
|
|
904
|
+
* for (const hook of hooks) hook.call(userInstance);
|
|
905
|
+
*/
|
|
906
|
+
Hooks: exports.Hooks,
|
|
907
|
+
Observer: exports.Observer,
|
|
908
|
+
BeforeInsert: exports.BeforeInsert,
|
|
909
|
+
BeforeUpdate: exports.BeforeUpdate,
|
|
910
|
+
BeforeRemove: exports.BeforeRemove,
|
|
911
|
+
AfterInsert: exports.AfterInsert,
|
|
912
|
+
AfterUpdate: exports.AfterUpdate,
|
|
913
|
+
AfterRemove: exports.AfterRemove
|
|
772
914
|
};
|
|
773
915
|
//# sourceMappingURL=Decorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Decorator.js","sourceRoot":"","sources":["../../../src/lib/core/Decorator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Decorator.js","sourceRoot":"","sources":["../../../src/lib/core/Decorator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,15 @@ import { StateManager } from "../StateManager";
|
|
|
3
3
|
import { Blueprint } from "../Blueprint";
|
|
4
4
|
import type { TConstant, TPoolConnected } from "../../types";
|
|
5
5
|
export declare abstract class BaseDriver extends EventEmitter {
|
|
6
|
-
private SLOW_QUERY_EXECUTE_TIME;
|
|
7
|
-
private SLOW_QUERY_LIMIT_LENGTH;
|
|
8
6
|
protected pool: any;
|
|
7
|
+
protected poolTrx: any;
|
|
9
8
|
protected options: Record<string, any>;
|
|
9
|
+
protected SLOW_QUERY_EXECUTE_TIME: number;
|
|
10
|
+
protected SLOW_QUERY_LIMIT_LENGTH: number;
|
|
11
|
+
protected TRX_TIMEOUT: number;
|
|
12
|
+
protected MESSAGE_TRX_NOT_STARTED: string;
|
|
10
13
|
protected MESSAGE_TRX_CLOSED: string;
|
|
14
|
+
protected MESSAGE_TRX_TIMEOUT: string;
|
|
11
15
|
protected abstract connect(): TPoolConnected;
|
|
12
16
|
protected abstract disconnect(pool: any): void;
|
|
13
17
|
protected abstract meta(results: any, sql: string): void;
|
|
@@ -18,7 +22,7 @@ export declare abstract class BaseDriver extends EventEmitter {
|
|
|
18
22
|
sql: string;
|
|
19
23
|
}): void;
|
|
20
24
|
protected _messageSlowQuery(duration: number, sql: string): string;
|
|
21
|
-
protected _detectQueryType(query: string): "" | "
|
|
25
|
+
protected _detectQueryType(query: string): "SELECT" | "UPDATE" | "DELETE" | "INSERT" | "UNKNOWN";
|
|
22
26
|
protected _onPoolConnect(pool: any): void;
|
|
23
27
|
protected _messageConnected(message: string): string;
|
|
24
28
|
protected _messageError(message: string): string;
|
|
@@ -41,10 +45,11 @@ export declare abstract class QueryBuilder {
|
|
|
41
45
|
table: string;
|
|
42
46
|
}): string;
|
|
43
47
|
abstract getTables(database: string): string;
|
|
44
|
-
abstract
|
|
48
|
+
abstract hasTable({ database, table, }: {
|
|
45
49
|
database: string;
|
|
46
50
|
table: string;
|
|
47
51
|
}): string;
|
|
52
|
+
abstract createDatabase(database: string): string;
|
|
48
53
|
abstract createTable({ database, table, schema, }: {
|
|
49
54
|
database: string;
|
|
50
55
|
table: string;
|
|
@@ -80,7 +85,7 @@ export declare abstract class QueryBuilder {
|
|
|
80
85
|
table: string;
|
|
81
86
|
constraint: string;
|
|
82
87
|
}): string;
|
|
83
|
-
abstract
|
|
88
|
+
abstract addFK({ table, tableRef, key, constraint, foreign, }: {
|
|
84
89
|
table: string;
|
|
85
90
|
tableRef: string;
|
|
86
91
|
key: string;
|
|
@@ -91,19 +96,48 @@ export declare abstract class QueryBuilder {
|
|
|
91
96
|
onUpdate: string;
|
|
92
97
|
};
|
|
93
98
|
}): string;
|
|
94
|
-
abstract getIndexes({ database, table }: {
|
|
99
|
+
abstract getIndexes({ database, table, }: {
|
|
95
100
|
database: string;
|
|
96
101
|
table: string;
|
|
97
102
|
}): string;
|
|
98
|
-
abstract hasIndex({ database, table,
|
|
103
|
+
abstract hasIndex({ database, table, name, }: {
|
|
99
104
|
database: string;
|
|
100
105
|
table: string;
|
|
101
|
-
|
|
106
|
+
name: string;
|
|
102
107
|
}): string;
|
|
103
|
-
abstract
|
|
108
|
+
abstract addIndex({ table, name, columns, }: {
|
|
109
|
+
table: string;
|
|
110
|
+
name: string;
|
|
111
|
+
columns: string[];
|
|
112
|
+
}): string;
|
|
113
|
+
abstract dropIndex({ table, name }: {
|
|
114
|
+
table: string;
|
|
115
|
+
name: string;
|
|
116
|
+
}): string;
|
|
117
|
+
abstract hasUnique({ database, table, name, }: {
|
|
118
|
+
database: string;
|
|
119
|
+
table: string;
|
|
120
|
+
name: string;
|
|
121
|
+
}): string;
|
|
122
|
+
abstract addUnique({ table, name, columns, }: {
|
|
123
|
+
table: string;
|
|
124
|
+
name: string;
|
|
125
|
+
columns: string[];
|
|
126
|
+
}): string;
|
|
127
|
+
abstract dropUnique({ table, name }: {
|
|
128
|
+
table: string;
|
|
129
|
+
name: string;
|
|
130
|
+
}): string;
|
|
131
|
+
abstract hasPrimaryKey({ database, table, }: {
|
|
132
|
+
database: string;
|
|
133
|
+
table: string;
|
|
134
|
+
}): string;
|
|
135
|
+
abstract addPrimaryKey({ table, columns, }: {
|
|
136
|
+
table: string;
|
|
137
|
+
columns: string[];
|
|
138
|
+
}): string;
|
|
139
|
+
abstract dropPrimaryKey({ table }: {
|
|
104
140
|
table: string;
|
|
105
|
-
index: string;
|
|
106
|
-
key: string;
|
|
107
141
|
}): string;
|
|
108
142
|
abstract getDatabase(database: string): string;
|
|
109
143
|
abstract dropDatabase(database: string): string;
|
|
@@ -112,13 +146,15 @@ export declare abstract class QueryBuilder {
|
|
|
112
146
|
abstract truncate(table: string): string;
|
|
113
147
|
abstract sleep(second: number): string;
|
|
114
148
|
abstract format(sql: (string | null)[] | string): string;
|
|
149
|
+
abstract getActiveConnections(): string;
|
|
150
|
+
abstract getMaxConnections(): string;
|
|
151
|
+
abstract lockTable(mode: 'WRITE' | 'READ'): string;
|
|
152
|
+
abstract unlockTable(): string | null;
|
|
115
153
|
protected abstract bindJoin(values: string[]): string | null;
|
|
116
154
|
protected abstract bindWhere(values: string[]): string | null;
|
|
117
155
|
protected abstract bindOrderBy(values: string[]): string | null;
|
|
118
156
|
protected abstract bindGroupBy(values: string[]): string | null;
|
|
119
|
-
protected abstract bindSelect(values: string[]
|
|
120
|
-
distinct?: string;
|
|
121
|
-
}): string;
|
|
157
|
+
protected abstract bindSelect(values: string[]): string;
|
|
122
158
|
protected abstract bindFrom(args: {
|
|
123
159
|
from: string[];
|
|
124
160
|
alias: string | null;
|
|
@@ -2,16 +2,20 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QueryBuilder = exports.BaseDriver = void 0;
|
|
4
4
|
const events_1 = require("events");
|
|
5
|
-
const
|
|
5
|
+
const Package_1 = require("../Package");
|
|
6
6
|
const constants_1 = require("../../constants");
|
|
7
7
|
class BaseDriver extends events_1.EventEmitter {
|
|
8
|
-
SLOW_QUERY_EXECUTE_TIME = 1000 * 15;
|
|
9
|
-
SLOW_QUERY_LIMIT_LENGTH = 1000 * 2;
|
|
10
8
|
pool;
|
|
9
|
+
poolTrx;
|
|
11
10
|
options;
|
|
11
|
+
SLOW_QUERY_EXECUTE_TIME = 1000 * 15;
|
|
12
|
+
SLOW_QUERY_LIMIT_LENGTH = 1000 * 2;
|
|
13
|
+
TRX_TIMEOUT = 120;
|
|
14
|
+
MESSAGE_TRX_NOT_STARTED = "The transaction has not been started";
|
|
12
15
|
MESSAGE_TRX_CLOSED = "The transaction has either been closed";
|
|
16
|
+
MESSAGE_TRX_TIMEOUT = `The transaction has been open for more than ${this.TRX_TIMEOUT} seconds. It will be rollbacked automatically.`;
|
|
13
17
|
import(mod) {
|
|
14
|
-
return
|
|
18
|
+
return Package_1.Package.import(mod);
|
|
15
19
|
}
|
|
16
20
|
_detectEventQuery({ start, sql }) {
|
|
17
21
|
const duration = Date.now() - start;
|
|
@@ -39,10 +43,10 @@ class BaseDriver extends events_1.EventEmitter {
|
|
|
39
43
|
return message;
|
|
40
44
|
}
|
|
41
45
|
_detectQueryType(query) {
|
|
42
|
-
const selectRegex =
|
|
43
|
-
const updateRegex =
|
|
44
|
-
const insertRegex =
|
|
45
|
-
const deleteRegex =
|
|
46
|
+
const selectRegex = /^\s*SELECT\b/i;
|
|
47
|
+
const updateRegex = /^\s*UPDATE\b/i;
|
|
48
|
+
const insertRegex = /^\s*INSERT\b/i;
|
|
49
|
+
const deleteRegex = /^\s*DELETE\b/i;
|
|
46
50
|
if (selectRegex.test(query))
|
|
47
51
|
return "SELECT";
|
|
48
52
|
if (updateRegex.test(query))
|
|
@@ -51,7 +55,7 @@ class BaseDriver extends events_1.EventEmitter {
|
|
|
51
55
|
return "INSERT";
|
|
52
56
|
if (deleteRegex.test(query))
|
|
53
57
|
return "DELETE";
|
|
54
|
-
return "";
|
|
58
|
+
return "UNKNOWN";
|
|
55
59
|
}
|
|
56
60
|
_onPoolConnect(pool) {
|
|
57
61
|
const delay = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/Driver/index.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAEtC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/Driver/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ class MariadbDriver extends __1.BaseDriver {
|
|
|
11
11
|
connect() {
|
|
12
12
|
const options = this.options;
|
|
13
13
|
const mariadb = this.import("mariadb");
|
|
14
|
-
|
|
14
|
+
const configs = {
|
|
15
15
|
host: options.host,
|
|
16
16
|
port: options.port,
|
|
17
17
|
database: options.database,
|
|
@@ -19,19 +19,43 @@ class MariadbDriver extends __1.BaseDriver {
|
|
|
19
19
|
password: options.password,
|
|
20
20
|
connectionLimit: options.connectionLimit ?? 20,
|
|
21
21
|
connectTimeout: options.connectTimeout ?? 1000 * 60,
|
|
22
|
-
minimumIdle:
|
|
22
|
+
minimumIdle: options.connectionLimit ?? 20,
|
|
23
23
|
acquireTimeout: 1000 * 20,
|
|
24
24
|
idleTimeout: 1000 * 60,
|
|
25
|
-
queryTimeout: 1000 *
|
|
25
|
+
queryTimeout: 1000 * 90,
|
|
26
26
|
pipelining: true,
|
|
27
27
|
bigIntAsNumber: true,
|
|
28
28
|
insertIdAsNumber: true,
|
|
29
|
+
};
|
|
30
|
+
this.pool = mariadb.createPool(configs);
|
|
31
|
+
this.poolTrx = mariadb.createPool({
|
|
32
|
+
...configs,
|
|
33
|
+
connectionLimit: Math.min(10, Math.round(configs.connectionLimit * 0.5))
|
|
29
34
|
});
|
|
30
|
-
this.pool.getConnection().catch((err) => {
|
|
35
|
+
this.pool.getConnection().catch(async (err) => {
|
|
36
|
+
if (!err)
|
|
37
|
+
return;
|
|
38
|
+
if (err?.message?.includes('Unknown database') ||
|
|
39
|
+
err?.message.includes('(conn:-1, no: 45028, SQLState: HY000) pool timeout')) {
|
|
40
|
+
const db = await mariadb.createConnection({
|
|
41
|
+
host: options.host,
|
|
42
|
+
port: options.port,
|
|
43
|
+
user: options.user || options.username,
|
|
44
|
+
password: options.password,
|
|
45
|
+
});
|
|
46
|
+
const sql = new MariadbQueryBuilder_1.MariadbQueryBuilder({}).createDatabase(options.database);
|
|
47
|
+
await db.query(sql);
|
|
48
|
+
await db.end();
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
31
51
|
const message = this._messageError.bind(this);
|
|
32
52
|
process.nextTick(() => {
|
|
33
|
-
|
|
34
|
-
|
|
53
|
+
if (String(err.message).includes('Pool is close')) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
console.log(message(err.message == null || err.message === '' ? err.code : err.message));
|
|
57
|
+
if (this.options.CONNECTION_ERROR)
|
|
58
|
+
return process.exit();
|
|
35
59
|
});
|
|
36
60
|
});
|
|
37
61
|
return {
|
|
@@ -58,55 +82,86 @@ class MariadbDriver extends __1.BaseDriver {
|
|
|
58
82
|
return this.returning(results);
|
|
59
83
|
}
|
|
60
84
|
async _connection() {
|
|
61
|
-
|
|
62
|
-
|
|
85
|
+
const conn = await this.poolTrx.getConnection();
|
|
86
|
+
let started = false;
|
|
87
|
+
let closed = false;
|
|
88
|
+
let commited = false;
|
|
89
|
+
let rollbacked = false;
|
|
63
90
|
const query = async (sql) => {
|
|
64
|
-
if (closeTransaction)
|
|
65
|
-
throw new Error(this.MESSAGE_TRX_CLOSED);
|
|
66
91
|
const start = Date.now();
|
|
67
|
-
const results = await
|
|
92
|
+
const results = await conn.query(sql);
|
|
68
93
|
this._detectEventQuery({ start, sql });
|
|
69
94
|
this.meta(results, sql);
|
|
70
95
|
return this.returning(results);
|
|
71
96
|
};
|
|
72
97
|
const startTransaction = async () => {
|
|
73
|
-
if (
|
|
98
|
+
if (closed) {
|
|
74
99
|
throw new Error(this.MESSAGE_TRX_CLOSED);
|
|
75
|
-
|
|
100
|
+
}
|
|
101
|
+
await conn.beginTransaction();
|
|
102
|
+
started = true;
|
|
103
|
+
closed = false;
|
|
104
|
+
setTimeout(() => {
|
|
105
|
+
if (commited || rollbacked)
|
|
106
|
+
return;
|
|
107
|
+
console.log(this.MESSAGE_TRX_TIMEOUT);
|
|
108
|
+
rollback().catch(() => null);
|
|
109
|
+
}, 1000 * this.TRX_TIMEOUT);
|
|
110
|
+
return;
|
|
76
111
|
};
|
|
77
112
|
const commit = async () => {
|
|
78
|
-
if (
|
|
113
|
+
if (closed) {
|
|
79
114
|
throw new Error(this.MESSAGE_TRX_CLOSED);
|
|
80
|
-
|
|
115
|
+
}
|
|
116
|
+
if (!started) {
|
|
117
|
+
throw new Error(this.MESSAGE_TRX_NOT_STARTED);
|
|
118
|
+
}
|
|
119
|
+
commited = true;
|
|
120
|
+
await conn.commit();
|
|
81
121
|
await end();
|
|
122
|
+
return;
|
|
82
123
|
};
|
|
83
124
|
const rollback = async () => {
|
|
84
|
-
if (
|
|
85
|
-
|
|
86
|
-
|
|
125
|
+
if (closed)
|
|
126
|
+
return;
|
|
127
|
+
if (!started) {
|
|
128
|
+
throw new Error(this.MESSAGE_TRX_NOT_STARTED);
|
|
129
|
+
}
|
|
130
|
+
rollbacked = true;
|
|
131
|
+
await conn.rollback();
|
|
87
132
|
await end();
|
|
133
|
+
return;
|
|
88
134
|
};
|
|
89
135
|
const end = async () => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
136
|
+
if (closed)
|
|
137
|
+
return;
|
|
138
|
+
if (!started) {
|
|
139
|
+
throw new Error(this.MESSAGE_TRX_NOT_STARTED);
|
|
140
|
+
}
|
|
141
|
+
if (!commited && !rollbacked) {
|
|
142
|
+
await rollback();
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
await conn.release();
|
|
146
|
+
started = false;
|
|
147
|
+
closed = true;
|
|
148
|
+
return;
|
|
149
|
+
};
|
|
150
|
+
const release = async () => {
|
|
151
|
+
if (closed)
|
|
152
|
+
return;
|
|
153
|
+
await conn.release();
|
|
100
154
|
return;
|
|
101
155
|
};
|
|
102
156
|
return {
|
|
103
157
|
on: (event, data) => this.on(event, data),
|
|
104
|
-
query,
|
|
105
158
|
queryBuilder: MariadbQueryBuilder_1.MariadbQueryBuilder,
|
|
159
|
+
query,
|
|
106
160
|
startTransaction,
|
|
107
161
|
commit,
|
|
108
162
|
rollback,
|
|
109
163
|
end,
|
|
164
|
+
release
|
|
110
165
|
};
|
|
111
166
|
}
|
|
112
167
|
async _end() {
|