@stingerloom/orm 0.1.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/LICENSE +21 -0
- package/README.md +53 -0
- package/dist/DatabaseClient.d.ts +23 -0
- package/dist/DatabaseClient.d.ts.map +1 -0
- package/dist/DatabaseClient.js +125 -0
- package/dist/DatabaseClient.js.map +1 -0
- package/dist/core/BaseEntityManager.d.ts +29 -0
- package/dist/core/BaseEntityManager.d.ts.map +1 -0
- package/dist/core/BaseEntityManager.js +7 -0
- package/dist/core/BaseEntityManager.js.map +1 -0
- package/dist/core/BaseInsertQueryBuilder.d.ts +8 -0
- package/dist/core/BaseInsertQueryBuilder.d.ts.map +1 -0
- package/dist/core/BaseInsertQueryBuilder.js +3 -0
- package/dist/core/BaseInsertQueryBuilder.js.map +1 -0
- package/dist/core/BaseRawQueryBuilder.d.ts +33 -0
- package/dist/core/BaseRawQueryBuilder.d.ts.map +1 -0
- package/dist/core/BaseRawQueryBuilder.js +3 -0
- package/dist/core/BaseRawQueryBuilder.js.map +1 -0
- package/dist/core/BaseRepository.d.ts +37 -0
- package/dist/core/BaseRepository.d.ts.map +1 -0
- package/dist/core/BaseRepository.js +77 -0
- package/dist/core/BaseRepository.js.map +1 -0
- package/dist/core/BaseResultTransformer.d.ts +11 -0
- package/dist/core/BaseResultTransformer.d.ts.map +1 -0
- package/dist/core/BaseResultTransformer.js +3 -0
- package/dist/core/BaseResultTransformer.js.map +1 -0
- package/dist/core/Conditions.d.ts +33 -0
- package/dist/core/Conditions.d.ts.map +1 -0
- package/dist/core/Conditions.js +154 -0
- package/dist/core/Conditions.js.map +1 -0
- package/dist/core/CursorPagination.d.ts +19 -0
- package/dist/core/CursorPagination.d.ts.map +1 -0
- package/dist/core/CursorPagination.js +27 -0
- package/dist/core/CursorPagination.js.map +1 -0
- package/dist/core/DatabaseClientOptions.d.ts +41 -0
- package/dist/core/DatabaseClientOptions.d.ts.map +1 -0
- package/dist/core/DatabaseClientOptions.js +3 -0
- package/dist/core/DatabaseClientOptions.js.map +1 -0
- package/dist/core/EntityEventEmitter.d.ts +14 -0
- package/dist/core/EntityEventEmitter.d.ts.map +1 -0
- package/dist/core/EntityEventEmitter.js +35 -0
- package/dist/core/EntityEventEmitter.js.map +1 -0
- package/dist/core/EntityManager.d.ts +115 -0
- package/dist/core/EntityManager.d.ts.map +1 -0
- package/dist/core/EntityManager.js +2347 -0
- package/dist/core/EntityManager.js.map +1 -0
- package/dist/core/EntitySubscriber.d.ts +31 -0
- package/dist/core/EntitySubscriber.d.ts.map +1 -0
- package/dist/core/EntitySubscriber.js +3 -0
- package/dist/core/EntitySubscriber.js.map +1 -0
- package/dist/core/EntityValidator.d.ts +6 -0
- package/dist/core/EntityValidator.d.ts.map +1 -0
- package/dist/core/EntityValidator.js +43 -0
- package/dist/core/EntityValidator.js.map +1 -0
- package/dist/core/ExplainResult.d.ts +9 -0
- package/dist/core/ExplainResult.d.ts.map +1 -0
- package/dist/core/ExplainResult.js +3 -0
- package/dist/core/ExplainResult.js.map +1 -0
- package/dist/core/IConnector.d.ts +18 -0
- package/dist/core/IConnector.d.ts.map +1 -0
- package/dist/core/IConnector.js +7 -0
- package/dist/core/IConnector.js.map +1 -0
- package/dist/core/LazyLoader.d.ts +6 -0
- package/dist/core/LazyLoader.d.ts.map +1 -0
- package/dist/core/LazyLoader.js +94 -0
- package/dist/core/LazyLoader.js.map +1 -0
- package/dist/core/MyClassConstructor.d.ts +4 -0
- package/dist/core/MyClassConstructor.d.ts.map +1 -0
- package/dist/core/MyClassConstructor.js +3 -0
- package/dist/core/MyClassConstructor.js.map +1 -0
- package/dist/core/QueryTracker.d.ts +37 -0
- package/dist/core/QueryTracker.d.ts.map +1 -0
- package/dist/core/QueryTracker.js +111 -0
- package/dist/core/QueryTracker.js.map +1 -0
- package/dist/core/RawQueryBuilder.d.ts +40 -0
- package/dist/core/RawQueryBuilder.d.ts.map +1 -0
- package/dist/core/RawQueryBuilder.js +211 -0
- package/dist/core/RawQueryBuilder.js.map +1 -0
- package/dist/core/RawQueryBuilderFactory.d.ts +6 -0
- package/dist/core/RawQueryBuilderFactory.d.ts.map +1 -0
- package/dist/core/RawQueryBuilderFactory.js +14 -0
- package/dist/core/RawQueryBuilderFactory.js.map +1 -0
- package/dist/core/ResultTransformer.d.ts +24 -0
- package/dist/core/ResultTransformer.d.ts.map +1 -0
- package/dist/core/ResultTransformer.js +134 -0
- package/dist/core/ResultTransformer.js.map +1 -0
- package/dist/core/ResultTransformerFactory.d.ts +5 -0
- package/dist/core/ResultTransformerFactory.d.ts.map +1 -0
- package/dist/core/ResultTransformerFactory.js +11 -0
- package/dist/core/ResultTransformerFactory.js.map +1 -0
- package/dist/core/SelectUtils.d.ts +14 -0
- package/dist/core/SelectUtils.d.ts.map +1 -0
- package/dist/core/SelectUtils.js +19 -0
- package/dist/core/SelectUtils.js.map +1 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.d.ts +7 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.d.ts.map +1 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.js +14 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.js.map +1 -0
- package/dist/core/deserializer/DeserializeEntity.d.ts +7 -0
- package/dist/core/deserializer/DeserializeEntity.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializeEntity.js +17 -0
- package/dist/core/deserializer/DeserializeEntity.js.map +1 -0
- package/dist/core/deserializer/DeserializeOptions.d.ts +9 -0
- package/dist/core/deserializer/DeserializeOptions.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializeOptions.js +3 -0
- package/dist/core/deserializer/DeserializeOptions.js.map +1 -0
- package/dist/core/deserializer/Deserializer.d.ts +6 -0
- package/dist/core/deserializer/Deserializer.d.ts.map +1 -0
- package/dist/core/deserializer/Deserializer.js +3 -0
- package/dist/core/deserializer/Deserializer.js.map +1 -0
- package/dist/core/deserializer/DeserializerRegistry.d.ts +13 -0
- package/dist/core/deserializer/DeserializerRegistry.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializerRegistry.js +26 -0
- package/dist/core/deserializer/DeserializerRegistry.js.map +1 -0
- package/dist/core/deserializer/index.d.ts +6 -0
- package/dist/core/deserializer/index.d.ts.map +1 -0
- package/dist/core/deserializer/index.js +22 -0
- package/dist/core/deserializer/index.js.map +1 -0
- package/dist/core/generators/SchemaDiff.d.ts +34 -0
- package/dist/core/generators/SchemaDiff.d.ts.map +1 -0
- package/dist/core/generators/SchemaDiff.js +231 -0
- package/dist/core/generators/SchemaDiff.js.map +1 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.d.ts +11 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.d.ts.map +1 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.js +108 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.js.map +1 -0
- package/dist/core/generators/SchemaGenerator.d.ts +37 -0
- package/dist/core/generators/SchemaGenerator.d.ts.map +1 -0
- package/dist/core/generators/SchemaGenerator.js +379 -0
- package/dist/core/generators/SchemaGenerator.js.map +1 -0
- package/dist/core/generators/index.d.ts +4 -0
- package/dist/core/generators/index.d.ts.map +1 -0
- package/dist/core/generators/index.js +20 -0
- package/dist/core/generators/index.js.map +1 -0
- package/dist/core/index.d.ts +20 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +36 -0
- package/dist/core/index.js.map +1 -0
- package/dist/decorators/Column.d.ts +19 -0
- package/dist/decorators/Column.d.ts.map +1 -0
- package/dist/decorators/Column.js +53 -0
- package/dist/decorators/Column.js.map +1 -0
- package/dist/decorators/CustomColumn.d.ts +6 -0
- package/dist/decorators/CustomColumn.d.ts.map +1 -0
- package/dist/decorators/CustomColumn.js +13 -0
- package/dist/decorators/CustomColumn.js.map +1 -0
- package/dist/decorators/DeletedAt.d.ts +3 -0
- package/dist/decorators/DeletedAt.d.ts.map +1 -0
- package/dist/decorators/DeletedAt.js +16 -0
- package/dist/decorators/DeletedAt.js.map +1 -0
- package/dist/decorators/Entity.d.ts +16 -0
- package/dist/decorators/Entity.d.ts.map +1 -0
- package/dist/decorators/Entity.js +32 -0
- package/dist/decorators/Entity.js.map +1 -0
- package/dist/decorators/Hooks.d.ts +14 -0
- package/dist/decorators/Hooks.d.ts.map +1 -0
- package/dist/decorators/Hooks.js +36 -0
- package/dist/decorators/Hooks.js.map +1 -0
- package/dist/decorators/Indexer.d.ts +11 -0
- package/dist/decorators/Indexer.d.ts.map +1 -0
- package/dist/decorators/Indexer.js +21 -0
- package/dist/decorators/Indexer.js.map +1 -0
- package/dist/decorators/InjectEntityManager.d.ts +3 -0
- package/dist/decorators/InjectEntityManager.d.ts.map +1 -0
- package/dist/decorators/InjectEntityManager.js +13 -0
- package/dist/decorators/InjectEntityManager.js.map +1 -0
- package/dist/decorators/InjectRepository.d.ts +4 -0
- package/dist/decorators/InjectRepository.d.ts.map +1 -0
- package/dist/decorators/InjectRepository.js +22 -0
- package/dist/decorators/InjectRepository.js.map +1 -0
- package/dist/decorators/ManyToMany.d.ts +21 -0
- package/dist/decorators/ManyToMany.d.ts.map +1 -0
- package/dist/decorators/ManyToMany.js +29 -0
- package/dist/decorators/ManyToMany.js.map +1 -0
- package/dist/decorators/ManyToOne.d.ts +27 -0
- package/dist/decorators/ManyToOne.d.ts.map +1 -0
- package/dist/decorators/ManyToOne.js +35 -0
- package/dist/decorators/ManyToOne.js.map +1 -0
- package/dist/decorators/OneToMany.d.ts +17 -0
- package/dist/decorators/OneToMany.d.ts.map +1 -0
- package/dist/decorators/OneToMany.js +29 -0
- package/dist/decorators/OneToMany.js.map +1 -0
- package/dist/decorators/OneToOne.d.ts +20 -0
- package/dist/decorators/OneToOne.d.ts.map +1 -0
- package/dist/decorators/OneToOne.js +30 -0
- package/dist/decorators/OneToOne.js.map +1 -0
- package/dist/decorators/PrimaryColumn.d.ts +3 -0
- package/dist/decorators/PrimaryColumn.d.ts.map +1 -0
- package/dist/decorators/PrimaryColumn.js +14 -0
- package/dist/decorators/PrimaryColumn.js.map +1 -0
- package/dist/decorators/PrimaryGeneratedColumn.d.ts +3 -0
- package/dist/decorators/PrimaryGeneratedColumn.d.ts.map +1 -0
- package/dist/decorators/PrimaryGeneratedColumn.js +17 -0
- package/dist/decorators/PrimaryGeneratedColumn.js.map +1 -0
- package/dist/decorators/Transactional.d.ts +15 -0
- package/dist/decorators/Transactional.d.ts.map +1 -0
- package/dist/decorators/Transactional.js +76 -0
- package/dist/decorators/Transactional.js.map +1 -0
- package/dist/decorators/UniqueIndex.d.ts +7 -0
- package/dist/decorators/UniqueIndex.d.ts.map +1 -0
- package/dist/decorators/UniqueIndex.js +12 -0
- package/dist/decorators/UniqueIndex.js.map +1 -0
- package/dist/decorators/Validation.d.ts +15 -0
- package/dist/decorators/Validation.d.ts.map +1 -0
- package/dist/decorators/Validation.js +64 -0
- package/dist/decorators/Validation.js.map +1 -0
- package/dist/decorators/Version.d.ts +3 -0
- package/dist/decorators/Version.d.ts.map +1 -0
- package/dist/decorators/Version.js +17 -0
- package/dist/decorators/Version.js.map +1 -0
- package/dist/decorators/index.d.ts +19 -0
- package/dist/decorators/index.d.ts.map +1 -0
- package/dist/decorators/index.js +35 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/dialects/ConnectionLeakDetector.d.ts +19 -0
- package/dist/dialects/ConnectionLeakDetector.d.ts.map +1 -0
- package/dist/dialects/ConnectionLeakDetector.js +50 -0
- package/dist/dialects/ConnectionLeakDetector.js.map +1 -0
- package/dist/dialects/EntityNotFound.d.ts +4 -0
- package/dist/dialects/EntityNotFound.d.ts.map +1 -0
- package/dist/dialects/EntityNotFound.js +10 -0
- package/dist/dialects/EntityNotFound.js.map +1 -0
- package/dist/dialects/FindOption.d.ts +20 -0
- package/dist/dialects/FindOption.d.ts.map +1 -0
- package/dist/dialects/FindOption.js +3 -0
- package/dist/dialects/FindOption.js.map +1 -0
- package/dist/dialects/IConnection.d.ts +7 -0
- package/dist/dialects/IConnection.d.ts.map +1 -0
- package/dist/dialects/IConnection.js +3 -0
- package/dist/dialects/IConnection.js.map +1 -0
- package/dist/dialects/IDataSource.d.ts +12 -0
- package/dist/dialects/IDataSource.d.ts.map +1 -0
- package/dist/dialects/IDataSource.js +3 -0
- package/dist/dialects/IDataSource.js.map +1 -0
- package/dist/dialects/IOrderBy.d.ts +4 -0
- package/dist/dialects/IOrderBy.d.ts.map +1 -0
- package/dist/dialects/IOrderBy.js +3 -0
- package/dist/dialects/IOrderBy.js.map +1 -0
- package/dist/dialects/IQueryEngine.d.ts +15 -0
- package/dist/dialects/IQueryEngine.d.ts.map +1 -0
- package/dist/dialects/IQueryEngine.js +7 -0
- package/dist/dialects/IQueryEngine.js.map +1 -0
- package/dist/dialects/ISelectOption.d.ts +7 -0
- package/dist/dialects/ISelectOption.d.ts.map +1 -0
- package/dist/dialects/ISelectOption.js +3 -0
- package/dist/dialects/ISelectOption.js.map +1 -0
- package/dist/dialects/ITenantMigrationRunner.d.ts +16 -0
- package/dist/dialects/ITenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/ITenantMigrationRunner.js +3 -0
- package/dist/dialects/ITenantMigrationRunner.js.map +1 -0
- package/dist/dialects/ITxEngine.d.ts +9 -0
- package/dist/dialects/ITxEngine.d.ts.map +1 -0
- package/dist/dialects/ITxEngine.js +3 -0
- package/dist/dialects/ITxEngine.js.map +1 -0
- package/dist/dialects/IsolationLevel.d.ts +2 -0
- package/dist/dialects/IsolationLevel.d.ts.map +1 -0
- package/dist/dialects/IsolationLevel.js +3 -0
- package/dist/dialects/IsolationLevel.js.map +1 -0
- package/dist/dialects/ReplicationRouter.d.ts +28 -0
- package/dist/dialects/ReplicationRouter.d.ts.map +1 -0
- package/dist/dialects/ReplicationRouter.js +64 -0
- package/dist/dialects/ReplicationRouter.js.map +1 -0
- package/dist/dialects/SqlDriver.d.ts +43 -0
- package/dist/dialects/SqlDriver.d.ts.map +1 -0
- package/dist/dialects/SqlDriver.js +3 -0
- package/dist/dialects/SqlDriver.js.map +1 -0
- package/dist/dialects/TransactionSessionManager.d.ts +21 -0
- package/dist/dialects/TransactionSessionManager.d.ts.map +1 -0
- package/dist/dialects/TransactionSessionManager.js +112 -0
- package/dist/dialects/TransactionSessionManager.js.map +1 -0
- package/dist/dialects/index.d.ts +32 -0
- package/dist/dialects/index.d.ts.map +1 -0
- package/dist/dialects/index.js +65 -0
- package/dist/dialects/index.js.map +1 -0
- package/dist/dialects/mysql/BaseSchema.d.ts +9 -0
- package/dist/dialects/mysql/BaseSchema.d.ts.map +1 -0
- package/dist/dialects/mysql/BaseSchema.js +3 -0
- package/dist/dialects/mysql/BaseSchema.js.map +1 -0
- package/dist/dialects/mysql/Connection.d.ts +9 -0
- package/dist/dialects/mysql/Connection.d.ts.map +1 -0
- package/dist/dialects/mysql/Connection.js +3 -0
- package/dist/dialects/mysql/Connection.js.map +1 -0
- package/dist/dialects/mysql/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/mysql/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/mysql/ConnectionNotFound.js +10 -0
- package/dist/dialects/mysql/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/mysql/MySqlConnectionError.d.ts +4 -0
- package/dist/dialects/mysql/MySqlConnectionError.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlConnectionError.js +10 -0
- package/dist/dialects/mysql/MySqlConnectionError.js.map +1 -0
- package/dist/dialects/mysql/MySqlConnector.d.ts +26 -0
- package/dist/dialects/mysql/MySqlConnector.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlConnector.js +195 -0
- package/dist/dialects/mysql/MySqlConnector.js.map +1 -0
- package/dist/dialects/mysql/MySqlDataSource.d.ts +17 -0
- package/dist/dialects/mysql/MySqlDataSource.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlDataSource.js +63 -0
- package/dist/dialects/mysql/MySqlDataSource.js.map +1 -0
- package/dist/dialects/mysql/MySqlDriver.d.ts +49 -0
- package/dist/dialects/mysql/MySqlDriver.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlDriver.js +260 -0
- package/dist/dialects/mysql/MySqlDriver.js.map +1 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.d.ts +11 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.js +31 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/mysql/MysqlConnection.d.ts +12 -0
- package/dist/dialects/mysql/MysqlConnection.d.ts.map +1 -0
- package/dist/dialects/mysql/MysqlConnection.js +26 -0
- package/dist/dialects/mysql/MysqlConnection.js.map +1 -0
- package/dist/dialects/mysql/PoolNotFound.d.ts +4 -0
- package/dist/dialects/mysql/PoolNotFound.d.ts.map +1 -0
- package/dist/dialects/mysql/PoolNotFound.js +10 -0
- package/dist/dialects/mysql/PoolNotFound.js.map +1 -0
- package/dist/dialects/mysql/index.d.ts +10 -0
- package/dist/dialects/mysql/index.d.ts.map +1 -0
- package/dist/dialects/mysql/index.js +26 -0
- package/dist/dialects/mysql/index.js.map +1 -0
- package/dist/dialects/postgres/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/postgres/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/postgres/ConnectionNotFound.js +10 -0
- package/dist/dialects/postgres/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/postgres/PoolNotFound.d.ts +4 -0
- package/dist/dialects/postgres/PoolNotFound.d.ts.map +1 -0
- package/dist/dialects/postgres/PoolNotFound.js +10 -0
- package/dist/dialects/postgres/PoolNotFound.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnection.d.ts +12 -0
- package/dist/dialects/postgres/PostgresConnection.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnection.js +26 -0
- package/dist/dialects/postgres/PostgresConnection.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnectionError.d.ts +4 -0
- package/dist/dialects/postgres/PostgresConnectionError.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnectionError.js +10 -0
- package/dist/dialects/postgres/PostgresConnectionError.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnector.d.ts +24 -0
- package/dist/dialects/postgres/PostgresConnector.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnector.js +158 -0
- package/dist/dialects/postgres/PostgresConnector.js.map +1 -0
- package/dist/dialects/postgres/PostgresDataSource.d.ts +18 -0
- package/dist/dialects/postgres/PostgresDataSource.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresDataSource.js +66 -0
- package/dist/dialects/postgres/PostgresDataSource.js.map +1 -0
- package/dist/dialects/postgres/PostgresDriver.d.ts +71 -0
- package/dist/dialects/postgres/PostgresDriver.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresDriver.js +440 -0
- package/dist/dialects/postgres/PostgresDriver.js.map +1 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.d.ts +18 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.js +78 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/postgres/index.d.ts +8 -0
- package/dist/dialects/postgres/index.d.ts.map +1 -0
- package/dist/dialects/postgres/index.js +26 -0
- package/dist/dialects/postgres/index.js.map +1 -0
- package/dist/dialects/sqlite/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/sqlite/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/sqlite/ConnectionNotFound.js +10 -0
- package/dist/dialects/sqlite/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnection.d.ts +12 -0
- package/dist/dialects/sqlite/SqliteConnection.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnection.js +23 -0
- package/dist/dialects/sqlite/SqliteConnection.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnectionError.d.ts +4 -0
- package/dist/dialects/sqlite/SqliteConnectionError.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnectionError.js +10 -0
- package/dist/dialects/sqlite/SqliteConnectionError.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnector.d.ts +24 -0
- package/dist/dialects/sqlite/SqliteConnector.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnector.js +119 -0
- package/dist/dialects/sqlite/SqliteConnector.js.map +1 -0
- package/dist/dialects/sqlite/SqliteDataSource.d.ts +18 -0
- package/dist/dialects/sqlite/SqliteDataSource.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteDataSource.js +56 -0
- package/dist/dialects/sqlite/SqliteDataSource.js.map +1 -0
- package/dist/dialects/sqlite/SqliteDriver.d.ts +49 -0
- package/dist/dialects/sqlite/SqliteDriver.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteDriver.js +234 -0
- package/dist/dialects/sqlite/SqliteDriver.js.map +1 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.d.ts +11 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.js +31 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/sqlite/index.d.ts +7 -0
- package/dist/dialects/sqlite/index.d.ts.map +1 -0
- package/dist/dialects/sqlite/index.js +23 -0
- package/dist/dialects/sqlite/index.js.map +1 -0
- package/dist/errors/AdvisoryLockError.d.ts +5 -0
- package/dist/errors/AdvisoryLockError.d.ts.map +1 -0
- package/dist/errors/AdvisoryLockError.js +13 -0
- package/dist/errors/AdvisoryLockError.js.map +1 -0
- package/dist/errors/DatabaseConnectionFailedError.d.ts +5 -0
- package/dist/errors/DatabaseConnectionFailedError.d.ts.map +1 -0
- package/dist/errors/DatabaseConnectionFailedError.js +11 -0
- package/dist/errors/DatabaseConnectionFailedError.js.map +1 -0
- package/dist/errors/DatabaseNotConnectedError.d.ts +5 -0
- package/dist/errors/DatabaseNotConnectedError.d.ts.map +1 -0
- package/dist/errors/DatabaseNotConnectedError.js +11 -0
- package/dist/errors/DatabaseNotConnectedError.js.map +1 -0
- package/dist/errors/DeleteWithoutConditionsError.d.ts +5 -0
- package/dist/errors/DeleteWithoutConditionsError.d.ts.map +1 -0
- package/dist/errors/DeleteWithoutConditionsError.js +13 -0
- package/dist/errors/DeleteWithoutConditionsError.js.map +1 -0
- package/dist/errors/EntityMetadataNotFoundError.d.ts +5 -0
- package/dist/errors/EntityMetadataNotFoundError.d.ts.map +1 -0
- package/dist/errors/EntityMetadataNotFoundError.js +13 -0
- package/dist/errors/EntityMetadataNotFoundError.js.map +1 -0
- package/dist/errors/EntityNotFoundError.d.ts +5 -0
- package/dist/errors/EntityNotFoundError.d.ts.map +1 -0
- package/dist/errors/EntityNotFoundError.js +13 -0
- package/dist/errors/EntityNotFoundError.js.map +1 -0
- package/dist/errors/Exception.d.ts +5 -0
- package/dist/errors/Exception.d.ts.map +1 -0
- package/dist/errors/Exception.js +11 -0
- package/dist/errors/Exception.js.map +1 -0
- package/dist/errors/InvalidQueryError.d.ts +5 -0
- package/dist/errors/InvalidQueryError.d.ts.map +1 -0
- package/dist/errors/InvalidQueryError.js +13 -0
- package/dist/errors/InvalidQueryError.js.map +1 -0
- package/dist/errors/NotSupportedDatabaseTypeError.d.ts +5 -0
- package/dist/errors/NotSupportedDatabaseTypeError.d.ts.map +1 -0
- package/dist/errors/NotSupportedDatabaseTypeError.js +11 -0
- package/dist/errors/NotSupportedDatabaseTypeError.js.map +1 -0
- package/dist/errors/OrmError.d.ts +6 -0
- package/dist/errors/OrmError.d.ts.map +1 -0
- package/dist/errors/OrmError.js +12 -0
- package/dist/errors/OrmError.js.map +1 -0
- package/dist/errors/OrmErrorCode.d.ts +16 -0
- package/dist/errors/OrmErrorCode.d.ts.map +1 -0
- package/dist/errors/OrmErrorCode.js +20 -0
- package/dist/errors/OrmErrorCode.js.map +1 -0
- package/dist/errors/PrimaryKeyNotFoundError.d.ts +5 -0
- package/dist/errors/PrimaryKeyNotFoundError.d.ts.map +1 -0
- package/dist/errors/PrimaryKeyNotFoundError.js +13 -0
- package/dist/errors/PrimaryKeyNotFoundError.js.map +1 -0
- package/dist/errors/QueryTimeoutError.d.ts +5 -0
- package/dist/errors/QueryTimeoutError.d.ts.map +1 -0
- package/dist/errors/QueryTimeoutError.js +13 -0
- package/dist/errors/QueryTimeoutError.js.map +1 -0
- package/dist/errors/TransactionError.d.ts +5 -0
- package/dist/errors/TransactionError.d.ts.map +1 -0
- package/dist/errors/TransactionError.js +13 -0
- package/dist/errors/TransactionError.js.map +1 -0
- package/dist/errors/ValidationError.d.ts +6 -0
- package/dist/errors/ValidationError.d.ts.map +1 -0
- package/dist/errors/ValidationError.js +13 -0
- package/dist/errors/ValidationError.js.map +1 -0
- package/dist/errors/index.d.ts +16 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +32 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/metadata/LayeredMetadataScanner.d.ts +32 -0
- package/dist/metadata/LayeredMetadataScanner.d.ts.map +1 -0
- package/dist/metadata/LayeredMetadataScanner.js +119 -0
- package/dist/metadata/LayeredMetadataScanner.js.map +1 -0
- package/dist/metadata/LayeredMetadataStore.d.ts +30 -0
- package/dist/metadata/LayeredMetadataStore.d.ts.map +1 -0
- package/dist/metadata/LayeredMetadataStore.js +150 -0
- package/dist/metadata/LayeredMetadataStore.js.map +1 -0
- package/dist/metadata/MetadataContext.d.ts +11 -0
- package/dist/metadata/MetadataContext.d.ts.map +1 -0
- package/dist/metadata/MetadataContext.js +23 -0
- package/dist/metadata/MetadataContext.js.map +1 -0
- package/dist/metadata/MetadataLayer.d.ts +27 -0
- package/dist/metadata/MetadataLayer.d.ts.map +1 -0
- package/dist/metadata/MetadataLayer.js +78 -0
- package/dist/metadata/MetadataLayer.js.map +1 -0
- package/dist/metadata/MetadataPath.d.ts +24 -0
- package/dist/metadata/MetadataPath.d.ts.map +1 -0
- package/dist/metadata/MetadataPath.js +104 -0
- package/dist/metadata/MetadataPath.js.map +1 -0
- package/dist/metadata/MultiTenantMetadataManager.d.ts +27 -0
- package/dist/metadata/MultiTenantMetadataManager.d.ts.map +1 -0
- package/dist/metadata/MultiTenantMetadataManager.js +69 -0
- package/dist/metadata/MultiTenantMetadataManager.js.map +1 -0
- package/dist/metadata/index.d.ts +7 -0
- package/dist/metadata/index.d.ts.map +1 -0
- package/dist/metadata/index.js +23 -0
- package/dist/metadata/index.js.map +1 -0
- package/dist/migration/Migration.d.ts +11 -0
- package/dist/migration/Migration.d.ts.map +1 -0
- package/dist/migration/Migration.js +10 -0
- package/dist/migration/Migration.js.map +1 -0
- package/dist/migration/MigrationCli.d.ts +25 -0
- package/dist/migration/MigrationCli.d.ts.map +1 -0
- package/dist/migration/MigrationCli.js +108 -0
- package/dist/migration/MigrationCli.js.map +1 -0
- package/dist/migration/MigrationRunner.d.ts +47 -0
- package/dist/migration/MigrationRunner.d.ts.map +1 -0
- package/dist/migration/MigrationRunner.js +182 -0
- package/dist/migration/MigrationRunner.js.map +1 -0
- package/dist/migration/index.d.ts +4 -0
- package/dist/migration/index.d.ts.map +1 -0
- package/dist/migration/index.js +20 -0
- package/dist/migration/index.js.map +1 -0
- package/dist/scanner/ColumnScanner.d.ts +16 -0
- package/dist/scanner/ColumnScanner.d.ts.map +1 -0
- package/dist/scanner/ColumnScanner.js +30 -0
- package/dist/scanner/ColumnScanner.js.map +1 -0
- package/dist/scanner/EntityScanner.d.ts +14 -0
- package/dist/scanner/EntityScanner.d.ts.map +1 -0
- package/dist/scanner/EntityScanner.js +38 -0
- package/dist/scanner/EntityScanner.js.map +1 -0
- package/dist/scanner/ManyToManyScanner.d.ts +9 -0
- package/dist/scanner/ManyToManyScanner.d.ts.map +1 -0
- package/dist/scanner/ManyToManyScanner.js +39 -0
- package/dist/scanner/ManyToManyScanner.js.map +1 -0
- package/dist/scanner/ManyToOneScanner.d.ts +9 -0
- package/dist/scanner/ManyToOneScanner.d.ts.map +1 -0
- package/dist/scanner/ManyToOneScanner.js +38 -0
- package/dist/scanner/ManyToOneScanner.js.map +1 -0
- package/dist/scanner/MetadataScanner.d.ts +45 -0
- package/dist/scanner/MetadataScanner.d.ts.map +1 -0
- package/dist/scanner/MetadataScanner.js +200 -0
- package/dist/scanner/MetadataScanner.js.map +1 -0
- package/dist/scanner/OneToManyScanner.d.ts +9 -0
- package/dist/scanner/OneToManyScanner.d.ts.map +1 -0
- package/dist/scanner/OneToManyScanner.js +39 -0
- package/dist/scanner/OneToManyScanner.js.map +1 -0
- package/dist/scanner/OneToOneScanner.d.ts +9 -0
- package/dist/scanner/OneToOneScanner.d.ts.map +1 -0
- package/dist/scanner/OneToOneScanner.js +39 -0
- package/dist/scanner/OneToOneScanner.js.map +1 -0
- package/dist/scanner/index.d.ts +9 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +27 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/types/CascadeType.d.ts +5 -0
- package/dist/types/CascadeType.d.ts.map +1 -0
- package/dist/types/CascadeType.js +19 -0
- package/dist/types/CascadeType.js.map +1 -0
- package/dist/types/ColumnPaths.d.ts +7 -0
- package/dist/types/ColumnPaths.d.ts.map +1 -0
- package/dist/types/ColumnPaths.js +3 -0
- package/dist/types/ColumnPaths.js.map +1 -0
- package/dist/types/DeepPartial.d.ts +4 -0
- package/dist/types/DeepPartial.d.ts.map +1 -0
- package/dist/types/DeepPartial.js +3 -0
- package/dist/types/DeepPartial.js.map +1 -0
- package/dist/types/DeleteResult.d.ts +4 -0
- package/dist/types/DeleteResult.d.ts.map +1 -0
- package/dist/types/DeleteResult.js +3 -0
- package/dist/types/DeleteResult.js.map +1 -0
- package/dist/types/EntityResult.d.ts +3 -0
- package/dist/types/EntityResult.d.ts.map +1 -0
- package/dist/types/EntityResult.js +3 -0
- package/dist/types/EntityResult.js.map +1 -0
- package/dist/types/FindCondition.d.ts +16 -0
- package/dist/types/FindCondition.d.ts.map +1 -0
- package/dist/types/FindCondition.js +3 -0
- package/dist/types/FindCondition.js.map +1 -0
- package/dist/types/OrderByOption.d.ts +5 -0
- package/dist/types/OrderByOption.d.ts.map +1 -0
- package/dist/types/OrderByOption.js +3 -0
- package/dist/types/OrderByOption.js.map +1 -0
- package/dist/types/QueryResult.d.ts +5 -0
- package/dist/types/QueryResult.d.ts.map +1 -0
- package/dist/types/QueryResult.js +3 -0
- package/dist/types/QueryResult.js.map +1 -0
- package/dist/types/SchemaOption.d.ts +3 -0
- package/dist/types/SchemaOption.d.ts.map +1 -0
- package/dist/types/SchemaOption.js +3 -0
- package/dist/types/SchemaOption.js.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +25 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/Logger.d.ts +15 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +75 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/ReflectManager.d.ts +12 -0
- package/dist/utils/ReflectManager.d.ts.map +1 -0
- package/dist/utils/ReflectManager.js +34 -0
- package/dist/utils/ReflectManager.js.map +1 -0
- package/dist/utils/camelToSnakeCase.d.ts +2 -0
- package/dist/utils/camelToSnakeCase.d.ts.map +1 -0
- package/dist/utils/camelToSnakeCase.js +7 -0
- package/dist/utils/camelToSnakeCase.js.map +1 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +22 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/scanner.d.ts +2 -0
- package/dist/utils/scanner.d.ts.map +1 -0
- package/dist/utils/scanner.js +8 -0
- package/dist/utils/scanner.js.map +1 -0
- package/dist/utils/types.d.ts +5 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +3 -0
- package/dist/utils/types.js.map +1 -0
- package/package.json +87 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 biud436
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<h1 align="center">Stingerloom ORM</h1>
|
|
2
|
+
<p align="center">Decorator-driven TypeScript ORM with multi-tenancy support.</p>
|
|
3
|
+
|
|
4
|
+
<p align="center">
|
|
5
|
+
<img src="https://img.shields.io/badge/tests-1%2C405%20passed-brightgreen" alt="Tests" />
|
|
6
|
+
<img src="https://img.shields.io/badge/license-MIT-blue" alt="License" />
|
|
7
|
+
<img src="https://img.shields.io/badge/TypeScript-strict-3178C6?logo=typescript&logoColor=white" alt="TypeScript" />
|
|
8
|
+
</p>
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
```typescript
|
|
13
|
+
@Entity()
|
|
14
|
+
class User {
|
|
15
|
+
@PrimaryGeneratedColumn() id!: number;
|
|
16
|
+
@Column() name!: string;
|
|
17
|
+
@Column() email!: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const em = new EntityManager();
|
|
21
|
+
await em.register({ type: "postgres", entities: [User], synchronize: true });
|
|
22
|
+
|
|
23
|
+
await em.save(User, { name: "Alice", email: "alice@example.com" });
|
|
24
|
+
await em.find(User, { where: { name: "Alice" } });
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Features
|
|
28
|
+
|
|
29
|
+
- CRUD
|
|
30
|
+
- Relations (ManyToOne, OneToMany, ManyToMany, OneToOne)
|
|
31
|
+
- Eager & Lazy Loading
|
|
32
|
+
- Transactions
|
|
33
|
+
- Migrations
|
|
34
|
+
- Query Builder
|
|
35
|
+
- Multi-tenancy
|
|
36
|
+
- Soft Delete
|
|
37
|
+
- Upsert
|
|
38
|
+
- Cursor Pagination
|
|
39
|
+
- N+1 Detection
|
|
40
|
+
- EntitySubscriber
|
|
41
|
+
- NestJS Integration
|
|
42
|
+
|
|
43
|
+
## Databases
|
|
44
|
+
|
|
45
|
+
PostgreSQL · MySQL · SQLite
|
|
46
|
+
|
|
47
|
+
## Docs
|
|
48
|
+
|
|
49
|
+
See **[docs/](./docs/README.md)** for full documentation.
|
|
50
|
+
|
|
51
|
+
## License
|
|
52
|
+
|
|
53
|
+
[MIT](./LICENSE)
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { DatabaseClientOptions } from "./core/DatabaseClientOptions";
|
|
2
|
+
import { IConnector } from "./core/IConnector";
|
|
3
|
+
export declare class DatabaseClient {
|
|
4
|
+
private static instance;
|
|
5
|
+
private readonly connectors;
|
|
6
|
+
private readonly connectionsOptions;
|
|
7
|
+
private readonly connectionsType;
|
|
8
|
+
private readonly logger;
|
|
9
|
+
private constructor();
|
|
10
|
+
static getInstance(): DatabaseClient;
|
|
11
|
+
get type(): string | undefined;
|
|
12
|
+
connect(options: DatabaseClientOptions, name?: string): Promise<IConnector>;
|
|
13
|
+
private createConnector;
|
|
14
|
+
private connectWithRetry;
|
|
15
|
+
private sleep;
|
|
16
|
+
getConnection(name?: string): IConnector;
|
|
17
|
+
getOptions(name?: string): DatabaseClientOptions;
|
|
18
|
+
getType(name?: string): string | undefined;
|
|
19
|
+
getRegisteredNames(): string[];
|
|
20
|
+
hasConnection(name?: string): boolean;
|
|
21
|
+
close(name?: string): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=DatabaseClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatabaseClient.d.ts","sourceRoot":"","sources":["../src/DatabaseClient.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IAGxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsC;IACjE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACvB;IACZ,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkC;IAElE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAE1D,OAAO;WAEO,WAAW,IAAI,cAAc;IAW3C,IAAW,IAAI,IAAI,MAAM,GAAG,SAAS,CAEpC;IAOY,OAAO,CAClB,OAAO,EAAE,qBAAqB,EAC9B,IAAI,SAAY,GACf,OAAO,CAAC,UAAU,CAAC;IAqBtB,OAAO,CAAC,eAAe;YAkBT,gBAAgB;IA2B9B,OAAO,CAAC,KAAK;IAQN,aAAa,CAAC,IAAI,SAAY,GAAG,UAAU;IAgB3C,UAAU,CAAC,IAAI,SAAY,GAAG,qBAAqB;IAkBnD,OAAO,CAAC,IAAI,SAAY,GAAG,MAAM,GAAG,SAAS;IAO7C,kBAAkB,IAAI,MAAM,EAAE;IAO9B,aAAa,CAAC,IAAI,SAAY,GAAG,OAAO;IAQlC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBjD"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DatabaseClient = void 0;
|
|
4
|
+
const DatabaseNotConnectedError_1 = require("./errors/DatabaseNotConnectedError");
|
|
5
|
+
const MySqlConnector_1 = require("./dialects/mysql/MySqlConnector");
|
|
6
|
+
const PostgresConnector_1 = require("./dialects/postgres/PostgresConnector");
|
|
7
|
+
const SqliteConnector_1 = require("./dialects/sqlite/SqliteConnector");
|
|
8
|
+
const NotSupportedDatabaseTypeError_1 = require("./errors/NotSupportedDatabaseTypeError");
|
|
9
|
+
const errors_1 = require("./errors");
|
|
10
|
+
const Logger_1 = require("./utils/Logger");
|
|
11
|
+
class DatabaseClient {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.connectors = new Map();
|
|
14
|
+
this.connectionsOptions = new Map();
|
|
15
|
+
this.connectionsType = new Map();
|
|
16
|
+
this.logger = new Logger_1.Logger(DatabaseClient.name);
|
|
17
|
+
}
|
|
18
|
+
static getInstance() {
|
|
19
|
+
if (!DatabaseClient.instance) {
|
|
20
|
+
DatabaseClient.instance = new DatabaseClient();
|
|
21
|
+
}
|
|
22
|
+
return DatabaseClient.instance;
|
|
23
|
+
}
|
|
24
|
+
get type() {
|
|
25
|
+
return this.connectionsType.get("default");
|
|
26
|
+
}
|
|
27
|
+
async connect(options, name = "default") {
|
|
28
|
+
const { type } = options;
|
|
29
|
+
this.connectionsType.set(name, type);
|
|
30
|
+
this.connectionsOptions.set(name, options);
|
|
31
|
+
const connector = this.createConnector(type);
|
|
32
|
+
this.connectors.set(name, connector);
|
|
33
|
+
if (options.retry) {
|
|
34
|
+
await this.connectWithRetry(connector, options);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
await connector.connect(options);
|
|
38
|
+
}
|
|
39
|
+
return connector;
|
|
40
|
+
}
|
|
41
|
+
createConnector(type) {
|
|
42
|
+
switch (type) {
|
|
43
|
+
case "mariadb":
|
|
44
|
+
case "mysql":
|
|
45
|
+
return new MySqlConnector_1.MySqlConnector();
|
|
46
|
+
case "postgres":
|
|
47
|
+
return new PostgresConnector_1.PostgresConnector();
|
|
48
|
+
case "sqlite":
|
|
49
|
+
return new SqliteConnector_1.SqliteConnector();
|
|
50
|
+
default:
|
|
51
|
+
throw new NotSupportedDatabaseTypeError_1.NotSupportedDatabaseTypeError();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
async connectWithRetry(connector, options) {
|
|
55
|
+
const { maxAttempts, backoffMs } = options.retry;
|
|
56
|
+
let lastError;
|
|
57
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
58
|
+
try {
|
|
59
|
+
await connector.connect(options);
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
lastError = error;
|
|
64
|
+
if (attempt < maxAttempts) {
|
|
65
|
+
const delay = backoffMs * Math.pow(2, attempt - 1);
|
|
66
|
+
this.logger.warn(`Connection attempt ${attempt}/${maxAttempts} failed. Retrying in ${delay}ms...`);
|
|
67
|
+
await this.sleep(delay);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
this.logger.error(`All ${maxAttempts} connection attempts failed.`);
|
|
72
|
+
throw lastError;
|
|
73
|
+
}
|
|
74
|
+
sleep(ms) {
|
|
75
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
76
|
+
}
|
|
77
|
+
getConnection(name = "default") {
|
|
78
|
+
const connector = this.connectors.get(name);
|
|
79
|
+
if (!connector) {
|
|
80
|
+
if (name === "default") {
|
|
81
|
+
throw new DatabaseNotConnectedError_1.DatabaseNotConnectedError();
|
|
82
|
+
}
|
|
83
|
+
throw new errors_1.Exception(`연결 '${name}'을 찾을 수 없습니다.`, 500);
|
|
84
|
+
}
|
|
85
|
+
return connector;
|
|
86
|
+
}
|
|
87
|
+
getOptions(name = "default") {
|
|
88
|
+
const options = this.connectionsOptions.get(name);
|
|
89
|
+
if (!options) {
|
|
90
|
+
throw new errors_1.Exception(name === "default"
|
|
91
|
+
? "옵션이 존재하지 않습니다."
|
|
92
|
+
: `연결 '${name}'의 옵션을 찾을 수 없습니다.`, 500);
|
|
93
|
+
}
|
|
94
|
+
return options;
|
|
95
|
+
}
|
|
96
|
+
getType(name = "default") {
|
|
97
|
+
return this.connectionsType.get(name);
|
|
98
|
+
}
|
|
99
|
+
getRegisteredNames() {
|
|
100
|
+
return Array.from(this.connectors.keys());
|
|
101
|
+
}
|
|
102
|
+
hasConnection(name = "default") {
|
|
103
|
+
return this.connectors.has(name);
|
|
104
|
+
}
|
|
105
|
+
async close(name) {
|
|
106
|
+
if (name) {
|
|
107
|
+
const connector = this.connectors.get(name);
|
|
108
|
+
if (connector) {
|
|
109
|
+
await connector.close();
|
|
110
|
+
this.connectors.delete(name);
|
|
111
|
+
this.connectionsOptions.delete(name);
|
|
112
|
+
this.connectionsType.delete(name);
|
|
113
|
+
}
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
for (const [connName, connector] of this.connectors) {
|
|
117
|
+
await connector.close();
|
|
118
|
+
this.connectors.delete(connName);
|
|
119
|
+
this.connectionsOptions.delete(connName);
|
|
120
|
+
this.connectionsType.delete(connName);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.DatabaseClient = DatabaseClient;
|
|
125
|
+
//# sourceMappingURL=DatabaseClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatabaseClient.js","sourceRoot":"","sources":["../src/DatabaseClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ClazzType } from "../utils";
|
|
2
|
+
import { FindOption, WhereClause } from "../dialects/FindOption";
|
|
3
|
+
import { BaseRepository } from "./BaseRepository";
|
|
4
|
+
import { EntityResult } from "../types/EntityResult";
|
|
5
|
+
import { DeleteResult } from "../types/DeleteResult";
|
|
6
|
+
import { DatabaseClientOptions } from "./DatabaseClientOptions";
|
|
7
|
+
import { Sql } from "sql-template-tag";
|
|
8
|
+
import { CursorPaginationOption, CursorPaginationResult } from "./CursorPagination";
|
|
9
|
+
export declare abstract class BaseEntityManager {
|
|
10
|
+
abstract register(databaseClientOptions: DatabaseClientOptions): Promise<void>;
|
|
11
|
+
abstract connect(databaseClientOptions: DatabaseClientOptions): Promise<void>;
|
|
12
|
+
abstract propagateShutdown(options?: {
|
|
13
|
+
gracefulTimeoutMs?: number;
|
|
14
|
+
closeConnections?: boolean;
|
|
15
|
+
}): Promise<boolean>;
|
|
16
|
+
abstract findOne<T>(entity: ClazzType<T>, findOption: FindOption<T>): Promise<T | null>;
|
|
17
|
+
abstract find<T>(entity: ClazzType<T>, findOption: FindOption<T>): Promise<EntityResult<T>>;
|
|
18
|
+
abstract findWithCursor<T>(entity: ClazzType<T>, option?: CursorPaginationOption<T>): Promise<CursorPaginationResult<T>>;
|
|
19
|
+
abstract save<T>(entity: ClazzType<T>, item: Partial<T>): Promise<InstanceType<ClazzType<T>>>;
|
|
20
|
+
abstract delete<T>(entity: ClazzType<T>, criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
21
|
+
abstract deleteMany<T>(entity: ClazzType<T>, ids: any[]): Promise<DeleteResult>;
|
|
22
|
+
abstract softDelete<T>(entity: ClazzType<T>, criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
23
|
+
abstract restore<T>(entity: ClazzType<T>, criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
24
|
+
abstract query<T = Record<string, unknown>>(sqlQuery: string | Sql, params?: unknown[]): Promise<T[]>;
|
|
25
|
+
abstract findAndCount<T>(entity: ClazzType<T>, findOption?: FindOption<T>): Promise<[T[], number]>;
|
|
26
|
+
abstract getRepository<T>(entity: ClazzType<T>): BaseRepository<T>;
|
|
27
|
+
abstract withTenant<R>(tenantId: string, callback: (em: this) => Promise<R>): Promise<R>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=BaseEntityManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseEntityManager.d.ts","sourceRoot":"","sources":["../../src/core/BaseEntityManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseEntityManager.js","sourceRoot":"","sources":["../../src/core/BaseEntityManager.ts"],"names":[],"mappings":";;;AAaA,MAAsB,iBAAiB;CAuLtC;AAvLD,8CAuLC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ClazzType } from "../utils";
|
|
2
|
+
import { Sql } from "sql-template-tag";
|
|
3
|
+
export interface BaseInsertQueryBuilder {
|
|
4
|
+
into<T>(entity: ClazzType<T>): BaseInsertQueryBuilder;
|
|
5
|
+
values<T>(data: Partial<T>): BaseInsertQueryBuilder;
|
|
6
|
+
build(): Sql;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=BaseInsertQueryBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseInsertQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/BaseInsertQueryBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAKvC,MAAM,WAAW,sBAAsB;IAOrC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC;IAQtD,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC;IAOpD,KAAK,IAAI,GAAG,CAAC;CACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseInsertQueryBuilder.js","sourceRoot":"","sources":["../../src/core/BaseInsertQueryBuilder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Sql } from "sql-template-tag";
|
|
2
|
+
import { DatabaseType } from "./RawQueryBuilder";
|
|
3
|
+
export interface BaseRawQueryBuilder {
|
|
4
|
+
setDatabaseType(type: DatabaseType): BaseRawQueryBuilder;
|
|
5
|
+
select(columns: string[] | "*"): BaseRawQueryBuilder;
|
|
6
|
+
from(table: string, alias?: string): BaseRawQueryBuilder;
|
|
7
|
+
where(conditions: Sql[]): BaseRawQueryBuilder;
|
|
8
|
+
andWhere(condition: Sql): BaseRawQueryBuilder;
|
|
9
|
+
orWhere(condition: Sql): BaseRawQueryBuilder;
|
|
10
|
+
whereIn(column: string, values: any[]): BaseRawQueryBuilder;
|
|
11
|
+
whereNotIn(column: string, values: any[]): BaseRawQueryBuilder;
|
|
12
|
+
whereNull(column: string): BaseRawQueryBuilder;
|
|
13
|
+
whereNotNull(column: string): BaseRawQueryBuilder;
|
|
14
|
+
whereBetween(column: string, min: any, max: any): BaseRawQueryBuilder;
|
|
15
|
+
orderBy(orders: Array<{
|
|
16
|
+
column: string;
|
|
17
|
+
direction: "ASC" | "DESC";
|
|
18
|
+
}>): BaseRawQueryBuilder;
|
|
19
|
+
limit(limit: number | [number, number]): BaseRawQueryBuilder;
|
|
20
|
+
join(type: "INNER" | "LEFT" | "RIGHT", table: string, alias: string, condition: Sql): BaseRawQueryBuilder;
|
|
21
|
+
leftJoin(table: string, alias: string, condition: Sql): BaseRawQueryBuilder;
|
|
22
|
+
innerJoin(table: string, alias: string, condition: Sql): BaseRawQueryBuilder;
|
|
23
|
+
rightJoin(table: string, alias: string, condition: Sql): BaseRawQueryBuilder;
|
|
24
|
+
offset(offset: number): BaseRawQueryBuilder;
|
|
25
|
+
groupBy(columns: string[]): BaseRawQueryBuilder;
|
|
26
|
+
having(conditions: Sql[]): BaseRawQueryBuilder;
|
|
27
|
+
appendSql(sqlFragment: Sql): BaseRawQueryBuilder;
|
|
28
|
+
as(alias: string): Sql;
|
|
29
|
+
asInQuery(): Sql;
|
|
30
|
+
asExists(): Sql;
|
|
31
|
+
build(): Sql;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=BaseRawQueryBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseRawQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/BaseRawQueryBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMjD,MAAM,WAAW,mBAAmB;IAMlC,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,mBAAmB,CAAC;IAOzD,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,mBAAmB,CAAC;IAQrD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAOzD,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAM9C,QAAQ,CAAC,SAAS,EAAE,GAAG,GAAG,mBAAmB,CAAC;IAM9C,OAAO,CAAC,SAAS,EAAE,GAAG,GAAG,mBAAmB,CAAC;IAK7C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAK5D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAK/D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAK/C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAKlD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,mBAAmB,CAAC;IAOtE,OAAO,CACL,MAAM,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC,GAC3D,mBAAmB,CAAC;IAOvB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,mBAAmB,CAAC;IAU7D,IAAI,CACF,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,EAChC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,GAAG,GACb,mBAAmB,CAAC;IAMvB,QAAQ,CACN,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,GAAG,GACb,mBAAmB,CAAC;IAMvB,SAAS,CACP,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,GAAG,GACb,mBAAmB,CAAC;IAMvB,SAAS,CACP,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,GAAG,GACb,mBAAmB,CAAC;IAOvB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAO5C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC;IAOhD,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAO/C,SAAS,CAAC,WAAW,EAAE,GAAG,GAAG,mBAAmB,CAAC;IAOjD,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;IAMvB,SAAS,IAAI,GAAG,CAAC;IAMjB,QAAQ,IAAI,GAAG,CAAC;IAMhB,KAAK,IAAI,GAAG,CAAC;CACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseRawQueryBuilder.js","sourceRoot":"","sources":["../../src/core/BaseRawQueryBuilder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ClazzType } from "../utils";
|
|
2
|
+
import { FindOption, WhereClause } from "../dialects/FindOption";
|
|
3
|
+
import { EntityManager } from "./EntityManager";
|
|
4
|
+
import { EntityResult } from "../types/EntityResult";
|
|
5
|
+
import { DeleteResult } from "../types/DeleteResult";
|
|
6
|
+
import { CursorPaginationOption, CursorPaginationResult } from "./CursorPagination";
|
|
7
|
+
import { ExplainResult } from "./ExplainResult";
|
|
8
|
+
export declare class BaseRepository<T> {
|
|
9
|
+
private readonly entity;
|
|
10
|
+
private readonly em;
|
|
11
|
+
constructor(entity: ClazzType<T>, em: EntityManager);
|
|
12
|
+
save(item: Partial<T>): Promise<InstanceType<ClazzType<T>>>;
|
|
13
|
+
find(findOption?: FindOption<T>): Promise<EntityResult<T>>;
|
|
14
|
+
findOne(findOption: FindOption<T>): Promise<T | null>;
|
|
15
|
+
findWithCursor(option?: CursorPaginationOption<T>): Promise<CursorPaginationResult<T>>;
|
|
16
|
+
findAndCount(findOption?: FindOption<T>): Promise<[T[], number]>;
|
|
17
|
+
static of<T>(entity: ClazzType<T>, em: EntityManager): BaseRepository<T>;
|
|
18
|
+
delete(criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
19
|
+
remove(item: T): Promise<DeleteResult>;
|
|
20
|
+
softDelete(criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
21
|
+
restore(criteria: WhereClause<T>): Promise<DeleteResult>;
|
|
22
|
+
saveMany(items: Partial<T>[]): Promise<InstanceType<ClazzType<T>>[]>;
|
|
23
|
+
insertMany(items: Partial<T>[]): Promise<{
|
|
24
|
+
affected: number;
|
|
25
|
+
}>;
|
|
26
|
+
deleteMany(ids: any[]): Promise<DeleteResult>;
|
|
27
|
+
clear(): Promise<void>;
|
|
28
|
+
count(where?: WhereClause<T>): Promise<number>;
|
|
29
|
+
sum(field: keyof T & string, where?: WhereClause<T>): Promise<number>;
|
|
30
|
+
avg(field: keyof T & string, where?: WhereClause<T>): Promise<number>;
|
|
31
|
+
min(field: keyof T & string, where?: WhereClause<T>): Promise<number>;
|
|
32
|
+
max(field: keyof T & string, where?: WhereClause<T>): Promise<number>;
|
|
33
|
+
explain(findOption?: FindOption<T>): Promise<ExplainResult>;
|
|
34
|
+
upsert(data: Partial<T>, conflictColumns?: string[]): Promise<void>;
|
|
35
|
+
persist(item: T): Promise<InstanceType<ClazzType<T>>>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=BaseRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseRepository.d.ts","sourceRoot":"","sources":["../../src/core/BaseRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseRepository = void 0;
|
|
4
|
+
class BaseRepository {
|
|
5
|
+
constructor(entity, em) {
|
|
6
|
+
this.entity = entity;
|
|
7
|
+
this.em = em;
|
|
8
|
+
}
|
|
9
|
+
async save(item) {
|
|
10
|
+
return await this.em.save(this.entity, item);
|
|
11
|
+
}
|
|
12
|
+
async find(findOption) {
|
|
13
|
+
return await this.em.find(this.entity, findOption);
|
|
14
|
+
}
|
|
15
|
+
async findOne(findOption) {
|
|
16
|
+
return await this.em.findOne(this.entity, findOption);
|
|
17
|
+
}
|
|
18
|
+
async findWithCursor(option) {
|
|
19
|
+
return await this.em.findWithCursor(this.entity, option);
|
|
20
|
+
}
|
|
21
|
+
async findAndCount(findOption) {
|
|
22
|
+
return await this.em.findAndCount(this.entity, findOption);
|
|
23
|
+
}
|
|
24
|
+
static of(entity, em) {
|
|
25
|
+
return new BaseRepository(entity, em);
|
|
26
|
+
}
|
|
27
|
+
async delete(criteria) {
|
|
28
|
+
return await this.em.delete(this.entity, criteria);
|
|
29
|
+
}
|
|
30
|
+
async remove(item) {
|
|
31
|
+
return await this.em.delete(this.entity, item);
|
|
32
|
+
}
|
|
33
|
+
async softDelete(criteria) {
|
|
34
|
+
return await this.em.softDelete(this.entity, criteria);
|
|
35
|
+
}
|
|
36
|
+
async restore(criteria) {
|
|
37
|
+
return await this.em.restore(this.entity, criteria);
|
|
38
|
+
}
|
|
39
|
+
async saveMany(items) {
|
|
40
|
+
return await this.em.saveMany(this.entity, items);
|
|
41
|
+
}
|
|
42
|
+
async insertMany(items) {
|
|
43
|
+
return await this.em.insertMany(this.entity, items);
|
|
44
|
+
}
|
|
45
|
+
async deleteMany(ids) {
|
|
46
|
+
return await this.em.deleteMany(this.entity, ids);
|
|
47
|
+
}
|
|
48
|
+
async clear() {
|
|
49
|
+
return await this.em.clear(this.entity);
|
|
50
|
+
}
|
|
51
|
+
async count(where) {
|
|
52
|
+
return await this.em.count(this.entity, where);
|
|
53
|
+
}
|
|
54
|
+
async sum(field, where) {
|
|
55
|
+
return await this.em.sum(this.entity, field, where);
|
|
56
|
+
}
|
|
57
|
+
async avg(field, where) {
|
|
58
|
+
return await this.em.avg(this.entity, field, where);
|
|
59
|
+
}
|
|
60
|
+
async min(field, where) {
|
|
61
|
+
return await this.em.min(this.entity, field, where);
|
|
62
|
+
}
|
|
63
|
+
async max(field, where) {
|
|
64
|
+
return await this.em.max(this.entity, field, where);
|
|
65
|
+
}
|
|
66
|
+
async explain(findOption) {
|
|
67
|
+
return await this.em.explain(this.entity, findOption);
|
|
68
|
+
}
|
|
69
|
+
async upsert(data, conflictColumns) {
|
|
70
|
+
return await this.em.upsert(this.entity, data, conflictColumns);
|
|
71
|
+
}
|
|
72
|
+
async persist(item) {
|
|
73
|
+
return await this.em.save(this.entity, item);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.BaseRepository = BaseRepository;
|
|
77
|
+
//# sourceMappingURL=BaseRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseRepository.js","sourceRoot":"","sources":["../../src/core/BaseRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { MyClassConstructor } from "./MyClassConstructor";
|
|
2
|
+
import type { QueryResult } from "../types/QueryResult";
|
|
3
|
+
export interface BaseResultTransformer {
|
|
4
|
+
toEntity<T>(entityClass: MyClassConstructor<T>, result: QueryResult<any> | undefined): T | undefined;
|
|
5
|
+
toEntities<T>(entityClass: MyClassConstructor<T>, result: QueryResult<any> | undefined): T[];
|
|
6
|
+
transform<T>(entityClass: MyClassConstructor<T>, result: QueryResult<any> | undefined): T | T[] | undefined;
|
|
7
|
+
transformNested<T>(entityClass: MyClassConstructor<T>, result: QueryResult<any> | undefined, relations: {
|
|
8
|
+
[key: string]: MyClassConstructor<any>;
|
|
9
|
+
}): T | T[] | undefined;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=BaseResultTransformer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseResultTransformer.d.ts","sourceRoot":"","sources":["../../src/core/BaseResultTransformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,WAAW,qBAAqB;IAIpC,QAAQ,CAAC,CAAC,EACR,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,GACnC,CAAC,GAAG,SAAS,CAAC;IAIjB,UAAU,CAAC,CAAC,EACV,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,GACnC,CAAC,EAAE,CAAC;IAOP,SAAS,CAAC,CAAC,EACT,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,GACnC,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;IAIvB,eAAe,CAAC,CAAC,EACf,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,EACpC,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;KAAE,GACpD,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseResultTransformer.js","sourceRoot":"","sources":["../../src/core/BaseResultTransformer.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Sql } from "sql-template-tag";
|
|
2
|
+
export declare class Conditions {
|
|
3
|
+
static equals(column: string, value: any): Sql;
|
|
4
|
+
static notEquals(column: string, value: any): Sql;
|
|
5
|
+
static in(column: string, values: any[]): Sql;
|
|
6
|
+
static notIn(column: string, values: any[]): Sql;
|
|
7
|
+
static like(column: string, pattern: string): Sql;
|
|
8
|
+
static notLike(column: string, pattern: string): Sql;
|
|
9
|
+
static isNull(column: string): Sql;
|
|
10
|
+
static isNotNull(column: string): Sql;
|
|
11
|
+
static between(column: string, start: any, end: any): Sql;
|
|
12
|
+
static notBetween(column: string, start: any, end: any): Sql;
|
|
13
|
+
static gt(column: string | Sql, value: any): Sql;
|
|
14
|
+
static gte(column: string, value: any): Sql;
|
|
15
|
+
static lt(column: string | Sql, value: any): Sql;
|
|
16
|
+
static lte(column: string, value: any): Sql;
|
|
17
|
+
static or(conditions: Sql[]): Sql;
|
|
18
|
+
static and(conditions: Sql[]): Sql;
|
|
19
|
+
static raw(condition: string): Sql;
|
|
20
|
+
static aggregate(fn: string, column: string): Sql;
|
|
21
|
+
static count(column: string): Sql;
|
|
22
|
+
static sum(column: string): Sql;
|
|
23
|
+
static avg(column: string): Sql;
|
|
24
|
+
static inSubquery(column: string, subquery: Sql): Sql;
|
|
25
|
+
static notInSubquery(column: string, subquery: Sql): Sql;
|
|
26
|
+
static exists(subquery: Sql): Sql;
|
|
27
|
+
static notExists(subquery: Sql): Sql;
|
|
28
|
+
private static readonly ALLOWED_OPERATORS;
|
|
29
|
+
private static validateOperator;
|
|
30
|
+
static compareSubquery(column: string, operator: string, subquery: Sql): Sql;
|
|
31
|
+
static compareColumns(column1: string, operator: string, column2: string): Sql;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=Conditions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Conditions.d.ts","sourceRoot":"","sources":["../../src/core/Conditions.ts"],"names":[],"mappings":"AACA,OAAY,EAAE,GAAG,EAAa,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,UAAU;IAIrB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAO9C,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAOjD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG;IAU7C,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG;IAUhD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG;IAOjD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG;IAOpD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAOlC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAOrC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG;IAOzD,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG;IAO5D,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAUhD,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAO3C,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAUhD,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG;IAO3C,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG;IAOjC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG;IAOlC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG;IAOlC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG;IAOjD,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAOjC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAO/B,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAO/B,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG;IAOrD,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG;IAOxD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,GAAG;IAYjC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,GAAG;IAIpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAavC;IAEF,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAY/B,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG;IAQ5E,MAAM,CAAC,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,GAAG;CAIP"}
|