drizzle-orm 0.10.21 → 0.10.24
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 +674 -0
- package/{builders → dist/builders}/aggregators/abstractAggregator.d.ts +0 -0
- package/{builders → dist/builders}/aggregators/abstractAggregator.js +0 -0
- package/{builders → dist/builders}/aggregators/deleteAggregator.d.ts +0 -0
- package/{builders → dist/builders}/aggregators/deleteAggregator.js +4 -1
- package/{builders → dist/builders}/aggregators/insertAggregator.d.ts +0 -0
- package/{builders → dist/builders}/aggregators/insertAggregator.js +4 -1
- package/{builders → dist/builders}/aggregators/selectAggregator.d.ts +0 -0
- package/{builders → dist/builders}/aggregators/selectAggregator.js +24 -9
- package/{builders → dist/builders}/aggregators/updateAggregator.d.ts +0 -0
- package/{builders → dist/builders}/aggregators/updateAggregator.js +4 -1
- package/{builders → dist/builders}/highLvlBuilders/abstractRequestBuilder.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/abstractRequestBuilder.js +0 -0
- package/{builders → dist/builders}/highLvlBuilders/deleteRequestBuilder.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/deleteRequestBuilder.js +26 -4
- package/{builders → dist/builders}/highLvlBuilders/insertRequestBuilder.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/insertRequestBuilder.js +26 -4
- package/{builders → dist/builders}/highLvlBuilders/order.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/order.js +0 -0
- package/{builders → dist/builders}/highLvlBuilders/selectRequestBuilder.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/selectRequestBuilder.js +26 -4
- package/{builders → dist/builders}/highLvlBuilders/updateRequestBuilder.d.ts +0 -0
- package/{builders → dist/builders}/highLvlBuilders/updateRequestBuilder.js +26 -4
- package/{builders → dist/builders}/index.d.ts +0 -0
- package/{builders → dist/builders}/index.js +19 -16
- package/{builders → dist/builders}/joinBuilders/builders/abstractJoinBuilder.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/abstractJoinBuilder.js +25 -3
- package/{builders → dist/builders}/joinBuilders/builders/selectWithFiveJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/selectWithFiveJoins.js +5 -2
- package/{builders → dist/builders}/joinBuilders/builders/selectWithFourJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/selectWithFourJoins.js +7 -4
- package/{builders → dist/builders}/joinBuilders/builders/selectWithJoin.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/selectWithJoin.js +7 -4
- package/{builders → dist/builders}/joinBuilders/builders/selectWithThreeJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/selectWithThreeJoins.js +7 -4
- package/{builders → dist/builders}/joinBuilders/builders/selectWithTwoJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/builders/selectWithTwoJoins.js +7 -4
- package/{builders → dist/builders}/joinBuilders/join.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/join.js +0 -0
- package/{builders → dist/builders}/joinBuilders/joinWith.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/joinWith.js +4 -1
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseFiveJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseFiveJoins.js +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseFourJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseFourJoins.js +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseThreeJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseThreeJoins.js +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseTwoJoins.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseTwoJoins.js +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseWithJoin.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/responses/selectResponseWithJoin.js +0 -0
- package/{builders → dist/builders}/joinBuilders/static.d.ts +0 -0
- package/{builders → dist/builders}/joinBuilders/static.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/alter.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/alter.js +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/create.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/create.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/delets/delete.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/delets/delete.js +5 -2
- package/{builders → dist/builders}/lowLvlBuilders/delets/deleteFilter.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/delets/deleteFilter.js +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/delets/deleteFrom.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/delets/deleteFrom.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/inserts/insert.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/inserts/insert.js +5 -2
- package/{builders → dist/builders}/lowLvlBuilders/inserts/insertInto.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/inserts/insertInto.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/inserts/onConflictInsert.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/inserts/onConflictInsert.js +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/inserts/valuesInsert.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/inserts/valuesInsert.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/selects/select.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/selects/select.js +5 -2
- package/{builders → dist/builders}/lowLvlBuilders/selects/selectFrom.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/selects/selectFrom.js +5 -2
- package/{builders → dist/builders}/lowLvlBuilders/selects/selectJoined.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/selects/selectJoined.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/selects/whereSelect.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/selects/whereSelect.js +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/update.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/update.js +5 -2
- package/{builders → dist/builders}/lowLvlBuilders/updates/updateIn.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/updateIn.js +4 -1
- package/{builders → dist/builders}/lowLvlBuilders/updates/whereSelect.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/whereSelect.js +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/whereSet.d.ts +0 -0
- package/{builders → dist/builders}/lowLvlBuilders/updates/whereSet.js +4 -1
- package/{builders → dist/builders}/requestBuilders/updates/combine.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/combine.js +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/increment.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/increment.js +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/setObjects.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/setObjects.js +5 -2
- package/{builders → dist/builders}/requestBuilders/updates/static.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/static.js +6 -3
- package/{builders → dist/builders}/requestBuilders/updates/updates.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/updates/updates.js +0 -0
- package/{builders → dist/builders}/requestBuilders/where/and.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/and.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/const.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/const.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/constArray.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/constArray.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/eqWhere.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/eqWhere.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/greater.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/greater.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/greaterEq.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/greaterEq.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/in.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/in.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/isNotNull.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/isNotNull.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/isNull.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/isNull.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/less.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/less.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/lessEq.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/lessEq.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/like.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/like.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/notEqWhere.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/notEqWhere.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/or.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/or.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/rawWhere.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/rawWhere.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/static.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/static.js +19 -16
- package/{builders → dist/builders}/requestBuilders/where/var.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/var.js +4 -1
- package/{builders → dist/builders}/requestBuilders/where/where.d.ts +0 -0
- package/{builders → dist/builders}/requestBuilders/where/where.js +0 -0
- package/{builders → dist/builders}/transaction/transaction.d.ts +0 -0
- package/{builders → dist/builders}/transaction/transaction.js +0 -0
- package/{columns → dist/columns}/column.d.ts +0 -0
- package/{columns → dist/columns}/column.js +0 -0
- package/{columns → dist/columns}/index.d.ts +0 -0
- package/{columns → dist/columns}/index.js +12 -9
- package/{columns → dist/columns}/types/columnType.d.ts +0 -0
- package/{columns → dist/columns}/types/columnType.js +0 -0
- package/{columns → dist/columns}/types/pgBigDecimal.d.ts +0 -0
- package/{columns → dist/columns}/types/pgBigDecimal.js +4 -1
- package/{columns → dist/columns}/types/pgBigInt.d.ts +0 -0
- package/{columns → dist/columns}/types/pgBigInt.js +4 -1
- package/{columns → dist/columns}/types/pgBigSerial.d.ts +0 -0
- package/{columns → dist/columns}/types/pgBigSerial.js +4 -1
- package/{columns → dist/columns}/types/pgBoolean.d.ts +0 -0
- package/{columns → dist/columns}/types/pgBoolean.js +4 -1
- package/{columns → dist/columns}/types/pgEnum.d.ts +0 -0
- package/{columns → dist/columns}/types/pgEnum.js +4 -1
- package/{columns → dist/columns}/types/pgInteger.d.ts +0 -0
- package/{columns → dist/columns}/types/pgInteger.js +4 -1
- package/{columns → dist/columns}/types/pgJsonb.d.ts +0 -0
- package/{columns → dist/columns}/types/pgJsonb.js +4 -1
- package/{columns → dist/columns}/types/pgSerial.d.ts +0 -0
- package/{columns → dist/columns}/types/pgSerial.js +4 -1
- package/{columns → dist/columns}/types/pgSmallInt.d.ts +0 -0
- package/{columns → dist/columns}/types/pgSmallInt.js +4 -1
- package/{columns → dist/columns}/types/pgText.d.ts +0 -0
- package/{columns → dist/columns}/types/pgText.js +4 -1
- package/{columns → dist/columns}/types/pgTime.d.ts +0 -0
- package/{columns → dist/columns}/types/pgTime.js +4 -1
- package/{columns → dist/columns}/types/pgTimestamp.d.ts +0 -0
- package/{columns → dist/columns}/types/pgTimestamp.js +4 -1
- package/{columns → dist/columns}/types/pgTimestamptz.d.ts +0 -0
- package/{columns → dist/columns}/types/pgTimestamptz.js +4 -1
- package/{columns → dist/columns}/types/pgVarChar.d.ts +0 -0
- package/{columns → dist/columns}/types/pgVarChar.js +4 -1
- package/{db → dist/db}/db.d.ts +0 -0
- package/{db → dist/db}/db.js +0 -0
- package/{db → dist/db}/dbConnector.d.ts +0 -0
- package/{db → dist/db}/dbConnector.js +6 -3
- package/{db → dist/db}/dbStringConnector.d.ts +0 -0
- package/{db → dist/db}/dbStringConnector.js +5 -2
- package/{db → dist/db}/group_by.d.ts +0 -0
- package/{db → dist/db}/group_by.js +0 -0
- package/{db → dist/db}/index.d.ts +0 -0
- package/{db → dist/db}/index.js +6 -3
- package/{db → dist/db}/session.d.ts +0 -0
- package/{db → dist/db}/session.js +0 -0
- package/{docs → dist/docs}/cases/simple_delete.d.ts +0 -0
- package/{docs → dist/docs}/cases/simple_delete.js +7 -4
- package/{docs → dist/docs}/cases/simple_insert.d.ts +0 -0
- package/{docs → dist/docs}/cases/simple_insert.js +8 -5
- package/{docs → dist/docs}/cases/simple_join.d.ts +0 -0
- package/{docs → dist/docs}/cases/simple_join.js +8 -5
- package/{docs → dist/docs}/cases/simple_select.d.ts +0 -0
- package/{docs → dist/docs}/cases/simple_select.js +6 -3
- package/{docs → dist/docs}/cases/simple_update.d.ts +0 -0
- package/{docs → dist/docs}/cases/simple_update.js +7 -4
- package/{docs → dist/docs}/tables/citiesTable.d.ts +0 -0
- package/{docs → dist/docs}/tables/citiesTable.js +6 -2
- package/{docs → dist/docs}/tables/userGroupsTable.d.ts +0 -0
- package/{docs → dist/docs}/tables/userGroupsTable.js +4 -1
- package/{docs → dist/docs}/tables/usersTable.d.ts +0 -0
- package/{docs → dist/docs}/tables/usersTable.js +4 -1
- package/{docs → dist/docs}/tables/usersToUserGroups.d.ts +0 -0
- package/{docs → dist/docs}/tables/usersToUserGroups.js +6 -3
- package/{docs → dist/docs}/types/rolesType.d.ts +0 -0
- package/{docs → dist/docs}/types/rolesType.js +0 -0
- package/{errors → dist/errors}/baseError.d.ts +0 -0
- package/{errors → dist/errors}/baseError.js +0 -0
- package/{errors → dist/errors}/builderError.d.ts +0 -0
- package/{errors → dist/errors}/builderError.js +2 -1
- package/{errors → dist/errors}/dbErrors.d.ts +0 -0
- package/{errors → dist/errors}/dbErrors.js +0 -0
- package/{index.d.ts → dist/index.d.ts} +0 -0
- package/{index.js → dist/index.js} +4 -1
- package/{indexes → dist/indexes}/tableIndex.d.ts +0 -0
- package/{indexes → dist/indexes}/tableIndex.js +0 -0
- package/{logger → dist/logger}/abstractLogger.d.ts +0 -0
- package/{logger → dist/logger}/abstractLogger.js +0 -0
- package/{logger → dist/logger}/consoleLogger.d.ts +0 -0
- package/{logger → dist/logger}/consoleLogger.js +4 -1
- package/{mappers → dist/mappers}/index.d.ts +0 -0
- package/{mappers → dist/mappers}/index.js +0 -0
- package/{mappers → dist/mappers}/responseMapper.d.ts +0 -0
- package/{mappers → dist/mappers}/responseMapper.js +0 -0
- package/{migrator → dist/migrator}/index.d.ts +0 -0
- package/{migrator → dist/migrator}/index.js +0 -0
- package/{migrator → dist/migrator}/migrator.d.ts +0 -0
- package/{migrator → dist/migrator}/migrator.js +26 -4
- package/dist/serializer/serializer.d.ts +47 -0
- package/dist/serializer/serializer.js +258 -0
- package/dist/src/builders/aggregators/abstractAggregator.d.ts +11 -0
- package/dist/src/builders/aggregators/abstractAggregator.js +35 -0
- package/dist/src/builders/aggregators/deleteAggregator.d.ts +16 -0
- package/dist/src/builders/aggregators/deleteAggregator.js +42 -0
- package/dist/src/builders/aggregators/insertAggregator.d.ts +22 -0
- package/dist/src/builders/aggregators/insertAggregator.js +106 -0
- package/dist/src/builders/aggregators/selectAggregator.d.ts +39 -0
- package/dist/src/builders/aggregators/selectAggregator.js +143 -0
- package/dist/src/builders/aggregators/updateAggregator.d.ts +19 -0
- package/dist/src/builders/aggregators/updateAggregator.js +50 -0
- package/dist/src/builders/highLvlBuilders/abstractRequestBuilder.d.ts +27 -0
- package/dist/src/builders/highLvlBuilders/abstractRequestBuilder.js +32 -0
- package/dist/src/builders/highLvlBuilders/deleteRequestBuilder.d.ts +19 -0
- package/dist/src/builders/highLvlBuilders/deleteRequestBuilder.js +61 -0
- package/dist/src/builders/highLvlBuilders/insertRequestBuilder.d.ts +20 -0
- package/dist/src/builders/highLvlBuilders/insertRequestBuilder.js +73 -0
- package/dist/src/builders/highLvlBuilders/order.d.ts +5 -0
- package/dist/src/builders/highLvlBuilders/order.js +8 -0
- package/dist/src/builders/highLvlBuilders/selectRequestBuilder.d.ts +47 -0
- package/dist/src/builders/highLvlBuilders/selectRequestBuilder.js +128 -0
- package/dist/src/builders/highLvlBuilders/updateRequestBuilder.d.ts +22 -0
- package/dist/src/builders/highLvlBuilders/updateRequestBuilder.js +80 -0
- package/dist/src/builders/index.d.ts +18 -0
- package/dist/src/builders/index.js +54 -0
- package/dist/src/builders/joinBuilders/builders/abstractJoinBuilder.d.ts +40 -0
- package/dist/src/builders/joinBuilders/builders/abstractJoinBuilder.js +78 -0
- package/dist/src/builders/joinBuilders/builders/selectWithFiveJoins.d.ts +35 -0
- package/dist/src/builders/joinBuilders/builders/selectWithFiveJoins.js +45 -0
- package/dist/src/builders/joinBuilders/builders/selectWithFourJoins.d.ts +55 -0
- package/dist/src/builders/joinBuilders/builders/selectWithFourJoins.js +78 -0
- package/dist/src/builders/joinBuilders/builders/selectWithJoin.d.ts +49 -0
- package/dist/src/builders/joinBuilders/builders/selectWithJoin.js +64 -0
- package/dist/src/builders/joinBuilders/builders/selectWithThreeJoins.d.ts +53 -0
- package/dist/src/builders/joinBuilders/builders/selectWithThreeJoins.js +73 -0
- package/dist/src/builders/joinBuilders/builders/selectWithTwoJoins.d.ts +51 -0
- package/dist/src/builders/joinBuilders/builders/selectWithTwoJoins.js +68 -0
- package/dist/src/builders/joinBuilders/join.d.ts +23 -0
- package/dist/src/builders/joinBuilders/join.js +28 -0
- package/dist/src/builders/joinBuilders/joinWith.d.ts +14 -0
- package/dist/src/builders/joinBuilders/joinWith.js +14 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseFiveJoins.d.ts +20 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseFiveJoins.js +35 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseFourJoins.d.ts +19 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseFourJoins.js +34 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseThreeJoins.d.ts +18 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseThreeJoins.js +33 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseTwoJoins.d.ts +17 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseTwoJoins.js +32 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseWithJoin.d.ts +16 -0
- package/dist/src/builders/joinBuilders/responses/selectResponseWithJoin.js +31 -0
- package/dist/src/builders/joinBuilders/static.d.ts +5 -0
- package/dist/src/builders/joinBuilders/static.js +9 -0
- package/dist/src/builders/lowLvlBuilders/alter.d.ts +0 -0
- package/dist/src/builders/lowLvlBuilders/alter.js +1 -0
- package/dist/src/builders/lowLvlBuilders/create.d.ts +12 -0
- package/dist/src/builders/lowLvlBuilders/create.js +100 -0
- package/dist/src/builders/lowLvlBuilders/delets/delete.d.ts +5 -0
- package/dist/src/builders/lowLvlBuilders/delets/delete.js +15 -0
- package/dist/src/builders/lowLvlBuilders/delets/deleteFilter.d.ts +11 -0
- package/dist/src/builders/lowLvlBuilders/delets/deleteFilter.js +13 -0
- package/dist/src/builders/lowLvlBuilders/delets/deleteFrom.d.ts +12 -0
- package/dist/src/builders/lowLvlBuilders/delets/deleteFrom.js +14 -0
- package/dist/src/builders/lowLvlBuilders/inserts/insert.d.ts +5 -0
- package/dist/src/builders/lowLvlBuilders/inserts/insert.js +15 -0
- package/dist/src/builders/lowLvlBuilders/inserts/insertInto.d.ts +13 -0
- package/dist/src/builders/lowLvlBuilders/inserts/insertInto.js +16 -0
- package/dist/src/builders/lowLvlBuilders/inserts/onConflictInsert.d.ts +12 -0
- package/dist/src/builders/lowLvlBuilders/inserts/onConflictInsert.js +13 -0
- package/dist/src/builders/lowLvlBuilders/inserts/valuesInsert.d.ts +16 -0
- package/dist/src/builders/lowLvlBuilders/inserts/valuesInsert.js +19 -0
- package/dist/src/builders/lowLvlBuilders/selects/select.d.ts +9 -0
- package/dist/src/builders/lowLvlBuilders/selects/select.js +16 -0
- package/dist/src/builders/lowLvlBuilders/selects/selectFrom.d.ts +28 -0
- package/dist/src/builders/lowLvlBuilders/selects/selectFrom.js +34 -0
- package/dist/src/builders/lowLvlBuilders/selects/selectJoined.d.ts +26 -0
- package/dist/src/builders/lowLvlBuilders/selects/selectJoined.js +30 -0
- package/dist/src/builders/lowLvlBuilders/selects/whereSelect.d.ts +17 -0
- package/dist/src/builders/lowLvlBuilders/selects/whereSelect.js +25 -0
- package/dist/src/builders/lowLvlBuilders/updates/update.d.ts +5 -0
- package/dist/src/builders/lowLvlBuilders/updates/update.js +15 -0
- package/dist/src/builders/lowLvlBuilders/updates/updateIn.d.ts +13 -0
- package/dist/src/builders/lowLvlBuilders/updates/updateIn.js +15 -0
- package/dist/src/builders/lowLvlBuilders/updates/whereSelect.d.ts +11 -0
- package/dist/src/builders/lowLvlBuilders/updates/whereSelect.js +13 -0
- package/dist/src/builders/lowLvlBuilders/updates/whereSet.d.ts +14 -0
- package/dist/src/builders/lowLvlBuilders/updates/whereSet.js +18 -0
- package/dist/src/builders/requestBuilders/updates/combine.d.ts +9 -0
- package/dist/src/builders/requestBuilders/updates/combine.js +26 -0
- package/dist/src/builders/requestBuilders/updates/increment.d.ts +13 -0
- package/dist/src/builders/requestBuilders/updates/increment.js +18 -0
- package/dist/src/builders/requestBuilders/updates/setObjects.d.ts +12 -0
- package/dist/src/builders/requestBuilders/updates/setObjects.js +19 -0
- package/dist/src/builders/requestBuilders/updates/static.d.ts +7 -0
- package/dist/src/builders/requestBuilders/updates/static.js +15 -0
- package/dist/src/builders/requestBuilders/updates/updates.d.ts +9 -0
- package/dist/src/builders/requestBuilders/updates/updates.js +10 -0
- package/dist/src/builders/requestBuilders/where/and.d.ts +11 -0
- package/dist/src/builders/requestBuilders/where/and.js +31 -0
- package/dist/src/builders/requestBuilders/where/const.d.ts +9 -0
- package/dist/src/builders/requestBuilders/where/const.js +25 -0
- package/dist/src/builders/requestBuilders/where/constArray.d.ts +9 -0
- package/dist/src/builders/requestBuilders/where/constArray.js +39 -0
- package/dist/src/builders/requestBuilders/where/eqWhere.d.ts +12 -0
- package/dist/src/builders/requestBuilders/where/eqWhere.js +20 -0
- package/dist/src/builders/requestBuilders/where/greater.d.ts +15 -0
- package/dist/src/builders/requestBuilders/where/greater.js +20 -0
- package/dist/src/builders/requestBuilders/where/greaterEq.d.ts +15 -0
- package/dist/src/builders/requestBuilders/where/greaterEq.js +20 -0
- package/dist/src/builders/requestBuilders/where/in.d.ts +12 -0
- package/dist/src/builders/requestBuilders/where/in.js +20 -0
- package/dist/src/builders/requestBuilders/where/isNotNull.d.ts +11 -0
- package/dist/src/builders/requestBuilders/where/isNotNull.js +18 -0
- package/dist/src/builders/requestBuilders/where/isNull.d.ts +11 -0
- package/dist/src/builders/requestBuilders/where/isNull.js +18 -0
- package/dist/src/builders/requestBuilders/where/less.d.ts +15 -0
- package/dist/src/builders/requestBuilders/where/less.js +20 -0
- package/dist/src/builders/requestBuilders/where/lessEq.d.ts +15 -0
- package/dist/src/builders/requestBuilders/where/lessEq.js +20 -0
- package/dist/src/builders/requestBuilders/where/like.d.ts +12 -0
- package/dist/src/builders/requestBuilders/where/like.js +20 -0
- package/dist/src/builders/requestBuilders/where/notEqWhere.d.ts +12 -0
- package/dist/src/builders/requestBuilders/where/notEqWhere.js +20 -0
- package/dist/src/builders/requestBuilders/where/or.d.ts +11 -0
- package/dist/src/builders/requestBuilders/where/or.js +31 -0
- package/dist/src/builders/requestBuilders/where/rawWhere.d.ts +9 -0
- package/dist/src/builders/requestBuilders/where/rawWhere.js +15 -0
- package/dist/src/builders/requestBuilders/where/static.d.ts +17 -0
- package/dist/src/builders/requestBuilders/where/static.js +49 -0
- package/dist/src/builders/requestBuilders/where/var.d.ts +13 -0
- package/dist/src/builders/requestBuilders/where/var.js +18 -0
- package/dist/src/builders/requestBuilders/where/where.d.ts +8 -0
- package/dist/src/builders/requestBuilders/where/where.js +6 -0
- package/dist/src/builders/transaction/transaction.d.ts +8 -0
- package/dist/src/builders/transaction/transaction.js +20 -0
- package/dist/src/columns/column.d.ts +72 -0
- package/dist/src/columns/column.js +101 -0
- package/dist/src/columns/index.d.ts +10 -0
- package/dist/src/columns/index.js +27 -0
- package/dist/src/columns/types/columnType.d.ts +7 -0
- package/dist/src/columns/types/columnType.js +6 -0
- package/dist/src/columns/types/pgBigDecimal.d.ts +10 -0
- package/dist/src/columns/types/pgBigDecimal.js +31 -0
- package/dist/src/columns/types/pgBigInt.d.ts +15 -0
- package/dist/src/columns/types/pgBigInt.js +32 -0
- package/dist/src/columns/types/pgBigSerial.d.ts +15 -0
- package/dist/src/columns/types/pgBigSerial.js +32 -0
- package/dist/src/columns/types/pgBoolean.d.ts +8 -0
- package/dist/src/columns/types/pgBoolean.js +18 -0
- package/dist/src/columns/types/pgEnum.d.ts +9 -0
- package/dist/src/columns/types/pgEnum.js +18 -0
- package/dist/src/columns/types/pgInteger.d.ts +8 -0
- package/dist/src/columns/types/pgInteger.js +21 -0
- package/dist/src/columns/types/pgJsonb.d.ts +9 -0
- package/dist/src/columns/types/pgJsonb.js +20 -0
- package/dist/src/columns/types/pgSerial.d.ts +8 -0
- package/dist/src/columns/types/pgSerial.js +18 -0
- package/dist/src/columns/types/pgSmallInt.d.ts +8 -0
- package/dist/src/columns/types/pgSmallInt.js +18 -0
- package/dist/src/columns/types/pgText.d.ts +8 -0
- package/dist/src/columns/types/pgText.js +18 -0
- package/dist/src/columns/types/pgTime.d.ts +8 -0
- package/dist/src/columns/types/pgTime.js +18 -0
- package/dist/src/columns/types/pgTimestamp.d.ts +8 -0
- package/dist/src/columns/types/pgTimestamp.js +18 -0
- package/dist/src/columns/types/pgTimestamptz.d.ts +8 -0
- package/dist/src/columns/types/pgTimestamptz.js +18 -0
- package/dist/src/columns/types/pgVarChar.d.ts +9 -0
- package/dist/src/columns/types/pgVarChar.js +24 -0
- package/dist/src/db/db.d.ts +18 -0
- package/dist/src/db/db.js +25 -0
- package/dist/src/db/dbConnector.d.ts +9 -0
- package/dist/src/db/dbConnector.js +32 -0
- package/dist/src/db/dbStringConnector.d.ts +6 -0
- package/dist/src/db/dbStringConnector.js +29 -0
- package/dist/src/db/group_by.d.ts +0 -0
- package/dist/src/db/group_by.js +68 -0
- package/dist/src/db/index.d.ts +4 -0
- package/dist/src/db/index.js +14 -0
- package/dist/src/db/session.d.ts +9 -0
- package/dist/src/db/session.js +16 -0
- package/{test.d.ts → dist/src/docs/cases/simple_delete.d.ts} +0 -0
- package/dist/src/docs/cases/simple_delete.js +35 -0
- package/dist/src/docs/cases/simple_insert.d.ts +1 -0
- package/dist/src/docs/cases/simple_insert.js +57 -0
- package/dist/src/docs/cases/simple_join.d.ts +1 -0
- package/dist/src/docs/cases/simple_join.js +115 -0
- package/dist/src/docs/cases/simple_select.d.ts +1 -0
- package/dist/src/docs/cases/simple_select.js +50 -0
- package/dist/src/docs/cases/simple_update.d.ts +1 -0
- package/dist/src/docs/cases/simple_update.js +39 -0
- package/dist/src/docs/tables/citiesTable.d.ts +14 -0
- package/dist/src/docs/tables/citiesTable.js +21 -0
- package/dist/src/docs/tables/userGroupsTable.d.ts +7 -0
- package/dist/src/docs/tables/userGroupsTable.js +18 -0
- package/dist/src/docs/tables/usersTable.d.ts +17 -0
- package/dist/src/docs/tables/usersTable.js +35 -0
- package/dist/src/docs/tables/usersToUserGroups.d.ts +7 -0
- package/dist/src/docs/tables/usersToUserGroups.js +20 -0
- package/dist/src/docs/types/rolesType.d.ts +1 -0
- package/dist/src/docs/types/rolesType.js +6 -0
- package/dist/src/errors/baseError.d.ts +22 -0
- package/dist/src/errors/baseError.js +35 -0
- package/dist/src/errors/builderError.d.ts +14 -0
- package/dist/src/errors/builderError.js +25 -0
- package/dist/src/errors/dbErrors.d.ts +12 -0
- package/dist/src/errors/dbErrors.js +28 -0
- package/dist/src/index.d.ts +11 -0
- package/dist/src/index.js +31 -0
- package/dist/src/indexes/tableIndex.d.ts +11 -0
- package/dist/src/indexes/tableIndex.js +17 -0
- package/dist/src/logger/abstractLogger.d.ts +4 -0
- package/dist/src/logger/abstractLogger.js +5 -0
- package/dist/src/logger/consoleLogger.d.ts +5 -0
- package/dist/src/logger/consoleLogger.js +15 -0
- package/dist/src/mappers/index.d.ts +0 -0
- package/dist/src/mappers/index.js +1 -0
- package/dist/src/mappers/responseMapper.d.ts +10 -0
- package/dist/src/mappers/responseMapper.js +35 -0
- package/dist/src/migrator/index.d.ts +0 -0
- package/dist/src/migrator/index.js +1 -0
- package/dist/src/migrator/migrator.d.ts +11 -0
- package/dist/src/migrator/migrator.js +105 -0
- package/{serializer → dist/src/serializer}/serializer.d.ts +0 -0
- package/{serializer → dist/src/serializer}/serializer.js +4 -1
- package/{tables → dist/src/tables}/abstractTable.d.ts +0 -0
- package/{tables → dist/src/tables}/abstractTable.js +41 -19
- package/{tables → dist/src/tables}/index.d.ts +0 -0
- package/{tables → dist/src/tables}/index.js +5 -2
- package/{tables → dist/src/tables}/inferTypes.d.ts +0 -0
- package/{tables → dist/src/tables}/inferTypes.js +0 -0
- package/{tables → dist/src/tables}/migrationsTable.d.ts +0 -0
- package/{tables → dist/src/tables}/migrationsTable.js +4 -1
- package/dist/src/test.d.ts +1 -0
- package/{test.js → dist/src/test.js} +23 -8
- package/{types → dist/src/types}/type.d.ts +0 -0
- package/{types → dist/src/types}/type.js +0 -0
- package/{utils → dist/src/utils}/ecranate.d.ts +0 -0
- package/{utils → dist/src/utils}/ecranate.js +0 -0
- package/dist/tables/abstractTable.d.ts +68 -0
- package/dist/tables/abstractTable.js +151 -0
- package/dist/tables/index.d.ts +3 -0
- package/dist/tables/index.js +11 -0
- package/dist/tables/inferTypes.d.ts +39 -0
- package/dist/tables/inferTypes.js +2 -0
- package/dist/tables/migrationsTable.d.ts +7 -0
- package/dist/tables/migrationsTable.js +18 -0
- package/dist/test.d.ts +1 -0
- package/dist/test.js +65 -0
- package/dist/tsconfig.tsbuildinfo +5054 -0
- package/dist/types/type.d.ts +10 -0
- package/dist/types/type.js +14 -0
- package/dist/utils/ecranate.d.ts +2 -0
- package/dist/utils/ecranate.js +8 -0
- package/package.json +18 -13
- package/tables/aggregators.d.ts +0 -27
- package/tables/aggregators.js +0 -56
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgInteger extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value}`;
|
|
12
|
+
this.dbName = 'INT';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
if (typeof value === 'string') {
|
|
16
|
+
return value ? parseInt(value, 10) : undefined;
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.default = PgInteger;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ColumnType from './columnType';
|
|
2
|
+
export default class PgJsonb<TCodeType> extends ColumnType<TCodeType> {
|
|
3
|
+
codeType: TCodeType;
|
|
4
|
+
dbName: string;
|
|
5
|
+
constructor();
|
|
6
|
+
getDbName: () => string;
|
|
7
|
+
insertStrategy: (value: TCodeType) => string;
|
|
8
|
+
selectStrategy(value: any): TCodeType;
|
|
9
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/* eslint-disable max-len */
|
|
7
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
8
|
+
class PgJsonb extends columnType_1.default {
|
|
9
|
+
constructor() {
|
|
10
|
+
super();
|
|
11
|
+
this.getDbName = () => this.dbName;
|
|
12
|
+
// public insertStrategy = (value: TCodeType): string => `'${JSON.stringify(value).replace(/'/g, "''")}'::jsonb`;
|
|
13
|
+
this.insertStrategy = (value) => `${JSON.stringify(value).replace(/'/g, "''")}`;
|
|
14
|
+
this.dbName = 'JSONB';
|
|
15
|
+
}
|
|
16
|
+
selectStrategy(value) {
|
|
17
|
+
return value;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.default = PgJsonb;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgSerial extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value}`;
|
|
12
|
+
this.dbName = 'SERIAL';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgSerial;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgSmallInt extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value}`;
|
|
12
|
+
this.dbName = 'SMALLINT';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgSmallInt;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgText extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value.replace(/'/g, "''")}`;
|
|
12
|
+
this.dbName = 'TEXT';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgText;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgTime extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => value.toISOString();
|
|
12
|
+
this.dbName = 'time without time zone';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgTime;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgTimestamp extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value.toISOString()}`;
|
|
12
|
+
this.dbName = 'timestamp without time zone';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgTimestamp;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgTimestamptz extends columnType_1.default {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value.toISOString()}`;
|
|
12
|
+
this.dbName = 'timestamp with time zone';
|
|
13
|
+
}
|
|
14
|
+
selectStrategy(value) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = PgTimestamptz;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ColumnType from './columnType';
|
|
2
|
+
export default class PgVarChar extends ColumnType<string> {
|
|
3
|
+
size?: number;
|
|
4
|
+
protected dbName: string;
|
|
5
|
+
constructor(size?: number);
|
|
6
|
+
getDbName: () => string;
|
|
7
|
+
insertStrategy: (value: string) => string;
|
|
8
|
+
selectStrategy(value: string): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const columnType_1 = __importDefault(require("./columnType"));
|
|
7
|
+
class PgVarChar extends columnType_1.default {
|
|
8
|
+
constructor(size) {
|
|
9
|
+
super();
|
|
10
|
+
this.getDbName = () => this.dbName;
|
|
11
|
+
this.insertStrategy = (value) => `${value.replace(/'/g, "''")}`;
|
|
12
|
+
this.size = size;
|
|
13
|
+
if (size) {
|
|
14
|
+
this.dbName = `character varying(${size})`;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
this.dbName = 'character varying';
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
selectStrategy(value) {
|
|
21
|
+
return value;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.default = PgVarChar;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import BaseLogger from '../logger/abstractLogger';
|
|
2
|
+
import { AbstractTable } from '../tables';
|
|
3
|
+
import { ISession } from './session';
|
|
4
|
+
export declare type TableConstructor = {
|
|
5
|
+
new (db: DB): AbstractTable<any>;
|
|
6
|
+
};
|
|
7
|
+
export default class DB {
|
|
8
|
+
protected _session: ISession;
|
|
9
|
+
protected _logger?: BaseLogger;
|
|
10
|
+
protected _cache: Map<TableConstructor, AbstractTable<any>>;
|
|
11
|
+
constructor(session: ISession);
|
|
12
|
+
create<TTable extends AbstractTable<TTable>>(t: new (db: DB) => TTable): TTable;
|
|
13
|
+
useLogger: (logger: BaseLogger) => void;
|
|
14
|
+
cache: () => Map<TableConstructor, AbstractTable<any>>;
|
|
15
|
+
logger: () => BaseLogger | undefined;
|
|
16
|
+
session: () => ISession;
|
|
17
|
+
protected instanceFor<TTable extends AbstractTable<TTable>>(t: new (db: DB) => TTable): AbstractTable<any> | undefined;
|
|
18
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class DB {
|
|
4
|
+
constructor(session) {
|
|
5
|
+
this._cache = new Map();
|
|
6
|
+
this.useLogger = (logger) => {
|
|
7
|
+
this._logger = logger;
|
|
8
|
+
};
|
|
9
|
+
this.cache = () => this._cache;
|
|
10
|
+
this.logger = () => this._logger;
|
|
11
|
+
this.session = () => this._session;
|
|
12
|
+
this._session = session;
|
|
13
|
+
}
|
|
14
|
+
create(t) {
|
|
15
|
+
if (!this._cache.has(t)) {
|
|
16
|
+
// eslint-disable-next-line new-cap
|
|
17
|
+
this._cache.set(t, new t(this));
|
|
18
|
+
}
|
|
19
|
+
return this._cache.get(t);
|
|
20
|
+
}
|
|
21
|
+
instanceFor(t) {
|
|
22
|
+
return this._cache.get(t);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.default = DB;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ClientConfig } from 'pg';
|
|
2
|
+
import DB from './db';
|
|
3
|
+
import DBStringConnector from './dbStringConnector';
|
|
4
|
+
export default class DbConnector {
|
|
5
|
+
private __config;
|
|
6
|
+
connectionString: (url: string) => DBStringConnector;
|
|
7
|
+
params: (config: ClientConfig) => DbConnector;
|
|
8
|
+
connect: () => Promise<DB>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const pg_1 = require("pg");
|
|
7
|
+
const db_1 = __importDefault(require("./db"));
|
|
8
|
+
const dbStringConnector_1 = __importDefault(require("./dbStringConnector"));
|
|
9
|
+
const session_1 = __importDefault(require("./session"));
|
|
10
|
+
class DbConnector {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.connectionString = (url) => new dbStringConnector_1.default(url);
|
|
13
|
+
this.params = (config) => {
|
|
14
|
+
this.__config = config;
|
|
15
|
+
return this;
|
|
16
|
+
};
|
|
17
|
+
this.connect = async () => {
|
|
18
|
+
try {
|
|
19
|
+
const pool = new pg_1.Pool(this.__config);
|
|
20
|
+
await pool.connect();
|
|
21
|
+
// console.log('Db connected!');
|
|
22
|
+
// check if table structure is the same as in code
|
|
23
|
+
return new db_1.default(new session_1.default(pool));
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
// console.log(`Connection error: ${e.message}`);
|
|
27
|
+
throw new Error(`Connection error: ${e.message}`);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.default = DbConnector;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const pg_1 = require("pg");
|
|
7
|
+
const db_1 = __importDefault(require("./db"));
|
|
8
|
+
const session_1 = __importDefault(require("./session"));
|
|
9
|
+
class DBStringConnector {
|
|
10
|
+
constructor(url) {
|
|
11
|
+
this.connect = async () => {
|
|
12
|
+
const config = {
|
|
13
|
+
connectionString: this._url,
|
|
14
|
+
};
|
|
15
|
+
try {
|
|
16
|
+
const pool = new pg_1.Pool(config);
|
|
17
|
+
await pool.connect();
|
|
18
|
+
// console.log('Db connected!');
|
|
19
|
+
return new db_1.default(new session_1.default(pool));
|
|
20
|
+
}
|
|
21
|
+
catch (e) {
|
|
22
|
+
// console.log(`Connection error: ${e.message}`);
|
|
23
|
+
throw new Error(`Connection error: ${e.message}`);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
this._url = url;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.default = DBStringConnector;
|
|
File without changes
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// const _groupBy = <T, K extends keyof any>(list: T[], getKey: (item: T) => K) => {
|
|
3
|
+
// list.reduce((previous, currentItem) => {
|
|
4
|
+
// const group = getKey(currentItem);
|
|
5
|
+
// // eslint-disable-next-line no-param-reassign
|
|
6
|
+
// if (!previous[group]) previous[group] = [];
|
|
7
|
+
// previous[group].push(currentItem);
|
|
8
|
+
// return previous;
|
|
9
|
+
// }, {} as Record<K, T[]>);
|
|
10
|
+
// };
|
|
11
|
+
// const groupBy = (xs, key) => xs.reduce((rv, x) => {
|
|
12
|
+
// (rv[x[key]] = rv[x[key]] || []).push(x);
|
|
13
|
+
// return rv;
|
|
14
|
+
// }, {});
|
|
15
|
+
// interface Mapp {
|
|
16
|
+
// [key: string]: any;
|
|
17
|
+
// }
|
|
18
|
+
// const groupBy1 = <K, V>(list: Array<K>, keyGetter: (input: V) => K): Map<K, Array<V>> => {
|
|
19
|
+
// const map = new Map<K, Array<V>>();
|
|
20
|
+
// list.forEach((item) => {
|
|
21
|
+
// const key = keyGetter(item as unknown as V);
|
|
22
|
+
// const collection = map.get(key);
|
|
23
|
+
// console.log(collection);
|
|
24
|
+
// console.log(map.has(key));
|
|
25
|
+
// if (!collection) {
|
|
26
|
+
// map.set(key, [item as unknown as V]);
|
|
27
|
+
// } else {
|
|
28
|
+
// collection.push(item as unknown as V);
|
|
29
|
+
// }
|
|
30
|
+
// });
|
|
31
|
+
// return map;
|
|
32
|
+
// };
|
|
33
|
+
// interface T1 {
|
|
34
|
+
// name: string,
|
|
35
|
+
// key: number
|
|
36
|
+
// }
|
|
37
|
+
// interface T2 {
|
|
38
|
+
// name: string,
|
|
39
|
+
// hello: number
|
|
40
|
+
// }
|
|
41
|
+
// interface Person {
|
|
42
|
+
// t1: T1,
|
|
43
|
+
// t2: T2
|
|
44
|
+
// }
|
|
45
|
+
// const person: Person[] = [
|
|
46
|
+
// {
|
|
47
|
+
// t1: {
|
|
48
|
+
// name: 'name',
|
|
49
|
+
// key: 2,
|
|
50
|
+
// },
|
|
51
|
+
// t2: {
|
|
52
|
+
// name: 'name',
|
|
53
|
+
// hello: 2,
|
|
54
|
+
// },
|
|
55
|
+
// },
|
|
56
|
+
// {
|
|
57
|
+
// t1: {
|
|
58
|
+
// name: 'name',
|
|
59
|
+
// key: 2,
|
|
60
|
+
// },
|
|
61
|
+
// t2: {
|
|
62
|
+
// name: 'name3',
|
|
63
|
+
// hello: 3,
|
|
64
|
+
// },
|
|
65
|
+
// },
|
|
66
|
+
// ];
|
|
67
|
+
// const d = groupBy1(person, (i: Person) => i.t1);
|
|
68
|
+
// console.log(d);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ISession = exports.DBStringConnector = exports.DbConnector = exports.DB = void 0;
|
|
7
|
+
var db_1 = require("./db");
|
|
8
|
+
Object.defineProperty(exports, "DB", { enumerable: true, get: function () { return __importDefault(db_1).default; } });
|
|
9
|
+
var dbConnector_1 = require("./dbConnector");
|
|
10
|
+
Object.defineProperty(exports, "DbConnector", { enumerable: true, get: function () { return __importDefault(dbConnector_1).default; } });
|
|
11
|
+
var dbStringConnector_1 = require("./dbStringConnector");
|
|
12
|
+
Object.defineProperty(exports, "DBStringConnector", { enumerable: true, get: function () { return __importDefault(dbStringConnector_1).default; } });
|
|
13
|
+
var session_1 = require("./session");
|
|
14
|
+
Object.defineProperty(exports, "ISession", { enumerable: true, get: function () { return session_1.ISession; } });
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Pool, QueryResult } from 'pg';
|
|
2
|
+
export declare abstract class ISession {
|
|
3
|
+
abstract execute(query: string, values?: Array<any>): Promise<QueryResult<any>>;
|
|
4
|
+
}
|
|
5
|
+
export default class Session extends ISession {
|
|
6
|
+
private pool;
|
|
7
|
+
constructor(pool: Pool);
|
|
8
|
+
execute(query: string, values?: Array<any>): Promise<QueryResult<any>>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ISession = void 0;
|
|
4
|
+
class ISession {
|
|
5
|
+
}
|
|
6
|
+
exports.ISession = ISession;
|
|
7
|
+
class Session extends ISession {
|
|
8
|
+
constructor(pool) {
|
|
9
|
+
super();
|
|
10
|
+
this.pool = pool;
|
|
11
|
+
}
|
|
12
|
+
async execute(query, values) {
|
|
13
|
+
return this.pool.query(query, values || []);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.default = Session;
|
|
File without changes
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
7
|
+
const __1 = require("../..");
|
|
8
|
+
const builders_1 = require("../../builders");
|
|
9
|
+
const consoleLogger_1 = __importDefault(require("../../logger/consoleLogger"));
|
|
10
|
+
const citiesTable_1 = __importDefault(require("../tables/citiesTable"));
|
|
11
|
+
const userGroupsTable_1 = __importDefault(require("../tables/userGroupsTable"));
|
|
12
|
+
const usersTable_1 = __importDefault(require("../tables/usersTable"));
|
|
13
|
+
(async () => {
|
|
14
|
+
try {
|
|
15
|
+
const db = await new __1.DbConnector()
|
|
16
|
+
.connectionString('postgresql://postgres@127.0.0.1/migrator')
|
|
17
|
+
.connect();
|
|
18
|
+
db.useLogger(new consoleLogger_1.default());
|
|
19
|
+
const usersTable = new usersTable_1.default(db);
|
|
20
|
+
const citiesTable = new citiesTable_1.default(db);
|
|
21
|
+
const userGroupsTable = new userGroupsTable_1.default(db);
|
|
22
|
+
await usersTable.delete()
|
|
23
|
+
.where(builders_1.eq(usersTable.id, 6))
|
|
24
|
+
.execute();
|
|
25
|
+
const deletedCities = await citiesTable.delete()
|
|
26
|
+
.where(builders_1.eq(citiesTable.id, 7))
|
|
27
|
+
.all();
|
|
28
|
+
const deletedUserGroup = await userGroupsTable.delete()
|
|
29
|
+
.where(builders_1.eq(userGroupsTable.id, 3))
|
|
30
|
+
.findOne();
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
console.log(e);
|
|
34
|
+
}
|
|
35
|
+
})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const dbConnector_1 = __importDefault(require("../../db/dbConnector"));
|
|
7
|
+
const consoleLogger_1 = __importDefault(require("../../logger/consoleLogger"));
|
|
8
|
+
const citiesTable_1 = __importDefault(require("../tables/citiesTable"));
|
|
9
|
+
const userGroupsTable_1 = __importDefault(require("../tables/userGroupsTable"));
|
|
10
|
+
const usersTable_1 = __importDefault(require("../tables/usersTable"));
|
|
11
|
+
(async () => {
|
|
12
|
+
try {
|
|
13
|
+
const db = await new dbConnector_1.default()
|
|
14
|
+
.connectionString('postgresql://postgres@127.0.0.1/migrator')
|
|
15
|
+
.connect();
|
|
16
|
+
const usersTable = new usersTable_1.default(db);
|
|
17
|
+
const citiesTable = new citiesTable_1.default(db);
|
|
18
|
+
const userGroupsTable = new userGroupsTable_1.default(db);
|
|
19
|
+
// await db.session().execute(Create.table(usersTable).build());
|
|
20
|
+
// await db.session().execute(Create.table(citiesTable).build());
|
|
21
|
+
// await db.session().execute(Create.table(userGroupsTable).build());
|
|
22
|
+
db.useLogger(new consoleLogger_1.default());
|
|
23
|
+
await usersTable.insert({
|
|
24
|
+
decimalField: 12.4,
|
|
25
|
+
createdAt: new Date(),
|
|
26
|
+
role: 'foo',
|
|
27
|
+
}).execute();
|
|
28
|
+
const insertedCities = await citiesTable.insert({
|
|
29
|
+
foundationDate: new Date(),
|
|
30
|
+
}).all();
|
|
31
|
+
const insertedUserGroup = await userGroupsTable.insert({
|
|
32
|
+
name: 'firstGroup',
|
|
33
|
+
}).findOne();
|
|
34
|
+
const manyInsertedCities = await citiesTable.insertMany([{
|
|
35
|
+
foundationDate: new Date(),
|
|
36
|
+
location: 'USA',
|
|
37
|
+
}, {
|
|
38
|
+
foundationDate: new Date(),
|
|
39
|
+
location: 'USA',
|
|
40
|
+
userId: 2,
|
|
41
|
+
}]).all();
|
|
42
|
+
const conflictInsertedUsers = await usersTable.insertMany([{
|
|
43
|
+
decimalField: 12.4,
|
|
44
|
+
createdAt: new Date(),
|
|
45
|
+
role: 'foo',
|
|
46
|
+
}, {
|
|
47
|
+
decimalField: 32.4,
|
|
48
|
+
createdAt: new Date(),
|
|
49
|
+
role: 'foo',
|
|
50
|
+
phone: '+1808',
|
|
51
|
+
}])
|
|
52
|
+
.onConflict((table) => table.phoneIndex, { isArchived: true }).all();
|
|
53
|
+
}
|
|
54
|
+
catch (e) {
|
|
55
|
+
console.log(e);
|
|
56
|
+
}
|
|
57
|
+
})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|