drizzle-orm 0.10.5 → 0.10.9

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.
Files changed (97) hide show
  1. package/README.md +12 -2
  2. package/builders/aggregators/deleteAggregator.d.ts +5 -1
  3. package/builders/aggregators/deleteAggregator.js +5 -2
  4. package/builders/aggregators/insertAggregator.d.ts +5 -1
  5. package/builders/aggregators/insertAggregator.js +18 -9
  6. package/builders/aggregators/selectAggregator.d.ts +6 -1
  7. package/builders/aggregators/selectAggregator.js +10 -6
  8. package/builders/aggregators/updateAggregator.d.ts +5 -1
  9. package/builders/aggregators/updateAggregator.js +9 -3
  10. package/builders/highLvlBuilders/deleteRequestBuilder.js +5 -2
  11. package/builders/highLvlBuilders/insertRequestBuilder.js +5 -2
  12. package/builders/highLvlBuilders/selectRequestBuilder.js +7 -2
  13. package/builders/highLvlBuilders/updateRequestBuilder.js +6 -2
  14. package/builders/joinBuilders/builders/abstractJoinBuilder.js +7 -3
  15. package/builders/lowLvlBuilders/delets/deleteFilter.d.ts +4 -1
  16. package/builders/lowLvlBuilders/delets/deleteFrom.d.ts +4 -1
  17. package/builders/lowLvlBuilders/inserts/insertInto.d.ts +4 -1
  18. package/builders/lowLvlBuilders/inserts/onConflictInsert.d.ts +4 -1
  19. package/builders/lowLvlBuilders/inserts/valuesInsert.d.ts +4 -1
  20. package/builders/lowLvlBuilders/selects/selectFrom.d.ts +4 -1
  21. package/builders/lowLvlBuilders/selects/selectJoined.d.ts +4 -1
  22. package/builders/lowLvlBuilders/selects/whereSelect.d.ts +4 -1
  23. package/builders/lowLvlBuilders/updates/updateIn.d.ts +4 -1
  24. package/builders/lowLvlBuilders/updates/whereSelect.d.ts +4 -1
  25. package/builders/lowLvlBuilders/updates/whereSet.d.ts +4 -1
  26. package/builders/requestBuilders/updates/combine.d.ts +4 -1
  27. package/builders/requestBuilders/updates/combine.js +8 -3
  28. package/builders/requestBuilders/updates/increment.d.ts +4 -1
  29. package/builders/requestBuilders/updates/increment.js +4 -1
  30. package/builders/requestBuilders/updates/setObjects.d.ts +4 -1
  31. package/builders/requestBuilders/updates/setObjects.js +5 -1
  32. package/builders/requestBuilders/updates/updates.d.ts +4 -1
  33. package/builders/requestBuilders/where/and.d.ts +6 -1
  34. package/builders/requestBuilders/where/and.js +9 -3
  35. package/builders/requestBuilders/where/const.d.ts +4 -1
  36. package/builders/requestBuilders/where/const.js +6 -4
  37. package/builders/requestBuilders/where/constArray.d.ts +4 -1
  38. package/builders/requestBuilders/where/constArray.js +11 -5
  39. package/builders/requestBuilders/where/eqWhere.d.ts +6 -1
  40. package/builders/requestBuilders/where/eqWhere.js +6 -1
  41. package/builders/requestBuilders/where/greater.d.ts +6 -1
  42. package/builders/requestBuilders/where/greater.js +6 -1
  43. package/builders/requestBuilders/where/greaterEq.d.ts +6 -1
  44. package/builders/requestBuilders/where/greaterEq.js +6 -1
  45. package/builders/requestBuilders/where/in.d.ts +6 -1
  46. package/builders/requestBuilders/where/in.js +6 -1
  47. package/builders/requestBuilders/where/isNull.d.ts +6 -1
  48. package/builders/requestBuilders/where/isNull.js +5 -1
  49. package/builders/requestBuilders/where/less.d.ts +6 -1
  50. package/builders/requestBuilders/where/less.js +6 -1
  51. package/builders/requestBuilders/where/lessEq.d.ts +6 -1
  52. package/builders/requestBuilders/where/lessEq.js +6 -1
  53. package/builders/requestBuilders/where/like.d.ts +6 -1
  54. package/builders/requestBuilders/where/like.js +6 -1
  55. package/builders/requestBuilders/where/notEqWhere.d.ts +6 -1
  56. package/builders/requestBuilders/where/notEqWhere.js +6 -1
  57. package/builders/requestBuilders/where/or.d.ts +6 -1
  58. package/builders/requestBuilders/where/or.js +9 -3
  59. package/builders/requestBuilders/where/rawWhere.d.ts +4 -1
  60. package/builders/requestBuilders/where/rawWhere.js +2 -1
  61. package/builders/requestBuilders/where/var.d.ts +6 -1
  62. package/builders/requestBuilders/where/var.js +4 -1
  63. package/builders/requestBuilders/where/where.d.ts +6 -1
  64. package/builders/requestBuilders/where/where.js +1 -0
  65. package/columns/types/pgEnum.js +1 -1
  66. package/columns/types/pgJsonb.js +3 -1
  67. package/columns/types/pgText.js +1 -1
  68. package/columns/types/pgTimestamp.js +1 -1
  69. package/columns/types/pgTimestamptz.js +1 -1
  70. package/columns/types/pgVarChar.js +1 -1
  71. package/db/session.d.ts +2 -2
  72. package/db/session.js +2 -2
  73. package/docs/cases/simple_delete.js +5 -3
  74. package/docs/cases/simple_insert.js +7 -9
  75. package/docs/cases/simple_join.js +9 -7
  76. package/docs/cases/simple_select.js +4 -2
  77. package/docs/cases/simple_update.js +5 -2
  78. package/docs/tables/usersTable.d.ts +11 -10
  79. package/docs/tables/usersTable.js +5 -4
  80. package/package.json +1 -1
  81. package/serializer/serializer.js +4 -1
  82. package/tables/abstractTable.d.ts +2 -2
  83. package/tables/aggregators.d.ts +27 -0
  84. package/tables/aggregators.js +56 -0
  85. package/tables/migrationsTable.d.ts +1 -1
  86. package/test.d.ts +0 -1
  87. package/test.js +44 -224
  88. package/data/tables/citiesTable.d.ts +0 -14
  89. package/data/tables/citiesTable.js +0 -17
  90. package/data/tables/userGroupsTable.d.ts +0 -7
  91. package/data/tables/userGroupsTable.js +0 -15
  92. package/data/tables/usersTable.d.ts +0 -16
  93. package/data/tables/usersTable.js +0 -31
  94. package/data/tables/usersToUserGroups.d.ts +0 -7
  95. package/data/tables/usersToUserGroups.js +0 -17
  96. package/data/types/rolesType.d.ts +0 -1
  97. package/data/types/rolesType.js +0 -6
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const abstractTable_1 = require("../../tables/abstractTable");
4
- class CitiesTable extends abstractTable_1.default {
5
- constructor() {
6
- super(...arguments);
7
- this.id = this.serial('id').primaryKey();
8
- this.foundationDate = this.timestamp('name').notNull();
9
- this.location = this.varchar('page', { size: 256 });
10
- this.userId = this.int('user_id').foreignKey(CitiesTable, (table) => table.id, { onUpdate: 'CASCADE' });
11
- this.metadata = this.jsonb('metadata');
12
- }
13
- tableName() {
14
- return 'cities';
15
- }
16
- }
17
- exports.default = CitiesTable;
@@ -1,7 +0,0 @@
1
- import AbstractTable from '../../tables/abstractTable';
2
- export default class UserGroupsTable extends AbstractTable<UserGroupsTable> {
3
- id: import("../..").Column<import("../../columns/types/pgSerial").default, true, true, this>;
4
- name: import("../..").Column<import("../..").PgVarChar, true, false, this>;
5
- description: import("../..").Column<import("../..").PgVarChar, true, false, this>;
6
- tableName(): string;
7
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const abstractTable_1 = require("../../tables/abstractTable");
4
- class UserGroupsTable extends abstractTable_1.default {
5
- constructor() {
6
- super(...arguments);
7
- this.id = this.serial('id').primaryKey();
8
- this.name = this.varchar('name');
9
- this.description = this.varchar('description');
10
- }
11
- tableName() {
12
- return 'user_groups';
13
- }
14
- }
15
- exports.default = UserGroupsTable;
@@ -1,16 +0,0 @@
1
- import AbstractTable from '../../tables/abstractTable';
2
- export declare const rolesEnum: import("../../types/type").default<"user" | "guest" | "admin">;
3
- export default class UsersTable extends AbstractTable<UsersTable> {
4
- id: import("../..").Column<import("../../columns/types/pgSerial").default, true, true, this>;
5
- fullName: import("../..").Column<import("../..").PgText, true, false, this>;
6
- phone: import("../..").Column<import("../..").PgVarChar, true, false, this>;
7
- media: import("../..").Column<import("../..").PgJsonb<string[]>, true, false, this>;
8
- decimalField: import("../..").Column<import("../..").PgBigDecimal, false, false, this>;
9
- bigIntField: import("../..").Column<import("../..").PgBigInt, true, true, this>;
10
- createdAt: import("../..").Column<import("../..").PgTimestamp, false, false, this>;
11
- createdAtWithTimezone: import("../..").Column<import("../../columns/types/pgTimestamptz").default, true, false, this>;
12
- isArchived: import("../..").Column<import("../..").PgBoolean, true, false, this>;
13
- phoneFullNameIndex: import("../../indexes/tableIndex").default;
14
- phoneIndex: import("../../indexes/tableIndex").default;
15
- tableName(): string;
16
- }
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rolesEnum = void 0;
4
- /* eslint-disable max-classes-per-file */
5
- // import { Defaults } from '../../columns/column';
6
- const abstractTable_1 = require("../../tables/abstractTable");
7
- const type_1 = require("../../types/type");
8
- // import { rolesEnum } from '../types/rolesType';
9
- exports.rolesEnum = type_1.createEnum({ alias: 'test-enum', values: ['user', 'guest', 'admin'] });
10
- class UsersTable extends abstractTable_1.default {
11
- constructor() {
12
- super(...arguments);
13
- this.id = this.serial('id').primaryKey();
14
- this.fullName = this.text('full_name');
15
- this.phone = this.varchar('phone', { size: 256 });
16
- this.media = this.jsonb('media');
17
- this.decimalField = this.decimal('test', { precision: 100, scale: 2 }).notNull();
18
- this.bigIntField = this.bigint('test1', 'max_bytes_53');
19
- // public role = this.type(rolesEnum, 'name_in_table', { notNull: true });
20
- this.createdAt = this.timestamp('created_at').notNull();
21
- this.createdAtWithTimezone = this.timestamptz('created_at_time_zone');
22
- // public updatedAt = this.timestamp('updated_at').defaultValue(Defaults.CURRENT_TIMESTAMP);
23
- this.isArchived = this.bool('is_archived').defaultValue(false);
24
- this.phoneFullNameIndex = this.index([this.phone, this.fullName]);
25
- this.phoneIndex = this.uniqueIndex(this.phone);
26
- }
27
- tableName() {
28
- return 'users';
29
- }
30
- }
31
- exports.default = UsersTable;
@@ -1,7 +0,0 @@
1
- import AbstractTable from '../../tables/abstractTable';
2
- export default class UsersToUserGroupsTable extends AbstractTable<UsersToUserGroupsTable> {
3
- groupId: import("../..").Column<import("../..").PgInteger, true, false, this>;
4
- userId: import("../..").Column<import("../..").PgInteger, true, false, this>;
5
- manyToManyIndex: import("../../indexes/tableIndex").default;
6
- tableName(): string;
7
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const abstractTable_1 = require("../../tables/abstractTable");
4
- const userGroupsTable_1 = require("./userGroupsTable");
5
- const usersTable_1 = require("./usersTable");
6
- class UsersToUserGroupsTable extends abstractTable_1.default {
7
- constructor() {
8
- super(...arguments);
9
- this.groupId = this.int('city_id').foreignKey(userGroupsTable_1.default, (table) => table.id, { onDelete: 'CASCADE' });
10
- this.userId = this.int('user_id').foreignKey(usersTable_1.default, (table) => table.id, { onDelete: 'CASCADE' });
11
- this.manyToManyIndex = this.index([this.groupId, this.userId]);
12
- }
13
- tableName() {
14
- return 'users_to_user_groups';
15
- }
16
- }
17
- exports.default = UsersToUserGroupsTable;
@@ -1 +0,0 @@
1
- export declare const rolesEnum: import("../../types/type").default<"foo" | "bar" | "baz">;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rolesEnum = void 0;
4
- const type_1 = require("../../types/type");
5
- // eslint-disable-next-line import/prefer-default-export
6
- exports.rolesEnum = type_1.createEnum({ alias: 'test-enum', values: ['foo', 'bar', 'baz'] });