drizzle-orm 0.9.12 → 0.9.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +399 -0
- package/builders/highLvlBuilders/abstractRequestBuilder.d.ts +3 -3
- package/builders/highLvlBuilders/deleteRequestBuilder.d.ts +2 -2
- package/builders/highLvlBuilders/deleteRequestBuilder.js +1 -8
- package/builders/highLvlBuilders/insertRequestBuilder.d.ts +2 -2
- package/builders/highLvlBuilders/insertRequestBuilder.js +1 -8
- package/builders/highLvlBuilders/selectRequestBuilder.d.ts +2 -2
- package/builders/highLvlBuilders/selectRequestBuilder.js +1 -8
- package/builders/highLvlBuilders/updateRequestBuilder.d.ts +2 -2
- package/builders/highLvlBuilders/updateRequestBuilder.js +1 -8
- package/builders/joinBuilders/builders/abstractJoinBuilder.d.ts +3 -3
- package/builders/joinBuilders/builders/abstractJoinBuilder.js +1 -8
- package/builders/joinBuilders/builders/selectWithFiveJoins.d.ts +2 -2
- package/builders/joinBuilders/builders/selectWithFourJoins.d.ts +2 -2
- package/builders/joinBuilders/builders/selectWithJoin.d.ts +2 -2
- package/builders/joinBuilders/builders/selectWithThreeJoins.d.ts +2 -2
- package/builders/joinBuilders/builders/selectWithTwoJoins.d.ts +2 -2
- package/builders/lowLvlBuilders/create.js +1 -1
- package/builders/transaction/transaction.d.ts +2 -2
- package/columns/column.d.ts +18 -26
- package/columns/column.js +14 -30
- package/columns/index.d.ts +1 -1
- package/columns/index.js +2 -1
- package/columns/types/pgBigInt.d.ts +9 -2
- package/columns/types/pgBigInt.js +17 -5
- package/columns/types/pgBigSerial.d.ts +15 -0
- package/columns/types/pgBigSerial.js +29 -0
- package/columns/types/pgSerial.d.ts +8 -0
- package/columns/types/pgSerial.js +15 -0
- package/columns/types/pgTimestamptz.d.ts +8 -0
- package/columns/types/pgTimestamptz.js +15 -0
- package/db/db.d.ts +6 -7
- package/db/db.js +2 -3
- package/db/dbConnector.js +2 -1
- package/db/dbStringConnector.js +2 -1
- package/db/index.d.ts +1 -0
- package/db/index.js +3 -1
- package/db/session.d.ts +5 -3
- package/db/session.js +9 -13
- package/docs/cases/simple_insert.js +3 -3
- package/docs/cases/simple_join.js +3 -2
- package/docs/cases/simple_select.js +1 -1
- package/docs/tables/citiesTable.d.ts +1 -1
- package/docs/tables/citiesTable.js +2 -2
- package/docs/tables/userGroupsTable.d.ts +1 -1
- package/docs/tables/userGroupsTable.js +1 -1
- package/docs/tables/usersTable.d.ts +10 -10
- package/docs/tables/usersTable.js +8 -6
- package/index.d.ts +1 -3
- package/index.js +3 -7
- package/migrator/migrator.d.ts +6 -11
- package/migrator/migrator.js +56 -73
- package/package.json +1 -1
- package/serializer/serializer.js +1 -1
- package/tables/abstractTable.d.ts +18 -94
- package/tables/abstractTable.js +38 -31
- package/tables/migrationsTable.d.ts +3 -4
- package/tables/migrationsTable.js +4 -5
- package/test.js +35 -7
- package/docs/tables/citiesToUsers.d.ts +0 -7
- package/docs/tables/citiesToUsers.js +0 -18
package/test.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const _1 = require(".");
|
|
4
|
-
const usersTable_1 = require("./docs/tables/usersTable");
|
|
5
4
|
// import { Pool } from 'pg';
|
|
6
5
|
// import { DB } from '.';
|
|
7
6
|
// import { DB, DbConnector } from '.';
|
|
@@ -19,13 +18,16 @@ const fromTypeFile = (filepath) => {
|
|
|
19
18
|
(async () => {
|
|
20
19
|
try {
|
|
21
20
|
const db = await new _1.DbConnector()
|
|
22
|
-
.connectionString('postgresql://postgres@127.0.0.1/
|
|
21
|
+
.connectionString('postgresql://postgres@127.0.0.1/drizzle-docs')
|
|
23
22
|
.connect();
|
|
23
|
+
// const serializer = new MigrationSerializer();
|
|
24
|
+
// const res = await serializer.fromDatabase(db);
|
|
25
|
+
// fs.writeFileSync('introspected.json', JSON.stringify(res, null, 2), 'utf8');
|
|
24
26
|
// const ser = new MigrationSerializer();
|
|
25
27
|
// const d = db.create(UsersTable) as unknown as AbstractTable<any>;
|
|
26
28
|
// const f = ser.generate([d], []);
|
|
27
29
|
// console.log(JSON.stringify(f, null, 2));
|
|
28
|
-
|
|
30
|
+
await _1.drizzle.migrator(db).migrate({ migrationFolder: 'src/drizzle.config.yaml' });
|
|
29
31
|
// drizzle.migrator(db).migrate({ migrationFolder: '' });
|
|
30
32
|
// const typesFileNames = fs.readdirSync('/Users/andrewsherman/IdeaProjects/datalayer-orm/src/examples/types');
|
|
31
33
|
// typesFileNames.forEach((filename) => {
|
|
@@ -39,10 +41,36 @@ const fromTypeFile = (filepath) => {
|
|
|
39
41
|
// const db = await new DbConnector()
|
|
40
42
|
// .connectionString('postgresql://postgres@127.0.0.1/drizzle')
|
|
41
43
|
// .connect();
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
//
|
|
45
|
-
//
|
|
44
|
+
// const db = await new DbConnector()
|
|
45
|
+
// .connectionString('postgresql://postgres@127.0.0.1/migrator')
|
|
46
|
+
// .connect();
|
|
47
|
+
// const usersTable: UsersTable = new UsersTable(db);
|
|
48
|
+
// const knexInstance = knex.knex({
|
|
49
|
+
// client: 'pg',
|
|
50
|
+
// connection: 'postgresql://postgres@127.0.0.1/migrator',
|
|
51
|
+
// });
|
|
52
|
+
// const userTableForKnex: UsersTable = new UsersTable(knexDb);
|
|
53
|
+
// const users = await userTableForKnex.select().all();
|
|
54
|
+
// console.log(users[0]);
|
|
55
|
+
// const arr: AbstractColumn<ColumnType<any>, boolean, boolean>[] = [usersTable.id, usersTable.phone];
|
|
56
|
+
// const objectRes: {[name: string]: AbstractColumn<ColumnType, boolean, boolean>} = arr.reduce(
|
|
57
|
+
// (obj, item, index) => Object.assign(obj, { [Object.getOwnPropertyNames(item)[index]]: item }), {},
|
|
58
|
+
// );
|
|
59
|
+
// type f = ExtractModel<typeof objectRes1>;
|
|
60
|
+
// type d1 = ExtractModel<UsersTable>;
|
|
61
|
+
// const f = await usersTable.select()
|
|
62
|
+
// .fieldsv2({
|
|
63
|
+
// usersCount: count(usersTable.id),
|
|
64
|
+
// sumNumber: sum(usersTable.phone),
|
|
65
|
+
// role: usersTable.role,
|
|
66
|
+
// });
|
|
67
|
+
// const objectRes1 = {
|
|
68
|
+
// idid: usersTable.id,
|
|
69
|
+
// pisun: usersTable.phone,
|
|
70
|
+
// vau: usersTable.role,
|
|
71
|
+
// };
|
|
72
|
+
// type fd = ExtractModel<typeof objectRes1>;
|
|
73
|
+
// const g = await usersTable.select().execute();
|
|
46
74
|
// if (res.isLeft()) {
|
|
47
75
|
// console.log(res.value.reason);
|
|
48
76
|
// } else {
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import AbstractTable from '../../tables/abstractTable';
|
|
2
|
-
export default class UsersToUserGroupsTable extends AbstractTable<UsersToUserGroupsTable> {
|
|
3
|
-
groupId: import("../../columns/column").Column<import("../..").PgInteger, true, false>;
|
|
4
|
-
userId: import("../../columns/column").Column<import("../..").PgInteger, true, false>;
|
|
5
|
-
manyToManyIndex: import("../../indexes/tableIndex").default;
|
|
6
|
-
tableName(): string;
|
|
7
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const column_1 = require("../../columns/column");
|
|
4
|
-
const abstractTable_1 = require("../../tables/abstractTable");
|
|
5
|
-
const userGroupsTable_1 = require("./userGroupsTable");
|
|
6
|
-
const usersTable_1 = require("./usersTable");
|
|
7
|
-
class UsersToUserGroupsTable extends abstractTable_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.groupId = this.int('city_id').foreignKey(userGroupsTable_1.default, (table) => table.id, column_1.OnDelete.CASCADE);
|
|
11
|
-
this.userId = this.int('user_id').foreignKey(usersTable_1.default, (table) => table.id, column_1.OnDelete.CASCADE);
|
|
12
|
-
this.manyToManyIndex = this.index([this.groupId, this.userId]);
|
|
13
|
-
}
|
|
14
|
-
tableName() {
|
|
15
|
-
return 'users_to_user_groups';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.default = UsersToUserGroupsTable;
|